|
|
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: 7370 (0x1cca)
Notes: pts_type(SC)
Names: »RGSUB3.SC«
└─⟦26dca8ec8⟧ Bits:30009711 Philips computer tape "RÅKON-DIVFMT"
└─⟦this⟧ »REMIT2/RGSUB3.SC«
└─⟦75255755f⟧ Bits:30009693 Philips computer tape "600410"
└─⟦this⟧ »NJREMIT/RGSUB3.SC«
└─⟦b6546aa17⟧ Bits:30009689 Philips computer tape "600325"
└─⟦this⟧ »REMIT2/RGSUB3.SC«
IDENT RGSUB3 03.01.XXX.1 DDUM KMD08 PDIV * ENTRY CYOUT ENTRY CYWRT ENTRY CYRD ENTRY CYTRP * EXT ABORT EXT RAWRIT EXT RAREAD EXT SPLIN8 EXT CLEAR8 EXT GRASPV EXT FRMXVO EXT CRVO EXT WAITF * INCLUDE EQUATE EJECT CYLINE PROC ******************** * * WRITE ONE LINE TO CYCLE DATASET * * ON ENTRY DATA IN SEPARATE FIELDS * * ON EXIT CR= OK DATA WRITTEN TO CYSET * CR=NOK DATA NOT WRITTEN TO CYSET * E.G. ERROR ON DISK * DATASET FULL * WAITED TOO LONG FOR BUFFER * ******************** MOVE GSWBIN1,CCYSIZE MUL GSWBIN1,TTASKNR CBNL GTCYOUT,GSWBIN1,CYLINNOK MOVE GSWBIN1,=W'32' CYLIN000 TBF CCYPFLG,CYLIN010 WAIT FOR BUFFER DELAY CBIN2 SUB GSWBIN1,CBIN2 CBL GSWBIN1,CBIN0,CYLINNOK B CYLIN000 * CYLIN010 SET CCYPFLG RESERVE BUFFER MOVE CCYBUF,=X'00' CLEAR BUFFER EDIT CCYBUF,GTSTRFMT PERF RAWRIT,DK03,=D'3',CCYBUF,GTCYOUT BNOK CYLIN100 ADD GTCYOUT,CBIN1 CLEAR CCYPFLG RELEASE BUFFER CMP CBIN0,CBIN0 RET * CYLIN100 CLEAR CCYPFLG RELEASE BUFFER CYLINNOK CMP CBIN1,CBIN0 RET PEND EJECT CYOUT PROC ******************** * * WRITE OUT THE WHOLE CONTENT OF CYSET * (LESS THAN ONE PAGE) * ******************** TBT GTCYWRTF,CYOUT050 TBT TTTSTFLG,CYOUT005 SET TTTSTFLG PERF SPLIN8,CBIN5,CBIN2 PERF GRASPV PERF CLEAR8 CYOUT005 MOVE TTLINNR,TTCYKPOS TBF GTCYTRPF,CYOUT010 SUB GTCYOUT,CBIN1 ADJUST FOR TRP LINE, -TOTAL CYOUT010 MOVE GSWBIN1,TTLINNR DSC1 KVOUCH,POS,GSWBIN1 CBNL GTCYIN,GTCYOUT,CYOUT050 PERF CYRD SUB TTLINNR,=D'2' WAIT KVOUCH B CYOUT010 * CYOUT050 RET PEND EJECT CYWRT PROC ******************** * * WRITE A LINE ON CYCLE DATASET * IN NOK EMPTY THE CYCLE DATASET TO VOUCHER * AND WRITE LINE TO VOUCHER * ******************** PERF CYLINE WRITE LINE TO CYSET BNOK CYWRT100 SUB TTLINNR,=D'2' CBL TTLINNR,=D'4',CYWRT010 IF PAGE FULL CMP CBIN0,CBIN0 OK RET * CYWRT010 MOVE GSWSTR9,=C'TRP ' NEW PAGE PERF FRMXVO,CBIN2 PERF CYLINE SET GTCYTRPF INITIATE PRINT CMP CBIN0,CBIN0 OK RET * CYWRT100 PERF CYOUT SET GTCYWRTF CMP CBIN1,CBIN0 RET PEND EJECT CYRD PROC ******************** * * READ ONE LINE FROM CYCLE DATASET AND * WRITE IT TO VOUCHER * * VOUCHER SHOULD BE POSITIONED BEFORE PRINT * ******************** CYRD000 PERF WAITF,CCYPFLG MOVE GSWBIN1,=W'128' SET LENGTH PERF RAREAD,DK03,=D'3',CCYBUF,GSWBIN1,GTCYIN BNOK CYRDNOK EDWRT .NW,KVOUCH,CYEDT CLEAR CCYPFLG B CYRD100 CYRDNOK ADD GTCYIN,CBIN1 CLEAR CCYPFLG PERF CRVO CMP CBIN1,CBIN0 NOK RET * CYRD100 WAIT KVOUCH PERF CRVO ADD GTCYIN,CBIN1 CMP CBIN0,CBIN0 OK RET PEND * * CYEDT FRMT FCOPY CCYBUF FMEND EJECT CYTRP PROC ******************** * * PRINT A WHOLE PAGE * * AND WRITE TRANSPORT LINE FIRST ON CYSET * ******************** TBF GTCYTRPF,CYTRP200 TBT GTCYWRTF,CYTRP100 T=ALREADY WRITTEN CLEAR GTCYTRPF CLEAR TTTSTFLG PERF CYOUT WAIT KVOUCH DSC0 .NW,KVOUCH,RLEAS CLEAR TTTSTFLG MOVE GSWSTR9,=C'TRP ' PERF FRMXVO,CBIN2 MOVE GTCYIN,TTASKNR SUB GTCYIN,CBIN1 MUL GTCYIN,CCYSIZE ADD GTCYIN,CBIN1 MOVE GTCYOUT,GTCYIN MOVE TTLINNR,TTCYKST MOVE TTCYKPOS,TTLINNR PERF CYLINE BNOK CYTRP100 B CYTRP150 * CYTRP100 CLEAR GTCYTRPF SET GTCYWRTF PERF SPLIN8,CBIN3,CBIN2 ASK FOR 'NY SIDE' PERF GRASPV GRASP MOVE TTCYKPOS,TTCYKST MOVE TTLINNR,TTCYKST POSITION VOUCHER MOVE GSWBIN1,TTLINNR DSC1 KVOUCH,POS,GSWBIN1 MOVE GSWSTR9,=C'TRP ' SET UP TRANSPORT LINE PERF FRMXVO,CBIN2 EDWRT KVOUCH,GTSTRFMT WRITE TRP LINE * CYTRP150 SUB TTLINNR,=D'2' CYTRP200 RET PEND * END