cdc:nos2.source:opl871:pflist
Table of Contents
PFLIST
Table Of Contents
- [00002] PFLIST - LIST PF UTILITY SUMMARY FILE.
- [00010] LIST PF UTILITY SUMMARY FILE.
- [00046] ASSEMBLY CONSTANTS.
- [00064] RESERVED LOCATIONS AND FETS.
- [00094] MAIN ROUTINES.
- [00188] CSO - CHECK FOR SORTED OUTPUT.
- [00215] SUBROUTINES.
- [00217] APR - ABORT PROCESSOR.
- [00223] IFM - ISSUE FILE COUNT MESSAGES.
- [00243] RDB - READ DATA BLOCK FROM SUMMARY FILE.
- [00295] RIP - REPRIEVE INTERRUPT PROCESSOR.
- [00307] SER - PROCESS SUMMARY FILE ERROR.
- [00352] BUFFERS.
- [00375] PFLIST PRESET.
- [00377] PRS - PRESET PROGRAM.
- [00488] TUTA - TABLE OF UTILITY ATTRIBUTES.
Source Code
- PFLIST.txt
- IDENT PFLIST1,/COMSPFS/OVLA,PFS,01,00
- TITLE PFLIST - LIST PF UTILITY SUMMARY FILE.
- ABS
- SST
- SYSCOM B1
- SPACE 4
- *COMMENT PFLIST - LIST PF UTILITY SUMMARY FILE.
- COMMENT COPYRIGHT CONTROL SYSTEMS INC. 1996.
- SPACE 4
- *** PFLIST - LIST PF UTILITY SUMMARY FILE.
- *
- * G. S. YODER 96/04/24.
- SPACE 4
- *** *PFLIST* IS A PERMANENT FILE UTILITY PROGRAM WHICH GENERATES
- * AN OUTPUT LISTING FROM A SUMMARY FILE PRODUCED BY ANOTHER
- * PERMANENT FILE UTILITY. *PFLIST* MAY BE CALLED FROM *PFS* OR
- * DIRECTLY BY A COMMAND.
- SPACE 4
- *** DAYFILE MESSAGES.
- *
- * INFORMATIVE.
- *
- * * PFLIST COMPLETE.* = PROGRAM COMPLETE.
- *
- * FATAL SYSTEM ERRORS.
- *
- * * PFLIST ABORTED.* = ERROR FLAG DETECTED ON CONTROL POINT.
- *
- * * FORMAT ERROR IN SUMMARY FILE.*
- SPACE 4
- * COMMON DECKS.
- *CALL COMCMAC
- *CALL COMCCMD
- *CALL COMSMLS
- *CALL COMSRPV
- *CALL COMSPFM
- LIST X
- *CALL COMSPFS
- LIST *
- *CALL COMSPFU
- *CALL COMSPRD
- *CALL COMSSFM
- *CALL COMSVER
- TITLE ASSEMBLY CONSTANTS.
- * ASSEMBLY CONSTANTS.
- DBUFL EQU 1000B SUMMARY FILE DATA BLOCK BUFFER LENGTH
- MSFBL EQU 10001B *COMCMSF* SORT FILES BUFFER LENGTH
- OUTBL EQU 10001B OUTPUT FILE BUFFER LENGTH
- PFLBL EQU 1001B PROCESSED FILES FILE BUFFER LENGTH
- SABFL EQU 1000B SUMMARY FILE ASSEMBLY BUFFER LENGTH
- SRTBL EQU 20000B SORT BUFFER LENGTH
- SUIBL EQU 10001B SUMMARY INPUT FILE BUFFER LENGTH
- SUMBL EQU 0 SUMMARY FILE BUFFER LENGTH
- * *COMSPFS* EQUIVALENCES.
- CPAR EQU /COMSPFS/CPL
- IDSA EQU /COMSPFS/PADR
- TITLE RESERVED LOCATIONS AND FETS.
- SPACE 4
- ORG /COMSPFS/OVLA
- SPACE 4
- ** RESERVED LOCATIONS.
- * SUMMARY FILE DATA BLOCK STATUS.
- BLCW CON 0 BLOCK CONTROL WORD
- BLTY CON 0 TYPE OF DATA BLOCK IN BUFFER
- SPACE 4
- ** FETS.
- SI BSS 0 SUMMARY INPUT FILE
- SUMMARY FILEB SUIB,SUIBL,FET=10D
- SPACE 4
- ** OPERATOR AND DAYFILE MESSAGES.
- MSFP DATA C* ?????? FILE! PROCESSED.*
- BLNK DATA 30H
- SPACE 4
- ** ERROR MESSAGES.
- ERAN DATA C* SF EXCEDES NUMBER OF ARCHIVE FILES.*
- ERDS DATA C* DEVICE STATUS BLOCK MISSING.*
- ERFE DATA C* FORMAT ERROR IN SUMMARY FILE.*
- TITLE MAIN ROUTINES.
- PFS SPACE 4,10
- ** MAIN PROGRAM.
- *
- * CALLS CFP, CSC, ICI, OAL, OCH, OCI, PRS, RDB, SPA.
- *
- * EXIT TO *ABT* IF FATAL ERROR.
- PFS BSS 0 ENTRY
- RJ PRS PRESET PROGRAM
- * LOCATE ARCHIVE LABEL BLOCK IF SKIP COUNT SPECIFIED.
- SA5 CPAR+/COMSPFS/CPSF
- ZR X5,PFS3 IF NO ARCHIVE FILES TO SKIP
- PFS1 SA1 BLTY GET BLOCK TYPE
- SX1 X1-/COMSPFS/AFSB
- NZ X1,PFS2 IF NOT ARCHIVE LABEL BLOCK
- ZR X5,PFS5 IF BLOCK FOUND
- SX5 X5-1 COUNT BLOCK
- PFS2 RJ RDB READ DATA BLOCK
- PL X6,PFS1 IF NOT EOR
- SB2 ERAN * SF EXCEDES NUMBER OF ARCHIVE FILES.*
- EQ ABT ABORT
- * READ SUMMARY FILE BLOCK AND CHECK FOR SORTED OUTPUT.
- PFS3 RJ RDB
- ZR X2,PFS4 IF BLOCK TYPE IS SAME AS PREVIOUS
- RJ CSO CHECK FOR SORTED OUTPUT
- * EXECUTE BLOCK TYPE PROCESSOR.
- PFS4 NG X6,END IF EOR, EOF, OR EOI ENCOUNTERED
- SA1 TSIP+X6 GET PROCESSOR ADDRESS
- SB2 X1
- JP B2 ENTER BLOCK TYPE PROCESSOR
- * PROCESS ARCHIVE LABEL BLOCK.
- PFS5 SA1 CPAR+/COMSPFS/CPNB
- SA2 PFSA
- IX1 X2-X1
- ZR X1,END IF ARCHIVE FILE COUNT REACHED
- SX6 X2+B1
- SA6 PFSA COUNT ARCHIVE FILE PROCESSED
- MOVE 3,DBUF,AFIB SET ARCHIVE FILE LABEL INFORMATION
- RJ OAL OUTPUT ARCHIVE FILE LABEL INFORMATION
- EQ PFS3 READ NEXT BLOCK
- * PROCESS CATALOG IMAGE RECORD BLOCK.
- PFS6 ZR X2,PFS7 IF LAST BLOCK WAS CIR BLOCK
- RJ ICI INITIALIZE FOR CIR PROCESSING
- PFS7 SA1 BLCW
- SX6 DBUF SET CIR BUFFER POINTER
- SX7 X1 SET WORD COUNT
- RJ OCI OUTPUT CATALOG IMAGE BLOCK
- EQ PFS3 READ NEXT BLOCK
- * PROCESS CATALOG ENTRIES BLOCK.
- PFS8 SA0 DBUF-NWCE-1 INITIALIZE ENTRY ADDRESS
- ZR X2,PFS9 IF LAST BLOCK WAS CATALOG ENTRIES
- RJ IFL INITIALIZE FOR FILE PROCESSING
- PFS9 SA2 BLCW
- SA0 A0+NWCE+1 ADVANCE ENTRY ADDRESS
- SB2 X2+DBUF
- SB2 A0-B2
- PL B2,PFS3 IF BLOCK ALL PROCESSED
- SB4 A0 SET CATALOG ADDRESS
- RJ CSC CHECK SELECTION CRITERIA
- ZR X6,PFS9 IF NOT TO PROCESS FILE
- SA1 B4+NWCE
- BX7 X1
- SA7 FLST SET FILE STATUS
- RJ CFP COUNT FILE PROCESSED
- EQ PFS9 PROCESS NEXT ENTRY
- PFSA CON 0 ARCHIVE FILES PROCESSED COUNT
- TSIP SPACE 4,10
- * TABLE OF SUMMARY INPUT FILE BLOCK PROCESSORS.
- TSIP IVFD START OF TABLE
- IVFD /COMSPFS/SYSB,(60/SER) SYSTEM
- IVFD /COMSPFS/DSSB,(60/PFS3) DEVICE STATUS
- IVFD /COMSPFS/AFSB,(60/PFS5) ARCHIVE FILE
- IVFD /COMSPFS/CISB,(60/PFS6) CIR
- IVFD /COMSPFS/CESB,(60/PFS8) CATALOG ENTRIES
- IVFD /COMSPFS/MXSB,(60/PFS3) UNIDENTIFIED
- IVFD /COMSPFS/MXSB+1
- CSO SPACE 4,15
- ** CSO - CHECK FOR SORTED OUTPUT.
- *
- * ENTRY (X3) = PREVIOUS BLOCK TYPE.
- * (X6) = CURRENT BLOCK TYPE.
- *
- * EXIT (X6) = CURRENT BLOCK TYPE.
- * (X2) .NE. 0 (NON-MATCHING BLOCK TYPE).
- *
- * USES X - 1, 2, 6.
- * A - 1.
- *
- * CALLS PSF, PSI.
- CSO SUBR ENTRY/EXIT
- SX1 X3-/COMSPFS/CISB
- NZ X1,CSO1 IF PREVIOUS BLOCK NOT CIR ENTRIES
- RJ PSI PROCESS SORTED CIR ENTRIES
- EQ CSO2 RESET BLOCK STATUS
- CSO1 SX1 X3-/COMSPFS/CESB
- NZ X1,CSOX IF PREVIOUS BLOCK NOT CATALOG ENTRIES
- RJ PSF PROCESS SORTED CATALOG ENTRIES
- CSO2 SA1 BLTY
- SX2 B1 INDICATE NON-MATCHING BLOCK TYPE
- SX6 X1 RESET BLOCK TYPE
- EQ CSOX RETURN
- TITLE SUBROUTINES.
- APR SPACE 4,10
- ** APR - ABORT PROCESSOR.
- APR SUBR ENTRY/EXIT
- EQ APRX RETURN
- IFM SPACE 4,10
- ** IFM - ISSUE FILE COUNT MESSAGES.
- *
- * EXIT FILE COUNT MESSAGES ISSUED TO DAYFILE.
- *
- * USES X - 1, 5, 6.
- * A - 1, 5.
- *
- * CALLS IFC.
- IFM SUBR ENTRY/EXIT
- SA5 IFMA
- RJ IFC ISSUE FILE COUNT MESSAGES
- EQ IFMX RETURN
- IFMA BSS 0 *PFLIST* MESSAGE TABLE
- VFD 1/1,1/1,22/0,18/MSFP,18/PRFC
- CON 0 END OF TABLE
- RDB SPACE 4,20
- ** RDB - READ DATA BLOCK FROM SUMMARY FILE.
- *
- * EXIT (X6) = BLOCK TYPE IF BLOCK READ.
- * (X6) = -1 IF EOR, EOF, OR EOI ENCOUNTERED ON READ OF
- * BLOCK CONTROL WORD.
- * (X2) = 0 IF BLOCK TYPE SAME A PREVIOUS BLOCK TYPE.
- * (X2) .NE. 0 IF BLOCK TYPE NOT SAME AS PREVIOUS.
- * (X3) = PREVIOUS BLOCK TYPE.
- * (BLCW) = BLOCK CONTROL WORD IF BLOCK READ.
- * (BLTY) = BLOCK TYPE IF BLOCK READ.
- * (BLTY) = -1 IF EOR, EOF, OR EOI ENCOUNTERED ON READ OF
- * BLOCK CONTROL WORD.
- * DATA BLOCK READ TO *DBUF* IF NO ERROR.
- * TO *SER* IF ERROR IN SUMMARY FILE BLOCK.
- *
- * USES X - 1, 2, 3, 6.
- * A - 1, 2, 3, 6.
- *
- * MACROS READW.
- RDB SUBR ENTRY/EXIT
- * READ BLOCK CONTROL WORD AND DATA.
- READW SI,BLCW,1 READ BLOCK CONTROL WORD
- SA3 BLCW
- SX6 -1 SET EOR, EOF, EOI STATUS
- NZ X1,RDB2 IF EOR, EOF, OR EOI ENCOUNTERED
- SX1 X3-DBUFL-1
- SX6 X3
- BX1 -X1+X6
- NG X1,SER IF BAD BLOCK LENGTH
- READW X2,DBUF,X3 READ DATA BLOCK
- NZ X1,SER IF INCOMPLETE READ
- * IDENTIFY BLOCK TYPE.
- SA1 BLCW
- SA2 TSBI-1
- MX6 42
- BX1 X6*X1 BLOCK IDENTIFIER
- RDB1 SA2 A2+B1 GET NEXT ENTRY
- SX6 A2-TSBI SET BLOCK TYPE
- BX3 X2-X1
- ZR X2,RDB2 IF END OF ENTRIES
- NZ X3,RDB1 IF NO MATCH
- RDB2 SA3 BLTY
- SA6 A3 SET NEW BLOCK TYPE
- IX2 X6-X3 SET NEW BLOCK TYPE STATUS
- EQ RDBX RETURN
- RIP SPACE 4,10
- ** RIP - REPRIEVE INTERRUPT PROCESSOR.
- *
- * EXIT BUSY FETS SET COMPLETE TO ALLOW TERMINATION
- * PROCESSING.
- *
- * MACROS COMPFET.
- RIP SUBR ENTRY/EXIT
- COMPFET (O,SU)
- EQ RIPX RETURN
- SER SPACE 4,10
- ** SER - PROCESS SUMMARY FILE ERROR.
- *
- * EXIT TO *ABT*.
- *
- * USES B - 2.
- SER BSS 0 ENTRY
- SB2 ERFE * FORMAT ERROR IN SUMMARY FILE.*
- EQ ABT ABORT
- SPACE 4
- ** COMMON DECKS.
- *CALL COMCCDD
- *CALL COMCCIO
- *CALL COMCCOD
- *CALL COMCCPM
- *CALL COMCDXB
- *CALL COMCEDT
- FCE$ EQU 0
- *CALL COMCFCE
- CHDR1 EQU /COMCFCE/CHDR1
- GMS$ EQU 1 USE SORT KEY MASK
- MWK$ EQU 1 ALLOW MULTIPLE WORD SORT KEYS
- *CALL COMCGMS
- *CALL COMCJCR
- *CALL COMCLFM
- *CALL COMCMSF
- *CALL COMCMVE
- LIST X
- *CALL COMCPFS
- LIST *
- *CALL COMCPFU
- *CALL COMCRDW
- *CALL COMCSCB
- *CALL COMCSFN
- *CALL COMCSNM
- *CALL COMCSYS
- *CALL COMCVDT
- *CALL COMCWTC
- *CALL COMCWTH
- *CALL COMCWTO
- *CALL COMCWTW
- *CALL COMCZTB
- TITLE BUFFERS.
- USE LITERALS
- SPACE 4
- ** BUFFERS.
- * BUFFERS USED BY PRESET.
- DBUF BSSZ DBUFL SUMMARY FILE DATA BLOCK BUFFER
- SUIB BSSZ SUIBL SUMMARY INPUT FILE BUFFER
- OUTB BSSZ OUTBL OUTPUT FILE
- * BUFFERS OVERLAYING PRESET.
- SUMB EQU OUTB+OUTBL SUMMARY FILE (NOT USED)
- PFLB EQU SUMB+SUMBL PROCESSED FILES FILE
- MS1B EQU PFLB+PFLBL SORT FILE 1
- MS2B EQU MS1B+MSFBL SORT FILE 2
- MS3B EQU MS2B+MSFBL SORT FILE 3
- MS4B EQU MS3B+MSFBL SORT FILE 4
- SRTB EQU MS3B SORT BUFFER (OVERLAYS *MS3B* AND *MS4B*)
- ERRNG MSFBL*2-SRTBL SORT BUFFER OVERFLOW
- EBUF EQU MS4B+MSFBL+5 END OF BUFFERS
- TITLE PFLIST PRESET.
- PRS SPACE 4,15
- ** PRS - PRESET PROGRAM.
- *
- * EXIT FILES INITIALIZED.
- * MESSAGES INITIALIZED.
- * SUMMARY FILE SYSTEM BLOCK PROCESSED.
- * SUMMARY FILE DEVICE STATUS BLOCK PROCESSED IF PRESENT.
- *
- * USES A - 1, 2, 6, 7.
- * X - 0, 1, 2, 3, 5, 6, 7.
- * B - 2, 3, 5, 7.
- *
- * CALLS IOF, ODV, RPS, RDB, SCB, SNM, ZTB.
- *
- * MACROS MEMORY, MOVE, REPRIEVE, READ, READW.
- PRS SUBR ENTRY/EXIT
- SB1 1
- MEMORY CM,,R,EBUF REQUEST REQUIRED MEMORY
- REPRIEVE RPVB,SET,277B SET EXTENDED REPRIEVE PROCESSING
- * READ USER AND FILE NAME SELECTIONS.
- SX0 EBUF SET SELECTION BUFFER ADDRESS
- RJ RPS READ PERMANENT FILE SELECTIONS
- * INITIALIZE SUMMARY INPUT FILE FET AND READ PREFIX TABLE.
- SA1 SI SET FILE NAME IN FET
- SA2 CPAR+/COMSPFS/CPSI
- MX6 -18
- BX6 -X6*X1
- BX6 X2+X6
- SA6 A1
- READ SI
- READW SI,DBUF,15 READ PREFIX TABLE
- NZ X1,SER IF INCOMPLETE READ
- SA1 DBUF
- SA2 PRSA
- BX1 X1-X2
- NZ X1,SER IF NOT PREFIX TABLE
- * PROCESS SYSTEM BLOCK.
- RJ RDB READ SYSTEM BLOCK
- SA1 BLCW
- SX6 X6-/COMSPFS/SYSB
- NZ X6,SER IF NOT SYSTEM BLOCK
- SX1 X1-13B
- NZ X1,SER IF NOT CORRECT WORD COUNT FOR SYSTEM BLOCK
- MOVE 2,PRSB,PGSC SET SUMMARY FILE CREATION TEXT IN PAGE TITL
- SA1 DBUF+1
- RJ ZTB ENSURE BLANK FILL
- SA6 PGSC+2 SET SUMMARY FILE CREATION DATE
- SA1 DBUF+2
- RJ ZTB ENSURE BLANK FILL
- SA6 PGSC+3
- SA1 DBUF GET UTILITY NAME
- MX6 42
- BX1 X6*X1
- SA2 TUTA
- PRS1 SA2 A2+B1
- ZR X2,SER IF END OF UTILITY NAMES
- BX3 X6*X2 UTILITY NAME
- BX3 X1-X3
- NZ X3,PRS1 IF NO MATCH ON UTILITY NAME
- LX2 59-0
- SX6 A2-TUTA
- SA6 OFUC SET UTILITY CODE
- PL X2,PRS3 IF UTILITY DOES NOT SUPPORT DEVICE BLOCK
- * PROCESS DEVICE STATUS BLOCK.
- RJ RDB READ BLOCK
- SB2 ERDS * DEVICE STATUS BLOCK MISSING.*
- SX6 X6-/COMSPFS/DSSB
- NZ X6,ABT IF NOT DEVICE STATUS BLOCK
- SA1 DBUF+2
- SA2 DBUF
- MX6 -6
- MX7 42
- BX1 -X6*X1 EXTRACT DEVICE NUMBER OF FIRST DEVICE
- BX7 X7*X2
- SX3 OFFN SELECT FAMILY NAME
- NZ X1,PRS2 IF FAMILY DEVICE
- SX3 OFPN SELECT PACK NAME
- PRS2 SA7 X3 SET FAMILY OR PACK NAME
- SA1 DBUF+1
- BX6 X1
- SA6 OFUN SET USER NAME IF AUXILIARY DEVICE
- RJ IOF INITIALIZE OUTPUT FILES
- SA1 BLCW
- SX6 0 SET END OF DEVICE ENTRIES
- SA6 DBUF+X1
- SX6 DBUF+2 SET DEVICE STATUS ADDRESS
- RJ ODV OUTPUT DEVICE STATUS
- EQ PRS4 CHECK ARCHIVE FILE COUNT
- * INITIALIZE OUTPUT FILES.
- PRS3 RJ IOF INITIALIZE OUTPUT FILES
- PRS4 SA1 CPAR+/COMSPFS/CPNB
- NZ X1,PRSX IF ARCHIVE FILE COUNT SPECIFIED
- SX6 B1
- SA6 A1 SET ARCHIVE FILE COUNT = 1
- EQ PRSX RETURN
- PRSA VFD 12/7700B,12/16B,36/0
- PRSB DATA 20HSUMMARY FILE CREATED
- TUTA SPACE 4,10
- ** TUTA - TABLE OF UTILITY ATTRIBUTES.
- TUTA IVFD TABLE OF UTILITY NAMES
- IVFD /COMSPFS/LDUT,(42/0LPFLOAD,18/1)
- IVFD /COMSPFS/DUUT,(42/0LPFDUMP,18/1)
- IVFD /COMSPFS/CAUT,(42/0LPFCAT,18/1)
- IVFD /COMSPFS/ATUT,(42/0LPFATC,18/0)
- IVFD /COMSPFS/COUT,(42/0LPFCOPY,18/0)
- IVFD /COMSPFS/RLUT,(42/0LPFREL,18/1)
- IVFD /COMSPFS/LIUT,(42/0LPFLIST,18/0)
- IVFD /COMSPFS/RSUT,(42/0LPFRES,18/0)
- IVFD /COMSPFS/MXUT,(60/0)
- IVFD /COMSPFS/MXUT+1
- SPACE 4
- ** PRESET COMMON DECKS.
- LIST X
- *CALL COMCPFP
- LIST *
- ERRPL *-EBUF-1 PRESET OVERFLOWS INTO BUFFERS
- SPACE 4
- END
cdc/nos2.source/opl871/pflist.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator