/ P?S/8 SYSTEM NON-SYSTEM HANDLER / P?S/8 PSEUDO-HANDLER FOR NON-SYSTEM USAGE OF REAL SYSTEM HANDLER. / ALSO CONTAINS NULL HANDLER FOR READ-ONLY CHECKING. / LAST EDIT: 21-APR-1986 20:00:00 CJL / MAY BE ASSEMBLED WITH '/J' SWITCH SET. PAGE /START ON A GOOD PAGE HERE= . /WHERE WE ARE NOW / DEFINITIONS. XLIST OFF IFNDEF OFF IFNDEF ON IFNDEF NULENT IFNDEF SYSENT XLIST ON NL0002= CLA CLL CML RTL /LOAD AC WITH 0002 REVISIO="B&77 /REVISION OF HANDLER SYSIO= 7640 /SYSTEM I/O ENTRY POINT / DEVICE HANDLER HEADER BLOCK. *"S&177;*"Y&177;*"S&177 /GROUP NAME *-2 /GROUP COUNT *"S&177;*"Y&177;*"S&177 /DEVICE NAME *SYSENT&177 /RELATIVE ENTRY POINT *0 /LENGTH WORD; 0=UNKNOWN OR MAXIMUM *REVISION /REVISION OF HANDLER *"N&177;*"U&177;*"L&177 /DEVICE NAME *NULENT&177 /RELATIVE ENTRY POINT *7777 /LENGTH WORD *REVISION /REVISION OF HANDLER *HERE /RESET ORIGIN SYSENTR,.-. /SYSTEM HANDLER ENTERS HERE NL0002 /SET CIF BIT RDF /GET CALLING FIELD TAD (CDF) /MAKE IT CIF CDF RETURN FIELD DCA SYSEXIT /STORE IN-LINE FOR LATER TAD I SYSENTRY /GET THE ARGUMENT POINTER DCA SYSPTR /STASH THE POINTER ISZ SYSENTRY /BUMP PAST ARGUMENT TAD I SYSPTR /GET TRANSFER ADDRESS DCA SYSADR /STORE IN-LINE ISZ SYSPTR /BUMP TO NEXT TAD I SYSPTR /GET FUNCTION WORD DCA SYSFUN /STORE IN-LINE ISZ SYSPTR /BUMP TO NEXT TAD I SYSPTR /GET BLOCK NUMBER DCA SYSBLK /STORE IN-LINE RIF /GET OUR FIELD TAD (CDF) /MAKE IT CDF OUR FIELD DCA SYSPTR /STORE IN-LINE SYSPTR, .-. /WILL BE CDF OUR FIELD CIF 00 /GOTO MONITOR'S FIELD JMS I (SYSIO) /CALL REAL I/O ROUTINES SYSADR, .-. /TRANSFER ADDRESS SYSFUN, .-. /FUNCTION WORD SYSBLK, .-. /BLOCK NUMBER ISZ SYSENTRY /BUMP TO GOOD RETURN SYSEXIT,.-. /WILL BE CIF CDF RETURN FIELD JMP I SYSENTRY /RETURN TO ORIGINAL CALLER NULENTR,.-. /NULL HANDLER ENTERS HERE NL0002 /SET CIF BIT RDF /GET CALLING FIELD TAD (CDF) /MAKE IT CIF CDF RETURN FIELD DCA NULEXIT /STORE IN-LINE TAD I NULENTRY /GET ARGUMENT POINTER DCA NULCDF /STASH IT ISZ NULENTRY /BUMP TO ERROR RETURN TAD I NULCDF /GET BUFFER ADDRESS DCA NULADR /STASH IT ISZ NULCDF /BUMP TO FUNCTION WORD TAD I NULCDF /GET FUNCTION WORD RAL /MOVE UP AND (7600) /JUST PAGE BITS CIA /INVERT FOR COUNTING DCA NULCNT /STASH THE COUNTER TAD I NULCDF /GET THE FUNCTION WORD AGAIN AND (70) /JUST TRANSFER FIELD BITS TAD (CDF) /FORM CDF TRANSFER FIELD DCA NULCDF /STORE IN-LINE NULCDF, .-. /WILL BE CDF TRANSFER FIELD NULOOP, DCA I NULADR /CLEAR A WORD ISZ NULADR /BUMP TO NEXT NOP /JUST IN CASE ISZ NULCNT /DONE ENOUGH? JMP NULOOP /NO, GO BACK ISZ NULENTRY /BUMP TO GOOD RETURN NULEXIT,.-. /WILL BE CIF CDF RETURN FIELD JMP I NULENTRY /RETURN NULADR, .-. /BUFFER ADDRESS NULCNT, .-. /WORD COUNTER PAGE