|
|
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: 4472 (0x1178)
Notes: pts_type(SC)
Names: »ADM45.SC«
└─⟦38a30a456⟧ Bits:30009662 Philips computer tape "600104"
└─⟦this⟧ »OD-KOM/ADM45.SC«
IDENT ADM45 840130 EV OD-KOM DDUM KMD08 * THIS MODULE TAKES HAND OF ALL ADMINISTRATION * REGARDING THE SPOOLING SYSTEM. PDIV ENTRY A45ELJ ENTRY PRJOUR ENTRY INCSTR ENTRY INCSLT EXT ADMRET EXT KBTEST EXT RAREAD EXT RADEL EXT WRITLO EXT WRITJT INCLUDE EQUATE EJECT A45ELJ START POINT EL.JOURNAL ON OR OFF TBF CSPOOL,ADM4590 QUIT IF NOT ALLOWED TBT TSPOOL,ADM4510 SEL IF ALREADY ON SET TSPOOL NO, SEL EL. JOURNAL ON MOVE TTSPARE3,=C'*' B ADM4590 ADM4510 EL. JOURNAL ON PERF PRJOUR EMPTY PRINT BUFFER FIRST BNOK ADM4590 NOT EMPTY CLEAR TSPOOL EMPTY, SET EL. JOURNAL OFF MOVE TTSPARE3,=C'.' ADM4590 B ADMRET EJECT PRJOUR PROC PRINT JOURNAL PERF WRITJT,=W'16' START EL. JOURNAL PRJ05 PERF KBTEST CHECK KEYBOARD BOK PRJ95 STOP IF MAK KEY PRJ10 CONTINUE, NOT MAK KEY PERF INCSTR READY TO PRINT NEXT BOK PRJ20 MORE LINES TO PRINT * NOW ALL LINES PRINTED PERF WRITJT,=W'17' SLUT EL. JOURNAL CMP CBIN0,CBIN0 FINISHED B PRJ100 PRJ20 MORE TO PRINT MOVE GSWBIN1,=W'60' LENGTH PERF RAREAD,DK06,=D'6',TSELBUF,GSWBIN1,TWELSTRT READ LINE BOK PRJ50 * ERROR B PRJ60 PRJ50 WAIT KJTAPE WRITE .NW,KJTAPE,TSELBUF PRINT LINE PRJ60 PERF RADEL,DK06,TWELSTRT,=D'6' CMP CBIN1,CBIN0 NOT FINISHED PRJ90 BNOK PRJ05 PRJ95 PERF WRITJT,=W'17' SLUT EL. JOURNAL CMP CBIN1,CBIN0 PRJ100 RET PEND EJECT INCSTR PROC * INCREMENT POINTER TWELSTRT * (CIRCULAR WITHIN TWELMIN,TWELMAX MOVE GSWBIN1,TWELSTRT ADD GSWBIN1,CBIN1 INCREMENT CBNG GSWBIN1,TWELMAX,INCSTR20 OUT OF LIMIT? MOVE GSWBIN1,TWELMIN YES, SET TO START INCSTR20 CBNE GSWBIN1,TWELSLUT,INCSTR90 BUFFER FREE? CMP CBIN1,CBIN0 NO, SET NOK, NO CHANGE OF TWELSTRT RET INCSTR90 YES, BUFFER FREE MOVE TWELSTRT,GSWBIN1 UPDATE TWELSTRT CMP CBIN0,CBIN0 RET PEND EJECT INCSLT PROC * INCREMENT POINTER TWELSLUT * (CIRCULAR WITHIN TWELMIN,TWELMAX MOVE GSWBIN1,TWELSLUT ADD GSWBIN1,CBIN1 INCREMENT CBNG GSWBIN1,TWELMAX,INCSLT20 OUT OF LIMIT? MOVE GSWBIN1,TWELMIN YES, SET TO START INCSLT20 CBNE GSWBIN1,TWELSTRT,INCSLT90 CICRL. BUFFER FULL? CMP CBIN1,CBIN0 YES, SET NOK, NO CHANGE OF TWELSLUT RET INCSLT90 CIRCL BUF NOT FULL MOVE TWELSLUT,GSWBIN1 UPDATE TWELSLUT CMP CBIN0,CBIN0 RET PEND END