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

⟦e2ee000b2⟧

    Length: 20564 (0x5054)
    Notes: pts_type(SC)
    Names: »DE20FS.SC«

Derivation

└─⟦48601905a⟧ Bits:30009668 Philips computer tape "600121"
    └─⟦this⟧ »S:DE/DE20FS.SC« 
└─⟦5c22ed822⟧ Bits:30009675 Philips computer tape "600209"
    └─⟦this⟧ »DEN10/DE20FS.SC« 
└─⟦79fbed147⟧ Bits:30009697 Philips computer tape "600414"
    └─⟦this⟧ »S:DE/DE20FS.SC« 
└─⟦bf903a231⟧ Bits:30009665 Philips computer tape "600109"
    └─⟦this⟧ »DEN10/DE20FS.SC« 
└─⟦d2a299635⟧ Bits:30009698 Philips computer tape "600415"
    └─⟦this⟧ »S:DE/DE20FS.SC« 

PTS(SC)

	IDENT	DE20FS	REL 10.0 80-04-11 
			80-03-20/JAER
* 
*        FORMAT DEFINITION SUBROUTINES
*         -2-BYTE ADRESSING COMPATIBLE
* 
 DDUM DEDDIV
 PDIV 
	ENTRY	FCOPY	FORMAT COPYING 
	ENTRY	FMELI	FORMAT EDITING 
	ENTRY	FTEXT	FORMAT TEXT
	ENTRY	FTAB	FORMAT TABULATION 
	ENTRY	FLINK	FORMAT LINKING 
	ENTRY	FSL	FORMAT START LINE
	ENTRY	FNL	FORMAT NEW LINE
	ENTRY	FKI	FORMAT KEYED INPUT 
	ENTRY	FVAL	FORMAT VALIDATION 
	ENTRY	FGEN	FORMAT GENERATION (FIELD) 
	ENTRY	FACC	FORMAT ACCUMULATION 
	ENTRY	FDUPL	FORMAT DUPLICATION REFERENCE 
	ENTRY	FCODE	FORMAT CODE GENERATION 
	ENTRY	FITEM	FORMAT FIX-ITEM-ADRESS 
	ENTRY	NOPOOL	NUMBER OF USED POOLS
	EXT	DERROR	ERROR-MESSAGES
	EXT	DEPOOL	BUFFERRESERVATIN-MODUL
	EXT	EMPTYT	ASSEMBLY SUBROUTINE EMPTYT  - 
	EXT	WCNTRL	FORMAT FIELD CONTROL WORDS
	EXT	FMOVE	FORMAT MOVE
	EXT	CONNUM	CONVERT STRG=>BIN 
	EXT	LINIT	LINE INITIALIZATION
	EXT	PICMA	PICTURELAYOUT CONVERTION 
	EJECT
* 
*       KEYTABLE
* 
CLR	EQU	X'8F'	CLEAR 
CAN	EQU	X'91'	CANCEL
RET	EQU	X'92'	RETURN
NOK	EQU	X'FF'	NO KEY
TOT	EQU	X'93'	TOTAL 
* 
DEKTAB6	KTAB	CLR,CAN,RET,NOK,TOT
* 
DEKTAB7	KTAB	CLR,CAN,RET
* 
	EJECT
* 
*        FORMAT COPYING 
* 
*        FCOPY = CO 0A <FIELD NR> 
* 
FCOPY	PROC
	PERF	FCODE,W1	GENERATE FCOPY=C0
	PERF	FFIELD
	RET
	PEND 
	EJECT
* 
*        FORMAT EDITING 
* 
*        FMELI = C2 <NUMB PIC.CHARS> <CH> <CH> ....<CH> 0A <FIELDNR>
* 
FMELI	PROC
	PERF	FCODE,W2	GENERATE FMELI=C2
	XCOPY	BPOOL(BIN3),BIN1,W1,BIN12,W1	STORE NUMB PICCHARS 
	ADD	BIN1,W1	NEXT POS 
	XCOPY	BPOOL(BIN3),BIN1,BIN12,STATSH,W0	STORE PIC CHARS 
	ADD	BIN1,BIN12	NEXT POS
	TBF	BOOL6,FMELI5	JUMP IF GENERAL FORMAT
	CALL	FMOVE,STRG10A,FACK	FETCH ACK-ITEM-ADRESS
	PERF	FITEM	LOAD ITEM-ADRESS
	SUB	BIN1,W1	ADJUST FOR INDEX-ADR.STORE 
	CBE	BIN15,W2,FMELI3	JUMP IF 1-BYTE ADRESSING 
	SUB	BIN1,W1	ADJUST FOR INDEX-ADR.STORE 
FMELI3
	MOVE	BIN16,FDVBCD(W8)	LOAD ACK-NR BINARY 
	CALL	FMOVE,STRG10A,FIND(BIN16)	FETCH INDEX-ITEM-ADRESS 
	PERF	FITEM	LOAD ITEM-ADRESS
	B	FMELIR 
FMELI5
	PERF	FFIELD	STORE FIELD NR 
FMELIR
	RET
	PEND 
	EJECT
* 
*        FORMAT TEXT
* 
*        FTEXT = C3 <NUMB. OF CHARS> <CH> <CH> ........ 
* 
FTEXT	PROC
	MOVE	BIN16,W188
	SUB	BIN16,W6	LOAD LIMIT FOR FLINK
	PERF	FLINK,BIN16,BIN9	GENERATE FLINK IF NEEDED 
	CBNE	DEBINW2,W0,FTEXT9	ERROR-SIGNAL
	PERF	FCODE,W3	GENERATE FTEXT=C3
	XCOPY	BPOOL(BIN3),BIN1,W1,BIN9,W1	STORE NUMB 
	ADD	BIN1,W1	NEXT BUFFER POS
	XCOPY	BPOOL(BIN3),BIN1,BIN9,LDES,BIN11	STORE CH-STRG 
	ADD	BIN1,BIN9	ADJUST BUFFERPOS 
FTEXT9
	RET
	PEND 
	EJECT
* 
*        FORMAT TABULATION
* 
*        FTAB = C4 <TABPOS> 
* 
FTAB	PROC 
	MOVE	BIN16,W188
	SUB	BIN16,W6	LOAD LIMIT FOR FLINK
	PERF	FLINK,BIN16,W0	GENERATE FLINK IF NEEDED 
	CBNE	DEBINW2,W0,FTAB99	ERROR-SIGNAL
	PERF	FCODE,W4	GENERATE FTAB=C4 
	XCOPY	BPOOL(BIN3),BIN1,W1,BIN8,W1	STORE TABPOS 
	ADD	BIN1,W1	NEXT BUFFERPOS 
FTAB99
	RET
	PEND 
	EJECT
* 
*        FORMAT VALIDATION
* 
*        FVAL = C5 <NUMB VAL.-CHARS> <CH> <CH> .......... 
* 
FVAL	PROC 
	MOVE	BIN16,W188
	SUB	BIN16,W6	LOAD LIMIT FOR FLINK
	MOVE	BIN15,FMTWK(W1) 
	SUB	BIN15,DEBIN4	SUBTRACT ENDPOS 
	SUB	BIN15,W3	ADJUST FOR FUNCTEXT 
	PERF	FLINK,BIN16,BIN15	GENERATE FLINK IF NEEDED
	CBNE	DEBINW2,W0,FVAL9	ERROR-SIGNAL 
	PERF	FCODE,W5	GENERATE FVAL = C5 
	PERF	CONNUM,JOBSPC,FMTWK,W1	CONVERT VARSTR=>BIN
	XCOPY	BPOOL(BIN3),BIN1,W1,FMTWK(W1),W1	STORE NUMB OF CHARS 
	ADD	BIN1,W1	NEXT BUFFER POSITION 
	XCOPY	BPOOL(BIN3),BIN1,FMTWK(W1),JOBSPC,DEBIN1	STORE CHARSSTRG 
	ADD	BIN1,FMTWK(W1)	ADJUST BUFFERPOS
FVAL9 
	RET
	PEND 
	EJECT
* 
*        FORMAT GENERATION (OF FIELDS)
* 
*        FGEN = C6 <NUMB OF GEN.-CHARS> <CH> <CH> ......... 
* 
FGEN	PROC 
	MOVE	BIN16,W188
	SUB	BIN16,W6	LOAD LIMIT FOR FLINK
	MOVE	BIN15,FMTWK(W2) 
	SUB	BIN15,DEBIN4	SUBTRACT ENDPOSITION
	SUB	BIN15,W3	ADJUST FOR FUNCTEXT 
	PERF	FLINK,BIN16,BIN15	GENERATE FLINK IF NEEDED
	CBNE	DEBINW2,W0,FGEN9	ERROR-SIGNAL 
	PERF	FCODE,W6	GENERATE FGEN = C6 
	PERF	CONNUM,JOBSPC,FMTWK,W2	CONVERT VARSTR=>BIN
	XCOPY	BPOOL(BIN3),BIN1,W1,FMTWK(W2),W1	STORE NUMB OF CHARS 
	ADD	BIN1,W1	NEXT BUFFERPOSITION
	XCOPY	BPOOL(BIN3),BIN1,FMTWK(W2),JOBSPC,DEBIN1	STORE CHARSSTRG 
	ADD	BIN1,FMTWK(W2) 
FGEN9 
	RET
	PEND 
	EJECT
* 
*        FORMAT ACCUMULATION
* 
*        FACC = C7 <NUMB OF ACC.-CHARS> <CH> <CH> ..........
* 
FACC	PROC 
	MOVE	BIN16,W188
	SUB	BIN16,W6	LOAD LIMIT FOR FLINK
	MOVE	BIN15,FMTWK(W3) 
	SUB	BIN15,DEBIN4	SUBTRACT STARTPOSITION
	SUB	BIN15,W3	ADJUST FOR FUNCTEXT 
	PERF	FLINK,BIN16,BIN15	GENERATE FLINK IF NEEDED
	CBNE	DEBINW2,W0,FACC9	ERROR-SIGNAL 
	PERF	FCODE,W7	GENERATE FACC = C7 
	PERF	CONNUM,JOBSPC,FMTWK,W3	CONVERT VARSTR=>BIN
	XCOPY	BPOOL(BIN3),BIN1,W1,FMTWK(W3),W1	STORE NUMB OF CHARS 
	ADD	BIN1,W1	NEXT BUFFERPOSITION
	XCOPY	BPOOL(BIN3),BIN1,FMTWK(W3),JOBSPC,DEBIN1	STORE CHARSSTRG 
	ADD	BIN1,FMTWK(W3)	ADJUST BUFFERPOSITION 
FACC9 
	RET
	PEND 
	EJECT
* 
*       FORMAT DUPLICATION REFERENCES 
* 
*       FDUPL = CC <NUMB. OF CHARS> <CH> <CH> <CH>......
* 
FDUPL	PROC
	MOVE	BIN16,W188
	SUB	BIN16,W6	LOAD LIMIT FOR FLINK
	MOVE	BIN15,FMTWK(W4) 
	PERF	FLINK,BIN16,BIN15	GENERATE FLINK
	CBNE	DEBINW2,W0,FDUPL9	ERROR-SIGNAL
	PERF	FCODE,W8	GENERATE FDUPL = CC
	PERF	CONNUM,DUPL,FMTWK,W4	CONVERT VARSTR. BIN
	XCOPY	BPOOL(BIN3),BIN1,W1,FMTWK(W4),W1	STORE NUM OF CHARS
	ADD	BIN1,W1	NEXT BUFFERPOS 
	XCOPY	BPOOL(BIN3),BIN1,FMTWK(W4),DUPL,W0	STORE CHARS-STRG
	ADD	BIN1,FMTWK(W4)	ADJUST BUFFERPOS
FDUPL9
	RET
	PEND 
	EJECT
