|
|
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: 13898 (0x364a)
Notes: pts_type(SC)
Names: »DKRUT2.SC«
└─⟦48601905a⟧ Bits:30009668 Philips computer tape "600121"
└─⟦this⟧ »S:DU/DKRUT2.SC«
└─⟦79fbed147⟧ Bits:30009697 Philips computer tape "600414"
└─⟦this⟧ »S:DU/DKRUT2.SC«
└─⟦d2a299635⟧ Bits:30009698 Philips computer tape "600415"
└─⟦this⟧ »S:DU/DKRUT2.SC«
IDENT DKRUT2 UPD 80-01-21/CHST ********************************************************** * * * AFTER EXECUTION, THE DATA-ITEM DEBINW4 WILL BE SET AS * FOLLOWS: * 0 = NO ERROR * 20 = NO SYSTEMDISC IN SYSTEM * 21 = NO DISC IN SPECIFIED UNIT * 22 = DISC I/0-ERROR * 23 = DISC NOT OPERABLE * *********************************************************** DDUM DDINIT PDIV EXT WAIT ENTRY ENTFMT ENTRY DELFMT ENTRY PREFMT ENTRY NEXFMT EXT SFMTCH EXT FREESP EXT DISU EXT RELEAS EXT NXPRFM EXT DLRCCH EXT RFRSP EXT RD EXT REFSP EXT EMPTYT EXT WRFSP EXT NOFFRE EXT COND EXT ALGO EXT RETURN EXT EMPTYT EXT DEPOOL EXT GETIND EXT DEDISC EXT CMPIND EXT OPENF EXT CLOSEF ENTRY OPCL WEOF EQU 3 CLOSE FILE EJECT OPCL PROC FUCO MOVE DEBINW4,W0 IB FUCO C OPENSY C CLOSSY C OPENUS C CLOSUS OPENSY TBF BOOLA1,GOON SWITCH B OPENSY GOON SET SWITSY BNZ OPENSY04 SET BOOLA1 CLEAR SWIT04 INCREASE DISC-COUNTER ADD FCOUNTER(W1),W1 ALREADY ASSIGNED? CBG FCOUNTER(W1),W1,OPENSY04 MOVE STRG10A,=C'SYSFIL ' MOVE JOBNAME,FVOLNAME(W1) CALL OPENF,DISK,FILECODE(W1),SYSBUF,STRG10A,JOBNAME BOK OPENSY02 OPENSY06 CALL CLOSEF,DISK,FILECODE(W1),SYSBUF,W0 CLEAR SWITSY MOVE DEBINW4,W20 SUB FCOUNTER(W1),W1 B OPENSY04 OPENSY02 MOVE LRUQUE,HEX00 MOVE DKBIN1,W1 DES1 CALL CMPIND,DKBIN1,BPOOL(W1) BNOK DES2 OUT OF RANGE MOVE RPOOL(DKBIN1),=X'5800' ADD DKBIN1,W1 B DES1 DES2 PERF NOFFRE,DEBIN1,W1 MOVE FNOOFREC(W1),DEBIN1 PERF DISU,W1,W1,SYSBUF XCOPY F95PROC(W1),W0,W2,SYSBUF,W5 XCOPY FRINF(W1),W0,W2,SYSBUF,W1 MOVE DKBIN1,W1 MOVE DKBIN2,W1 PERF DEPOOL,W2,DKBIN1,DKBIN2,STRG10A BNOK OPENSY06 MOVE FINDEXPO(W1),DKBIN1 PERF REFSP,W2,W1 BNOK OPENSY06 OPENSY07 READ SYSTEM VARIABLES PERF DEDISC,W19 OPENSY04 CLEAR BOOLA1 PERF COND SET CONDITION-REG RET CLOSSY TBF SWITSY,CLOSSY02 CLEAR SWITSY SUB FCOUNTER(W1),W1 CBG FCOUNTER(W1),W0,CLOSSY02 PERF WRFSP,W1 BNOK CLOSSY01 PERF DISU,W1,W1,SYSBUF BNOK CLOSSY01 PERF DISU,W2,W1,SYSBUF CLOSSY01 CALL CLOSEF,DISK,FILECODE(W1),SYSBUF,W0 CLOSSY02 PERF COND RET OPENUS TBF BOOLA2,GOONN SWITCH B OPENUS OPENUS0E PERF DISU,W3,W1,RBUF BERR OPENUS03 PERF SETUSE BERR OPENUS03 B OPENUS01 GOONN SET SWITUS BNZ OPENUS0C SET BOOLA2 CLEAR SWIT01 ADD FCOUNTER(FILINDUS),W1 CBG FCOUNTER(FILINDUS),W1,OPENUS0E MOVE STRG10A,=C'PTS-DE ' MOVE STR6A,FVOLNAME(FILINDUS) CALL OPENF,DISK,FILECODE(FILINDUS),RBUF,STRG10A,STR6A BNOK OPENUS02 PERF NOFFRE,DEBIN1,FILINDUS BOK OPENUS0D SET SWIT01 OPENUS0D MOVE FNOOFREC(FILINDUS),DEBIN1 PERF DISU,W3,W1,RBUF BERR OPENUS02 OPENUS0A XCOPY F95PROC(FILINDUS),W0,W2,RBUF,W5 GET FILESTATUS MOVE DKBIN1,W0 XCOPY DKBIN1,W1,W1,RBUF,W0 XCOPY FRINF(FILINDUS),W0,W2,RBUF,W1 FILE CLOSED? CBE DKBIN1,W0,USCLS SET SWIT01 USCLS XCOPY RBUF,W0,W1,W7,W1 PERF DISU,W4,W1,RBUF BOK OPENUS0B SET SWIT01 OPENUS0B PERF SETUSE BERR OPENUS02 MOVE DKBIN3,W1 MOVE DKBIN2,W1 PERF DEPOOL,W2,DKBIN3,DKBIN2,STRG10A BNOK OPENUS02 MOVE FINDEXPO(FILINDUS),DKBIN3 PERF REFSP,W2,FILINDUS PERF RELEAS BOK OPENUS01 MOVE DKBIN1,FINDEXPO(FILINDUS) PERF DEPOOL,W6,DKBIN1,DKBIN2,STRG10A OPENUS02 CALL CLOSEF,DISK,FILECODE(FILINDUS),SYSBUF,W0 MOVE DEBINW4,W21 OPENUS03 CLEAR SWITUS SUB FCOUNTER(FILINDUS),W1 B OPENUS0C OPENUS01 TBF SWIT01,OPENUS0C MOVE DEBINW4,=W'-2' OPENUS0C CLEAR BOOLA2 PERF COND RET CLOSUS TBF SWITUS,CLOSUS01 CLEAR SWITUS SUB FCOUNTER(FILINDUS),W1 BP CLOSUS01 PERF WRFSP,FILINDUS PERF RELEAS BNOK CLOSUS02 MOVE DKBIN1,FINDEXPO(FILINDUS) PERF DEPOOL,W6,DKBIN1,DKBIN2,STRG10A PERF DISU,W3,W1,RBUF BNOK CLOSUS02 XCOPY RBUF,W0,W1,W0,W1 PERF DISU,W4,W1,RBUF BNOK CLOSUS02 CLOSUS02 CALL CLOSEF,DISK,FILECODE(FILINDUS),SYSBUF,W0 CLOSUS01 PERF COND RET PEND SETUSE PROC XCOPY SECLEN,W0,W2,RBUF,W9 CBNE SECLEN,W0,SETCOP MOVE SECLEN,=W'256' SETCOP XCOPY DKBIN1,W0,W2,RBUF,W7 CBNE DKBIN1,W0,SETNOZ MOVE DKBIN1,W1 SETNOZ MUL DKBIN1,SECLEN CALL GETIND,RBUF,DKBIN2,DKBIN3 CBNG DKBIN1,DKBIN2,SETOKA MOVE DEBINW4,W22 MOVE BCD13A,=D'0' B SETRET SETOKA MOVE USELEN,DKBIN1 SUB DKBIN1,W15 MOVE MAXOCC,DKBIN1 SETRET PERF COND RET PEND EJECT DUMPROC PROC FC * ENTFMT ENTER FORMAT PERF WAIT BERR RETURN MOVE STR6A,FORMAT PERF FREESP,DEBIN1,W1 BERR RETURN MOVE WORK(W9),DEBIN1 B WRTFMT FMTCHAIN MOVE DEBIN5,W4 RDCHAIN MOVE DEBIN3,DEBIN5 PERF DISU,W1,DEBIN3,SYSBUF READ FORMATCHAIN BNERR FST3 CBE DEBINW4,=W'30',FFIRST B RETURN FST3 XCOPY DEBIN4,W0,W2,SYSBUF,W6 OCCUPIED SPACE TO DEBIN4 CBG DEBIN4,=W'180',RENEXT NO SPACE FOR MORE ENTRIES? ADDENTRY XCOPY STRG10A,W0,W2,W0,W0 STATUS = '00' COPY STRG10A,W2,W6,FORMAT,W0 NAME XCOPY STRG10A,W8,W2,WORK(W9),W0 FREESPACE-RECNR = PTR TO FMT COPY SYSBUF,DEBIN4,W10,STRG10A,W0 INSERT ENTRY TO CHAIN ADD DEBIN4,W10 XCOPY SYSBUF,W6,W2,DEBIN4,W0 SET OCCUPIED SPACE PERF DISU,W2,DEBIN5,SYSBUF B RETURN FFIRST MOVE DEBIN3,W0 MOVE DEBINW4,W0 B FFST01 RENEXT XCOPY DEBIN5,W0,W2,SYSBUF,W4 GET LINK TO NEXT CBNE DEBIN5,W0,RDCHAIN PERF FREESP,DEBIN5,W1 BERR RETURN XCOPY SYSBUF,W4,W2,DEBIN5,W0 PERF DISU,W2,DEBIN3,SYSBUF FFST01 MOVE DEBIN4,W10 MOVE SYSBUF,=X'464300' SET SCTR-IDENTIFICATION XCOPY SYSBUF,W2,W2,DEBIN3,W0 SET LINK TO PREV XCOPY SYSBUF,W4,W2,W0,W0 LINK TO NEXT = 0 B ADDENTRY WRTFMT MOVE DEBIN3,PINDFR PERF ALGO,W1 SET FORMAT-IDENTIFICATION NEGST MOVE DEBIN2,W0 XCOPY DEBIN2,W1,W1,RPOOL(DEBIN3),W8 GET LINK NEXT BUF XCOPY SYSBUF,W8,W2,RPOOL(DEBIN3),W17 CBE DEBIN2,W0,NOMOREC LAST RECORD? PERF FREESP,DEBIN4,W1 BNERR COP MOVE DEBIN2,WORK(W9) SAVE POINTER TO 1:ST FORMAT RECORD MOVE WORK(W9),DEBINW4 SAVE ERROR CODE PERF DISU,W1,DEBIN2,SYSBUF READ FIRST FORMAT RECORD BERR RETURN B DELF2 COP XCOPY SYSBUF,W4,W2,DEBIN4,W0 SET LINK NEXT REC COPY SYSBUF,W10,W188,BPOOL(DEBIN3),W0 PERF DISU,W2,DEBIN1,SYSBUF BERR RETURN TBF SWIT01,CO10 B FMTCHAIN CO10 MOVE DEBIN3,DEBIN2 MOVE DEBIN1,=X'4600' XCOPY SYSBUF,W0,W2,DEBIN1,W0 MOVE DEBIN1,DEBIN4 B NEGST NOMOREC MOVE DEBIN4,W0 SET SWIT01 B COP * * * * * NEXFMT GET NEXT FORMAT SET SWIT03 * * PREFMT MOVE FRMTPNTR,W0 CALL EMPTYT,FORMAT BZ RRECNX MOVE RNRFMCH,W4 MOVE PTRFMCH,W0 TBT SWIT03,RRECNX ADD PTRFMCH,W20 RRECNX CBNE RNRFMCH,W0,RRECNZ MOVE STR6A,FORMAT PERF SFMTCH,W4,SYSBUF,W10 BERR RETURN MOVE RNRFMCH,DEBIN1 MOVE PTRFMCH,DEBIN2 SUB PTRFMCH,W8 RRECNZ PERF WAIT BERR RETURN RRECNY PERF DISU,W1,RNRFMCH,SYSBUF BNERR RREC01 CBE DEBINW4,=W'30',OUTOFRAN B RETURN OUTOFRAN MOVE DEBINW4,W9 MOVE RNRFMCH,W0 B RETURN RREC01 XCOPY DEBIN1,W0,W2,SYSBUF,W6 GET USED SPACE TBF SWIT03,RREC02 ADD PTRFMCH,W10 CBE PTRFMCH,DEBIN1,RREC03 RREC07 MOVE DEBIN1,PTRFMCH B RREC04 RREC03 MOVE DEBIN1,W4 RREC05 XCOPY DEBIN5,W0,W2,SYSBUF,DEBIN1 CBE DEBIN5,W0,OUTOFRAN MOVE RNRFMCH,DEBIN5 TBF SWIT03,RRECNY MOVE PTRFMCH,W0 B RRECNY RREC02 CBL PTRFMCH,W20,RREC06 CBNL DEBIN1,PTRFMCH,RREC02A IF WITHIN USED SPACE MOVE PTRFMCH,DEBIN1 UPDATE WITH MAX LIMIT RREC02A SUB PTRFMCH,W10 B RREC07 RREC06 MOVE PTRFMCH,=W'190' MOVE DEBIN1,W2 B RREC05 RREC04 ADD DEBIN1,W2 MOVE STRG10A,=X'4600' COPY STRG10A,W1,W6,SYSBUF,DEBIN1 COPY FORMAT,W0,W6,SYSBUF,DEBIN1 MOVE STR6A,FORMAT B NXPRFM * * * DELFMT DELETE FORMAT PERF WAIT BNOK RETURN MOVE STR6A,FORMAT CLEAR SWIT04 PERF SFMTCH,W4,SYSBUF,W10 BERR RETURN MOVE BIN16,DEBIN1 SUB DEBIN2,W6 DEBIN2=PTR TO ENTRY IN REC XCOPY DEBIN1,W0,W2,SYSBUF,W6 DEBIN1=OCC. SPACE DLETE SYSBUF,DEBIN2,W10 SUB DEBIN1,W10 XCOPY SYSBUF,W6,W2,DEBIN1,W0 SET OCC SPACE CBG DEBIN1,W10,DELF1 CLEAR SWIT04 PERF DLRCCH,SYSBUF BERR RETURN DELF1 PERF DISU,W2,BIN16,SYSBUF BERR RETURN MOVE DEBIN2,DEBIN3 PERF DISU,W1,DEBIN2,SYSBUF BERR RETURN PERF ALGO,W2 BNERR DELF2 DELF3 MOVE DEBINW4,W9 DELF31 CBNE FC,W9,DELF32 JUMP IF NOT ENTFMT MOVE DEBINW4,WORK(W9) RESTORE ORIGINAL ERROR CODE DELF32 B RETURN DELF2 XCOPY DEBIN1,W0,W2,SYSBUF,W4 XCOPY SYSBUF,W0,W2,W0,W0 DESTROY ALGORITMH PERF DISU,W2,DEBIN2,SYSBUF FIRST RECORD BERR RETURN PERF RFRSP,DEBIN2,W1 DELF CBE DEBIN1,W0,DELF31 PERF DISU,W1,DEBIN1,SYSBUF BERR RETURN COPY STR2A,W0,W2,SYSBUF,W0 CBNE STR2A,=X'4600',DELF3 PERF RFRSP,DEBIN1,W1 XCOPY DEBIN1,W0,W2,SYSBUF,W4 B DELF * PEND END