plato:source:plaopl:backlib
Table of Contents
BACKLIB
Table Of Contents
- [00010] PRODUCE BACKUP LIBRARY PRINTOUT
- [00012] PRODUCE BACKUP LIBRARY PRINTOUT
- [00055] COMMON DATA
- [00088] MAIN PROGRAM.
- [00103] SUBROUTINES
- [00105] BUILDO - BUILD OUTPUT LINE
- [00204] CKSTATS - CHECK FILE STATUS FOR BUSY
- [00226] CLREPR - CLEAR ERROR PROCESSING BIT IN THE FET
- [00238] INIT - INITIALIZE
- [00274] GETAUT - GET AUDIT TRAIL
- [00309] GETSL - GET SLOT ENTRY
- [00335] RDSLOT - READ PARAMETER AND SLOT TABLES
- [00344] END PROGRAM
- [00346] END - END PROGRAM.
Source Code
- BACKLIB.txt
- BACKLIB
- * /--- FILE TYPE = E
- * /--- BLOCK TAPE 00 000 81/05/07 06.52
- BACKLIB
- IDENT BACKLIB,BEGIN,BACKLIB
- ENTRY BACKLIB
- SYSCOM B1 DEFINE (B1) = 1
- *COMMENT PRODUCE BACKUP LIBRARY PRINTOUT
- COMMENT COPYRIGHT CONTROL DATA CORP. 1980.
- TITLE PRODUCE BACKUP LIBRARY PRINTOUT
- SPACE 4
- *** BACKLIB - PRODUCE BACKUP LIBRARY PRINTOUT
- * J. J. BUCHMANN. 80/11/15.
- *
- *FUNCTION;
- * THIS PROGRAM GIVES A LISTING OF THE AUDIT TRAIL ON THE
- * FILE NAMED OUTPUT. THE AUDIT TRAIL AND PARAMETERS
- * FILE ARE ATTACHED, THE CURRENT SLOT VALUE IS DISPLAYED
- * AND ALL AUDIT INFORMATION IS FORMATED FOR THE PRINTER.
- * WHEN AN ENTRY HAS A SLOT VALUE THAT IS THE SAME AS THE
- * CURRENT SLOT, A **NEXT** IS SHOWN IN THE LISTING TO
- * INDICATE THAT THIS TAPE WILL BE OBSOLETE WITH THE NEXT
- * DUMP AND THIS COULD BE REUSED.
- *
- *PARAMETERS;
- * SK (SKIP LISTING FOR **NEXT** TAPES)
- *
- *ERROR MESSAGES;
- * ERROR IN PARAMETERS
- * SLOT NUMBER OUT OF RANGE
- *
- *INTERNAL ERROR MESSAGES; NONE
- *
- *INFORMATION PASSED INTO THE OUTPUT FILE;
- * AUDIT TRAIL LISTING WITH NEXT TAPES TO USE
- SPACE 4
- *CALL COMCMAC
- *CALL COMCCMD
- SPACE 4
- **** ASSEMBLY CONSTANTS.
- BLDA EQU 3 AUDIT TRAIL ENTRY LENGTH
- ABUFL EQU 2001B AFILE BUFFER LENGTH
- SBUFL EQU 2001B SFILE BUFFER LENGTH
- OUTBUFL EQU 2001B OUTPUT BUFFER LENGTH
- BLKSZE EQU 320 BLOCK SIZE (WORDS) FOR S0BACKC
- MBSLOT EQU 2 MAX NUM OF BLOCKS / SLOT TABLE
- MBLAB EQU 25 MAX NUM OF BLOCKS / LOOK ASIDE
- MBVSN EQU 25 MAX NUM OF BLOCKS / VSN TABLE
- REQPK EQU 50 REQUIRED PACK OFFSET IN PARAMS.
- ****
- TITLE COMMON DATA
- BEGIN BSS 0
- FETS BSS 0
- A BSS 0
- AUDIT RFILEB ABUF,ABUFL,(FET=13D),EPR
- S BSS 0
- S0BACKC RFILEB SBUF,SBUFL,(FET=13D),EPR
- OUT BSS 0
- OUTPUT RFILEB OUTBUF,OUTBUFL,(FET=8D)
- SPACE 4
- * DATA WORDS
- NFILE DATA 0 NUMBER OF FILES
- SLV DATA 0 SLOT VALUE
- VSV DATA 0 VSN ORDINAL
- VSNL VFD 60/MBVSN*BLKSZE VSN TABLE SIZE
- MASF DATA 0 MASTER FILE NAME
- CFILE DATA 0 CURRENT FILE NUMBER
- TFILE DATA 0 TOTAL FILES
- *
- * PERMANENT FILE PARAMETERS
- *
- PACK DATA 0 PACK NAME FOR ATTACHES
- APER DATA 5LAUDIT PERMANENT FILE FOR AUDIT
- SPER DATA 7LS0BACKC PERMANENT FILE FOR PARAMETERS
- SK DATA 0 SKIP PARAMETER
- ONE DATA 1 DEFAULT PARAM
- USERI EQU 377773B USER INDEX FOR FILES
- * /--- BLOCK TAPE 00 000 81/03/25 07.57
- TITLE MAIN PROGRAM.
- *** BACKLIB
- BACKLIB SB1 1 (B1) = 1
- RJ INIT INITIALIZE AND GET ARGS
- WRITEC OUT,PAGEJ PAGE EJECT
- SA1 SK SEE IF SKIP SLOT
- NZ X1,BKL1
- RJ RDSLOT READ PARAMETERS/SLOT TABLE
- RJ GETSL GET CURRENT SLOT NUMBER
- BKL1 RJ GETAUT GET AUDIT TRAIL
- WRITER OUT,R EOR ON OUTPUT
- ENDRUN
- * /--- BLOCK TAPE 00 000 80/11/12 07.00
- TITLE SUBROUTINES
- BUILDO SPACE 4
- ** BUILDO - BUILD OUTPUT LINE
- *
- * AUDIT INFO IN BUFA
- * BUILDS OUTPUT LINE FOR PRINTER IN BUILD
- BUILDO DATA 0 ENTRY/EXIT
- SA1 BUFA MASTER FILE NAME
- MX7 42
- BX1 X7*X1
- RJ SFN
- LX6 54
- SA6 BUILD
- SA1 BUFA+1 PACKNAME
- MX7 42
- BX1 X7*X1
- RJ SFN
- SA6 BUILD+1
- SA1 BUFA NUMBER OF FILES
- SX1 X1
- RJ CDD
- MX7 -24
- BX6 -X7*X6
- LX6 36
- SA6 BUILD+2
- SA1 BUFA+1 SLOT NUMBER
- MX7 -7
- BX1 -X7*X1
- RJ CDD
- SA1 BUILD+2
- LX6 6
- MX7 -36
- BX6 -X7*X6
- IX6 X6+X1
- SA6 A1
- SA1 BUFA+2 VSN/PACK
- MX7 6 IF TAPE, ADD *
- BX7 X7*X1
- NZ X7,BUI1
- SX7 1R*
- LX7 54
- BX1 X1+X7
- BUI1 MX7 42
- BX1 X7*X1
- RJ SFN
- SA6 BUILD+3
- SA1 BUFA+1 EST
- MX7 -6
- AX1 7
- BX1 -X7*X1
- RJ WOD
- MX6 -12
- SA1 BUILD+3
- BX7 -X6*X7
- BX1 X6*X1
- IX6 X7+X1
- SA6 A1
- SA1 BUFA+2 YEAR
- AX1 14
- MX7 -4
- BX1 -X7*X1
- SX1 X1+96 CURRENT YEAR = YR+96 (BASE YR)
- RJ CDD
- MX7 -18
- BX6 -X7*X6
- LX6 42
- SA6 BUILD+4
- SA1 BUFA+2 MONTH
- AX1 10
- MX7 -4
- BX1 -X7*X1
- RJ CDD
- SA1 BUILD+4
- MX7 -18
- BX6 -X7*X6
- LX6 24
- IX6 X6+X1
- SA6 A1
- SA1 BUFA+2 DAY
- AX1 5
- MX7 -5
- BX1 -X7*X1
- RJ CDD
- SA1 BUILD+4
- LX6 6
- MX7 -24
- BX6 -X7*X6
- IX6 X6+X1
- SA6 A1
- SA1 BUFA+2 HOUR
- MX7 -5
- BX1 -X7*X1
- RJ CDD
- MX7 -12
- BX6 -X7*X6
- LX6 48
- SA6 BUILD+5
- EQ BUILDO
- * /--- BLOCK TAPE 00 000 81/03/27 07.54
- CKSTATS SPACE 4
- ** CKSTATS - CHECK FILE STATUS FOR BUSY
- * ROLLOUT FOR 64 SECONDS IF BUSY
- * ABORT IF ERROR
- *
- * ENTRY X1-FET STATUS WORD
- *
- * EXIT X2=0, NOT BUSY
- CKSTATS DATA 0 ENTRY/EXIT
- AX1 10
- MX7 -8
- BX2 -X7*X1 ISOLATE STATUS
- ZR X2,CKSTATS IF NOT BUSY AND NO ERROR
- SX2 X2-1
- NZ X2,ABORT ATTACH ERROR
- ROLLOUT CKSW
- SX2 1 BUSY STATUS
- EQ CKSTATS
- CKSW DATA 7700000100B
- CLREPR SPACE 4
- ** CLREPR - CLEAR ERROR PROCESSING BIT IN THE FET
- *
- * ENTRY A1/X1=FET+1 AND CONTENTS
- CLREPR DATA 0 ENTRY/EXIT
- SX6 B1 MASK FOR EPR
- LX6 44
- BX6 -X6*X1
- SA6 A1
- EQ CLREPR
- INIT SPACE 4
- ** INIT - INITIALIZE
- INIT DATA 0 ENTRY/EXIT
- *
- * GET ARGUMENTS
- *
- SA1 ACTR ARGUMENT COUNT
- SB4 X1
- SA4 ARGR FIRST ARGUMENT
- SB5 ARGTBL ARGUMENT TABLE
- RJ ARG
- NZ X1,INITERR ERROR IN ARGUMENTS
- *
- * ATTACH PERMANENT FILES
- *
- SETUI USERI USER INDEX
- PACKNAM PACK SET PACKNAME
- INIT1 ATTACH A,APER,,,W
- SA1 A
- RJ CKSTATS
- NZ X2,INIT1 IF FILE WAS BUSY
- SA1 A+1
- RJ CLREPR CLEAR EPR
- INIT2 ATTACH S,SPER,,,W
- SA1 S
- RJ CKSTATS
- NZ X2,INIT2 IF FILE WAS BUSY
- SA1 S+1
- RJ CLREPR CLEAR EPR
- EQ INIT
- INITERR MESSAGE INMSG
- EQ ABORT
- * /--- BLOCK TAPE 00 000 81/03/25 08.10
- GETAUT SPACE 4
- ** GETAUT - GET AUDIT TRAIL
- *
- * READS AUDIT TRAIL - SENDS OUTPUT LINE
- GETAUT DATA 0 ENTRY/EXIT
- RECALL A
- REWIND A,R
- READ A,R
- WRITEC OUT,LINE1
- WRITEC OUT,LINE2
- WRITEC OUT,SPACE
- GETA1 READW A,BUFA,BLDA READ ONE ENTRY
- NZ X1,GETAUT IF EOR, EOF
- SA1 BUFA MASTER FILE NAME
- ZR X1,GETA1 IF EMPTY
- SA2 SLV GET CURRENT SLOT NUMBER
- MX7 -7
- SA1 A1+B1
- BX6 -X7*X1
- IX4 X6-X2
- ZR X4,GETA2 IF SLOTS MATCH
- RJ BUILDO OUTPUT INFO
- WRITEC OUT,BUILD
- EQ GETA1
- GETA2 RJ BUILDO OUTPUT LINE
- SA1 =8R**NEXT**
- SA2 BUILD+5
- IX6 X1+X2
- SA6 A2
- WRITEC OUT,BUILD
- EQ GETA1
- GETSL SPACE 4
- ** GETSL - GET SLOT ENTRY
- GETSL DATA 0 ENTRY/EXIT
- SA1 SLOT GET SLOT POINTER
- SA1 SLOT+X1 GET SLOT NUMBER
- BX6 X1
- SA6 SLV
- ZR X6,SLERR
- NG X6,SLERR
- SX6 X6-31
- PL X6,SLERR
- RJ CDD
- SA6 SLMSG+1
- MESSAGE SLMSG OUTPUT SLOT MESSAGE
- WRITEC OUT,SLMSG
- WRITEC OUT,SPACE
- EQ GETSL
- SLERR MESSAGE SMERR
- EQ ABORT
- SLMSG DATA 10H SLOT =
- DATA 0
- DATA 0
- RDSLOT SPACE 4
- ** RDSLOT - READ PARAMETER AND SLOT TABLES
- RDSLOT DATA 0 ENTRY/EXIT
- REWIND S,R
- READ S,R
- READW S,PARAM,MBSLOT*BLKSZE+BLKSZE
- EQ RDSLOT
- * /--- BLOCK TAPE 00 000 81/04/29 08.44
- TITLE END PROGRAM
- END SPACE 4
- ** END - END PROGRAM.
- ABORT MESSAGE (=C* RUN ABORTED.*)
- ABORT
- PAGEJ DIS ,*1* PAGE EJECT
- SPACE DIS ,* * BLANK LINE
- LINE1 DIS ,= MASTER- PACKNAME FILE SLOT VSN(*) EST YY MM DD HH=
- LINE2 DIS ,= FILE PACK=
- BUILD DATA 0,0,0,0,0,0 OUTPUT LINE BUILD AREA
- DATA 0 END OF LINE
- SMERR DIS ,* SLOT NUMBER OUT OF RANGE*
- *
- * ARGUMENT TABLE
- *
- INMSG DIS ,* ERROR IN PARAMETERS.*
- ARGTBL BSS 0
- VFD 12/2LSK,18/ONE,30/SK
- ARGTBLE DATA 0 END OF TABLE
- SPACE 4
- * COMMON DECKS.
- *CALL COMCCIO
- *CALL COMCRDS
- *CALL COMCRDW
- *CALL COMCSYS
- *CALL COMCWTS
- *CALL COMCWTW
- *CALL COMCCDD
- *CALL COMCSFN
- *CALL COMCWTC
- *CALL COMCARG
- *CALL COMCWOD
- *CALL COMCCPM
- *CALL COMCPFM
- SPACE 4
- ** BUFFERS.
- BUFFERS BSS 0
- BSS 1
- BUFA BSS BLDA
- ABUF BSS ABUFL
- SBUF BSS SBUFL
- OUTBUF BSS OUTBUFL
- PARAM BSSZ BLKSZE
- SLOT BSSZ BLKSZE*MBSLOT
- END BACKLIB
plato/source/plaopl/backlib.txt ยท Last modified: 2023/08/05 18:54 by Site Administrator