cdc:nos2.source:opl871:mpf
Table of Contents
MPF
Table Of Contents
- [00005] MPF - *PACKER* UTILITY HELPER.
- [00010] *PACKER* UTILITY PP HELPER ROUTINE.
- [00139] COMMON DECKS.
- [00150] MACRO DEFINITIONS.
- [00154] ERROR - ISSUE ERROR MESSAGE AND ABORT.
- [00171] LDCA - LOAD AND CHECK CENTRAL ADDRESS.
- [00195] DIRECT CELL DEFINITIONS.
- [00210] MAIN PROGRAM.
- [00214] MAIN PROGRAM.
- [00222] ERROR PROCESSING.
- [00224] ERR - ERROR PROCESSOR.
- [00273] FUNCTION PROCESSORS.
- [00657] SUBROUTINES.
- [00659] CDA - COMPUTE DISK ADDRESS.
- [00695] CFS - COMPLETE FET STATUS.
- [00718] CIO - COMPLETE I/O.
- [00753] CMS - CHECK MASS STORAGE.
- [00798] FDD - LOG FAMILY NAME AND DEVICE NUMBER TO DAYFILE.
- [00853] IFQ - INITIAL FET QUERY.
- [00897] LTD - LOG LOCATION TO DAYFILE.
- [00937] PDS - PROCESS DEVICE STATUS.
- [00955] PIO - PRESET I/O.
- [00980] SBA - SET BUFFER ARGUMENTS.
- [01014] SFC - SET FST COMPLETE.
- [01039] SFP - SET FILE PARAMETERS.
- [01082] VBA - VALIDATE BUFFER ADDRESSES.
- [01130] VCA - VALIDATE CENTRAL ADDRESS.
- [01160] VTB - VALIDATE TRACK LINK BYTE.
- [01206] BUFFER ALLOCATION.
- [01214] COMMON DECKS.
- [01237] PRESET.
- [01239] PRS - PRESET.
Source Code
- MPF.txt
- IDENT MPF,MPF
- PERIPH
- BASE MIXED
- SST
- TITLE MPF - *PACKER* UTILITY HELPER.
- SPACE 4,10
- *COMMENT MPF - *PACKER* UTILITY HELPER.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- SPACE 4,10
- *** MPF - *PACKER* UTILITY PP HELPER ROUTINE.
- *
- * W. J. STURGIS. 78/02/14.
- * K. A. GILLIAM. 80/08/11.
- * D. G. BEAUSANG. 80/08/26.
- * A. J. NATHANSON. 83/10/25.
- * K. R. DELAY. 84/03/26.
- * P. C. SMITH. 87/12/01.
- SPACE 4,10
- *** MPF IS A PP HELPER PROGRAM FOR THE UTILITY *PACKER*.
- SPACE 4,10
- *** CALL -
- *
- *T 18/ *MPF*,6/ R,12/ FN,6/ ,18/ ADDR
- *
- * FN = FUNCTION CODE.
- * ADDR = ADDRESS OF FET OR PARAMETER BLOCK.
- *
- * SEE INDIVIDUAL FUNCTIONS FOR MORE DETAILS.
- *
- * FN = 0, DROP TRACKS ON IAPF CHAIN.
- * FN = 1, REWRITE EOI.
- * FN = 2, DELINK TRACKS FROM IAPF CHAIN.
- * FN = 3, (RESERVED).
- * FN = 4, READ SYSTEM SECTOR.
- * FN = 5, WRITE SYSTEM SECTOR.
- * FN = 6, RETURN FST FOR CATALOG OVERFLOW TRACK.
- * FN = 7, REWRITE CATALOG SECTOR.
- SPACE 4,10
- *** DAYFILE MESSAGES.
- *
- * THESE MESSAGES ARE ISSUED TO THE SYSTEM AND LOCAL
- * DAYFILES, AND THE CALLING JOB IS ABORTED.
- *
- * * MPF - ADDRESS OUT OF RANGE.*
- * THE SPECIFIED ADDRESS WAS .LE. 1 OR .GE. FL.
- *
- * * MPF - BUFFER ARGUMENT ERROR.*
- * BUFFER ARGUMENTS (FIRST/IN/OUT/LIMIT) ARE INCORRECT.
- *
- * * MPF - CATALOG REWRITE LINK BYTE ERROR.*
- * AN INCORRECT LINK BYTE WAS READ FROM THE
- * CATALOG TRACK.
- *
- * * MPF - DEVICE ERROR IDLE SET.*
- * A DEVICE ERROR IDLE WAS SET AS THE RESULT OF AN
- * INCORRECT CATALOG SECTOR WRITE.
- *
- * * MPF - EQXX TKYYYY SCZZZZ.*
- * THE EST ORDINAL, TRACK AND SECTOR LOCATION OF THE
- * INCORRECT SECTOR WRITE.
- *
- * * MPF - FET COMPLETE BIT SET.*
- * THE FET COMPLETE BIT WAS SET ON ENTRY FOR FN=7.
- *
- * * MPF - FET TOO SHORT.*
- * THE FET WAS TOO SHORT FOR FN=7.
- *
- * * MPF - FILE NOT FOUND.*
- * THE LOCAL FILE SPECIFIED IN THE FET WAS NOT FOUND.
- *
- * * MPF - FM DN FFFFFFF NN.*
- * THE FAMILY NAME (FFFFFFF) AND DEVICE NUMBER (NN)
- * OF THE DEVICE ON WHICH ERROR IDLE WAS SET.
- *
- * * MPF - INACCESSIBLE DEVICE.*
- * THE DEVICE STATUS RETURNED BY THE *SETMS* MACRO
- * INDICATES THAT THE DEVICE IS NOT ACCESSIBLE.
- *
- * * MPF - INCORRECT CALL.*
- * CALLER WAS NOT *SSJ=* PROGRAM, OR *MPF* WAS
- * NOT CALLED WITH AUTO RECALL.
- *
- * * MPF - INCORRECT CATALOG REWRITE REQUEST.*
- * INCORRECT SECTOR LENGTH, INCORRECT RANDOM ADDRESS,
- * INCORRECT EST ORDINAL, ET CETERA.
- *
- * * MPF - INCORRECT CIO CODE IN CATALOG REWRITE.*
- * THE CIO CODE FOR *REWRITE* MUST BE SET IN THE FET
- * FOR A SECTOR REWRITE WITH 100B WORDS; THE CIO CODE
- * FOR *REWRITER* MUST BE SET IN THE FET FOR A SECTOR
- * WITH LESS THAN 100B WORDS.
- *
- * * MPF - INCORRECT FUNCTION.*
- * FUNCTION NUMBER NOT RECOGNIZED.
- *
- * * MPF - INCORRECT LINK BYTE IN CATALOG SCAN.*
- * THE CONTROL BYTES IN THE SECTOR AT END OF A TRACK
- * WERE NOT LINK BYTES, THE LINK BYTE POINTED TO AN
- * UNRESERVED TRACK, OR THE LINK BYTE POINTED TO A
- * TRACK WHICH WAS NOT ON THE TRACK CHAIN WHICH STARTED
- * WITH THE LABEL TRACK.
- *
- * * MPF - INCORRECT OVERFLOW FST REQUEST.*
- * THE PARAMETER BLOCK FOR FN=6 WAS INCORRECT.
- *
- * * MPF - INCORRECT SECTOR READ IN CATALOG REWRITE.*
- * AN UNRECOVERED MASS STORAGE ERROR WAS ENCOUNTERED
- * ON A SECTOR READ.
- *
- * * MPF - INCORRECT SECTOR READ IN CATALOG SCAN.*
- * AN UNRECOVERED MASS STORAGE ERROR WAS ENCOUNTERED
- * ON A CATALOG TRACK.
- *
- * * MPF - INCORRECT SYSTEM SECTOR.*
- * THE LINKAGE BYTES IN THE BUFFER WERE NOT CORRECT
- * FOR THE WRITE SYSTEM SECTOR FUNCTION.
- *
- * * MPF - INCORRECT WORD COUNT IN CATALOG REWRITE.*
- * THE WORD COUNT IN THE CIO BUFFER IS .GE. THAN 100B.
- *
- * * MPF - INCORRECT WRITE IN CATALOG REWRITE.*
- * AN UNRECOVERED MASS STORAGE ERROR WAS ENCOUNTERED
- * ON A SECTOR WRITE. THIS ERROR WILL SET ERROR IDLE
- * ON THE DEVICE.
- *
- * * MPF - I/O SEQUENCE ERROR.*
- * FST ENTRY FOR REWRITE EOI WAS BUSY.
- *
- * * MPF - RANDOM ADDRESS NOT ON IAPF CHAIN.*
- * THE SPECIFIED RANDOM ADDRESS WAS NOT FOUND ON
- * THE IAPF CHAIN.
- *
- * * MPF - SYSTEM SECTOR ERROR.*
- * A MASS STORAGE ERROR WAS ENCOUNTERED WHEN READING
- * OR WRITING A SYSTEM SECTOR.
- *
- * * MPF - WRITE LOCK-OUT ON CATALOG FILE.*
- * THE CATALOG FILE WAS NOT IN WRITE MODE.
- TITLE COMMON DECKS.
- SPACE 4,10
- * COMMON DECKS.
- SPACE 4,10
- *CALL COMPMAC
- *CALL COMSCPS
- *CALL COMSLSD
- *CALL COMSMSP
- *CALL COMSMST
- *CALL COMSPIM
- *CALL COMSWEI
- TITLE MACRO DEFINITIONS.
- SPACE 4,10
- * MACRO DEFINITIONS.
- ERROR SPACE 4,10
- ** ERROR - ISSUE ERROR MESSAGE AND ABORT.
- *
- * ERROR MSG
- *
- * MSG = ADDRESS OF ERROR MESSAGE.
- *
- * CALLS ERR.
- PURGMAC ERROR
- ERROR MACRO M
- MACREF ERROR
- LDC M
- RJM ERR
- ERROR ENDM
- LDCA SPACE 4,10
- ** LDCA - LOAD AND CHECK CENTRAL ADDRESS.
- *
- * LDCA ADDR,OFFSET
- *
- * (ADDR - ADDR+1) = RELATIVE ADDRESS.
- * OFFSET = ADDED TO ADDRESS.
- *
- * CALLS VCA.
- *
- * USES T1, T2.
- PURGMAC LDCA
- LDCA MACRO A,N
- MACREF LDCA
- LDD A
- LPN 37
- SHN 14
- ADD A+1
- IFC NE,$N$$,1
- ADK N
- RJM VCA
- LDCA ENDM
- TITLE DIRECT CELL DEFINITIONS.
- SPACE 4,10
- * DIRECT CELL DEFINITIONS.
- FS EQU 20 - 24 FST ENTRY
- RI EQU 25 - 26 RANDOM INDEX
- CT EQU 35 OVERFLOW TRACK NUMBER
- TK EQU 36 LABEL TRACK
- FN EQU 40 - 44 FNT ENTRY
- FA EQU 57 FNT ADDRESS
- FT EQU 60 - 61 FIRST
- IN EQU 62 - 63 IN
- OT EQU 64 - 65 OUT
- LM EQU 66 - 67 LIMIT
- TITLE MAIN PROGRAM.
- SPACE 4,10
- ORG PPFW
- MPF SPACE 4,10
- ** MPF - MAIN PROGRAM.
- MPF BSS 0 ENTRY
- RJM PRS PRESET
- RJM 0,T1 EXECUTE FUNCTION
- MONITOR DPPM DROP PP
- LJM PPR EXIT TO PP RESIDENT
- TITLE ERROR PROCESSING.
- ERR SPACE 4,10
- ** ERR - ERROR PROCESSOR.
- *
- * ENTRY (A) = ADDRESS OF ERROR MESSAGE TEXT.
- *
- * EXIT TO *PPR*.
- * PP HUNG IF *SYSTEM DEBUG* ENABLED.
- *
- * CALLS DFM, SFC.
- *
- * MACROS MONITOR.
- ERR SUBR ENTRY
- RJM DFM ISSUE DAYFILE MESSAGE
- RJM SFC SET FST COMPLETE
- LDK ZERL
- CRD CM
- LDM ERR SET ADDRESS OF CALLER
- STD CM+1
- MONITOR CHGM CONDITIONALLY HANG PP
- MONITOR ABTM ABORT CONTROL POINT
- LJM PPR EXIT TO PP RESIDENT
- ERRMSG SPACE 4,10
- * ERROR MESSAGES.
- ERAR DATA C* MPF - ADDRESS OUT OF RANGE.*
- ERBA DATA C* MPF - BUFFER ARGUMENT ERROR.*
- ERCC DATA C* MPF - INCORRECT CIO CODE IN CATALOG REWRITE.*
- ERCR DATA C* MPF - INCORRECT CATALOG REWRITE REQUEST.*
- EREI DATA C* MPF - DEVICE ERROR IDLE SET.*
- ERFC DATA C* MPF - FET COMPLETE BIT SET.*
- ERFS DATA C* MPF - FET TOO SHORT.*
- ERIC DATA C* MPF - INCORRECT CALL.*
- ERID DATA C* MPF - INACCESSIBLE DEVICE.*
- ERIF DATA C* MPF - INCORRECT FUNCTION.*
- ERIO DATA C* MPF - I/O SEQUENCE ERROR.*
- ERIS DATA C* MPF - INCORRECT SYSTEM SECTOR.*
- ERLR DATA C* MPF - CATALOG REWRITE LINK BYTE ERROR.*
- ERLS DATA C* MPF - INCORRECT LINK BYTE IN CATALOG SCAN.*
- ERNF DATA C* MPF - FILE NOT FOUND.*
- EROF DATA C* MPF - INCORRECT OVERFLOW FST REQUEST.*
- ERRA DATA C* MPF - RANDOM ADDRESS NOT ON IAPF CHAIN.*
- ERRR DATA C* MPF - INCORRECT SECTOR READ IN CATALOG REWRITE.*
- ERSR DATA C* MPF - INCORRECT SECTOR READ IN CATALOG SCAN.*
- ERSS DATA C* MPF - SYSTEM SECTOR ERROR.*
- ERWL DATA C* MPF - WRITE LOCK-OUT ON CATALOG FILE.*
- ERWR DATA C* MPF - INCORRECT WORD COUNT IN CATALOG REWRITE.*
- ERWW DATA C* MPF - INCORRECT WRITE IN CATALOG REWRITE.*
- TITLE FUNCTION PROCESSORS.
- DTK SPACE 4,10
- *** DTK (0) - DROP TRACKS ON IAPF CHAIN.
- *
- * ENTRY (IR+3 - IR+4) = PARAMETER ADDRESS.
- *
- *T ADDR 12/ EQ,24/ ,24/ EOI
- *
- * EQ = EST ORDINAL.
- * EOI = RANDOM ADDRESS OF NEW EOI.
- *
- * EXIT TRT UPDATED.
- * DEVICE CHECKPOINT REQUESTED.
- DTK SUBR
- LDCA IR+3 SET EST ORDINAL
- CRD CM
- LDD CM
- LPC 3777
- STD T5
- LDCA IR+3
- RJM CDA COMPUTE DISK ADDRESS
- LDD T5
- ADC 4000 DEVICE CHECKPOINT FLAG
- STD CM+1
- LDD T6 SET EOI TRACK
- LPC 3777 CLEAR LINK BIT
- STD CM+2
- LDD T7 SET EOI SECTOR
- STD CM+3
- MONITOR DTKM
- LJM DTKX RETURN
- RWE SPACE 4,10
- *** RWE (1) - REWRITE EOI.
- *
- * ENTRY (IR+3 - IR+4) = FET ADDRESS.
- * LOCAL FILE POSITIONED TO CORRECT SECTOR FOR EOI WRITE.
- *
- * EXIT EOI WRITTEN.
- RWE SUBR
- RJM SFP SET FILE PARAMETERS
- SETMS IO,RW
- RJM PDS PROCESS DEVICE STATUS
- RJM WEI WRITE EOI SECTOR
- ENDMS
- RJM SFC SET FST COMPLETE
- UJN RWEX RETURN
- DLK SPACE 4,15
- *** DLK (2) - DELINK TRACKS FROM IAPF CHAIN.
- *
- * ENTRY (IR+3 - IR+4) = PARAMETER ADDRESS.
- *
- *T ADDR 12/ ,12/ EQ,12/ FT,12/ NT,12/ LT
- *
- * EQ = EST ORDINAL.
- * FT = FIRST TRACK.
- * NT = NEXT TRACK.
- * LT = LAST TRACK.
- *
- * EXIT TRACKS DELINKED FROM IAPF CHAIN.
- * DEVICE CHECKPOINT REQUESTED.
- DLK SUBR
- LDCA IR+3
- CRD CM READ PARAMETER
- LDD CM+1
- LPC 3777
- LMC 4000 DEVICE CHECKPOINT FLAG
- STD CM+1
- LDD CM+2 ENSURE LINK BIT CLEAR
- LPC 3777
- STD CM+2
- MONITOR DLKM
- UJN DLKX RETURN
- RSC SPACE 4,10
- *** RSC (4) - READ SYSTEM SECTOR.
- *
- * ENTRY (IR+3 - IR+4) = FET ADDRESS.
- * RANDOM ADDRESS OF SYSTEM SECTOR IN FET+6.
- *
- * EXIT SYSTEM SECTOR RETURNED TO BUFFER STARTING AT *FIRST*.
- * RANDOM ADDRESS IN FET+6 UPDATED.
- RSC SUBR ENTRY/EXIT
- RJM SFP SET FILE PARAMETERS
- LDCA IR+3,6 GET RANDOM ADDRESS
- RJM CDA COMPUTE DISK ADDRESS
- SETMS IO
- RJM PDS PROCESS DEVICE STATUS
- LDN 0 DO NOT COMPARE FILE NAME
- RJM RSS READ SYSTEM SECTOR
- ZJN RSC2 IF SYSTEM SECTOR VALID
- RSC1 ERROR ERSS * SYSTEM SECTOR ERROR.*
- RSC2 ENDMS
- LDCA IR+3,6
- CRD CM
- AOD CM+4 UPDATE RANDOM ADDRESS IN FET+6
- SHN -14
- RAD CM+3
- LDCA IR+3,6
- CWD CM
- SBN 5 FIRST
- CRD CM
- LDCA CM+3,101 ENSURE THAT SYSTEM SECTOR FITS IN CM FL
- LDCA CM+3
- CWM BFMS,ON WRITE CONTROL BYTES TO CM BUFFER
- CWM BFMS+2,HN WRITE SYSTEM SECTOR TO CM BUFFER
- RJM SFC SET FST COMPLETE
- LJM RSCX RETURN
- WSC SPACE 4,10
- *** WSC (5) - WRITE SYSTEM SECTOR.
- *
- * ENTRY (IR+3 - IR+4) = FET ADDRESS.
- * SYSTEM SECTOR IN BUFFER STARTING AT *FIRST*.
- * RANDOM ADDRESS OF SYSTEM SECTOR IN FET+6.
- *
- * EXIT SYSTEM SECTOR WRITTEN.
- * RANDOM ADDRESS IN FET+6 UPDATED.
- WSC SUBR ENTRY/EXIT
- RJM SFP SET FILE PARAMETERS
- LDCA IR+3,6 RANDOM ADDRESS
- RJM CDA COMPUTE DISK ADDRESS
- LDCA IR+3,1 FIRST
- CRD CM
- LDCA CM+3,101 ENSURE SYSTEM SECTOR IS WITHIN CM FL
- LDCA CM+3
- CRM BFMS,ON READ CONTROL BYTES FROM CM BUFFER
- CRM BFMS+2,HN READ SYSTEM SECTOR FROM CM BUFFER
- LDM BFMS
- LMC 3777 CHECK CONTROL BYTES
- LMM BFMS+1
- LMN 77
- ZJN WSC1 IF CONTROL BYTES VALID
- ERROR ERIS * INCORRECT SYSTEM SECTOR.*
- WSC1 LDD T6
- STM FTSS SET FIRST TRACK
- LDD T7
- ADN FSMS
- STM NSSS NEXT SECTOR
- LMM SLM
- NJN WSC2 IF NOT END OF TRACK
- RJM SNT
- STM NSSS
- WSC2 SETMS IO,RW
- RJM PDS PROCESS DEVICE STATUS
- LDC BFMS+WLSF
- RJM WDS WRITE SYSTEM SECTOR
- PJN WSC3 IF NO DISK ERROR
- ERROR ERSS * SYSTEM SECTOR ERROR.*
- WSC3 ENDMS
- RJM SFC SET FST COMPLETE
- LDCA IR+3,6
- CRD CM
- AOD CM+4 UPDATE RANDOM ADDRESS IN FET+6
- SHN -14
- RAD CM+3
- LDCA IR+3,6
- CWD CM
- LJM WSCX RETURN
- RTF SPACE 4,25
- *** RTF (6) - RETURN FST FOR CATALOG OVERFLOW TRACK.
- *
- * ENTRY (IR+3 - IR+4) = PARAMETER BLOCK ADDRESS.
- *
- *T ADDR 12/ EQ,12/ FT,12/ CT,12/ CS,12/ ST
- *T,ADDR+1 48/ ,12/ OT
- *T,ADDR+2 60/
- *
- * EQ = EST ORDINAL.
- * FT = FIRST TRACK.
- * CT = CURRENT TRACK (IGNORED).
- * CS = CURRENT SECTOR (IGNORED).
- * ST = STATUS (IGNORED).
- * OT = OVERFLOW TRACK INDEX.
- *
- * EXIT (ADDR+2) = FST ENTRY FOR THE *OT*-TH OVERFLOW TRACK.
- *
- *T ADDR+2 12/ EQ,12/ FT,12/ CT,12/ CS,12/ ST
- *
- * EQ = EST ORDINAL.
- * FT = FIRST TRACK.
- * CT = FIRST TRACK.
- * CS = 0.
- * ST = 5.
- RTF6 LDCA IR+3,2 RETURN LOCATION IN PARAMETER BLOCK
- CWD FS WRITE REPLY
- RTF SUBR ENTRY/EXIT
- LDCA IR+3 READ PARAMETER BLOCK
- CRD FS
- LDCA IR+3,1
- CRD CM
- LDD CM+4
- ZJN RTF1 IF NO OVERFLOW TRACK INDEX
- STD CT
- AOD CT INCREMENT FOR ENTRY INTO LOOP
- LDD FS EST ORDINAL
- LPC 3777
- STD T5
- LDD FS+1 TRACK
- LPC 3777
- LMC 4000
- STD T6
- LDN 0 SET FST FIELDS FOR RETURN
- STD FS+3
- LDN 5
- STD FS+4
- RJM CMS CHECK MASS STORAGE
- NJN RTF1 IF ERROR
- LDD FS+1 STARTING TRACK
- LPC 3777
- ADC 4000
- RJM VTB VALIDATE TRACK BYTE
- ZJN RTF2 IF TRACK BYTE VALID
- RTF1 ERROR EROF * INCORRECT OVERFLOW FST REQUEST.*
- RTF2 SOD CT DECREMENT COUNTER
- ZJP RTF6 IF DONE
- LDD FS+1 TRACK
- STD T6
- SETMS IO
- RJM PDS PROCESS DEVICE STATUS
- LDM SLM SECTOR LIMIT
- SBN 1 LAST SECTOR ON TRACK
- STD T7
- LDC BFMS
- RJM RDS READ SECTOR
- PJN RTF3 IF NO ERROR
- ERROR ERSR * INCORRECT SECTOR READ IN CATALOG SCAN.*
- RTF3 ENDMS
- LDM BFMS GET LINK BYTE
- NJN RFT4 IF NOT EOF/EOI
- LDM BFMS+1 GET SECOND LINK BYTE
- RFT4 SHN 21-13
- PJN RTF5 IF NOT LINK BYTE
- SHN -6
- STD FS+1
- STD FS+2
- RJM VTB VALIDATE TRACK LINK BYTE
- ZJP RTF2 IF NO ERROR
- RTF5 ERROR ERLS * INCORRECT LINK BYTE IN CATALOG SCAN.*
- RWC SPACE 4,25
- *** RWC (7) - REWRITE CATALOG SECTOR.
- *
- * ENTRY (IR+3 - IR+4) = FET ADDRESS.
- * RANDOM ADDRESS FOR REWRITE IN FET+6.
- * SECTOR DATA IN CM BUFFER.
- *
- * EXIT SECTOR REWRITTEN, FET UPDATED AND SET COMPLETE.
- * CRI NOT UPDATED, RR NOT CLEARED, FST POSITION
- * IS THE TRACK AND SECTOR JUST WRITTEN.
- *
- * TO *ERR* IF ERROR; ERROR IDLE SET ON DEVICE
- * IF UNRECOVERABLE MS ERROR RETURNED ON REWRITE
- * OF CATALOG SECTOR.
- RWC SUBR ENTRY/EXIT
- LDN 5+2 MINIMUM FET LENGTH REQUIRED
- RJM IFQ INITIAL FET QUERY
- RJM PIO PRESET I/O
- RJM CMS CHECK MASS STORAGE
- NJN RWC1 IF ERROR
- LDD FS+1 FIRST TRACK
- RJM VTB VALIDATE THAT TRACK IS ON LABEL TRT CHAIN
- ZJN RWC2 IF NO ERROR
- RWC1 ERROR ERCR * INCORRECT CATALOG REWRITE REQUEST.*
- RWC2 NFA FA,R READ FNT
- CRD CM
- LDD CM+3
- LPN 1
- ZJN RWC3 IF FILE IN WRITE MODE
- ERROR ERWL * WRITE LOCK-OUT ON CATALOG FILE.*
- RWC3 LDD FS+1 FIRST TRACK
- STD T6
- LDCA IR+3,6 RANDOM ADDRESS FROM FET (RR)
- CRD CM
- LDD CM+4
- STD RI+1 RANDOM INDEX
- LDD CM+3
- STD RI
- LDN 0 ENSURE CURRENT TRT
- RJM CRA CONVERT RANDOM ADDRESS
- MJP RWC1 IF ADDRESS NOT VALID
- LDD T6
- LMD FS+1
- NJP RWC1 IF TRACK IS NOT THE SAME AS FIRST TRACK
- LDD T7 CHECK TRACK AT SECTOR LIMIT
- ADN 1
- STM BFMS NEXT SECTOR
- LMM SLM
- ZJN RWC4 IF AT LAST SECTOR IN TRACK
- RJM COB CHECK OUTPUT BUFFER (GET WORDS IN BUFFER)
- MJP RWC11 IF BUFFER ARGUMENT ERROR
- STM BFMS+1 WORDS IN SECTOR
- SBD HN
- ZJN RWC5 IF FULL SECTOR
- MJN RWC6 IF SHORT SECTOR
- ERROR ERWR * INCORRECT WORD COUNT IN CAT REWRITE.*
- RWC4 SETMS IO READ TO OBTAIN LINK BYTES
- RJM PDS PROCESS DEVICE STATUS
- LDC BFMS
- RJM RDS
- PJN RWC8 IF NO ERROR
- ERROR ERRR * INCORRECT SECTOR READ IN CAT REWRITE.*
- RWC5 LDC 214 *REWRITE* CODE
- UJN RWC7 SET *CIO* FUNCTION CODE
- RWC6 LDC 224 *REWRITER* CODE
- RWC7 STD T3 SET *CIO* FUNCTION CODE
- LDCA IR+3 GET *CIO* FUNCTION CODE FROM FET+0
- CRD CM
- LDD CM+4
- LPC 1774 CODE FIELD
- LMD T3
- ZJN RWC12 IF *CIO* FUNCTION CODE MATCHES
- ERROR ERCC * INCORRECT CIO CODE IN CAT REWRITE.*
- RWC8 LDM BFMS CHECK LINKAGE BYTES
- ZJN RWC9 IF EOF OR EOI
- LMC 3777
- ZJN RWC9 IF SYSTEM SECTOR
- RJM COB CHECK OUTPUT BUFFER (GET WORDS IN BUFFER)
- MJN RWC10 IF BUFFER ARGUMENT ERROR
- LMM BFMS+1
- ZJN RWC12 IF SECTOR LENGTH DID NOT CHANGE
- RWC9 ENDMS
- ERROR ERLR * CATALOG REWRITE LINK BYTE ERROR.*
- RWC10 ENDMS
- RWC11 ERROR ERBA * BUFFER ARGUMENT ERROR.*
- RWC12 LDM BFMS+1 NUMBER OF WORDS IN SECTOR
- STM T3 NUMBER OF WORDS TO READ
- LDC BFMS+2 PP BUFFER ADDRESS
- RJM RBB READ BINARY BUFFER
- SETMS IO,RW,EBMS
- RJM PDS PROCESS DEVICE STATUS
- LDC BFMS+WLSF
- RJM WDS
- PJN RWC13 IF NO ERROR
- LDC ERWW * MPF - INCORRECT WRITE IN CAT REWRITE.*
- RJM DFM
- RJM LTD LOG LOCATION TO DAYFILE
- RJM FDD LOG FAMILY NAME, DEVICE NUMBER TO DAYFILE
- LDN STEI SET ERROR IDLE STATUS
- RJM SES
- SMSTF GDEI
- ERROR EREI * DEVICE ERROR IDLE SET.*
- RWC13 ENDMS
- LDN ZERL UPDATE OUT POINTER IN FET
- CRD CM
- LDD OT+1
- STD CM+4
- LDD OT
- STD CM+3
- LDCA IR+3,3
- CWD CM
- * T6 AND T7 (CURRENT TRACK AND CURRENT SECTOR) ARE NOT
- * UPDATED TO REFLECT THE NEXT SECTOR TO AVOID THE NON-
- * STANDARD NEXT TRACK LINKAGE PROBLEM. THUS, THE FST
- * CURRENT POSITION WILL POINT AT THE SECTOR WRITTEN.
- RJM CIO COMPLETE I/O
- LJM RWCX RETURN
- TITLE SUBROUTINES.
- CDA SPACE 4,15
- ** CDA - COMPUTE DISK ADDRESS.
- *
- * ENTRY (A) = CM ADDRESS OF RANDOM ADDRESS.
- * (T5) = EST ORDINAL.
- *
- * EXIT (T6) = TRACK.
- * (T7) = SECTOR.
- * (RI - RI+1) = RANDOM ADDRESS.
- *
- * USES T6, CM - CM+4, RI - RI+1.
- *
- * CALLS CRA.
- *
- * MACROS ERROR, SFA.
- CDA SUBR ENTRY/EXIT
- CRD CM
- LDD CM+3
- STD RI
- LDD CM+4
- STD RI+1
- SFA EST,T5
- ADK EQDE
- CRD CM READ EST ENTRY
- LDD CM+4
- SHN 3 MST ADDRESS
- ADN ALGL
- CRD CM
- LDD CM FIRST TRACK OF IAPF CHAIN
- STD T6
- LDN 0 ENSURE CURRENT TRT
- RJM CRA COMPUTE RANDOM ADDRESS
- PJN CDAX IF ADDRESS IS IN TRACK CHAIN
- ERROR ERRA * RANDOM ADDRESS NOT ON IAPF CHAIN.*
- CFS SPACE 4,10
- ** CFS - COMPLETE FET STATUS.
- *
- * ENTRY (IR+3 - IR+4) = FET ADDRESS.
- *
- * EXIT FET STATUS SET COMPLETE (IF FET ADDRESS VALID).
- * (IR+3 - IR+4) = 0 (IF FET STATUS SET COMPLETE).
- *
- * USES CM - CM+4, IR+3 - IR+4.
- *
- * MACROS LDCA.
- CFS SUBR ENTRY/EXIT
- LDCA IR+3 FET ADDRESS
- CRD CM
- AOD CM+4
- LDCA IR+3
- CWD CM
- LDN 0 CLEAR FET ADDRESS
- STD IR+3
- STD IR+4
- UJN CFSX RETURN
- CIO SPACE 4,20
- ** CIO - COMPLETE I/O.
- *
- * COMPLETE FST WRITE AND SET FET STATUS COMPLETE.
- *
- * ENTRY OPERATION COMPLETED ON FILE.
- * (T5) = EST ORDINAL.
- * (T6) = TRACK.
- * (T7) = SECTOR.
- *
- * EXIT FET STATUS SET COMPLETE.
- * FST WRITTEN.
- *
- * USES FS - FS+4.
- *
- * CALLS CFS, SFC.
- CIO SUBR ENTRY/EXIT
- * UPDATE FST ENTRY AND WRITE.
- LDD FS+4 SET FILE STATUS
- SCN 16
- LMN 4
- STD FS+4
- LDD T6 SET TRACK
- STD FS+2
- LDD T7 SET SECTOR
- STD FS+3
- LDD T5 SET EST ORDINAL
- STD FS
- RJM SFC SET FST COMPLETE
- RJM CFS COMPLETE FET STATUS
- UJP CIOX RETURN
- CMS SPACE 4,15
- ** CMS - CHECK MASS STORAGE.
- *
- * ENTRY (T5) = EST ORDINAL.
- * (T6) = TRACK.
- *
- * EXIT (A) = 0 IF NO ERROR.
- * (TK) = LABEL TRACK.
- *
- * USES T1, CM - CM+4.
- *
- * MACROS SFA.
- CMS1 LDN 1 INDICATE ERROR
- CMS SUBR ENTRY/EXIT
- SFA EST,T5 READ EST ENTRY
- ADK EQDE
- CRD CM
- LDD CM
- SHN 21-13
- PJN CMS1 IF NOT MASS STORAGE
- LDD CM+4 MST/10
- STD T1
- SHN 3
- ADK TDGL
- CRD CM
- LDD CM+2 LENGTH OF TRT
- ADD TH 4000/4
- SHN 2
- SBD T6 REQUESTED TRACK
- MJN CMS1 IF INCORRECT TRACK
- LDD T1
- SHN 3
- ADN ALGL
- CRD CM
- LDD CM+1 LABEL TRACK
- LPC 3777
- ADC 4000
- STD TK
- LDD CM+3
- ZJP CMS1 IF NO CATALOG TRACKS
- LDN 0 INDICATE NO ERROR
- UJP CMSX RETURN
- FDD SPACE 4,15
- ** FDD - LOG FAMILY NAME AND DEVICE NUMBER TO DAYFILE.
- *
- * ENTRY (T5) = EST ORDINAL.
- *
- * EXIT MESSAGE ISSUED.
- *
- * USES CM - CM+4.
- *
- * CALLS C2D, DFM.
- *
- * MACROS SFA.
- FDD SUBR ENTRY/EXIT
- SFA EST,T5 READ EST ENTRY
- ADK EQDE
- CRD CM
- LDD CM+4 GET MST ADDRESS
- SHN 3
- ADK PFGL READ FAMILY NAME / DEVICE NUMBER
- CRM FDDA+6,ON MERGE INTO MESSAGE
- LDM FDDA+11 CONVERT DEVICE NUMBER
- RJM C2D
- STM FDDA+12 SET DEVICE NUMBER INTO MESSAGE
- LDM FDDA+11 BLANK FILL FAMILY NAME
- SCN 77 CLEAR BINARY DEVICE NUMBER
- ZJN FDD1 IF TWO OR MORE BLANKS NEEDED
- LMN 1R MERGE SINGLE BLANK INTO MESSAGE
- STM FDDA+11
- UJN FDD4 ISSUE MESSAGE
- FDD1 LDC 2R SET TWO BLANKS INTO MESSAGE
- STM FDDA+11
- LDN 3 NUMBER OF BYTES MAY NEED TO BLANK FILL
- STD CM
- FDD2 LDM FDDA+5,CM
- NJN FDD3 IF END OF FAMILY NAME FOUND
- LDC 2R SET TWO MORE BLANKS INTO MESSAGE
- STM FDDA+5,CM
- SOD CM DECREMENT COUNTER
- NJN FDD2 IF NOT DONE
- UJN FDD4 ISSUE MESSAGE
- FDD3 LPN 77 CHECK IF SINGLE BLANK NEEDED
- NJN FDD4 IF NO BLANK NEEDED
- LDM FDDA+5,CM
- LMN 1R SINGLE BLANK
- STM FDDA+5,CM
- FDD4 LDC FDDA
- RJM DFM ISSUE DAYFILE MESSAGE
- LJM FDDX RETURN
- FDDA DATA C*MPF - FM DN FFFFFFF NN.*
- IFQ SPACE 4,15
- ** IFQ - INITIAL FET QUERY.
- *
- * VALIDATE THAT THE FET IS LONG ENOUGH, IS WITHIN FL,
- * AND DOES NOT HAVE COMPLETE BIT SET.
- *
- * ENTRY (A) = MINIMUM FET LENGTH REQUIRED.
- * (IR+3 - IR+4) = FET ADDRESS.
- *
- * EXIT TO *ERR* IF FET IS NOT VALID.
- *
- * USES T2, T3, CM - CM+4.
- *
- * CALLS VCA.
- *
- * MACROS LDCA.
- IFQ SUBR ENTRY/EXIT
- STD T3 REQUIRED FET LENGTH
- LDCA IR+3 VALIDATE FET+0 ADDRESS
- CRD CM CHECK COMPLETE BIT CLEAR
- LDD CM+4
- LPN 1
- ZJN IFQ1 IF COMPLETE BIT IS CLEAR
- ERROR ERFC * FET COMPLETE BIT SET.*
- IFQ1 LDCA IR+3,1 GET FET LENGTH
- CRD CM
- LDD CM+3
- SHN -6
- ADN 5
- STD T2 CHECK FET LENGTH
- SBD T3
- PJN IFQ2 IF FET IS LONG ENOUGH
- ERROR ERFS * FET TOO SHORT.*
- IFQ2 LDD IR+3 CHECK IF LAST WORD OF FET IS WITHIN FL
- SHN 14
- LMD IR+4
- ADD T2
- SBN 1
- RJM VCA VALIDATE CENTRAL ADDRESS
- UJP IFQX RETURN
- LTD SPACE 4,10
- ** LTD - LOG LOCATION TO DAYFILE.
- *
- * ENTRY (T5) = EST ORDINAL.
- * (T6) = TRACK.
- * (T7) = SECTOR.
- *
- * EXIT MESSAGE ISSUED TO DAYFILE.
- *
- * CALLS C2D, DFM.
- LTD SUBR ENTRY/EXIT
- LDD T5 CONVERT EST ORDINAL
- RJM C2D
- STM LTDA+5
- LDD T5
- SHN -6
- RJM C2D
- STM LTDA+4
- LDD T6 CONVERT TRACK
- RJM C2D
- STM LTDA+11
- LDD T6
- SHN -6
- RJM C2D
- STM LTDA+10
- LDD T7 CONVERT SECTOR
- RJM C2D
- STM LTDA+15
- LDD T7
- SHN -6
- RJM C2D
- STM LTDA+14
- LDC LTDA ISSUE MESSAGE
- RJM DFM
- UJP LTDX RETURN
- LTDA DATA C*MPF - EQXXXX TKYYYY SCZZZZ.*
- PDS SPACE 4,10
- ** PDS - PROCESS DEVICE STATUS.
- *
- * ENTRY (MSD) = DEVICE STATUS UPON EXIT FROM *SETMS*.
- * (T5) = EST ORDINAL OF THE DEVICE.
- * DRIVER SOFTWARE IS LOADED.
- *
- * EXIT TO *ERR* IF DEVICE IS INACCESSIBLE.
- *
- * MACROS ENDMS, ERROR.
- PDS SUBR ENTRY/EXIT
- LDM MSD
- SHN 21-6
- PJN PDSX IF DEVICE IS AVAILABLE, RETURN
- ENDMS
- ERROR ERID * INACCESSIBLE DEVICE.*
- PIO SPACE 4,20
- ** PIO - PRESET I/O.
- *
- * SET DIRECT CELLS FOR I/O OPERATION.
- *
- * ENTRY (IR+3 - IR+4) = VALIDATED FET ADDRESS.
- *
- * EXIT (FA) = FST ADDRESS OF FILE.
- * (FS - FS+4) = FST ENTRY FOR FILE.
- * (T5) = EST ORDINAL.
- * (T6) = TRACK.
- * (T7) = SECTOR.
- * (FT - FT+1) = FIRST.
- * (IN - IN+1) = IN.
- * (OT - OT+1) = OUT.
- * (LM - LM+1) = LIMIT.
- *
- * CALLS SBA, SFP, VBA.
- PIO SUBR ENTRY/EXIT
- RJM SFP SET FILE PARAMETERS
- RJM SBA SET BUFFER ADDRESSES
- RJM VBA VALIDATE BUFFER ADDRESSES
- UJN PIOX RETURN
- SBA SPACE 4,15
- ** SBA - SET BUFFER ARGUMENTS.
- *
- * READ BUFFER POINTERS INTO DIRECT CELLS.
- *
- * ENTRY (IR+3 - IR+4) = FET ADDRESS.
- *
- * EXIT (FT - FT+1) = FIRST.
- * (IN - IN+1) = IN.
- * (OT - OT+1) = OUT.
- * (LM - LM+1) = LIMIT.
- *
- * USES CM - CM+4, FT - FT+1, IN - IN+1, LM - LM+1, OT - OT+1.
- SBA SUBR ENTRY/EXIT
- LDCA IR+3,4 READ LIMIT
- CRD LM-3
- SBN 1 READ OUT
- CRD OT-3
- SBN 1 READ IN
- CRD CM
- LDD CM+3
- STD IN
- LDD CM+4
- STD IN+1
- LDCA IR+3,1 READ FIRST
- CRD CM
- LDD CM+3
- LPN 77
- STD FT
- LDD CM+4
- STD FT+1
- UJP SBAX RETURN
- SFC SPACE 4,15
- ** SFC - SET FST COMPLETE.
- *
- * ENTRY (FS - FS+4) = FST.
- * (FA) = FNT ADDRESS.
- * (FA) = 0, IF NO FILE CURRENTLY SET BUSY.
- *
- * EXIT FST SET COMPLETE AND WRITTEN TO CENTRAL.
- * (FA) = 0.
- *
- * USES FA, FS+4.
- *
- * MACROS NFA.
- SFC SUBR ENTRY/EXIT
- AOD FS+4 SET STATUS COMPLETE
- LDD FA
- ZJN SFCX IF NO FST ADDRESS
- NFA FA,R WRITE FST
- ADK FSTL
- CWD FS
- LDN 0 CLEAR FNT ADDRESS
- STD FA
- UJN SFCX RETURN
- SFP SPACE 4,10
- ** SFP - SET FILE PARAMETERS.
- *
- * ENTRY (IR+3 - IR+4) = FET ADDRESS.
- *
- * EXIT (FA) = FNT ADDRESS.
- * (FS - FS+4) = FST ENTRY.
- * (T5) = EST ORDINAL.
- * (T6) = TRACK.
- * (T7) = SECTOR.
- * FST SET BUSY.
- *
- * USES FA, T5, T6, T7, FN - FN+4, FS - FS+4.
- *
- * CALLS SAF, SFB.
- *
- * MACROS ERROR, LDCA.
- SFP SUBR ENTRY/EXIT
- LDCA IR+3 READ FILE NAME
- CRD FN
- LDCA IR+3,4 READ FNT ADDRESS
- CRD FS
- LDD FS
- RJM SAF SEARCH FOR ASSIGNED FILE
- NJN SFP1 IF FILE FOUND
- ERROR ERNF * FILE NOT FOUND.*
- SFP1 RJM SFB SET FILE BUSY
- ZJN SFP2 IF FILE SET BUSY
- LDN 0 CLEAR FNT ADDRESS
- STD FA
- ERROR ERIO * I/O SEQUENCE ERROR.*
- SFP2 LDD FS
- LPC 3777
- STD T5 EST ORDINAL
- LDD FS+2
- STD T6 TRACK
- LDD FS+3
- STD T7 SECTOR
- UJP SFPX RETURN
- VBA SPACE 4,10
- ** VBA - VALIDATE BUFFER ADDRESSES.
- *
- * ENTRY (FT - FT+1) = FIRST.
- * (IN - IN+1) = IN.
- * (OT - OT+1) = OUT.
- * (LM - LM+1) = LIMIT.
- *
- * EXIT TO *ERR* IF BUFFER ARGUMENT ERROR.
- *
- * MACROS ERROR.
- VBA SUBR ENTRY/EXIT
- LDD LM CHECK LIMIT
- SHN 14
- LMD LM+1
- SBN 1
- SHN -6
- SBD FL
- PJN VBA1 IF LIMIT .GT. FL
- LDD OT CHECK OUT
- SBD LM
- SHN 14
- ADD OT+1
- SBD LM+1
- PJN VBA1 IF OUT .GE. LIMIT
- LDD OT
- SBD FT
- SHN 14
- ADD OT+1
- SBD FT+1
- MJN VBA1 IF OUT .LT. FIRST
- LDD IN CHECK IN
- SBD LM
- SHN 14
- ADD IN+1
- SBD LM+1
- PJN VBA1 IF IN .GE. LIMIT
- LDD IN
- SBD FT
- SHN 14
- ADD IN+1
- SBD FT+1
- MJN VBA1 IF IN .LT. FIRST
- UJP VBAX RETURN
- VBA1 ERROR ERBA * BUFFER ARGUMENT ERROR.*
- VCA SPACE 4,10
- ** VCA - VALIDATE CENTRAL ADDRESS.
- *
- * ENTRY (A) = RELATIVE ADDRESS.
- *
- * EXIT (A) = ABSOLUTE ADDRESS IF ADDRESS VALID.
- *
- * USES T1, T2.
- *
- * MACROS ERROR.
- VCA SUBR
- STD T2
- SCN 1
- ZJN VCA1 IF ADDRESS .LE. 1
- SCN 77
- SHN 6
- STD T1
- SHN 6
- SBD FL
- PJN VCA1 IF ADDRESS .GE. FL
- LDD T1 FORM ABSOLUTE ADDRESS
- SHN 6
- ADD RA
- SHN 6
- ADD T2
- UJP VCAX RETURN
- VCA1 ERROR ERAR * ADDRESS OUT OF RANGE.*
- VTB SPACE 4,10
- ** VTB - VALIDATE TRACK LINK BYTE.
- *
- * ENTRY (A) = TRACK LINK BYTE TO VALIDATE.
- * (TK) = LABEL TRACK.
- * (T5) = EST ORDINAL.
- *
- * EXIT (A) = 0 IF NO ERROR.
- *
- * USES T1, T2, T6, CM - CM+4.
- *
- * CALLS SNT.
- *
- * MACROS MONITOR.
- VTB SUBR ENTRY/EXIT
- STD T2 SAVE BYTE
- LDD TK LABEL TRACK
- STD T6
- LDN UTRS SET SUBFUNCTION CODE
- STD CM+3
- LDD T5 SET EST ORDINAL
- STD CM+1
- MONITOR STBM GET CURRENT TRT
- VTB1 RJM SNT GET LINK
- STD T6
- LMD T2
- ZJN VTB3 IF LINKED TO REQUESTED TRACK BYTE
- LDD T6
- SHN 21-13
- MJN VTB1 IF LINK BYTE
- VTB2 LDN 1 INDICATE ERROR
- UJN VTBX RETURN
- VTB3 LDD T6
- SHN 21-13
- PJN VTB2 IF NOT A LINK BYTE
- RJM SNT
- LDD T1
- ADC SHNI+6+14-4
- STM VTBA
- LDD CM+4
- VTBA SHN **
- PJN VTB2 IF NOT RESERVED
- LDN 0 INDICATE NO ERROR
- UJP VTBX RETURN
- TITLE BUFFER ALLOCATION.
- SPACE 4,10
- * BUFFER ALLOCATION.
- WEIA BSSZ WCEI*5+2 EOI SECTOR BUFFER (FOR *COMPWEI*)
- EBMS EQU BFMS-502 MASS STORAGE ERROR BUFFER
- TITLE COMMON DECKS.
- SPACE 4,10
- * COMMON DECKS.
- *CALL COMPCOB
- CRA$ EQU 0 ENSURE CURRENT TRT
- *CALL COMPCRA
- *CALL COMPCRS
- *CALL COMPC2D
- *CALL COMPRBB
- RIS$ EQU 1 READ IAPF SYSTEM SECTOR
- *CALL COMPRSS
- SAF$ EQU 0 SEARCH SPECIFIC ENTRY FIRST
- *CALL COMPSAF
- *CALL COMPSES
- *CALL COMPSFB
- *CALL COMPSNT
- *CALL COMPTGB
- *CALL COMPWEI
- SPACE 4,10
- ERRPL *-EBMS OVERFLOW INTO MS ERROR BUFFER
- ERRPL *-BFMS OVERFLOW INTO MS BUFFER
- TITLE PRESET.
- PRS SPACE 4,15
- ** PRS - PRESET.
- *
- * ENTRY (IR+2) = FUNCTION CODE.
- *
- * EXIT (T1) = FUNCTION PROCESSOR ADDRESS.
- *
- * USES FA, T1, CM - CM+4.
- *
- * CALLS CRS.
- *
- * MACROS ERROR.
- PRS SUBR
- LDN 0 CLEAR FST ADDRESS
- STD FA
- LDD CP CHECK IF CALLER IS *SSJ=*
- ADK SEPW
- CRD CM
- LDD CM
- SHN 21-2
- MJN PRS2 IF CALLER IS *SSJ=*
- PRS1 ERROR ERIC * INCORRECT CALL.*
- PRS2 RJM CRS
- ZJN PRS1 IF NOT CALLED WITH AUTO RECALL
- LDD IR+2
- STD T1 FUNCTION CODE
- SBN TFCNL
- MJN PRS4 IF LEGAL FUNCTION
- PRS3 ERROR ERIF * INCORRECT FUNCTION.*
- PRS4 LDM TFCN,T1 FUNCION PROCESSOR ADDRESS
- STD T1
- ZJN PRS3 IF INCORRECT FUNCTION
- UJP PRSX RETURN
- SPACE 4,10
- * TFCN - TABLE OF FUNCTION PROCESSORS.
- TFCN BSS 0
- CON DTK DROP TRACKS
- CON RWE REWRITE END OF INFORMATION
- CON DLK DELINK TRACKS
- CON 0 (RESERVED)
- CON RSC READ SYSTEM SECTOR
- CON WSC WRITE SYSTEM SECTOR
- CON RTF RETURN FST FOR CATALOG OVERFLOW TRACK
- CON RWC REWRITE CATALOG SECTOR
- TFCNL EQU *-TFCN
- SPACE 4,10
- OVERFLOW PPFW,EPFW
- SPACE 4
- END
cdc/nos2.source/opl871/mpf.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator