cdc:nos2.source:opl871:0df
Table of Contents
0DF
Table Of Contents
- [00007] 0DF - DROP FILE.
- [00009] DROP FILE.
- [00088] MAIN ROUTINE.
- [00090] DRF - MAIN ROUTINE.
- [00097] EZO - EXECUTE ZERO-LEVEL OVERLAY.
- [00149] PFT - RELEASE PERMANENT FILE.
- [00247] IFP - IDENTIFY FILE PROCESSOR.
- [00294] TFTY - TABLE OF FILE TYPE PROCESSORS.
- [00321] LIB - PROCESS LIBRARY FILE.
- [00359] INP - PROCESS INPUT FILE.
- [00391] PTY - PROCESS PRIMARY FILE.
- [00410] QUE - PROCESS QUEUE FILE.
- [00417] SYS - PROCESS SYSTEM FILE.
- [00424] RFA - RELEASE FILE ASSIGNMENT.
- [00516] RMS - RELEASE MASS STORAGE.
Source Code
- 0DF.txt
- IDENT 0DF,DRFX
- PERIPH J
- BASE MIXED
- SST
- *COMMENT 0DF - DROP FILE.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TITLE 0DF - DROP FILE.
- SPACE 4,10
- *** 0DF - DROP FILE.
- * G. R. MANSFIELD. 70/07/30.
- * R. E. TATE. 70/11/30.
- * M. E. MADDEN. 73/04/01.
- * D. D. SADLER 75/01/18.
- * P. D. HAAS. 85/01/20.
- SPACE 4,10
- *** 0DF IS A LOCATION FREE ROUTINE TO BE USED FOR
- * DROPPING ANY SYSTEM FILE.
- *
- * ALL FILES ARE REMOVED FROM THE LOCAL FNT
- * AND THE ASSIGNED EQUIPMENT OR TRACKS WILL BE RELEASED.
- * THE JOBS MASS STORAGE PRU LIMIT IS ALSO INCREMENTED, UNLESS
- * BIT 0 OF ((LA)-1) IS SET.
- * *0DF* DOES NOT SET THE FILE BUSY BEFORE DROPPING.
- * NOTE - *0DF* WILL HANG WITH AN *HNGM* MONITOR FUNCTION
- * FOR THE FOLLOWING CONDITIONS -
- * 1. FNT ADDRESS FOR FILE TO BE DROPPED IS ZERO.
- * 2. FILE TYPE IN FNT ENTRY IS ILLEGAL.
- * 3. PROCESSOR IS NOT DEFINED FOR THE FILE TYPE.
- SPACE 4,10
- *** ENTRY CONDITIONS.
- *
- *
- * (FA) = 12/FNT ENTRY RELATIVE ADDRESS IN NFL
- *
- * ((LA)-1) = 10/, 1/D, 1/R
- *
- * WHERE -
- *
- * D = PROCESS *ROFT* FILES. THIS SHOULD ONLY BE SET BY
- * *1RO* DURING ERROR PROCESSING OR BY *1AJ* DURING
- * *DMP=* PROGRAM ABNORMAL TERMINATION PROCESSING TO
- * ALLOW THE DM* FILE TO BE RELEASED.
- *
- * R = RESOURCE UPDATE CONTROL. FOR MAGNETIC TAPE
- * FILES AND PERMANENT FILES ON PACKS (FOR
- * SUBSEQUENT CALL TO *0RF*/*0RT*).
- * 0 = *RETURN* FILE.
- * 1 = *UNLOAD* FILE (DOES NOT DECREMENT RESOURCE
- * FILE COUNT).
- SPACE 4,10
- *** EXIT CONDITIONS.
- *
- *
- * (A) = (FA) = 0 IF OPERATION COMPLETED SUCCESSFULLY.
- *
- * (A) .LT. 0 IF MASS STORAGE DEVICE INACCESSIBLE.
- * (T5) = EST ORDINAL OF INACCESSIBLE DEVICE, IF INACCESSIBLE.
- * NOTE - THE INACCESSIBLE DEVICE MAY BE A DEVICE OTHER
- * THAN THE ONE ON WHICH THE FILE BEING RETURNED
- * RESIDES.
- * (FA) = FNT ORDINAL, IF DEVICE INACCESSIBLE.
- * FNT LEFT BUSY, IF DEVICE INACCESSIBLE.
- * (FS - FS+4) = FST WORD OF FNT ENTRY.
- SPACE 4,10
- ** 0-LEVEL OVERLAYS CALLED.
- *
- *
- * *0DQ*, *0FA*, *0PT*, *0RF*, *0RP*, *0RT*.
- SPACE 4,10
- ** COMMON DECKS.
- *CALL COMPMAC
- *CALL COMPREL
- *CALL COMSCPS
- *CALL COMSLFD
- *CALL COMSZOL
- SPACE 4,10
- **** DIRECT LOCATION ASSIGNMENTS.
- T8 EQU 16 CHECKPOINT REQUEST
- FS EQU 20 - 24 FST INFORMATION (5 LOCATIONS)
- QA EQU 26
- FA EQU 57 FNT ENTRY RELATIVE ADDRESS IN NFL
- ****
- TITLE MAIN ROUTINE.
- DRF SPACE 4,10
- ** DRF - MAIN ROUTINE.
- ORG 5
- DRF SUBR ENTRY/EXIT
- LJM IFP IDENTIFY AND EXECUTE FILE PROCESSOR
- EZO SPACE 4,25
- ** EZO - EXECUTE ZERO-LEVEL OVERLAY.
- *
- * ENTRY (A) = OVERLAY NAME.
- * (FA) = RELATIVE FNT ADDRESS IN NFL.
- * (FS - FS+4) = FST INFORMATION.
- * ((OVL)-1) = FLAGS.
- *
- * EXIT (A) = (FA) = 0.
- *
- * ERROR TO *DRFX* IF MASS STORAGE DEVICE INACCESSIBLE.
- *
- * CALLS EXR, *0DQ*, *0FA*, *0PT*, *0RF*, *0RP*, *0RT*.
- *
- * MACROS EXECUTE.
- EZO BSS 0
- EXECUTE 0DQ,=
- EXECUTE 0FA,=
- EXECUTE 0PT,=
- EXECUTE 0RF,=
- EXECUTE 0RP,=
- EXECUTE 0RT,=
- RJM. EXR
- PJN DRF2 IF NO INACCESSIBLE DEVICE ERROR
- NFA FA,R
- ADN FSTL RESTORE FST INFORMATION
- CRD FS
- LCN 0
- DRF1 UJN DRFX EXIT
- DRF2 UJN *+2 CHECK EQUIPMENT ASSIGNED
- DRFA EQU DRF2
- UJN PFT4 CONTINUE WITH *0RF* CALL
- DRF3 LDC 0
- DRFB EQU *-1
- ZJN DRF4 IF NOT TO RELEASE EQUIPMENT
- STD CM+1
- MONITOR DEQM RELEASE ASSIGNED EQUIPMENT
- * CLEAR FNT ENTRY IN NFL.
- DRF4 LDD FA SET RELATIVE FNT ADDRESS
- STD CM+4
- LDN DLFS SELECT DELETE LOCAL FILE
- STD CM+1
- MONITOR PLFM CLEAR FNT ENTRY
- * LDN 0
- STD FA
- UJN DRFX EXIT
- PFT SPACE 4,30
- ** PFT - RELEASE PERMANENT FILE.
- *
- * USES CM - CM+4.
- *
- * CALLS EZO.
- *
- * MACROS MONITOR, NFA, SFA.
- *
- * NOTE LOADING *0FA*, *0OD*, *0PT*, *0RF*, *0RP*, OR *0RT*
- * AND THEIR PARAMETERS OVERLAYS CODE STARTING AT *PFT*.
- *
- * *0FA* IS CALLED TO RETURN A PERMANENT FILE FOR
- * WHICH A MATCHING FAST-ATTACH FNT ENTRY WAS FOUND.
- *
- * *0OD* IS CALLED TO RETURN ALL OPTICAL DISK FILES.
- * *OPT* IS CALLED TO CLEAR THE PRIMARY FILE POINTERS
- * IN THE JOB EJT ENTRY WHEN DROPPING THE PRIMARY FILE.
- *
- * *0RP* IS CALLED TO RETURN ALL OTHER PERMANENT FILES.
- *
- * *0RF* IS CALLED AFTER *0RP* TO DECREMENT THE JOB
- * RESOURCE COUNTS WHENEVER THE PERMANENT FILE IS THE
- * LAST DIRECT ACCESS FILE ATTACHED TO THIS JOB THAT
- * RESIDES ON A SPECIFIC REMOVABLE AUXILIARY PACK.
- *
- * *0RT* IS CALLED FOR ALL FILES ASSIGNED TO TAPE
- * EQUIPMENT (*MT*, *NT*, *CT*, *AT* OR *TE*) TO CLEAR
- * THE ASSOCIATED VSN FILE ENTRY AND TO DECREMENT THE
- * JOB RESOURCE COUNTS.
- PFT4 LDN 5 FLAG *0RP* PROCESSING COMPLETED
- STD FS+1
- NFA FA,R STORE FST (FIRST TRACK BYTE CLEAR)
- ADN FSTL
- CWD FS
- AOM DRFA-OVL ENABLE DELETION OF FNT ENTRY
- PFT5 LDM -1-OVL GET *0DF* PARAMETER WORD
- LPN 1
- STM -1 SET RESOURCE UPDATE CONTROL
- LDC 3R0RF
- LJM EZO-OVL LOAD AND EXECUTE *0RF*
- OVL EQU *+1 ZERO-LEVEL OVERLAY LOAD ADDRESS
- PFT BSS 0 ENTRY
- LDD CM+3 SET FILE MODE
- LPN 77
- STM OVL-1 SET *0RP* PARAMETER WORD
- LDD FS+4 CHECK FILE TYPE
- SHN 21-12
- PJN PFT1 IF NOT FAFT
- LDC 2RFA SET *0FA* CALL
- STM EZOA
- PFT1 SFA EST,FS FETCH EST ENTRY
- ADK EQDE
- CRD CM
- LDD CM+4
- SHN 3
- ADN MDGL
- CRD CM
- LDD CM
- SHN 0-12
- LMN 3
- NJN DRF5 IF NOT REMOVABLE AUXILIARY DEVICE
- LDD FA
- STD CM+4 SET RELATIVE FNT ADDRESS
- LDN DLCS
- STD CM+1
- MONITOR PLFM COUNT FILES ATTACHED ON DEVICE
- SOD CM+3
- NJN DRF5 IF NOT LAST FILE
- * PROCESS LAST FILE ON A REMOVABLE AUXILIARY DEVICE.
- LDD FS+1
- SHN 0-13
- NJN PFT3 IF *0RP* NOT YET CALLED
- LDN OVL
- RAD LA
- LDD FS+1
- NJN PFT2 IF INTERMEDIATE PROCESSING STATE
- LJM PFT4-OVL DECREMENT RESOURCE COUNTS
- PFT2 LJM PFT5-OVL CONTINUE PROCESSING
- PFT3 SOM DRFA ENABLE *0RF* PROCESSING
- * SET ZERO-LEVEL OVERLAY ENTRY CONDITIONS.
- DRF5 LDN OVL ADJUST LOAD ADDRESS
- RAD LA
- LDC 3R0RP SET OVERLAY NAME
- EZOA EQU *-1
- LJM EZO-OVL EXECUTE OVERLAY
- IFP SPACE 4,15
- ** IFP - IDENTIFY FILE PROCESSOR.
- *
- * ENTRY (FA) = FNT ENTRY RELATIVE ADDRESS IN NFL.
- *
- * EXIT TO FILE PROCESSORS WITH FOLLOWING -
- * (A) = 2.
- * (T8) = CHECKPOINT REQUEST.
- * (CM - CM+4) = FNT ENTRY.
- * (FS - FS+4) = FST INFORMATION.
- *
- * USES T1.
- *
- * MACROS MONITOR, NFA.
- IFP BSS 0 ENTRY
- LDM -1 CHECK *DROP ROFT* FLAG
- LPN 2
- NJN IFP1 IF *ROFT* FILE TO BE DROPPED
- STM TFTY+ROFT CLEAR PROCESSOR
- IFP1 LDD FA
- ZJN IFP2 IF NO FNT ADDRESS
- NFA FA,R
- CRD CM READ FNT
- ADN FSTL
- CRD FS
- LDD CM+4 GET FILE TYPE
- SHN -6
- SBN MXFT
- PJN IFP2 IF ILLEGAL FILE TYPE
- ADC TFTY+MXFT SET TABLE ADDRESS
- ADD LA
- STD T1
- LDI T1
- NJN IFP3 IF PROCESSOR PRESENT
- IFP2 MONITOR HNGM HANG PP
- * LDN 0
- LJM DRFX EXIT
- IFP3 LPC 3777 SET PROCESSOR ADDRESS
- STM IFPA
- LMI T1 SET CHECKPOINT REQUEST
- STD T8
- LDN 2
- LJM * EXIT TO FILE PROCESSOR
- IFPA EQU *-1
- TFTY SPACE 4,10
- ** TFTY - TABLE OF FILE TYPE PROCESSORS.
- *
- * ENTRY 1 WORD.
- * INDEXED BY FILE TYPE.
- *
- *T, 1/C, 11/ADDR
- *
- * C = CHECKPOINT REQUEST.
- * ADDR = ADDRESS OF FILE PROCESSOR.
- TFTY INDEX
- INDEX INFT,INP+4000 INPUT
- INDEX QFFT,QUE+4000 QUEUED = DROP FILE
- INDEX ROFT,RFA ROLLOUT = RELEASE FILE
- * INDEX ROFT,0 (IF *ROFT* FILE ILLEGAL)
- INDEX LIFT,LIB LIBRARY
- INDEX PTFT,PTY PRIMARY
- INDEX PMFT,PFT PERMANENT = 0RP
- INDEX SYFT,SYS SYSTEM FILE TYPE
- INDEX LOFT,RFA LOCAL FILE TYPE = DROP FILE
- INDEX MXFT
- LIB TITLE FILE TYPE PROCESSORS.
- LIB SPACE 4,20
- ** LIB - PROCESS LIBRARY FILE.
- *
- * EXIT TO *SYS*.
- * IF THE TRACK INTERLOCK BIT (BIT 11 OF FST BYTE 4)
- * IS SET, THE TRACK INTERLOCK ON THE FIRST TRACK IS
- * CLEARED. IF THE PF ACTIVITY BIT (BIT 3 OF FUT BYTE 2)
- * IS SET, THE PF ACTIVITY COUNT FOR THAT EQUIPMENT
- * IS DECREMENTED.
- *
- * USES CM - CM+4.
- *
- * MACROS MONITOR, NFA.
- LIB BSS 0 ENTRY
- LDD FS+4 CHECK TRACK INTERLOCK
- SHN 21-11
- PJN LIB1 IF INTERLOCK NOT SET
- LDD FS+1
- STD CM+2
- LDD FS SET EST ORDINAL
- STD CM+1
- LDN CTIS SELECT CLEARING OF TRACK INTERLOCK
- STD CM+3
- MONITOR STBM CLEAR INTERLOCK
- LIB1 NFA FA,R READ *FUTL* WORD OF FNT
- ADN FUTL
- CRD CM
- LDD CM+2
- LPN 10
- ZJN LIB2 IF PF ACTIVITY BIT NOT SET
- LDD FS
- STD CM+1
- LDN DPAS DECREMENT PF ACTIVITY
- STD CM+3
- MONITOR STBM
- LIB2 LJM SYS RETURN SYSTEM FILE
- INP SPACE 4,15
- ** INP - PROCESS INPUT FILE.
- *
- * EXIT TO *DRFX*, IF INPUT FILE IS CONTROL STATEMENT FILE.
- * TO *RFA*, IF NOT CONTROL STATEMENT FILE.
- *
- * MACROS NFA.
- INP BSS 0 ENTRY
- LDC FNTN CHECK FNT RELATIVE ADDRESS
- LMD FA
- NJN INP2 IF NOT CONTROL STATEMENT FILE
- LDD CM+4
- SCN 77 CHANGE FILE NAME TO -INPUT*-
- RAM INPB+4
- AOD FS+4 SET STATUS COMPLETE
- LDD LA
- RAM INPA
- NFA FA,R
- CWM. INPB,ON REWRITE FILE NAME
- INPA EQU *-1
- ADK FSTL-1 STORE FILE STATUS
- CWD FS
- LDN 0
- LJM DRFX EXIT
- INP2 LDN 0
- UJN RFA RELEASE FILE ASSIGNMENT
- INPB VFD 42/6LINPUT*,6/1,12/NDST
- PTY SPACE 4,10
- ** PTY - PROCESS PRIMARY FILE.
- *
- * EXIT TO *RFA*.
- *
- * USES CM - CM+4.
- PTY BSS 0 ENTRY
- LDD CP
- ADN TFSW
- CRD CM
- LDN 0 CLEAR PRIMARY FILE RELATIVE ADDRESS
- STD CM+1
- LDD CP
- ADN TFSW
- CWD CM
- LDN 1
- * UJN RFA RELEASE FILE ASSIGNMENT
- QUE SPACE 4,10
- ** QUE - PROCESS QUEUE FILE.
- *
- * EXIT TO *RFA*.
- QUE EQU INP2
- SYS SPACE 4,10
- ** SYS - PROCESS SYSTEM FILE.
- *
- * EXIT TO *DRF3*.
- SYS EQU DRF3
- RFA SPACE 4,25
- ** RFA - RELEASE FILE ASSIGNMENT.
- *
- * ENTRY (A) = 0 IF QUEUE FILE.
- * = 1 IF PRIMARY FILE.
- * = 2 FOR OTHER FILE TYPES.
- * (T8) = CHECKPOINT REQUEST.
- * (FA) = FNT ADDRESS.
- * (FS - FS+4) = FST INFORMATION.
- *
- * EXIT TO *DRF5* TO LOAD AND EXECUTE -
- * *0DQ* IF QUEUE FILE.
- * *0OD* IF OPTICAL DISK FILE.
- * *0PT* IF PRIMARY FILE.
- * *0RT* IF TAPE FILE.
- * TO *SYS* FOR ALL OTHER FILES.
- *
- * USES T2, QA, CM - CM+4.
- *
- * CALLS RMS.
- *
- * MACROS SFA.
- RFA BSS 0 ENTRY
- STD T2
- LDM -1 SET RETURN / UNLOAD FLAG
- LPN 1
- STM OVL-1
- LDD FS
- ZJN RFA3 IF EST ORDINAL ZERO
- SFA EST
- ADK EQDE READ EST ENTRY
- CRD CM
- LDD CM CHECK EQUIPMENT TYPE
- SHN 21-13
- PJN RFA6 IF NOT MASS STORAGE
- SOD T2
- MJN RFA2 IF QUEUE FILE
- RJM RMS RELEASE MASS STORAGE SPACE
- LDD T2
- NJN RFA3 IF NOT PRIMARY FILE
- STD FS
- STD FS+1
- LDC 2RPT SELECT *0PT*
- RFA1 STM EZOA
- LJM DRF5 LOAD AND EXECUTE OVERLAY
- RFA2 LDD FS+1
- NJN RFA4 IF FILE USED
- RFA3 LJM SYS DELETE FNT ENTRY
- RFA4 LDN 0 SELECT QFT SEARCH
- STD QA
- STM OVL-1 RELEASE DISK SPACE
- LDC 2RDQ
- UJN RFA1 LOAD AND EXECUTE *0DQ*
- RFA6 LDD CM+3 CHECK DEVICE TYPE
- LMC 2RNT
- ZJN RFA8 IF TAPE DEVICE
- LMC 2RMT&2RNT
- ZJN RFA8 IF TAPE DEVICE
- LMC 2RCT&2RMT
- ZJN RFA8 IF TAPE DEVICE
- LMC 2RAT&2RCT
- ZJN RFA8 IF TAPE DEVICE
- LDD CM
- SHN 21-12
- MJN RFA7 IF ALLOCATABLE DEVICE
- LDD FS
- LPC 777
- STM DRFB SET EQUIPMENT TO RELEASE
- RFA7 LDD CM+3 CHECK DEVICE TYPE
- LMC 2RTE
- ZJN RFA8 IF *TE*
- LMC 2ROD&2RTE
- NJP RFA3 IF NOT *OD*
- LDC 2ROD SET *0OD* OVERLAY
- STM RFAA
- RFA8 LDD FS+2
- LPN 77 ISOLATE RANDOM ADDRESS
- STD FS+2
- LDD FS+4
- SHN 21-2
- MJN RFA9 IF PREVIOUS *0RT* REJECT
- SHN 2-21
- STD FS+4
- RFA9 LDC 2RRT
- * LDC 2ROD (IF OPTICAL DISK)
- RFAA EQU *-1
- UJP RFA1 LOAD AND EXECUTE *0RT* OR *0OD*
- RMS SPACE 4,15
- ** RMS - RELEASE MASS STORAGE.
- *
- * ENTRY (FA) = FNT ENTRY RELATIVE ADDRESS IN NFL.
- * (T8) = CHECKPOINT REQUEST.
- * (FS - FS+4) = FST INFORMATION.
- *
- * USES CM - CM+4.
- *
- * MACROS MONITOR.
- RMS SUBR ENTRY/EXIT
- LDD FS+1
- ZJN RMSX IF FILE UNUSED
- STD CM+2
- LDD FS
- LMD T8 MERGE CHECKPOINT REQUEST
- STD CM+1
- MONITOR DTKM DROP TRACKS
- * INCREMENT PRU LIMIT FIELD IN CONTROL POINT AREA.
- * ACTUAL COUNT OF SECTORS RETURNED VIA DTKM IS IN CM+3 - CM+4.
- LDN CICS INCREMENT CP AREA FIELD FUNCTION CODE
- STD CM
- LDK ACLW ADDRESS OF MASS STORAGE SECTOR LIMIT
- STD CM+1
- LDN 0D*100+18D POSITION AND WIDTH OF LIMIT FIELD
- STD CM+2
- LDD MA UADM FUNCTION MESSAGE BUFFER CONTENTS
- CWD CM
- LDN 1 SET UADM REQUEST COUNT AND NO DROP OF PPU
- STD CM+1
- STD CM+2
- MONITOR UADM INCREMENT MASS STORAGE SECTOR LIMIT
- * LDN 0
- UJN RMSX RETURN
- SPACE 4,10
- RSTR RESTORE INSTRUCTIONS
- OVERFLOW SPACE 4,10
- ** OVERFLOW CHECKS.
- *
- * BYTES WHICH CAN BE ADDED BEFORE *OVL* IN *0DF*
- * AND STILL ALLOW *0DQ*, *0FA*, *0PT*, *0RF*, *0RP*, AND
- * *0RT* TO LOAD.
- ERRNG ZDFL-OVL-ZDQL CHECK LENGTH OF *0DQ*
- ERRNG ZDFL-OVL-ZFAL CHECK LENGTH OF *0FA*
- ERRNG ZDFL-OVL-ZODL CHECK LENGTH OF *0OD*
- ERRNG ZDFL-OVL-ZPTL CHECK LENGTH OF *0PT*
- ERRNG ZDFL-OVL-ZRFL CHECK LENGTH OF *0RF*
- ERRNG ZDFL-OVL-ZRPL CHECK LENGTH OF *0RP*
- ERRNG ZDFL-OVL-ZRTL CHECK LENGTH OF *0RT*
- ERRNG ZDFL-* BYTES WHICH CAN BE ADDED TO *0DF*
- END
cdc/nos2.source/opl871/0df.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator