|
|
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: 4514 (0x11a2)
Notes: pts_type(SC)
Names: »RGSUB2.SC«
└─⟦22f4dea89⟧ Bits:30009702 Philips computer tape "DOS_PTS_4.2_M_FL"
└─⟦this⟧ »NJ-AMT/RGSUB2.SC«
└─⟦dab19bdd7⟧ Bits:30009677 Philips computer tape "600218"
└─⟦this⟧ »NJ-AMT/RGSUB2.SC«
IDENT RGSUB2 830908 EV
DDUM KMD08
PDIV
ENTRY PACKST
ENTRY PACKCL
EXT EMPTYT
EXT CYTRP
INCLUDE EQUATE
EJECT
PACKST PROC
********************
*
* PACKST - START OF PACKING
* MOVE ENTRIES FROM GTREGF TO GTDUPF,
* USING GTUSED
*
* ALTERED FIELDS: GSWBIN1
* GTDUPF
* GTUSED
********************
EJECT
* FIELD 90-94
* (=INDEX 20-24 IN GTUSED)
MOVE GSWBIN1,CBIN20 START INDEX
PST9010
MOVE GSWBIN2,GSWBIN1 SEE IF FIELD USED
MOVE GSWBIN3,GSWBIN1
SUB GSWBIN2,CBIN19
SUB GSWBIN3,CBIN14
CBE GTUSED(GSWBIN1),CBIN0,PST9030
* FIELD USED, SEE IF FIELD 90,94
* ELSE CLEAR FIELD 90,94
CBL GTUSED(GSWBIN1),=W'90',PST9040
CBG GTUSED(GSWBIN1),=W'94',PST9040
CALL EMPTYT,GTFELT90(GSWBIN2) CHECK IF EMPTY
BOK PST9020
MOVE GTUSED(GSWBIN1),CBIN0 NOT USED, REPEAT
B PST9010
* FIELD USED, AND FILLED IN
* SAVE DATA IN DUP FIELD
PST9020
MOVE GTFELT90(GSWBIN3),GTFELT90(GSWBIN2)
MOVE GTREGF(GSWBIN1),=D'0' SET USED
B PST9040
* FIELD NOT USED
* SELECT IF AUTODUP
PST9030
CBE GSSWITCH(GSWBIN1),CBIN0,PST9035
CBL GSSWITCH(GSWBIN1),=W'90',PST9035
CBG GSSWITCH(GSWBIN1),=W'94',PST9035
MOVE GTFELT90(GSWBIN2),GTFELT90(GSWBIN3)
MOVE GTREGF(GSWBIN1),=D'0'
MOVE GTUSED(GSWBIN1),GSSWITCH(GSWBIN1)
B PST9040
* CLEAR DUP DATA
PST9035
MOVE GTFELT90(GSWBIN3),=X'00'
TBF GTLOKSPG,PST9040
* IF LOKAL SPG, CLEAR DATA FIELD
MOVE GTFELT90(GSWBIN2),=X'00'
PST9040
ADD GSWBIN1,CBIN1
CBG GSWBIN1,CBINMAX,PST00
CBL GSWBIN1,=W'25',PST9010
PST00
EJECT
MOVE GSWBIN1,CBIN1
PST10
CBE GTUSED(GSWBIN1),CBIN0,PST30
*SOMETHING ENTERED
CALL EMPTYT,GTREGF(GSWBIN1)
BOK PST20 BRANCH IF NOT EMPTY
MOVE GTUSED(GSWBIN1),CBIN0
B PST10
*
* FIELD USED, AND FILLED IN
* SAVE DATA IN DUP FIELD
PST20
MOVE GTDUPF(GSWBIN1),GTREGF(GSWBIN1) TO DUP FIELD
B PST40
* NOTHING ENTERED
PST30
* SELECT IF AUTODUP
CBE GSSWITCH(GSWBIN1),CBIN0,PST35
MOVE GTREGF(GSWBIN1),GTDUPF(GSWBIN1) COPY DATA
MOVE GTUSED(GSWBIN1),GSSWITCH(GSWBIN1) SET FIELD NO
B PST40 TO LOOP INCREMENT
* CLEAR DUP DATA
PST35
MOVE GTDUPF(GSWBIN1),=X'FF'
TBF GTLOKSPG,PST40
MOVE GTREGF(GSWBIN1),=X'FF'
* CLEAR IF SPG. FUNCTION
PST40
ADD GSWBIN1,CBIN1
CBL GSWBIN1,CBINMAX,PST10
RET
PEND
EJECT
****************************************************
*
* PACKCL - CLEAR ROUTINE
*
* ALTERED FIELDS:
* GSWBIN1 - SET TO CBINMAX
* GTUSED - ALL ENTRIES SET TO 0
*
***********************************************
PACKCL PROC CLEAR ALL ENTRIES
PERF CYTRP CHECK FOR CYCLE PAGE WRITING
MOVE GSWBIN1,CBIN1 IN GTUSED
PCKCL10
MOVE GTUSED(GSWBIN1),CBIN0 LOOP CBINMAX TIMES
ADD GSWBIN1,CBIN1
CBL GSWBIN1,CBINMAX,PCKCL10
MOVE TT07TXT,=C' ' CLEAR TEXTS
MOVE TT16TXT,=C' '
CLEAR TTSMALL
CLEAR TTEORFLG TRANS ERASED
RET
PEND
END