|
|
DataMuseum.dkPresents historical artifacts from the history of: Philips Data Systems |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Philips Data Systems Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 11044 (0x2b24)
Notes: pts_type(SC)
Names: »REORGU.SC«
└─⟦48601905a⟧ Bits:30009668 Philips computer tape "600121"
└─⟦this⟧ »S:DU/REORGU.SC«
└─⟦79fbed147⟧ Bits:30009697 Philips computer tape "600414"
└─⟦this⟧ »S:DU/REORGU.SC«
└─⟦d2a299635⟧ Bits:30009698 Philips computer tape "600415"
└─⟦this⟧ »S:DU/REORGU.SC«
IDENT REORGU REL. 1.0 79-05-29/LABJ ******************************** * REORGANISATION OF USERFILE * ******************************************** * WORKITEMS *** INPUT *** * * RECNUM = JOB-CHAIN RECORD NO. * * BIN1 = BATCH-CHAIN RECORD NO. * * BIN2 = POINTER IN JOB-CHAIN * * BIN3 = NOT USED * * BIN4 = POINTER IN BATCH-CHAIN * * BIN5 = POINTER TO ACC.RECORD * * BIN6 = POINTER TO DS-RECORD * * BIN7 = OCC.BYTES IN JOB-CHAIN-RECORD * * BIN8 = OCC.BYTES IN BATCH-CHAIN-RECORD * * BIN9 = WORKITEM * * *** OUTPUT *** * * BIN10 = JOB-CHAIN RECORD NO. * * BIN11 = BATCH-CHAIN RECORD NO. * * BIN12 = OCC.BYTES IN JOB-CHAIN-RECORD * * BIN13 = OCC.BYTES IN BATCH-CHAIN-RECORD * * BIN14 = LINK PREVIOUS * * BIN16 = WORKITEM * ******************************************** DDUM DDINIT PDIV ENTRY REORGU * EXT DECLRN EXT DSKERR EXT FREESP EXT DISU * EXT CHANFC EXT GETVOL EXT CHVOL * CLOSE EQU X'03' * REORGU PROC **************** * OPEN FILES * **************** MOVE FINDEXPO(W1),W1 MOVE LRUQUE,HEX00 MOVE DKBIN1,W1 DES1 MOVE RPOOL(DKBIN1),=X'5800' ADD DKBIN1,W1 CBNE DKBIN1,W17,DES1 * MOVE TABLE,VOLNAM OUTPUT VOLUME-NAME CALL CHANFC,DISK,FCOD1 CALL GETVOL,DISK,SBUF,VOLNAM,RETCOD GET VOLUME-NAME CMP RETCOD,W0 BNE ERROR * MOVE FCOD1,=X'D0' MOVE FCOD2,=X'D1' CALL CHANFC,DISK,FCOD1 ASSIGN DISK,0,DEBINW4,USEFIL,VOLNAM INPUT BNOK ERROR CALL CHANFC,DISK,FCOD2 ASSIGN DISK,0,DEBINW4,USEFIL,COPNAM OUTPUT BNOK ERROR PERF DISU,W5,W2,RBUF READ FREE-SPACE OUTPUT BNOK ERROR COPY RPOOL(W1),W9,W10,RBUF,W0 COPY BPOOL(W1),W0,W188,RBUF,W10 *************** * COPY JOBS * *************** MOVE RECNUM,W3 1:ST JOB-CH RECORD INPUT MOVE BIN10,W3 1:ST JOB-CH RECORD OUTPUT C10 MOVE BIN2,W10 POINTER TO 1:ST JOB B C12 C101 ADD BIN2,W10 CBG BIN2,BIN7,C11 >OCC. BYTES B C13 C11 XCOPY RECNUM,W0,W2,RBUF,W4 LINK NEXT CMP RECNUM,W0 BE C90 B C10 C12 PERF DISU,W3,RECNUM,RBUF READ JOB-CHAIN BOK C13 CMP DEBINW4,W9 BE C90 B ERROR C13 XCOPY BIN7,W0,W2,RBUF,W6 OCC. BYTES COPY STRG10A,W0,W10,RBUF,BIN2 COPY JOBNAME,W0,W6,STRG10A,W2 XCOPY BIN1,W0,W2,STRG10A,W8 REC.NO.-POINTER TO BATCH-CHAIN CBE BIN1,W0,C11 CBE COPY,=C'Y',C16 MOVE ANSW,=X'00' ATTFMT JOB COPY JOB ? SET DEPROMPT C14 PERF DECLRN IB DEBINW2,C14,C90 CBE ANSW,=C'N',C101 C16 MOVE DEBINW4,W0 PERF DISU,W5,BIN10,SYSBUF READ OUTPUT BOK C18 CBE DEBINW4,=W'30',C165 B ERROR C165 * NO DATA * MOVE DEBINW4,W0 MOVE SYSBUF,=X'4A4300' 'JC' C17 XCOPY SYSBUF,W6,W2,W10,W0 OCC. BYTES PERF DISU,W4,BIN10,SYSBUF WRITE BERR ERROR C18 XCOPY BIN12,W0,W2,SYSBUF,W6 OCC. BYTES CBL BIN12,=W'388',C19 XCOPY BIN9,W0,W2,SYSBUF,W4 LINK NEXT CBE BIN9,W0,C184 MOVE BIN10,BIN9 B C16 C184 * NEW RECORD * PERF FREESP,BIN9,W1 BERR ERR17 XCOPY SYSBUF,W4,W2,BIN9,W0 LINK NEXT PERF DISU,W4,BIN10,SYSBUF WRITE BERR ERROR MOVE SYSBUF,=X'4A4300' 'JC' XCOPY SYSBUF,W2,W2,BIN10,W0 LINK PREV MOVE BIN10,BIN9 B C17 C19 * INSERT JOB-ENTRIES * PERF FREESP,BIN11,W1 BATCH RECORD NO. BERR ERROR XCOPY STRG10A,W8,W2,BIN11,W0 COPY SYSBUF,BIN12,W10,STRG10A,W0 JOB ENTRY ADD BIN12,W10 XCOPY SYSBUF,W6,W2,BIN12,W0 OCC. BYTES PERF DISU,W4,BIN10,SYSBUF WRITE BERR ERROR EJECT ****************** * COPY BATCHES * ****************** C20 MOVE BIN4,W10 B C22 C201 ADD BIN4,W12 CBG BIN4,BIN8,C21 > OCC. BYTES B C23 C21 XCOPY BIN1,W0,W2,SBUF,W4 LINK NEXT BATCH-RECORD CBE BIN1,W0,C101 NEXT JOB B C20 C22 PERF DISU,W3,BIN1,SBUF READ BATCH-CHAIN BOK C23 CBE DEBINW4,W9,C101 NEXT JOB B ERROR C23 XCOPY BIN8,W0,W2,SBUF,W6 OCC. BYTES COPY STR15A,W0,W12,SBUF,BIN4 COPY BATCH,W0,W6,STR15A,W2 XCOPY BIN5,W0,W2,STR15A,W8 POINTER ACC-RECORD XCOPY BIN6,W0,W2,STR15A,W10 POINTER DS-RECORD CBE BIN5,W0,C21 CBE COPY,=C'Y',C26 MOVE ANSW,=X'00' ATTFMT BATCH COPY BATCH ? SET DEPROMPT C24 PERF DECLRN IB DEBINW2,C24,C90 CBE ANSW,=C'N',C201 C26 MOVE DEBINW4,W0 PERF DISU,W5,BIN11,SYSBUF READ OUTPUT BOK C28 CBE DEBINW4,=W'30',C265 B ERROR C265 * NO DATA * MOVE DEBINW4,W0 MOVE SYSBUF,=X'424300' 'BC' C27 XCOPY SYSBUF,W6,W2,W10,W0 OCC. BYTES PERF DISU,W4,BIN11,SYSBUF WRITE BERR ERROR C28 XCOPY BIN13,W0,W2,SYSBUF,W6 OCC. BYTES CBL BIN13,=W'386',C29 XCOPY BIN9,W0,W2,SYSBUF,W4 LINK NEXT CBE BIN9,W0,C284 MOVE BIN11,BIN9 B C26 C284 * NEW RECORD * PERF FREESP,BIN9,W1 BERR ERR17 XCOPY SYSBUF,W4,W2,BIN9,W0 LINK NEXT PERF DISU,W4,BIN11,SYSBUF WRITE BERR ERROR MOVE SYSBUF,=X'424300' 'BC' XCOPY SYSBUF,W2,W2,BIN11,W0 LINK PREV MOVE BIN11,BIN9 B C27 C29 * INSERT BATCH-ENTRIES * PERF FREESP,BIN9,W1 BATCH RECORD NO. BERR ERR17 XCOPY STR15A,W8,W2,BIN9,W0 POINTER TO ACC.RECORD PERF FREESP,BIN16,W1 BERR ERR17 XCOPY STR15A,W10,W2,BIN16,W0 POINTER TO DS-RECORD COPY SYSBUF,BIN13,W12,STR15A,W0 BATCH-ENTRY ADD BIN13,W12 POINTER IN BATCH-CHAIN XCOPY SYSBUF,W6,W2,BIN13,W0 OCC.BYTES PERF DISU,W4,BIN11,SYSBUF WRITE BERR ERROR PERF DSCOPY B C201 EJECT ***************** * CLOSE FILES * ***************** C90 MOVE DEBINW4,W0 PERF DISU,W5,W2,RBUF READ FREE-SPACE OUTPUT BERR ERROR COPY RBUF,W0,W10,RPOOL(W1),W9 COPY RBUF,W10,W188,BPOOL(W1),W0 PERF DISU,W4,W2,RBUF WRITE FREE-SPACE BERR ERROR * C95 CALL CHANFC,DISK,FCOD1 INPUT DSC0 DISK,CLOSE CALL CHANFC,DISK,FCOD2 OUTPUT DSC0 DISK,CLOSE ***************************************** * CHANGE VOLUME-NAME TO ORIG.VOL.NAME * ***************************************** C98 CALL CHANFC,DISK,FCOD OUTPUT CALL CHVOL,DISK,SBUF,TABLE RET PEND * * ERROR MOVE DEBINW4,W3 'I/O-ERROR' ERR99 PERF DSKERR,DEBINW4 B C95 ERR17 MOVE DEBINW4,W17 'OUTPUT FILE TOO SMALL' B ERR99 EJECT DSCOPY PROC * COPY ACC.RECORDS * PERF DISU,W3,BIN5,SYSBUF READ BERR ERROR PERF DISU,W4,BIN9,SYSBUF WRITE BERR ERROR * COPY DS-RECORDS * MOVE BIN9,W0 LINK PREV. MOVE BIN14,W0 LINK PREV. DS20 CBE BIN6,W0,DS99 PERF DISU,W3,BIN6,SYSBUF READ BERR ERROR XCOPY BIN6,W0,W2,SYSBUF,W4 LINK NEXT CBE BIN6,W0,DS30 PERF FREESP,BIN9,W1 BERR ERR17 XCOPY SYSBUF,W4,W2,BIN9,W0 LINK NEXT DS30 XCOPY SYSBUF,W2,W2,BIN14,W0 LINK PREV. PERF DISU,W4,BIN16,SYSBUF WRITE BERR ERROR MOVE BIN14,BIN16 MOVE BIN16,BIN9 B DS20 DS99 RET PEND EJECT JOB FRMT FSL FCOPY =C'COPY JOB:' FINP 11 FCOPY JOBNAME FLINK FANSW FMEND * BATCH FRMT FSL FCOPY =C'COPY BATCH:' FINP 14 FCOPY BATCH FLINK FANSW FMEND * FANSW FRMT FNL FCOPY =C'Y/N' FKI 5,MINL=1,MAXL=1,ME,NEOI,ALPHA,APPL=1 FCOPY ANSW FNL FKI 1,MINL=0,MAXL=0 FCOPY HEX00 FMEND END