* 
*       FORMAT LINKING
* 
*       FLINK = DF <BUFFERPOOLADRESS> <FORMATLINKINDEX> <CONSTANTADRESS>
* 
*       INPUT PARAMETERS  : LIMIT = POSITION LIMIT IN CURRENT BUFFER
*                                   WHERE IT IS ENOUGH SPACE TO 
*                                   GENERATE ACTUAL FORMAT DIREKTIVE
* 
*                           CHARS = NUMBER OF CHARACTER-POSITIONS TO
*                                   COUNT BEFORE COMPARISON IS MADE 
* 
* 
*       OUTPUT PARAMETER :
*                           DEBINW2 = 0 OK
*                                   = 1 NO BUFFERS AVAILABLE KEY:CANCEL 
*                                   = 2 NO BUFFERS AVAILABLE KEY:RETUR
*                                   = 4 MAXIMUM BUFFERS USED;KTOT SIMULATED 
* 
*********************************************************************** 
* 
FLINK	PROC	LIMIT,CHARS
	MOVE	DEBINW2,W0	OK 
	SUB	LIMIT,CHARS 	ADJUST LIMIT WITH NUMBER OF 
			CHARS TO COUNT (FTEXT,FMELI) 
	CALL	FMOVE,STRG10A,IND1	FETCH IND-ITEM-ADRESS
	MOVE	BIN15,W1	WORK:=1
	MATCH	STRG10A,BIN15,W9,FDIR,W0,W1
	CBE	BIN15,W1,FLINKA	JUMP IF 1-BYTE ADRESSING 
	SUB	LIMIT,W3	ADJUST FOR 2-BYTEADR
FLINKA
	CBNG	RNRFMCH,W29,FLINKF	JUMP IF NOT LAST BUFFER
	SUB	LIMIT,W3	ADJUST 3BYTE FDUM+FEXIT 
	CBNE	BIN15,W1,FLINKF	JUMP IF NOT 1BYTE ADDR
	SUB	LIMIT,W2	ADJUST 1BYTE FDUM+FEXIT 
FLINKF
	CBNG	BIN1,LIMIT,FLINK9	JUMP IF NO FLINKGEN 
	CBG	RNRFMCH,W29,FLINK7	NO MORE BUFFERS ALLOWED MAX 24
	PERF	FCODE,W9	GENRATE FLINK = DF 
	CALL	FMOVE,STRG10A,FBPOOL	FETCH BPOOL-ITEM-ADRESS
	PERF	FITEM	LOAD ITEM-ADRESS
	SUB	BIN1,W1	ADJUST FOR INDEX-ADR.STORE 
	CBE	BIN15,W2,FLINK1	JUMP IF 1-BYTE ADRESSING 
	SUB	BIN1,W1	ADJUST FOR INDEX-ADR.STORE 
FLINK1
	CALL	FMOVE,STRG10A,FFLIND	FETCH FLIND-ITEM-ADRESS
	PERF	FITEM	LOAD ITEM-ADRESS
	SUB	BIN1,W1	ADJUST FOR INDEX-ADR.STORE 
	CBE	BIN15,W2,FLINK3	JUMP IF 1-BYTE ADRESS
	SUB	BIN1,W1	ADJUST FOR INDEX-ADR.STORE 
FLINK3
	CALL	FMOVE,STRG10A,FIND(RNRFMCH) 
	PERF	FITEM	LOAD ITEM ADRESS
	ADD	RNRFMCH,W1	ADJUST FORMATLINKINDADR 
	TBF	DOOL2,FLINK5 
	MOVE	BIN3,FMTWK(W8)	RESTORE BUFFERIND ALREADY RES
	B	FLINK6 
FLINK5
	MOVE	BIN16,W1	WANTED BUFFERS 
	MOVE	STRG10A,FORMAT
	PERF	DEPOOL,W3,BIN16,BIN3,STRG10A	CHAIN ANOTHER BUFFER 
	BNOK	FLINK8	JUMP IF ERROR
	MOVE	BIN3,BIN16
	ADD	PRECPR,W1	NUMBER FORMATBUFFERS+1 
	PERF	NOPOOL	NUMBER OF USED POOLS 
	DISPLAY	2,W2,W2	DISPLAY DITO WHILE CHANGED 
	XCOPY	STR1A,W0,W1,FDIR,W0	LOAD 'E9'
	MOVE	BPOOL(BIN3),STR1A	FILL BUFFER WITH FEXIT E9 
FLINK6
	MOVE	BIN1,W0	BPOOLBUFFERPOINTER:=0 
	B	FLINK9 
FLINK7
	MOVE	DEBINW4,W29 
	PERF	DERROR,DEKTAB6
	CBE	DEBINW2,W1,FLINK7	JUMP IF CLEAR-KEY
	PERF	FCODE,W11	GENERATE FNL
	B	FLINKB 
FLINK8
	PERF	DERROR,DEKTAB7
	CBE	DEBINW2,W1,FLINK5	TRY AGAIN
FLINKB
	SUB	DEBINW2,W1	ADJUST FOR CANC RETURN
FLINK9
	CLEAR	DOOL2	F=LINE NOT DEL LAST BUFF USED
	RET
	PEND 
	EJECT
* 
*       FORMAT START LINE 
* 
*       FSL= E0 
* 
FSL	PROC
	MOVE	BIN1,W0	BPOOLBUFFER POINTER:=1
	XCOPY	STR1A,W0,W1,FDIR,W0	LOAD 'E9'
	MOVE	BPOOL(BIN3),STR1A	FILL BUFFER WITH FEXIT E9 
	PERF	FCODE,W10	GENERATE FSL=E0 
	MOVE	FMTWK(W6),BIN1	SAVE STARTPOINTER OF LASTLINE
	MOVE	FMTWK(W7),BIN3	SAVE BUFFERINDEX OF LASTLINE 
	MOVE	BIN10,W0	FIELDNR:=0 
	CLEAR	BOOL1	F=NO FIELD CONFIRMED 
	CLEAR	DOOL2	F=NO LINE DELETE DONE
	PERF	LINIT	LINE INIT OF WORKITEMS
	RET
	PEND 
	EJECT
* 
*       FORMAT END-OF-LINE PROCESSING 
* 
*       - PROCESSES FORMAT DIRECTIVE CODE : FNL 
*        AND ADJUSTS WORKITEMS FOR NEW LINE PROCESSING
* 
*       OUTPUT VARIABLES: 
*                          DEBINW2 = 0 OK GO ON 
*                                  = 1 NO AVAILABLE BUFFERS;CANCEL
*                                  = 2 NO AVAILABLE BUFFERS;RETUR 
*                                  = 4 MAX LIMIT EXCEEDED;KTOT
* 
*********************************************************************** 
* 
FNL	PROC
	MOVE	BIN16,W188
	SUB	BIN16,W5	LOAD LIMIT FOR FLINK
	PERF	FLINK,BIN16,W0	GENERATE FLINK IF NEEDED 
	CBNE	DEBINW2,W0,FNL99	ERROR SIGNAL 
	PERF	FCODE,W11	GENERATE FNL
	ADD	FDVBCD(W2),=D'1'	NEXT LINE 
	DISPLAY	2,W1,W1	DISPLAY LINE NR/PAGE NR
	CBG	FDVBCD(W2),FDVBCD(W1),FNL96	JUMP IF LINEMAX REACHED
	TBT	DOOL8,FNL10	JUMP IF NO ERASE 
	ERASE	10,W3,W0 
	B	FNL15
FNL10 
	ERASE	11,W3,W0	CLEAR IN CORE 
FNL15 
	MOVE	FMTWK(W6),BIN1	SAVE LASTLINE'S STPOINT
	MOVE	FMTWK(W7),BIN3	SAVE LASTLINE'S BUFFIND
	CBE	FMTWK(W5),W0,FNL90 
	MOVE	RECLNTH,FMTWK(W5)	SAVE LAST LINES NUMB CHARS
FNL90 
	SET	BOOL1	T=FIRST LINE CONFIRMED 
	PERF	LINIT	LINE INIT WORKITEMS 
	MOVE	DEBINW2,W0	OK 
	B	FNL99
FNL96 
	MOVE	DEBINW4,W28	MAXIMUM REACHED 
	PERF	DERROR,DEKTAB6
	CBE	DEBINW2,W1,FNL96	JUMP IF CLEAR-KEY 
	SUB	DEBINW2,W1	ADJUST FOR CANC RET 
FNL99 
	RET
	PEND 
	EJECT
*        FORMAT KEYED INPUT 
* 
*        FKI = FO <TABPOS> <CTL1> <CTL2> <CTL3> 
*            = F2 <TABPOS> <APPLE1> <CTL1> <CTL2> <CTL3>
*            = F3 <TABPOS> <APPLE1> <APPLE2> <CTL1> <CTL2> <CTL3> 
*            = F8 <TABPOS> <DUPL> <CTL1> <CTL2> <CTL3>
*            = FA <TABPOS> <APPLE1> <DUPL> <CTL1> <CTL2> <CTL3> 
*            = FB <TABPOS> <APPLE1> <APPLE2> <DUPL> <CTL1> <CTL2> <CTL3>
* 
FKI	PROC
	MOVE	BIN16,W188
	TBT	ALPHA,FKI01	JUMP IF ALPHANUM 
	MOVE	BIN15,BIN12	LOAD CHRS TO COUNT
	SUB	BIN16,W15	LOAD LIMIT FOR FLINK 
	B	FKI03
