global: Make Makefile better and some small fixes
[h316.git] / programs / fortran / src / f4$ios-b.asm
CommitLineData
6ad6bd16 1* F4$IOS-B - DEC 12 2006 - VERSION 1
2*
3* FORTRAN COMPILER IO SELECTOR
4*
5* WHEN THE COMPILER IS STARTED, REGISTER A SPECIFIES THE DEVICES
6* TO BE USED FOR SOURCE INPUT, OBJECT OUTPUT AND FOR LISTING OUTPUT.
7* THE IOS SELECTOR HONORS THIS SELECTION BY ACTIVATING THE SELECTED
8* DEVICES FOR THESE TASKS.
9*
10* THE FOLOWING OPTIONS ARE SUPPORTED:
11*
12* A[ 8-10] SOURCE INPUT DEVICE (1=TTY 2=CR 3=HSR 4=MAGTAPE-UNIT 1)
13* A[11-13] LISTING DEVICE (0=SUP 1=TTY 2=LP 4=MAGTAPE-UNIT 2)
14* A[14-16] OBJECT OUTPUT DEVICE (0=SUP 1=PTP 2=TTY 4=MAGTAPE-UNIT 2)
15* THE LISTED DEVICE ALLOCATION IS SET BY F4IOS
16* THIS VERSION OF F4IOS DOES NOT, WITHOUT MODIFICATION, SUPPORT OTHER
17* DEVICES FOR THE SPECIFIED TASKS.
18* THIS ALSO MEANS THAT TAPE UNIT 2 CAN EITHER BE USED FOR
19* OBJECT OUTPUT OR FOR LISTING OUTPUT
20*
21* IN CASE NO DEVICE SELECTION IS SPECIFIED IN REGISTER A, A DEFAULT
22* SELECTION IS MADE BY F4IOS:
23* - SOURCE INPUT 3=HSR
24* - LISTING OUTPUT 1=TTY
25* - OBJECT OUTPUT 1=PTP
26*
27* F4IOS LINKS, TO SUPPORT THE SPECIFIED IO, THE DRIVERS FOR THESE DEVICES.
28* HOWEVER, IF FOR INSTANCE NO MAGTAPE IS AVAILABLE IN A PARTICULAR
29* INSTALLATION, THE MAGTAPE DRIVER CAN BE REPLACED BY A DUMMY DRIVER.
30* THE COMPILER FOOTPRINT IN MEMORY BECOMES SMALLER THEN. DO NOT LINK
31* THE MAGTAPE DRIVER IN THAT CASE. THE F4$DUM MODULE RESOLVES THE CALLS
32* TO THE MAGTAPE DRIVER AND MUST BE THAT LAST MODULE TO BE LINKED.
33*
34* HONEYWELL X16 16 BIT COMPUTER SOFTWARE
35*
36* PROGRAM LENGTH: 415 WORDS
37*
38* THIS SOURCE IS RECREATED FROM THE EXISTING SLST FILE:
39* - SLST-FRTN.IMG (WHICH ORIGINATES FROM HONEYWELL)
40*
41* THE SOURCE IS RECREATED BY: THEO ENGEL (THEO.ENGEL@HETNET.NL)
42*
43* SUBR F4$INT,F4IN IO INITIALISATION ROUTINE
44* SUBR F4$IN,F4SI GENERAL SOURCE INPUT ROUTINE
45* SUBR F4$OUT,F4OO GENERAL OBJECT OUTPUT ROUTINE
46* SUBR F4$SYM,F4LO GENERAL LISTING OUTPUT ROUTINE
47* SUBR F4$END,F4EN END COMPILATION
48*
49* SUBR F4$DUI,IL1 DUMMY SOURCE INPUT DRIVER
50* SUBR F4$DUO,OL4 DUMMY OBJECT OUTPUT DRIVER
51* SUBR F4$DUS,LL9 DUMMY LISTING OUTPUT DRIVER
52*
53 SUBR F4$INT,F4IN
54 SUBR F4$IN,F4SI
55 SUBR F4$OUT,F4OO
56 SUBR F4$SYM,F4LO
57 SUBR F4$END,F4EN
58*
59 SUBR F4$DUI,IL1
60 SUBR F4$DUO,OL4
61 SUBR F4$DUS,LL9
62 REL
63*
64*******************************************************************
65* F4$INT -- INIT COMPILER DATA POOL AND STORE IO DEVICE SELECTION *
66*******************************************************************
67*
68F4IN DAC *-*
69 JST SDEV SET THE SELECTED DEVICES
70 JST PUTR PUNCH LEADER IN CASE PTP IS OBJECT DEVICE
71 CALL F4$INI SET THE SIZE OF THE DATA POOL
72 CRA
73 STA SCNT SOURCE INPUT RECORD COUNTER/LINENUMBER = 0
74 IRS INFL SET 1ST-TIME-CALL FLAG FOR LISTING DRIVER
75 JMP* F4IN
76*
77**************************************
78* GENERAL SOURCE INPUT ROUTINE *
79* CALLING SEQUENCE: *
80* CALL F4$IN *
81* DAC SOURCEBUFFER *
82**************************************
83*
84F4SI DAC *-* SOURCE INPUT DRIVER
85 LDA* F4SI GET SOURCE BUFFER ADDRESS
86 STA IB1 AND STORE
87 STA IB2
88 STA IB3
89 STA IB4
90 STA IB5
91 STA IB6
92IL6 LDA DSRC LOAD SELECTED SOURCE DEVICE
93 JST SWCH JMP SWITCH
94 JMP IL1 0 NON
95 JMP IL2 1 TTY
96 JMP IL3 2 CR
97 JMP IL4 3 HSR
98 JMP IL5 4 MAG TAPE
99 JMP IL1 5 NON
100 JMP IL1 6 NON
101* DUMMY SOURCE INPUT DEVICE DRIVER: SELECT PROPER DEVICE
102IL1 LDA MO5 7 NON =-5 MESSAGE LENGTH, 5 WORDS LONG
103 JST PRBF
104 DAC MDEV MESSAGE: DEVICE? (NO DRIVER FOR REQUESTED DEVICE)
105 JST STOP SET DEFAULT OR NEW DEVICE SELECTION
106 JMP IL6
107*
108IL2 CALL I$AA TTY = SOURCE INPUT DEVICE
109IB1 DAC *-* SOURCE BUFFER ADDRESS
110 JMP IL2 EOM/EOF RETURN
111 JMP IL7 NORMAL RETURN
112IL3 CALL I$CA CR = SOURCE INPUT DEVICE
113IB2 DAC *-* SOURCE BUFFER ADDRESS
114 JMP IL3 EOM/EOF RETURN
115 JMP IL7 NORMAL RETURN
116IL4 CALL I$PA HSR = SOURCE INPUT DEVICE
117IB3 DAC *-* SOURCE BUFFER ADDRESS
118 JMP IL4
119 JMP IL7
120IL5 CALL I$MA MT = SOURCE INPUT DEVICE
121IB4 DAC *-* SOURCE BUFFER ADDRESS
122 OCT 50 BUFFER LENGTH (WORDS)
123 OCT 1 TAPE UNIT 1 = SOURCE DECK
124 JMP ERR0 RECORD NOT READABLE RETURN
125 JMP ERR1 END OF TAPE RETURN
126 JMP IL5 END OF FILE RETURN; READ NEXT FILE
127 CALL C$6TO8 NORMAL RETURN; CONVERT RECORD TO ASCII
128IB5 DAC *-* SOURCE BUFFER ADDRESS
129 OCT 50 BUFFER LENGTH
130IL7 LDA SCNT SOURCE RECORD COUNTER
131 ADD N1 =1
132 SSP
133 STA SCNT SOURCE RECORD COUNTER
134 IRS F4SI SET RETURN ADDRESS
135 JMP* F4SI
136*
137**************************************
138* GENERAL OBJECT OUTPUT ROUTINE *
139* CALLING SEQUENCE: *
140* A = OBJECT BUFFER ADDRESS *
141* X = - BUFFER LENGTH (WORDS) *
142* CALL F4$OUT *
143**************************************
144*
145F4OO DAC *-* OBJECT OUTPUT DRIVER
146 STA OSRC EXTERNAL OBJECT BUFFER ADDRESS
147 LDA 0 - BUFFER LENGTH (WORDS)
148 TCA
149 STA OBFL + BUFFER LENGTH (WORDS)
150 STA MTBL
151 ADD OPTR POINTER TO OUTPUT BUFFER
152 ADD IFLG INDEX FLAG
153 STA ODES INDEXED DESTINATION
154OL1 LDA* OSRC MOVE OBJECT TO INTERNAL OUTPUT BUFFER
155 STA* ODES
156 IRS 0
157 JMP OL1
158OL6 LDA DOBJ
159 JST SWCH JMP SWITCH
160 JMP* F4OO 0 SUPPRESS OBJECT OUTPUT
161 JMP OL2 1 PTP
162 JMP OL3 2 TTY
163 JMP OL4 3 NON
164 JMP OL5 4 MAG TAPE
165 JMP OL4 5 NON
166 JMP OL4 6 NON
167* DUMMY OBJECT OUTPUT DEVICE DRIVER: SELECT PROPER DEVICE
168OL4 LDA MO5 7 NON =-5
169 JST PRBF
170 DAC MDEV MESSAGE: DEVICE?
171 JST STOP SET DEFAULT OR NEW DEVICE SELECTION
172 JST PUTR PUNCH TRAILER IN CASE PTP IS SELECTED
173 JMP OL6
174*
175OL2 CALL O$PB PTP = OBJECT OUTPUT DEVICE
176 DAC OBUF OUTPUT BUFFER ADDRESS
177 JMP* F4OO EXIT
178OL3 CALL O$AB TTY = OBJECT OUTPUT DEVICE
179 DAC OBUF OUTPUT BUFFER ADDRESS
180 JMP* F4OO EXIT
181OL5 CALL O$MB MAG TAPE = OBJECT OUTPUT DEVICE
182 DAC OBUF+1 BUFFER ADDRESS
183MTBL OCT 0 BUFFER LENGTH (WORDS)
184 OCT 2 TAPE UNIT 2 = OBJECT DECK
185 JMP ERR1 END OF TAPE RETURN
186 JMP* F4OO EXIT
187*
188**************************************
189* GENERAL LISTING OUTPUT ROUTINE *
190* CALLING SEQUENCE: *
191* CALL F4$SYM *
192* DAC LINEBUFFER *
193**************************************
194*
195F4LO DAC *-* LISTING OUTPUT DRIVER
196 LDA SPSP <SPACE><SPACE>
197 STA OBUF SET LINENUMBER FIELD
198 STA OBUF+1 (6 CHARS) TO SPACES
199 STA OBUF+2
200 LDA* F4LO EXTERNAL BUFFER ADDRESS
201 ADD ILPB +INDEX / LENGTH
202 STA OSRC INDEXED EXTERNAL BUFFER ADDRESS
203 LDA MO50 ='-50
204 STA 0 X = INDEX INTO THE LINE BUFFER
205LL1 LDA* OSRC MOVE LINE TO INTERNAL DRIVER BUFFER
206 STA LBUF,1
207 IRS 0
208 JMP LL1
209LL10 LDA INFL NON-ZERO WITH 1ST CALL
210 SNZ
211 JMP LL2 EQUAL 0
212* 1ST CALL OF LISTING DRIVER
213 LDA* F4LO EXTERNAL BUFFER ADDRESS
214 ERA IB6 EQUAL TO SOURCE BUFFER ADDRESS??
215 SZE
216 JMP LEX NOT EQUAL; EXIT
217 LDA DLST YES; GET REQUIRED LISTING DEVICE
218 ERA N2 EQUAL 2 ? (LP)
219 SZE
220 JMP LL2 NOT LP
221 CALL O$LH YES, LP. INIT THE HEADER
222 DAC OBUF
223LL2 LDA* F4LO EXTERNAL BUFFER ADDRESS
224 ERA IB6 EQUAL TO SOURCE BUFFER ADDRESS??
225 SZE
226 JMP LL3 NO
227 LDA TPTR YES, EQUAL TO SOURCE BUFFER
228 STA TEMP TEMP = PTR TO DEC CONV TAB
229 LDA SCNT GET SOURCE LINE NUMBER
230 STA NUMB LINENUMBER TO PRINT
231* WITH ZERO BEING TRUE, LEADING ZERO'S OF THE LINENUMBER ARE SUPPRESSED
232 IRS ZERO LEADING ZERO FLAG IS TRUE (SET TO FALSE WITH 1ST NONZERO)
233 JST CDIG DIGIT 1
234 JST CDIG DIGIT 2
235 JST CDIG DIGIT 3
236 JST CDIG DIGIT 4
237 JST CDIG DIGIT 5
238LL3 LDA DLST WHICH DRIVER TO OUTPUT LISTING?
239 JST SWCH JMP SWITCH
240 JMP LL4 0 SUPPRESS LISTING
241 JMP LL5 1 TTY
242 JMP LL6 2 LP
243 JMP LL9 3 NON
244 JMP LL8 4 MAG TAPE
245 JMP LL9 5 NON
246 JMP LL9 6 NON
247* DUMMY LISTING OUTPUT DEVICE DRIVER: SELECT PROPER DEVICE
248LL9 LDA MO5 7 NON =-5
249 JST PRBF
250 DAC MDEV MESSAGE: DEVICE?
251 JST STOP SET DEFAULT OR NEW DEVICE SELECTION
252 JMP LL10
253*
254LL5 LDA O43 TTY = LISTING OUTPUT DEVICE (35 WORDS)
255LL13 STA 0 REMOVE TRAILING BLANKS
256 LDA OBUF,1
257 ERA SPSP
258 SZE
259 JMP LL11
260 LDA 0
261 SNZ
262 JMP LL12
263 SUB N1
264 JMP LL13
265LL11 IRS 0
266 LDA 0
267 TCA A = - LENGTH (IN WORDS) OF THE LINE TO PRINT
268LL12 JST PRBF PRINT THE LINE
269 DAC OBUF
270 JMP LL4
271LL6 CALL O$LA LP = LISTING OUTPUT DEVICE
272 DAC OBUF OUTPUT BUFFER (60 WORDS)
273 JMP LL4
274LL8 CALL C$8TO6 MAG TAPE = LISTING OUTPUT DEVICE (UNIT 2)
275 DAC OBUF OUTPUT BUFFER
276 OCT 50 BUFFER LENGTH (WORDS)
277 CALL O$MA
278 DAC OBUF OUTPUT BUFFER
279 OCT 50 BUFFER LENGTH (WORDS)
280 OCT 2 TAPE UNIT 2 = OBJECT DECK
281 JMP ERR1 EOT RETURN
282LL4 CRA NORMAL RETURN
283 STA INFL RESET 1ST-TIME-CALL FLAG OF THE LISTING DRIVER
284LEX IRS F4LO SET RETURN ADDRESS
285 JMP* F4LO
286*
287* CONVERT 1 DIGIT FOR PRINTING A 5 DIGIT LINENUMBER
288* USED BY THE OUTPUT LISTING DRIVER
289CDIG DAC *-*
290 CRA
291 STA 0 X=0 (COUNT=0)
292 LDA NUMB NUMBER (OR RESIDUAL OF NUMBER) BEING CONVERTED
293CV1 SUB* TEMP TEMP = POINTER INTO CONVERSION TABLE
294 SPL
295 JMP CV2 NEGATIVE
296 STA NUMB STILL POSITIVE
297 IRS 0 COUNT + 1
298 JMP CV1
299CV2 IRS TEMP TEMP = POINTER TO NEXT ITEM IN CONVERSION TABLE
300 LDA TPTR POINTER TO TABLE
301 SUB TEMP MINUS THE CURRENT POINTER TO THE TABLE
302 STA T1
303 ADD N1 +1
304 TCA
305 LGR 1 = INDEX IN BUFFER
306 IMA 0 A = COUNT
307 SNZ
308 JMP CV3 COUNT = 0 => DIGIT WOULD BE 0
309CV4 ADD O20 ='20 (TO MAKE ASCII DIGIT OF SPACE)
310CV5 ALR '10
311 IRS T1
312 JMP CV5
313 ADD OBUF,1
314 STA OBUF,1
315 CRA
316 STA ZERO RESET THE LEADING ZERO FLAG
317 JMP* CDIG
318CV3 LDA ZERO NONZERO IF STILL LEADING ZERO'S
319 SZE
320 JMP* CDIG NONZERO, SO STILL A LEADING ZERO
321 JMP CV4 ZERO, SO NOT A LEADING ZERO, SO OUTPUT
322*
323**************************************
324* STOP COMPILATION: F4$END *
325**************************************
326*
327F4EN DAC *-*
328 LDA DOBJ OBJECT DEVICE?
329 JST PUTR PUNCH TRAILER IN CASE OF PTP
330 LDA DOBJ
331 ERA N1 PTP?
332 SNZ
333 OCP '102 YES; PTP OFF
334 ERA N5 OBJECT DEVICE MAGTAPE?
335 SNZ
336 JMP LE1 YES
337 LDA DLST LISTING DEVICE MAGTAPE?
338 ERA N4
339 SZE
340 JMP LE2 NO
341LE1 CALL O$ME WRITE EOF ON UNIT 2 (OBJECT OR LISTING DEVICE)
342 OCT 2 UNIT 2
343LE2 LDA MO6 ='-6
344 JST PRBF PRINT EOJ MESSGE
345 DAC MEOJ
346 JST STOP STOP
347 LDA DEFT
348 JMP* F4EN AND RESTART
349MEOJ OCT 106612 END OF JOB MESSAGE
350 BCI 1,EN
351 BCI 1,D
352 BCI 1,OF
353 BCI 1, J
354 BCI 1,OB
355*
356**************************************
357* STOP AND (RE)LOAD DEVICE SELECTION *
358**************************************
359* CALLED BY SOURCE, OBJECT AND LISTING (DUMMY) DRIVERS OF F4-IOS
360* CALLED BY F4$END (WHICH IS ALSO PART OF F4-IOS)
361*
362STOP DAC *-*
363 LDA DEFT LOAD DEFAULT DEVICE SETTINGS
364 HLT STOP AND POSSIBLY ADAPT THE SETTING
365 JST SDEV SET THE NEW DEVICE SELECTION
366 JMP* STOP
367*
368**************************************************************
369* SAVE DEVICE SELECTION AS DEFINED DURING COMPILER (RE)START *
370**************************************************************
371* DEVICE SELECTION AS SPECIFIED IN REG-A (SOURCE, LIST, OBJECT), OR DEFAULT
372*
373SDEV DAC *-* SET SELECTED DEVICES
374 SZE
375 STA DEFT STORE REQUESTED DEVICES
376 LDA DEFT LOAD DEFAULT IF NOTHING SPECIFIED,
377 LRL 6
378 ANA M7
379 STA DSRC SOURCE DEVICE
380 CRA
381 LLL 3
382 STA DLST LISTING DEVICE
383 CRA
384 LLL 3
385 STA DOBJ OBJECT DEVICE
386 JMP* SDEV
387*
388******************************************************************
389* PUNCH LEADER/TRAILER IN CASE PTP IS THE SELECTED OBJECT DEVICE *
390******************************************************************
391* A[14-16] = SELECTED OBJECT DEVICE
392*
393PUTR DAC *-*
394 ERA N1 =1 PUNCHER SELECTED?
395 SNZ
396 CALL O$PLDR YES; PUNCH LEADER/TRAILER
397 JMP* PUTR
398*
399**************************************
400* PRINT MESSAGE FROM BUFFER ON TTY *
401**************************************
402* CALLING SEQUENCE:
403* JST PRBF A = - MESSAGE LENGTH IN WORDS
404* DAC MESSAGE
405*
406PRBF DAC *-* PRINT BUFFER
407 STA 0 X = A = - BUFFER LENGTH
408 LDA* PRBF BUFFER ADDRESS
409 IRS PRBF SET RETURN ADDRESS
410 STA BA STORE BUFFER ADDRESS
411 SKS '104 TTY READY?
412 JMP *-1
413 OCP '104 SET OUTPUT MODE
414 LDA CRLF
415 JST PRA PRINT 2 CHARS IN A
416 LDA 0
417 SNZ
418 JMP* PRBF
419P1 LDA* BA GET 2 CHARS
420 JST PRA PRINT 2 CHARS IN A
421 IRS BA
422 IRS 0
423 JMP P1
424 JMP* PRBF
425*
426**************************************
427* PRINT 2 CHARS FROM REG-A ON TTY *
428**************************************
429*
430PRA DAC *-*
431 LRL '10
432 OTA 4
433 JMP *-1
434 LLL '10
435 OTA 4
436 JMP *-1
437 JMP* PRA
438*
439**************************************
440* SWITCH VIA JUMP-TABLE *
441**************************************
442* CALLING SEQUENCE:
443* LDA INDEX INTO JUMP-TABLE
444* JST SWCH
445* JMP -- JUMP-TABLE ENTRY 0 (INDEX 0)
446* JMP -- JUMP-TABLE ENTRY 1 (INDEX 1)
447* ETC
448*
449SWCH DAC *-* SWITCH
450 ADD SWCH
451 STA SWCH
452 JMP* SWCH
453*
454**************************************
455* ERROR HANDLING ROUTINES *
456**************************************
457*
458STRT EQU '1000 COMPILER START ADDRESS
459ERR0 LDA MO2 =-2
460 JST PRBF
461 DAC MUR MESSAGE: UR (RECORD UNREADABLE)
462 JMP ERR2
463ERR1 LDA MO3 =-3
464 JST PRBF
465 DAC MEOT MESSAGE: EOT (END OF TAPE)
466ERR2 JST STOP
467 LDA DEFT LOAD DEVICE SETTINGS (REG-A)
468 JMP STRT RESTART COMPILATION
469*
470**************************************
471* F4-IOS DATA AREA *
472**************************************
473*
474DEFT OCT 311 DEFAULT SELECTION OF IO DEVICES (I 3=HSR; L 1=TTY; O 1=PTP)
475* DECIMAL CONVERION TABLE (USER FOR PRINTING NUMBERS)
476DTAB OCT 23420 =10000
477 OCT 1750 =1000
478 OCT 144 =100
479 OCT 12 =10
480 OCT 1 =1
481DSRC OCT 0 SOURCE INPUT DEVICE AS SPECIFIED DURING START
482DLST OCT 0 LISTING DEVICE AS SPECIFIED DURING START
483DOBJ OCT 0 OBJECT OUTPUT DEVICE AS SPECIFIED DURING START
484IB6 OCT 0 SOURCE BUFFER ADDRESS
485SCNT OCT 0 SOURCE RECORD COUNTER
486INFL OCT 0 FLAG LISTING DRIVER (NONZERO WITH 1ST-TIME-CALL)
487OSRC OCT 0 POINTER TO EXTERNAL OBJECT BUFFER
488BA EQU * BUFFER ADDRESS
489TEMP EQU * TEMP POINTER TO DECIMAL CONVERSION TABLE
490ODES OCT 0 INDEXED POINTER TO INTERNAL OBJECT BUFFER
491NUMB OCT 0 TEMP STORAGE FOR LINENUMBER TO CONVERT/PRINT
492ZERO OCT 0 SET TO 0 WITH 1ST NONZERO DIGIT IN LINENUMBER
493T1 OCT 0
494OPTR DAC OBUF POINTER TO OUTPUT BUFFER
495TPTR DAC DTAB POINTER TO DECIMAL CONVERSION TABLE
496*
497OBFL EQU * OUTPUT BUFFER LENGTH FOR BINARY OUTPUT (WORDS)
498OBUF OCT 4 OUTPUT BUFFER (60 WORDS; MUST NOT EXCEED 60 WORDS)
499 OCT 300
500 OCT 0
501 OCT 2
502 OCT 302
503 BCI 3,
504 BCI 3,EOB
505 BCI 3,000300
506 BCI 1,
507 BCI 3,000000
508 BCI 1,
509 BCI 3,000002
510 BCI 3,
511 BCI 3,
512 BCI 3,
513 BCI 3,
514 BCI 3,
515 BCI 3,
516 BCI 3,
517LBUF BCI 3, END OF LISTING BUFFER
518 BCI 3,
519 BCI 3,
520 BCI 3,
521 BCI 3,
522 BCI 2,
523*
524CRLF EQU *
525* MESSAGE: DRIVER? (NO DEVICE DRIVER FOR REQUESTED DEVICE) 5 WORDS LONG
526MDEV OCT 106612 MESSAGE: DEVICE?
527 BCI 1,DE
528 BCI 1,VI
529 BCI 1,CE
530 BCI 1,?
531*
532MEOT OCT 106612 MESSAGE: EOT (END OF TAPE)
533 BCI 1,EO
534 BCI 1,T
535MUR OCT 106612 MESSAGE: UR (UNREADABLE RECORD)
536 BCI 1,UR
537MO3 OCT 177775
538MO2 OCT 177776
539M7 OCT 7
540MO6 OCT 177772
541N4 OCT 4
542N5 OCT 5
543O20 OCT 20
544O43 OCT 43
545N2 OCT 2
546MO50 OCT 177730 ='-50
547ILPB OCT 40050 INDEX LISTING BUFFER
548SPSP OCT 120240 <SPACE><SPACE>
549IFLG OCT 40001 INDEX FLAG
550MO5 OCT 177773
551N1 OCT 1
552 END