DataMuseum.dk

Presents historical artifacts from the history of:

Philips Data Systems

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Philips Data Systems

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦d0b7a79f0⟧

    Length: 20442 (0x4fda)
    Notes: pts_type(SC)
    Names: »MOD173.SC«

Derivation

└─⟦26dca8ec8⟧ Bits:30009711 Philips computer tape "RÅKON-DIVFMT"
    └─⟦this⟧ »REMIT2/MOD173.SC« 

PTS(SC)

 IDENT MOD173 821012 NJ 
 DDUM KMD08 
 PDIV 
 ENTRY BCHKPR 
 ENTRY STREDT 
 ENTRY AD46 
 ENTRY MEMIX1 
 ENTRY MEMIX2 
 ENTRY UPDMEM 
 ENTRY DIVRUT 
 EXT TXTEDT 
 EXT FSOLVE 
 EXT CHDATO 
 EXT WAITF
 EXT RAREAD 
 EXT RAWRIT 
 EXT NEWLIN 
 EXT FMREMP 
 EXT FMOD 
 EXT GENWRS 
 EXT SPERR
 EXT ASSG 
 EXT IDXGET 
 EXT RESTIX 
 INCLUDE EQUATE 

 EJECT
BCHKPR PROC P 
* PRINT BUNDTCHECKS 
* P = 0 BCHK10 - ADJUST PRINTER 
* P = 1 BCHK20 - LEV + TRANS 1
* P = 2 BCHK30 - TRANS 2
* P = 3 BCHK40 - TRANS 3 + PRINT
* P = 4 BCHK50 - PRINT
 MOVE GSWBIN8,P 
 ADD GSWBIN8,CBIN1
 IB GSWBIN8,BCHK10,BCHK20,BCHK30,BCHK40,BCHK50
 B BCHK90 
* 
BCHK10			PRINTER ADJUST 
 PERF FMREMP,CBIN1 GET FORMAT FBDTCHK 
 MOVE SPINPUT,='X'
 MOVE GSWBIN5,CBIN17
BCHK15
  PERF FMOD,GSWBIN5,SPINPUT WITH X
 SUB GSWBIN5,CBIN1
 CBG GSWBIN5,CBIN0,BCHK15 
 B BCHK65 PRINT IT
* 
BCHK20			INITIATE LEV + 1. TRANS
 PERF FMREMP,CBIN1 GET FORMAT FBDTCHK 
 PERF FMOD,CBIN5,GTLEVNVN 
 PERF FMOD,CBIN7,GTLEVADR 
 PERF FMOD,CBIN10,GTLEVBY 
 EDIT GSWSTR9,FPNR
 PERF FMOD,CBIN11,GSWSTR9 
 PERF FMOD,CBIN12,GTLEVPDI
 MOVE GTBSUM1,GTDUPF(CBIN4) 
 PERF TXTEDT,CBIN1,CBIN1
 B BCHK90 
* 
BCHK30
 ADD GTBSUM1,GTDUPF(CBIN4)
 PERF TXTEDT,CBIN1,CBIN2
 B BCHK90 
* 
BCHK40
 ADD GTBSUM1,GTDUPF(CBIN4)
 PERF TXTEDT,CBIN1,CBIN3
 B BCHK60 
* 
BCHK50
 CBE GSWBCD5,=D'1',BCHK90 NOTHING TO PRINT ?
BCHK60
 MOVE SPINPUT,CBLANKS 
 EDIT SPINPUT,FREMTOT1
 PERF FMOD,CBIN1,SPINPUT
 EDIT SPINPUT,FREMTOTS
 PERF FMOD,CBIN17,SPINPUT 
 MOVE GSWSTR20,=X'434845434B42454C5C422A20' 
 PERF FMOD,CBIN16,GSWSTR20 "CHECKBELOB" 
 PERF FSOLVE
BCHK65
 MOVE GTBSUM1,=D'0' 
 PERF GENWRS,GTHCDEV,EDITBUF
 PERF NEWLIN,CBIN7
 TBF GTCHKPR,BCHK70 
 PERF NEWLIN,CBIN1 EXTRA LINEFEED ? 
 CLEAR GTCHKPR
 B BCHK90 
BCHK70
 SET GTCHKPR
BCHK90
 CMP CBIN0,CBIN0
 RET
 PEND 
 EJECT
STREDT PROC 
 ADD GTDUPF(CBIN13),=D'0' 
 ADD GTDUPF(CBIN14),=D'0' 
 ADD GTDUPF(CBIN18),=D'0' 
 ADD GTDUPF(CBIN19),=D'0' 
 MOVE GSWSTR20,=X'00' 
 MOVE SPINPUT,=X'00'
 MOVE GSWBIN7,GTTXTTKO MOVE TEXTCODE
 IB GSWBIN7,STRE03,STRE04,STRE05,STRE06,STRE07,STRE08 
* NO FURTHER INFORMATION
STRE03
 EDIT SPINPUT,FREMINF1
 B STRE80 
* NR-1
STRE04
 MOVE GSWBCD6,GTDUPF(CBIN13) NR-1 
 CBE GSWBCD6,=D'0',STRE04A
 CBG GSWBCD6,=D'99999999',STRE04B CPRNR?
 EDIT SPINPUT,FREMINF2
 B STRE80 
STRE04A 
 EDIT SPINPUT,FREMINF1
 B STRE80 
STRE04B 
 EDIT SPINPUT,FREMINF8
 B STRE80 
* NR-1 NR-2 
STRE05
 MOVE GSWBCD6,GTDUPF(CBIN13) NR-1 
 MOVE GSWBCD7,GTDUPF(CBIN14) NR-2 
 CBE GSWBCD6,=D'0',STRE05A 0
 CBL GSWBCD6,=D'100000000',STRE05B GIRO 
 MOVE GSWBIN5,CBIN7 CPR=CAS 7-9 
 B STRE05C
STRE05A 
 MOVE GSWBIN5,CBIN1 CASE 1-3
 B STRE05C
STRE05B 
 MOVE GSWBIN5,CBIN4 CASE 4-6
STRE05C 
 CBE GSWBCD7,=D'0',STRE05F CASE OK
 CBL GSWBCD7,=D'100000000',STRE05D GIRO 
 ADD GSWBIN5,CBIN2 CPR=CASE + 2 
 B STRE05F
STRE05D 
 ADD GSWBIN5,CBIN1 CASE +1
STRE05F 
 IB GSWBIN5,STRE05G,STRE05H,STRE05I,STRE05J,		C 
		STRE05K,STRE05L,STRE05M,STRE05N,STRE05O 
STRE05G 
 EDIT SPINPUT,FREMINF1 0+0
 B STRE80 
STRE05H 
 EDIT SPINPUT,FREMINF9 0+GIRO 
 B STRE80 
STRE05I 
 EDIT SPINPUT,FREMINFA 0+CPR
 B STRE80 
STRE05J 
 EDIT SPINPUT,FREMINF2 GIRO+0 
 B STRE80 
STRE05K 
 EDIT SPINPUT,FREMINF3 GIRO+GIRO
 B STRE80 
STRE05L 
 EDIT SPINPUT,FREMINFB GIRO+CPR 
 B STRE80 
STRE05M 
 EDIT SPINPUT,FREMINFC CPRNR+0
 B STRE80 
STRE05N 
 EDIT SPINPUT,FREMINFD CPR+GIRO 
 B STRE80 
STRE05O 
 EDIT SPINPUT,FREMINFE CPR+CPR
 B STRE80 
* DATO-1
STRE06
 MOVE GSWBCD6,GTDUPF(CBIN18) DATO-1 
 CBE GSWBCD6,=D'0',STRE06B
 CBL GSWBCD6,=D'800000',STRE06A 
 PERF CHDATO
 MOVE GSWBCD6,GSWBCD7 
STRE06A 
 EDIT SPINPUT,FREMINF4
 B STRE80 
STRE06B 
 EDIT SPINPUT,FREMINF1
 B STRE80 
* DATO-1 DATO-2 
STRE07
 MOVE GSWBCD6,GTDUPF(CBIN18)
 CBL GSWBCD6,=D'800000',STRE07A 
 PERF CHDATO
 MOVE GTDUPF(CBIN18),GSWBCD7
STRE07A 
 MOVE GSWBCD6,GTDUPF(CBIN19)
 CBL GSWBCD6,=D'800000',STRE07B 
 PERF CHDATO
 MOVE GTDUPF(CBIN19),GSWBCD7
STRE07B 
 MOVE GSWBCD6,GTDUPF(CBIN18)
 MOVE GSWBCD7,GTDUPF(CBIN19) DATO-2 
 MOVE GSWBIN5,CBIN1 CASE 1-2
 CBE GSWBCD6,=D'0',STRE07C
 MOVE GSWBIN5,CBIN3 
STRE07C 
 CBE GSWBCD7,=D'0',STRE07D
 ADD GSWBIN5,CBIN1
STRE07D 
 IB GSWBIN5,STRE07E,STRE07F,STRE07G,STRE07H 
STRE07E 
 EDIT SPINPUT,FREMINF1 0+0
 B STRE80 
STRE07F 
 EDIT SPINPUT,FREMINF6 0+>0 
 B STRE80 
STRE07G 
 EDIT SPINPUT,FREMINF4 >0+0 
 B STRE80 
STRE07H 
 EDIT SPINPUT,FREMINF5 >0+>0
 B STRE80 
* NR-1 DATO-1 
STRE08
 MOVE GSWBCD6,GTDUPF(CBIN18)
 CBL GSWBCD6,=D'800000',STRE08A 
 PERF CHDATO
 MOVE GTDUPF(CBIN18),GSWBCD7
STRE08A 
 MOVE GSWBCD6,GTDUPF(CBIN13) NR-1 
 MOVE GSWBCD7,GTDUPF(CBIN18) DATO-1 
 MOVE GSWBIN5,CBIN1 
 CBE GSWBCD6,=D'0',STRE08C CAS 1-2
 CBG GSWBCD6,=D'99999999',STRE08B 
 MOVE GSWBIN5,CBIN3 CASE 3-4
 B STRE08C
STRE08B 
 MOVE GSWBIN5,CBIN5 CASE 5-6
STRE08C 
 CBE GSWBCD7,=D'0',STRE08D
 ADD GSWBIN5,CBIN1 CASE +1
 CBL GSWBCD7,=D'100000000',STRE08D
 ADD GSWBIN5,CBIN1 ASE + 1
STRE08D 
 IB GSWBIN5,STRE08E,STRE08F,STRE08G,		C 
		STRE08H,STRE08I,STRE08J 
STRE08E 
 EDIT SPINPUT,FREMINF1 0+0
 B STRE80 
STRE08F 
 EDIT SPINPUT,FREMINF6 0+DATO 
 B STRE80 
STRE08G 
 EDIT SPINPUT,FREMINF2 GIRO+0 
 B STRE80 
STRE08H 
 EDIT SPINPUT,FREMINF6 GIRO+DATO
 B STRE80 
STRE08I 
 EDIT SPINPUT,FREMINFC
 B STRE80 
STRE08J 
 EDIT SPINPUT,FREMINFF CPR+DATO 
 B STRE80 
STRE80
 EDIT GSWSTR20,FREMBEL
 CMP CBIN0,CBIN0
 RET
 PEND 
 EJECT
FREMINF1 FRMT 
 FILLR ' ',21 
 FMEND

FREMINF2 FRMT 
 FMEL 'ZZZZZZZZZZ',GSWBCD6
 FILLR ' ',11 
 FMEND

FREMINF3 FRMT 
 FMEL 'ZZZZZZZZZZ',GSWBCD6
 FILLR ' ',1
 FMEL 'ZZZZZZZZZZ',GSWBCD7
 FMEND

FREMINF4 FRMT 
 FMEL '99V99V99',GSWBCD6
 FILLR ' ',13 
 FMEND

FREMINF5 FRMT 
 FMEL '99V99V99',GSWBCD6
 FILLR ' ',3
 FMEL '99V99V99',GSWBCD7
 FILLR ' ',2
 FMEND

FREMINF6 FRMT 
 FMEL 'ZZZZZZZZZZ',GSWBCD6
 FILLR ' ',1
 FMEL '99V99V99',GSWBCD7
 FILLR ' ',2
 FMEND

FREMINF8 FRMT 
 FMEL '9999999999',GSWBCD6
 FILLR ' ',11 
 FMEND

FREMINF9 FRMT 
 FILLR ' ',11 
 FMEL 'ZZZZZZZZZZ',GSWBCD7
 FMEND

FREMINFA FRMT 
 FILLR ' ',11 
 FMEL '9999999999',GSWBCD7
 FMEND

FREMINFB FRMT 
 FMEL 'ZZZZZZZZZZ',GSWBCD6
 FILLR ' ',1
 FMEL '9999999999',GSWBCD7
 FMEND

FREMINFC FRMT 
 FMEL '9999999999',GSWBCD6
 FILLR ' ',11 
 FMEND

FREMINFD FRMT 
 FMEL '9999999999',GSWBCD6
 FILLR ' ',1
 FMEL 'ZZZZZZZZZZ',GSWBCD7
 FMEND

FREMINFE FRMT 
 FMEL '9999999999',GSWBCD6
 FILLR ' ',1
 FMEL '9999999999',GSWBCD7
 FMEND

FREMINFF FRMT 
 FMEL '9999999999',GSWBCD6
 FILLR ' ',1
 FMEL '99V99V99',GSWBCD7
 FILLR ' ',2
 FMEND

FPNR FRMT 
 FMEL 'ZZZZ',GTLEVPNR 
 FMEND

FREMTOT1 FRMT 
 FBT CBDTGIR,FRE110 
 FMEL '*******V**9,99-',GTBSUM1 
 FB FRE120
FRE110
 FMEL 'ZZZZZZVZZ9BB99-',GTBSUM1 
FRE120
 FMEND

FREMTOTS FRMT 
 FMEL 'ZZZZZZZVZZ9,99-',GTBSUM1 
 FMEND

FREMBEL FRMT
 FMEL 'ZZZZZZZVZZ9,99-',GTDUPF(CBIN4) 
 FMEND
 EJECT
AD46 PROC 
* MERGE DK07 + DK17 INTO DK27 
 TBT CAD41FLG,AD46END 
 SET CAD41FLG 
 PERF WAITF,CLOCK 
 EDWRT KJTAPE,AD46FM1 
 DSC0 DK08,CLOSE
 DSC0 DK09,CLOSE
 DSC0 DK11,CLOSE
 MOVE GSWBIN4,=W'27'
 PERF ASSG,CBIN1,DK27,GSWBIN4 
 BNOK AD46950 
 MOVE GSWBIN4,CBIN0 DK07
 MOVE GSWBIN6,CBIN0 DK27
 MOVE GSWBIN8,CBIN1 DK17
 PERF READ07 READ FIRST FROM INDEXFILE
 BNOK AD46950 
AD46010 
 SWITCH 
 CBE CMEMIX(GSWBIN8),=D'9999999999',AD46040 LAST? 
 CBL CMEMIX(GSWBIN8),GTLEVNR,AD46030
 PERF WRIT27,CBIN7
 BNOK AD46090 
 PERF READ07
 BOK AD46010
 B AD46090
AD46030 
 PERF WRIT27,CBIN17 
 ADD GSWBIN8,CBIN1
 CBNG GSWBIN8,=W'48',AD46010
AD46040			COPY REST OF DK07 
 PERF WRIT27,CBIN7
 BNOK AD46090 
 PERF READ07
 BOK AD46040
AD46090 
 CBNE GTWBCD1,=D'10',AD46950 ANY ERROR
* CLEAR DK17
 MOVE GSWBIN8,=W'48'
AD46110 
 PERF WRIT17
 SUB GSWBIN8,CBIN1
 BP AD46110 
* COPY DK27 BACK TO DK07
 MOVE GSWBIN6,CBIN1 
 MOVE CIXFREE,CBIN0 
AD46130 
 MOVE GTREMBUF,=C'  ' 
 MOVE GSWBIN1,CBIN7 
 PERF RAREAD,DK27,=D'27',GTREMBUF,GSWBIN1,GSWBIN6 
 BNOK AD46950 
 PERF RAWRIT,DK07,=D'7',GTREMBUF,GSWBIN6
 BNOK AD46950 
* UPDATE CIXFREE WITH 1. 9999999999-RECORD
 XCOPY GSWSTR2,CBIN0,CBIN2,GTREMBUF,CBIN0 
 CBNE GSWSTR2,=X'9999',AD46140
 CBNE CIXFREE,CBIN0,AD46140 
 MOVE CIXFREE,GSWBIN6 
AD46140 
 ADD GSWBIN6,CBIN1
 SWITCH 
 B AD46130
AD46950 
 MOVE GSWBIN1,=W'50'
 MOVE CIXLAST,CMEMPT(GSWBIN1) RESET CIXLAST 
 PERF RESTIX
 DSC0 DK27,CLOSE
 PERF ASSG,CBIN1,DK08,CBIN8 
 PERF ASSG,CBIN1,DK09,CBIN9 
 PERF ASSG,CBIN1,DK11,CBIN11
 CLEAR CLOCK
 EDWRT KJTAPE,AD46FM3 
 CLEAR CAD41FLG 
AD46END 
 RET
 PEND 



READ07 PROC 
 ADD GSWBIN4,CBIN1
 MOVE GTREMBUF,=C'  ' 
 MOVE GSWBIN1,CBIN7 
 PERF RAREAD,DK07,=D'7',GTREMBUF,GSWBIN1,GSWBIN4
 BNOK READ0790
 MOVE GTLEVNR,=D'1' 
 XCOPY GTLEVNR,CBIN1,CBIN5,GTREMBUF,CBIN0 
 B READ0730 
READ0710
 MOVE GTREMBUF,=X'99' 
READ0730
 CMP CBIN0,CBIN0
READ0790
 RET
 PEND 


WRIT17 PROC 
 MOVE GTREMBUF,=X'99' 
 PERF RAWRIT,DK17,=D'17',GTREMBUF,GSWBIN8 
 MOVE CMEMIX(GSWBIN8),=D'9999999999'
 MOVE CMEMPT(GSWBIN8),=X'7FFF'
 RET
 PEND 


WRIT27 PROC FILE
 ADD GSWBIN6,CBIN1
 CBE CBIN17,FILE,WRIT2710 
 PERF RAWRIT,DK27,=D'27',GTREMBUF,GSWBIN6 
 BNOK WRIT2790
 B WRIT2780 
WRIT2710
 MOVE SPINPUT,GTREMBUF
 XCOPY GTREMBUF,CBIN0,CBIN5,CMEMIX(GSWBIN8),CBIN1 
 XCOPY GTREMBUF,CBIN5,CBIN2,CMEMPT(GSWBIN8),CBIN0 
 PERF RAWRIT,DK27,=D'27',GTREMBUF,GSWBIN6 
 BNOK WRIT2790
 MOVE GSWBCD6,CMEMPT(GSWBIN8) 
 EDWRT KJTAPE,AD46FM2 
 MOVE GTREMBUF,SPINPUT
WRIT2780
 CMP CBIN0,CBIN0
WRIT2790
 RET
 PEND 


AD46FM1 FRMT
 FILLR ' ',2
 FTEXT '** ADM 46 START **' 
 FMEND

AD46FM2 FRMT
 FILLR ' ',2
 FMEL 'ZZZ9999999',CMEMIX(GSWBIN8)
 FILLR ' ',4
 FMEL '9999',GSWBCD6
 FMEND

AD46FM3 FRMT
 FILLR ' ',2
 FTEXT '** ADM 46 SLUT **'
 FMEND
 EJECT
MEMIX1 PROC LEVNR,INDX,LEVDEX 
* FIND OUT IF WANTED LEVNR IN MEMORY. 
* IF SO, INDX:=-1 
*        LEVDEX=POS IN STAM/VAR 
* GSWBIN9: FOUND LEV OR NEXT HIGHER 
 MOVE GSWBIN4,CBIN1 
MEMIX010
 CBE LEVNR,CMEMIX(GSWBIN4),MEMIX020 
 BL MEMIX015
 ADD GSWBIN4,CBIN1
 CBNG GSWBIN4,=W'48',MEMIX010 
 MOVE INDX,=W'-1' 
MEMIX015
 MOVE GSWBIN9,=W'-1'
 CMP CBIN1,CBIN0
 RET 		NOT FOUND
MEMIX020
 MOVE GSWBIN9,GSWBIN4 FOUND 
 MOVE LEVDEX,CMEMPT(GSWBIN4)
 MOVE INDX,=W'-1' INDICATE MEMTABLE 
 CMP CBIN0,CBIN0 FOUND
 RET
 PEND 


MEMIX2 PROC 
 MOVE GSWBIN1,=W'50'
 MOVE GSWBIN8,CMEMPT(GSWBIN1) 
SIDX170 
 MOVE GSWBIN1,CBIN7 
 PERF RAREAD,DK07,=D'7',GTREMBUF,GSWBIN1,GSWBIN8
 XCOPY GSWBIN1,CBIN0,CBIN2,GTREMBUF,CBIN5 INDEX 
 CBNE GSWBIN1,=X'0000',SIDX180
 SUB GSWBIN8,CBIN1
 BNZ SIDX170
SIDX180 
 MOVE CIXLAST,GSWBIN8 LOG. LAST RECORD
 MOVE GSWBIN8,=W'48' RESTORE SLAVEARRAY 
SIDX190 
 MOVE GSWBIN1,CBIN7 
 PERF RAREAD,DK17,=D'17',GTREMBUF,GSWBIN1,GSWBIN8 
 MOVE CMEMIX(GSWBIN8),=D'1' 
 XCOPY CMEMIX(GSWBIN8),CBIN1,CBIN5,GTREMBUF,CBIN0 
 XCOPY CMEMPT(GSWBIN8),CBIN0,CBIN2,GTREMBUF,CBIN5 
 SUB GSWBIN8,CBIN1
  BNZ SIDX190 
 CMP CBIN0,CBIN0
 RET
 PEND 
 EJECT
UPDMEM PROC 
XINS300 
 MOVE GSWBIN1,CBIN7 
 PERF RAREAD,DK07,=D'7',GTREMBUF,GSWBIN1,CIXLAST
* FIND AN INDEX TO BE USED, 
 BOK XINS302
 SUB CIXLAST,CBIN1
 BP XINS300 
 B XINS400
XINS302 
* FIND ROOM IN ARRAY
 MOVE GSWBIN4,=W'48'
 CBNE CMEMIX(GSWBIN4),=D'9999999999',XINS306
 MOVE GSWBIN4,CBIN1 
XINS305 
 CBL GTLEVNR,CMEMIX(GSWBIN4),XINS310
 ADD GSWBIN4,CBIN1
 CBNG GSWBIN4,=W'48',XINS305
XINS306 
 MOVE SPBINW4,CBIN21 FILE FILLED UP 
 MOVE GTWBCD2,=D'17'
 MOVE GTWBCD1,=D'51'
 MOVE GSWSTR9,=C'DISCFEJL ' 
 PERF SPERR 
 B XINS400
XINS310			INSERT NEW LEV
 MOVE GSWBIN5,=W'48'
 MOVE GSWBIN1,=W'47'
XINS320 
 MOVE CMEMIX(GSWBIN5),CMEMIX(GSWBIN1) SHIFT TO RIGHT
 MOVE CMEMPT(GSWBIN5),CMEMPT(GSWBIN1) 
 CBE GSWBIN1,GSWBIN4,XINS330 MORE TO SHIFT? 
 SUB GSWBIN5,CBIN1 YES, PLEASE DO 
 SUB GSWBIN1,CBIN1
 BP XINS320 
 B XINS400
XINS330 
 MOVE CMEMIX(GSWBIN4),GTLEVNR INSERT LEVNR
 XCOPY GSWBIN7,CBIN0,CBIN2,GTREMBUF,CBIN5 
 MOVE CMEMPT(GSWBIN4),GSWBIN7 
* MAKE LAST INDEXREC UNAVAILABLE
 MOVE GTREMBUF,=X'99999999990000' 
 PERF RAWRIT,DK07,=D'7',GTREMBUF,CIXLAST
 BNOK XINS400 
 SUB CIXLAST,CBIN1
* BACKUP CMEMIX 
 MOVE GSWBIN4,=W'48'
XINS340 
 MOVE GSWBCD6,CMEMIX(GSWBIN4) 
 XCOPY GTREMBUF,CBIN0,CBIN5,GSWBCD6,CBIN2 
 MOVE GSWBIN1,CMEMPT(GSWBIN4) 
 XCOPY GTREMBUF,CBIN5,CBIN2,GSWBIN1,CBIN0 
 PERF RAWRIT,DK17,=D'17',GTREMBUF,GSWBIN4 
 SUB GSWBIN4,CBIN1
 BP XINS340 
 CMP CBIN0,CBIN0
 RET
XINS400 
 CMP CBIN1,CBIN0
 RET
 PEND 
 EJECT
DIVRUT PROC P 
 IB P,DIV010,DIV020,DIV030,DIV040,		C 
		DIV050,DIV060,DIV070,DIV080,DIV090
 B DIVREX 
DIV030
DIV040
DIV050
DIV060
DIV070
DIV080
DIV090
DIVREX
 RET


DIV010
* THIS IS THE LYNGBY VERSION OF GETNXT
 PERF MEMIX1,GTLEVNR,GSWBIN4,GSWBIN5 CURRENT LEVNR
 CBE GSWBIN9,=W'-1',DIV011 FOUND? 
 MOVE GSWBIN4,GSWBIN9 
 CBL GTLEVNR,CMEMIX(GSWBIN4),DIV011 
 ADD GSWBIN4,CBIN1
DIV011
 MOVE GSWBCD6,CMEMIX(GSWBIN4) NEXT IN SLAVEARRAY
 MOVE GSWBIN8,CMEMPT(GSWBIN4) NEXT POINTER
 ADD GTLEVNR,=D'1' PREVENT EXIT THRU MEMIX1 
 PERF IDXGET,GTLEVNR,GSWBIN4,GSWBIN5 RETURN NEXT
 MOVE GSWBIN1,CBIN7 
 MOVE GTREMBUF,='  '
 PERF RAREAD,DK07,=D'7',GTREMBUF,GSWBIN1,GSWBIN4
 MOVE GTLEVNR,=D'1' 
 XCOPY GTLEVNR,CBIN1,CBIN5,GTREMBUF,CBIN0 
 CBE GTLEVNR,=D'9999999999',DIV018
 CBG GSWBCD6,GTLEVNR,DIV013 NEXT WAS IN INDEXFILE 
 MOVE GTLEVNR,GSWBCD6 SO WE HAVE FINISHED 
 MOVE GSWBIN4,=W'-1' ALREADY
 MOVE GSWBIN5,GSWBIN8 
DIV013
 CMP CBIN0,CBIN0
 RET
DIV015
 PERF IDXGET,GTLEVNR,GSWBIN4,GSWBIN5 RETURN NEXT
 ADD GSWBIN4,CBIN1
 MOVE GSWBIN1,CBIN7 
 MOVE GTREMBUF,='  '
 PERF RAREAD,DK07,=D'7',GTREMBUF,GSWBIN1,GSWBIN4
 MOVE GTLEVNR,=D'1' 
 XCOPY GTLEVNR,CBIN1,CBIN5,GTREMBUF,CBIN0 
 CBE GTLEVNR,=D'9999999999',DIV018
 CMP CBIN0,CBIN0
 RET
DIV018
 CMP CBIN1,CBIN0
 RET
* 
DIV020
 MOVE CTXBUF,=C'LYNGBY-T]RB[K KOMMUNE ' 
 RET
* 
 PEND 
 END

Full view