FKI01 
	MOVE	BIN15,W0	LOAD CHRS TO COUNT 
	SUB	BIN16,W14	LOAD LIMIT FOR FLINK 
FKI03 
	PERF	FLINK,BIN16,BIN15	GENERATE FLINK IF NEEDED
	CBNE	DEBINW2,W0,FKI99	ERROR-SIGNAL 
	MOVE	BIN15,W13	GENERATE FKI=F0 
	MOVE	BIN16,SPEC	LOAD APPLE BINARY
	CBE	BIN16,W0,FKI10	APPL=0
	ADD	BIN15,W1	FKI=F2
	CBNG	BIN16,=X'FF',FKI10	APPL < = 255 
	ADD	BIN15,W1	FKI=F3
FKI10 
	CBNE	FDVSTR(W1),='N',FKI20 
	ADD	BIN15,W3	FKI=F8 OR FA OR FB
FKI20 
	PERF	FCODE,BIN15	GENERATE FKI-CODE 
	EJECT
* 
*        TABULATION POSITION SETTING
* 
	XCOPY	BPOOL(BIN3),BIN1,W1,BIN6,W1	STORE TABPOS 
	ADD	BIN1,W1	NEXT POS 
	CBE	BIN16,W0,FKI50	NO APPLE VALUEE 
* 
*        APPLE VALUE SETTING
* 
	CBG	BIN16,=X'FF',FKI40	APPLE > 255 
	XCOPY	BPOOL(BIN3),BIN1,W1,BIN16,W1	STORE APPLE1
	ADD	BIN1,W1	NEXT POS 
	B	FKI50
FKI40 
	XCOPY	BPOOL(BIN3),BIN1,W2,BIN16,W0	STORE APPLE1-2
	ADD	BIN1,W2	NEXT POS 
* 
*       DUPL OF 'W1' INDICATING NO KEYED INPUT
* 
FKI50 
	CBNE	FDVSTR(W1),='N',FKI70 
	CALL	FMOVE,STRG10A,IND1
	PERF	FITEM	LOAD ITEM W1
FKI70 
* 
*        CONTROL WORDS SETTING CTL1 CTL2 CTL3 
* 
	MOVE	BIN16,FDVBCD(W7)	LOAD FDVBCD(W7)LENGTH BINARY 
	CALL	WCNTRL,BPOOL(BIN3),BIN1,DEBINW1,BIN16,BIN7	LOAD CTLS
	ADD	BIN1,W3
FKI99 
	RET
	PEND 
	EJECT
* 
*        FORMAT CODE GENERATION 
* 
*        INPUT PARAMETER  : FDIND = FORMAT DIRECTIVE INDEX
* 
***************************************************** 
FCODE	PROC	FDIND
	XCOPY	BPOOL(BIN3),BIN1,W1,FDIR,FDIND 
	ADD	BIN1,W1	NEXT POSITION IN BUFFER
	RET
	PEND 
	EJECT
* 
*        FORMAT FIELD NUMBER
* 
*              = 0A <FIELDNR> 
* 
FFIELD	PROC 
	XCOPY	BPOOL(BIN3),BIN1,W1,W10,W1	STORE '0A'-FIELD
	ADD	BIN1,W1	NEXT POS 
	XCOPY	BPOOL(BIN3),BIN1,W1,BIN10,W1	STORE FIELDNR 
	ADD	BIN1,W1	NEXT POS 
	RET
	PEND 
	EJECT
* 
*       THIS ROUTINE CHECKS WHICH ADRESSING TYPE IS USED. 
*       1- OR 2-BYTE ADRESSING
*       FETCHES THE FIX ITEM ADRESS , WHICH IS LOADED IN 'STRG10A'
*       AND STORES IT IN ACTUAL BUFFER AND THE CORRECT POSITION.
*       IT ALSO ADJUSTES THE BUFFERPOINTER (BIN1).
* 
FITEM	PROC
	MOVE	BIN15,W1	START ADRESS FOR MATCH 
	MATCH	STRG10A,BIN15,W9,FDIR,W0,W1	CHECK 1-/2-BYTEADR 
	XCOPY	BPOOL(BIN3),BIN1,BIN15,STRG10A,W0	LOAD ITEM-ADRESS 
	ADD	BIN1,BIN15	ADJUST BUFFERPOS 1/2
	RET
	PEND 
	EJECT
* 
*        SET NUMBER OF POOLS
*        -LAYOUT: X+YY  <X=NUMBER OF DESC-POOLS , YY=NUMBER OF FORMATPOOLS> 
* 
*         USED VARIABLES   : BIN16      = WORK
* 
*         CHANGED VARIABLES: FDVBCD(W3) = NUMBER OF USED POOLS ADJUSTED 
* 
*************************************************************************** 
NOPOOL	PROC 
	TBF	BOOL7,NOPL10	JUMP IF NEWREG-MODE 
	MOVE	BIN16,WORK(W3)	FETCH NUMB OF OLD DPOOLS 
	CBNG	PINDND,BIN16,NOPL20	JUMP IF NEW NUMB<OLD NUMB 
NOPL10
	MOVE	BIN16,PINDND	FETCH NUMB OF DESC POOLS 
NOPL20
	MUL	BIN16,=X'64'	MULTIPLY WITH 100 
	ADD	BIN16,PRECPR	ADD NUMBER OF FPRMATPOOLS 
	TBF	BOOL7,NOPL30	JUMP IF NEWREG.MODE 
	ADD	BIN16,WORK(W4)	ADD NUMB OF OLD FPOOLS
NOPL30
	MOVE	FDVBCD(W3),BIN16	'X+YY' 
	RET
	PEND 
	EJECT
* 
*       FORMAT LIST 
*        FIX-ITEM-ADRESSES
* 
FBPOOL	FRMT 
	FCTL	BPOOL(W1) 
	FMEND
FFLIND	FRMT 
	FCTL	FLIND(W1) 
	FMEND
FACK	FRMT 
	FCTL	ACK(W1) 
	FMEND
FIND	FTABLE	IND1,IND2,IND3,IND4,IND5,		C
		IND6,IND7,IND8,IND9,IND10,		C 
		IND11,IND12,IND13,IND14,IND15,		C 
		IND16,IND17,IND18,IND19,IND20,		C 
		IND21,IND22,IND23,IND24,IND25		C
		IND26,IND27,IND28,IND29 
	EJECT
IND1	FRMT 
	FCTL	W1
	FMEND
IND2	FRMT 
	FCTL	W2
	FMEND
IND3	FRMT 
	FCTL	W3
	FMEND
IND4	FRMT 
	FCTL	W4
	FMEND
IND5	FRMT 
	FCTL	W5
	FMEND
IND6	FRMT 
	FCTL	W6
	FMEND
IND7	FRMT 
	FCTL	W7
	FMEND
IND8	FRMT 
	FCTL	W8
	FMEND
	EJECT
IND9	FRMT 
	FCTL	W9
	FMEND
IND10	FRMT
	FCTL	W10 
	FMEND
IND11	FRMT
	FCTL	W11 
	FMEND
IND12	FRMT
	FCTL	W12 
	FMEND
IND13	FRMT
	FCTL	W13 
	FMEND
IND14	FRMT
	FCTL	W14 
	FMEND
IND15	FRMT
	FCTL	W15 
	FMEND
IND16	FRMT
	FCTL	W16 
	FMEND
	EJECT
IND17	FRMT
	FCTL	W17 
	FMEND
IND18	FRMT
	FCTL	W18 
	FMEND
IND19	FRMT
	FCTL	W19 
	FMEND
IND20	FRMT
	FCTL	W20 
	FMEND
IND21	FRMT
	FCTL	W21 
	FMEND
IND22	FRMT
	FCTL	W22 
	FMEND
IND23	FRMT
	FCTL	W23 
	FMEND
IND24	FRMT
	FCTL	W24 
	FMEND
IND25	FRMT
	FCTL	W25 
	FMEND
IND26	FRMT
	FCTL	W26 
	FMEND
IND27	FRMT
	FCTL	W27 
	FMEND
IND28	FRMT
	FCTL	W28 
	FMEND
IND29	FRMT
	FCTL	W29 
	FMEND
 END
 END

Full view