cdc:nos2.source:opl871:0rf
Table of Contents
0RF
Table Of Contents
- [00009] 0RF - UPDATE RESOURCE DEMAND FILE.
- [00011] UPDATE RESOURCE DEMAND FILE.
- [00087] MAIN PROGRAM.
- [00089] URF - MAIN ROUTINE.
- [00190] RRP - RETURN REMOVABLE PACK RESOURCE (OPTION 1).
- [00242] URC - UPDATE RESOURCE COUNTS.
- [00295] HNG - HANG PP.
- [00305] SUBROUTINES.
- [00307] CLE - CLEAR/UPDATE FILE ENTRY.
Source Code
- 0RF.txt
- IDENT 0RF,URFX
- PERIPH J
- BASE MIXED
- SST
- REL$ SET 0
- QUAL$ EQU 1 DEFINE UNQUALIFIED COMMON DECKS
- *COMMENT 0RF - UPDATE RESOURCE DEMAND FILE.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TITLE 0RF - UPDATE RESOURCE DEMAND FILE.
- SPACE 4,10
- *** 0RF - UPDATE RESOURCE DEMAND FILE.
- * M. E. MADDEN. 73/04/01.
- * W. E. GOEBEL. 76/05/12.
- * J. L. LARSON. 77/01/17.
- * J. L. LARSON. 81/12/14.
- * J. L. LARSON. 82/06/24.
- SPACE 4,10
- *** *0RF* IS A LOCATION FREE ROUTINE USED TO CLEAR
- * THE RESOURCE DEMAND (RSXDID) FILE ENTRY AT JOB COMPLETION
- * OR TO UPDATE THE RESOURCE DEMAND FILE ENTRY FOR RETURN
- * OF A REMOVABLE PACK RESOURCE.
- *
- * *0RF* IS CALLED BY *0DF* (RETURN/UNLOAD USER,S LAST
- * DIRECT ACCESS FILE ON A REMOVABLE PACK), *PFM* (DECREMENT
- * DEMAND ENTRY FOR *GET* ON REMOVABLE PACK), AND BY *1AJ*
- * FOR JOB TERMINATION PROCESSING (CLEAR DEMAND FILE ENTRY
- * ON JOB COMPLETION).
- SPACE 4,10
- *** ENTRY CONDITIONS.
- *
- * (FA) = RELATIVE FNT ADDRESS IN NFL.
- * (FS) = EQ
- * (FS+1) = X
- * ((LA)-1) = Y
- * WHERE LA = LOAD ADDRESS
- * X = OPTION
- * 4 = RSXDID ENTRY CLEAR
- * 5 = RSXDID ENTRY UPDATE FOR RETURN OF
- * REMOVABLE PACK RESOURCE
- * Y = RESOURCE UPDATE CONTROL
- * BIT 0 = 0, IF UPDATING ASSIGNED AND DEMAND
- * 1, IF NOT UPDATING DEMAND COUNT
- * EQ = EST ORDINAL FOR RETURN OF REMOVABLE
- * PACK RESOURCE (OPTION 1).
- * (FN - FN+4) = PACK NAME, IF RETURN REMOVABLE PACK RESOURCE
- * AND DEVICE IS CURRENTLY UNAVAILABLE.
- *
- * USES DIRECT CELLS 0 - 17.
- * *BFMS* MS SECTOR BUFFER.
- SPACE 4,10
- *** EXIT CONDITIONS.
- *
- * (A) .LT. 0 IF RESOURCE DEMAND FILE DEVICE INACCESSIBLE.
- * (T5) = EST ORDINAL OF RESOURCE DEMAND FILE.
- * (FSTL OF FNT) UPDATED IN CM.
- SPACE 4,10
- ** COMMON DECKS.
- *CALL COMPMAC
- *CALL COMSCPS
- *CALL COMSMSP
- ORG 5 KEEP LOCATIONS UNDER 473B
- *CALL COMPREL
- QUAL COMSRSX
- *CALL COMSRSX
- QUAL *
- *CALL COMSZOL
- SPACE 4,10
- **** DIRECT LOCATION ASSIGNMENTS.
- RI EQU 16 - 17 RANDOM INDEX (2 LOCATIONS)
- FS EQU 20 - 24 FST INFORMATION (5 LOCATIONS)
- FN EQU 40 - 44 PACK NAME
- FA EQU 57 RELATIVE FNT ADDRESS IN NFL
- SPACE 4,10
- * ASSEMBLY CONSTANTS.
- RPST EQU BFMS+2+/COMSRSX/RRPS*5-500B FWA SHARE TABLE
- RPSTL EQU BFMS+2+/COMSRSX/RPSL*5 LWA+1 SHARE TABLE
- TACT EQU BFMS+2+/COMSRSX/RVAL*5+3 TOTAL ASSIGNED COUNT
- TDCT EQU BFMS+2+/COMSRSX/RVAL*5+4 TOTAL DEMAND COUNT
- ****
- TITLE MAIN PROGRAM.
- URF SPACE 4,10
- ** URF - MAIN ROUTINE.
- ORG 5
- URF SUBR ENTRY/EXIT
- RJM IFP INITIALIZE GLOBAL FNT PROCESSOR
- * READ RESOURCE DEMAND FILE ENTRY.
- LDN RDFO FETCH RESOURCE DEMAND FILE FST ENTRY
- SFA FNT
- ADN FSTG
- CRD T5
- SETMS IO,RW
- LDD CM+4
- SHN 3
- ADN TRLL FETCH TRT POINTER
- CRD CM
- LDD T6 PRESERVE FIRST TRACK OF DEMAND FILE
- STD T3
- URF0 ZJN URFX IF FILE UNUSED
- LDD CM+3
- LPN 77
- SHN 14
- LMD CM+4 PRESET *COMPCRA*
- SBD TH
- STM CRAA+1
- SHN -14
- RAM CRAA
- * PAUSE AND CHECK FOR OPERATOR OVERRIDE.
- PSE LDN 20 SET TWO MILLISECOND DELAY
- STD T1
- PSE1 DELAY
- PAUSE
- LDD CM+1 CHECK ERROR FLAG
- LMN ORET
- ZJN URF0 IF OPERATOR OVERRIDE
- SOD T1
- NJN PSE1 IF NOT END OF DELAY
- * LDN SFIN
- ERRNZ SFIN CODE DEPENDS ON VALUE
- * STD T1
- LDN RDFO INTERLOCK DEMAND FILE FNT ENTRY
- SFA FNT
- RJM SFI
- NJN PSE IF INTERLOCK UNAVAILABLE
- * CALCULATE ENTRY SECTOR NUMBER FOR OPTION.
- URF1 LCN 2
- RAD FS+1
- SHN -1
- STD T1
- LDD CP FETCH DEMAND FILE RANDOM INDEX
- ADN RFCW
- CRD CM
- LDD CM+3
- LPN 77
- SHN 14
- ADD CM+4
- ZJN URF6 IF NO RANDOM INDEX
- ADD T1 BIAS FOR FIRST OR SECOND SECTOR
- STD RI+1
- SHN -14
- STD RI
- RJM CRA CONVERT RANDOM INDEX
- MJN URF6 IF RANDOM ADDRESS ERROR
- LDC BFMS
- RJM. RDS READ SECTOR
- PJN URF7 IF NO READ ERROR
- URF3 SHN 21-12
- MJN URF4 IF NON-RECOVERABLE ERROR
- SOM URFA
- URF4 LCN 0 SET CHANNEL RELEASE WITH NO UPDATE
- URF5 RJM CLE
- URF6 LDN CFIN SELECT CLEAR OPTION
- STD T1
- LDN RDFO
- SFA FNT
- RJM SFI CLEAR RESOURCE FILE INTERLOCK
- * LDN 0
- URFA ADN 0 SET EXIT CONDITION
- * LCN 77 (RECOVERABLE MS ERROR ENCOUNTERED)
- LJM URFX RETURN
- * DETERMINE TYPE OF PROCESSING.
- URF7 LDD FS+1
- ZJN URF5 IF CLEARING SECTOR 1 ENTRY
- SBN 2
- NJN URF9 IF NOT CLEARING SECTOR 2 ENTRY
- URF8 RJM CLE
- LDD T3 RESET FIRST TRACK
- STD T6
- LJM URF1 PROCESS SECTOR 1
- URF9 PJN RRP IF UPDATING SHARE TABLE IN SECTOR 2
- LJM URC UPDATE RESOURCE COUNTS IN SECTOR 1
- RRP SPACE 4,10
- ** RRP - RETURN REMOVABLE PACK RESOURCE (OPTION 1).
- *
- * EXIT TO *URF8* TO UPDATE SECTOR 2 DEMAND ENTRY.
- *
- * ERROR TO *HNG* IF MATCHING SHARE TABLE ENTRY NOT FOUND.
- *
- * MACROS SFA.
- RRP BSS 0 ENTRY
- LDC RPST-5 SCAN SHARE TABLE ENTRIES
- STD T2
- LDD MA MOVE PACK NAME
- CWD FN
- CRD CM
- LDD FS
- ZJN RRP1 IF EST ORDINAL NOT SPECIFIED
- SFA EST
- ADK EQDE
- CRD CM
- LDD CM+4 FETCH PACKNAME FOR SELECTED DEVICE
- SHN 3
- ADN PFGL
- CRD CM
- RRP1 LDN 5 CHECK NEXT SHARE TABLE ENTRY
- RAD T2
- STM RRPA
- ADC -RPSTL
- NJN RRP2 IF NOT END OF SHARE TABLE ENTRIES
- LJM HNG HANG PP
- RRP2 LDI T2
- LMD CM
- NJN RRP1 IF NO MATCH
- LDM. 1,T2
- LMD CM+1
- NJN RRP1 IF NO MATCH
- LDM. 2,T2
- LMD CM+2
- NJN RRP1 IF NO MATCH
- LDM. 3,T2 COMPARE LAST CHARACTER
- LMD CM+3
- SCN 77
- NJN RRP1 IF NO MATCH
- LDM. 4,T2 GET RESOURCE POINTER
- STD FS+3
- LDN ZERL
- CRM. *,ON CLEAR SHARE TABLE ENTRY
- RRPA EQU *-1
- * LDN ZERL+1
- LJM URF8 UPDATE SECTOR 2 DEMAND FILE ENTRY
- URC SPACE 4,10
- ** URC - UPDATE RESOURCE COUNTS.
- *
- * ENTRY (FS+3) = 3/, 3/UNIT COUNT, 6/RESOURCE INDEX.
- *
- * EXIT TO *URF5* TO UPDATE SECTOR 1 DEMAND FILE ENTRY
- *
- * ERROR TO *HNG* IF RESOURCE COUNTS INVALID.
- *
- * USES T1, T2.
- URC BSS 0 ENTRY
- LDD FS+3 CALCULATE RESOURCE BYTE POSITION
- SHN 14
- STD T1 UNIT COUNT
- SHN -14
- STD T2
- SHN 2
- ADC BFMS+2+5
- RAD T2
- LDD T1
- SBN 5
- MJN URC1 IF NOT IN SECOND WORD OF ENTRY
- ADN 1 ADJUST TO SECOND WORD
- URC1 RAD T2
- * DECREMENT RESOURCE ASSIGNED COUNT AND TOTAL ASSIGNED COUNT.
- LDC -100 DECREMENT RESOURCE ASSIGNED COUNT
- RAI T2
- MJN HNG IF RESOURCE ASSIGNED COUNT OUT OF RANGE
- LDM. TDCT CHECK TOTAL DEMAND COUNT = 1
- SBN 1
- ZJN URC2 IF ONLY ONE CONCURRENT RESOURCE SCHEDULED
- LDM -1
- NJN URC3 IF UNLOAD (DECREMENT ASSIGNED COUNT)
- * IF ALL DEMANDS SATISFIED, DECREMENT RESOURCE DEMAND COUNT
- * AND TOTAL DEMAND COUNT.
- URC2 LDM. TACT CHECK ALL DEMANDS SATISFIED
- SBM. TDCT
- MJN URC3 IF NOT ALL DEMANDS SATISFIED
- SOI T2 DECREMENT RESOURCE DEMAND COUNT
- SHN 21-5
- MJN HNG IF RESOURCE DEMAND COUNT OUT OF RANGE
- SOM. TDCT DECREMENT TOTAL DEMAND COUNT
- MJN HNG IF TOTAL DEMAND COUNT NOT IN RANGE
- URC3 SOM. TACT
- MJN HNG IF TOTAL ASSIGNED COUNT OUT OF RANGE
- LDN 1
- LJM URF5 UPDATE DEMAND FILE ENTRY AND EXIT
- HNG SPACE 4,10
- ** HNG - HANG PP.
- *
- * EXIT TO *URF4* IF PP HANG CLEARED.
- *
- * MACROS MONITOR.
- HNG BSS 0 ENTRY
- MONITOR HNGM HANG PP
- LJM URF4 RELEASE CHANNEL AND EXIT
- TITLE SUBROUTINES.
- CLE SPACE 4,20
- ** CLE - CLEAR/UPDATE FILE ENTRY.
- *
- * ENTRY (A) = 0, IF CLEAR FILE ENTRY.
- * (A) .GT. 0, IF UPDATE FILE ENTRY.
- * (A) .LT. 0, IF RELEASE CHANNEL WITH NO UPDATE.
- * (FA) = RELATIVE FNT ADDRESS IN NFL.
- * (T5 - T7) = RESOURCE DEMAND FILE MS PARAMETERS.
- * (FS - FS+4) = FST INFORMATION.
- * (BFMS) = DEMAND FILE ENTRY (MS SECTOR).
- *
- * EXIT RESOURCE FILE SECTOR REWRITTEN FROM BFMS BUFFER
- * FOR ENTRY CONDITION (A) .GE. 0.
- *
- * ERROR TO *URF3* IF MASS STORAGE ERROR.
- *
- * USES T1, CM - CM+4.
- *
- * CALLS WDS.
- *
- * MACROS ENDMS, NFA.
- CLE3 LDD FA
- ZJN CLE4 IF NO FNT ENTRY
- NFA FA,R
- ADN FSTL UPDATE FST INFORMATION
- CWD FS
- CLE4 ENDMS
- CLE SUBR EXTRY/EXIT
- NJN CLE2 IF UPDATE ONLY
- LDC 500
- STD T1
- CLE1 LDN 0
- STM. BFMS+1,T1
- SOD T1
- NJN CLE1 IF MORE TO CLEAR
- CLE2 MJN CLE4 IF NO UPDATE
- LDC BFMS+WLSF
- RJM. WDS WRITE SECTOR
- PJN CLE3 IF NO ERROR
- LJM URF3 PROCESS MASS STORAGE ERROR
- SPACE 4,10
- ** COMMON DECKS.
- IRA$ SET 1 DEFINE INITIALIZATION
- REL$ SET 1
- *CALL COMPCRA
- FNT$ EQU 1 ASSEMBLE SYSTEM FNT PROCESSOR
- IFP$ EQU 1 ASSEMBLE REMOTE INITIALIZATION CODE
- *CALL COMPGFP
- SFI$ EQU 1 SELECT IMMEDIATE RETURN FROM *SFI*
- *CALL COMPSFI
- IFP HERE CODE TO INITIALIZE SYSTEM FNT PROCESSOR
- SPACE 4,10
- RSTR
- SPACE 4,10
- OVERFLOW 5,ZRFL
- END
cdc/nos2.source/opl871/0rf.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator