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

⟦202dc4d57⟧

    Length: 4626 (0x1212)
    Notes: pts_type(SC)
    Names: »TSWBLK.SC«

Derivation

└─⟦173d42e04⟧ Bits:30009663 Philips computer tape "600105"
    └─⟦this⟧ »TOSSWORK/TSWBLK.SC« 

PTS(SC)

	IDENT TSWBLK 	REL 10.0 80-03-14 870105041000 

* 
* 
**************************************************
* 
*   PHILIPS TERMINAL SYSTEM  PTS
* 
*   TSWBLK = LOAD/STORE SWAPPABLE WORK BLOCK
* 
* 
* 
* 
**************************************************
* 
* 
*   THIS MODULE CONTAINS THE LOAD/STORE SWAPPABLE WORK BLOCK
*   LKM PROCESSOR, USED IN TOSS MEMORY MANAGEMENT SYSTEMS.
* 
* 
	EJECT			TSWBLK 
* 
* 
*********** 
* ENTRIES * 
*********** 
* 
* 
	ENTRY	TSWBLK	LOAD/STORE SWAPPABLE WORK BLOCK 



* 
* 
************* 
* EXTERNALS * 
************* 
* 
* 
	EXTRN	TDISP	DISPATCHER 
	EXTRN	LKMRQE	LKM REQUEST ERROR 
	EXTRN	SCTSWB	SWBTAB ADDRESS
	EXTRN	QLTSWB	ACTIVATE LDTASK AT ENTRY LT:SWB 
	EJECT			TSWBLK 
* 
* 
**********
* TSWBLK *
**********
* 
* 
*   THIS IS THE LOAD/STORE SWAPPABLE WORK BLOCK LKM PROCESSOR.
* 
*   IT IS ENTERED FROM THE LKM HANDLER
*   WITH THE FOLLOWING PARAMETERS:
* 
*   A5 = TTAB ADDRESS 
*   A6 = LKM DATA DIRECTIVE: 19 IF LOAD SWB 
*      =                     20 IF STORE SWB
*   A7 = LEFT BYTE : SWB TYPE (NUMBER)
*      = RIGHT BYTE: INDEX WITHIN TYPE
*   A8 = MEMORY ADDRESS OF WHERE TO LOAD THE SWB (A6 = 19)
*       =  "       "    "  THE SWB TO STORE      (A6 = 20)
* 
*   TSWBLK WILL ACTIVATE LDTASK (THE LOAD TASK) AT LABEL LT:SWB 
*   AND LDTASK WILL LOAD/STORE REQUESTED WORK BLOCK.
* 
*   IT RETURNS TO CALLING TASK WITH 
*   THE FOLLOWING PARAMETERS: 
* 
*   A7 = UNCHANGED IF LOADING/STORING IS SUCCESSFUL, ELSE 
*   A7 = -1 IF REQUEST ERROR, ELSE
*   A7 = -2 IF DISC I/O ERROR, ELSE 
*   A7 = -3 IF DISC NOT OPERABLE
* 
	EJECT			TSWBLK 
* 
*	CHECK VALIDITY OF SWPBLK PARAMETERS 
* 
TSWBLK	EQU	*	SWB HANDLING ENTRY 
	LD	A1,SCTSWB	GET SWBTAB ADDRESS
	RF(NZ)	TSW:10	SWBTAB PRESENT 
* 
SWBERR	EQU	*	COMMON REQUEST ERROR EXIT
	ABL	LKMRQE	LKM REQUEST ERROR 
* 
TSW:10	EQU	*
	ECR	A4,A7
	ANK	A4,/FF	GET TYPE NUMBER 
	CWR*	A4,A1	CHECK IF LEGAL
	RB(G)	SWBERR	SWB TYPE NUMBER TOO BIG 
	ADR	A4,A4
	ADR	A1,A4	GET ADDRESS TO SWB TYPE POINTER
	LDR*	A1,A1	GET ADDRESS TO SWB TYPE 
	ANK	A7,/FF	GET COPY NUMBER WITHIN TYPE 
	CCR	A7,A1	CHECK IF LEGAL 
	RB(G)	SWBERR	SWB COPY NUMBER TOO BIG 
* 
*	ACTIVATE LOAD TASK
* 
	LDR	A3,A5	GET TTAB ADDRESS OF CALLING TASK 
	LDR	A4,A6	LKM DATA DIRECTIVE 
	CF	A15,QLTSWB	ACTIVATE LDTASK AT ENTRY LT:SWB
	ABL	TDISP	GO TO DISPATCHER 
* 
* 
* 
	END

HexDump

0x0000…0036 (0, 0, 400)  Head {h00=0x0032, h01=0x0050, text=» IDENT TSWBLK  REL 10.0 80-03-14 870105041000 «, t00=0x0000, t01=0x0004}
0x0036…003e              Head {h00=0x0004, h01=0x0050, t00=0x0000, t01=0x003a}
0x003e…0048              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x0042}
0x0048…0052              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x004c}
0x0052…008c              Head {h00=0x0036, h01=0x0032, text=»**************************************************«, t00=0x0000, t01=0x0056}
0x008c…0096              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x0090}
0x0096…00be              Head {h00=0x0024, h01=0x0020, text=»*   PHILIPS TERMINAL SYSTEM  PTS«, t00=0x0000, t01=0x009a}
0x00be…00c8              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x00c2}
0x00c8…00fc              Head {h00=0x0030, h01=0x002c, text=»*   TSWBLK = LOAD/STORE SWAPPABLE WORK BLOCK«, t00=0x0000, t01=0x00cc}
0x00fc…0106              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x0100}
0x0106…0110              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x010a}
0x0110…011a              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x0114}
0x011a…0124              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x011e}
0x0124…015e              Head {h00=0x0036, h01=0x0032, text=»**************************************************«, t00=0x0000, t01=0x0128}
0x015e…0168              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x0162}
0x0168…0172              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0000, t01=0x016c}
0x0172…01b6              Head {h00=0x0040, h01=0x003c, text=»*   THIS MODULE CONTAINS THE LOAD/STORE SWAPPABLE WORK BLOCK«, t00=0x0000, t01=0x0176}
0x01b6…01f8              Head {h00=0x003e, h01=0x003a, text=»*   LKM PROCESSOR, USED IN TOSS MEMORY MANAGEMENT SYSTEMS.«, t00=0x0001, t01=0x002a}
0x01f8…0202              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0001, t01=0x006c}
0x0202…020c              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0001, t01=0x0076}
0x020c…0224              Head {h00=0x0014, h01=0x000f, text=» EJECT   TSWBLK «, t00=0x0001, t01=0x0080}
0x0224…022e              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0001, t01=0x0098}
0x022e…0238              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0001, t01=0x00a2}
0x0238…024c              Head {h00=0x0010, h01=0x000b, text=»*********** «, t00=0x0001, t01=0x00ac}
0x024c…0260              Head {h00=0x0010, h01=0x000b, text=»* ENTRIES * «, t00=0x0001, t01=0x00c0}
0x0260…0274              Head {h00=0x0010, h01=0x000b, text=»*********** «, t00=0x0001, t01=0x00d4}
0x0274…027e              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0001, t01=0x00e8}
0x027e…0288              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0001, t01=0x00f2}
0x0288…02be              Head {h00=0x0032, h01=0x002d, text=» ENTRY TSWBLK LOAD/STORE SWAPPABLE WORK BLOCK «, t00=0x0001, t01=0x00fc}
0x02be…02c6              Head {h00=0x0004, h01=0x0002, t00=0x0001, t01=0x0132}
0x02c6…02ce              Head {h00=0x0004, h01=0x0002, t00=0x0001, t01=0x013a}
0x02ce…02d6              Head {h00=0x0004, h01=0x0002, t00=0x0001, t01=0x0142}
0x02d6…02e0              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0001, t01=0x014a}
0x02e0…02ea              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0001, t01=0x0154}
0x02ea…0300              Head {h00=0x0012, h01=0x000d, text=»************* «, t00=0x0001, t01=0x015e}
0x0300…0316              Head {h00=0x0012, h01=0x000d, text=»* EXTERNALS * «, t00=0x0001, t01=0x0174}
0x0316…032c              Head {h00=0x0012, h01=0x000d, text=»************* «, t00=0x0001, t01=0x018a}
0x032c…0336              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0002, t01=0x0010}
0x0336…0340              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0002, t01=0x001a}
0x0340…0360              Head {h00=0x001c, h01=0x0017, text=» EXTRN TDISP DISPATCHER «, t00=0x0002, t01=0x0024}
0x0360…0388              Head {h00=0x0024, h01=0x001f, text=» EXTRN LKMRQE LKM REQUEST ERROR «, t00=0x0002, t01=0x0044}
0x0388…03ac              Head {h00=0x0020, h01=0x001c, text=» EXTRN SCTSWB SWBTAB ADDRESS«, t00=0x0002, t01=0x006c}
0x03ac…03e2              Head {h00=0x0032, h01=0x002d, text=» EXTRN QLTSWB ACTIVATE LDTASK AT ENTRY LT:SWB «, t00=0x0002, t01=0x0090}
0x03e2…03fa              Head {h00=0x0014, h01=0x000f, text=» EJECT   TSWBLK «, t00=0x0002, t01=0x00c6}
0x03fa…0404              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0002, t01=0x00de}
0x0404…040e              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0002, t01=0x00e8}
0x040e…0420              Head {h00=0x000e, h01=0x000a, text=»**********«, t00=0x0002, t01=0x00f2}
0x0420…0432              Head {h00=0x000e, h01=0x000a, text=»* TSWBLK *«, t00=0x0002, t01=0x0104}
0x0432…0444              Head {h00=0x000e, h01=0x000a, text=»**********«, t00=0x0002, t01=0x0116}
0x0444…044e              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0002, t01=0x0128}
0x044e…0458              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0002, t01=0x0132}
0x0458…049e              Head {h00=0x0042, h01=0x003e, text=»*   THIS IS THE LOAD/STORE SWAPPABLE WORK BLOCK LKM PROCESSOR.«, t00=0x0002, t01=0x013c}
0x049e…04a8              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0002, t01=0x0182}
0x04a8…04d6              Head {h00=0x002a, h01=0x0026, text=»*   IT IS ENTERED FROM THE LKM HANDLER«, t00=0x0002, t01=0x018c}
0x04d6…0500              Head {h00=0x0026, h01=0x0022, text=»*   WITH THE FOLLOWING PARAMETERS:«, t00=0x0003, t01=0x002a}
0x0500…050a              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0003, t01=0x0054}
0x050a…0528              Head {h00=0x001a, h01=0x0015, text=»*   A5 = TTAB ADDRESS «, t00=0x0003, t01=0x005e}
0x0528…055c              Head {h00=0x0030, h01=0x002b, text=»*   A6 = LKM DATA DIRECTIVE: 19 IF LOAD SWB «, t00=0x0003, t01=0x007c}
0x055c…0590              Head {h00=0x0030, h01=0x002c, text=»*      =                     20 IF STORE SWB«, t00=0x0003, t01=0x00b0}
0x0590…05be              Head {h00=0x002a, h01=0x0026, text=»*   A7 = LEFT BYTE : SWB TYPE (NUMBER)«, t00=0x0003, t01=0x00e4}
0x05be…05ec              Head {h00=0x002a, h01=0x0026, text=»*      = RIGHT BYTE: INDEX WITHIN TYPE«, t00=0x0003, t01=0x0112}
0x05ec…062e              Head {h00=0x003e, h01=0x003a, text=»*   A8 = MEMORY ADDRESS OF WHERE TO LOAD THE SWB (A6 = 19)«, t00=0x0003, t01=0x0140}
0x062e…0670              Head {h00=0x003e, h01=0x003a, text=»*       =  "       "    "  THE SWB TO STORE      (A6 = 20)«, t00=0x0003, t01=0x0182}
0x0670…067a              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0004, t01=0x0034}
0x067a…06c2              Head {h00=0x0044, h01=0x003f, text=»*   TSWBLK WILL ACTIVATE LDTASK (THE LOAD TASK) AT LABEL LT:SWB «, t00=0x0004, t01=0x003e}
0x06c2…06fe              Head {h00=0x0038, h01=0x0038, text=»*   AND LDTASK WILL LOAD/STORE REQUESTED WORK BLOCK.«, t00=0x0004, t01=0x0086}
0x06fe…0708              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0004, t01=0x00c2}
0x0708…0734              Head {h00=0x0028, h01=0x0023, text=»*   IT RETURNS TO CALLING TASK WITH «, t00=0x0004, t01=0x00cc}
0x0734…075a              Head {h00=0x0022, h01=0x001d, text=»*   THE FOLLOWING PARAMETERS: «, t00=0x0004, t01=0x00f8}
0x075a…0764              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0004, t01=0x011e}
0x0764…07a6              Head {h00=0x003e, h01=0x0039, text=»*   A7 = UNCHANGED IF LOADING/STORING IS SUCCESSFUL, ELSE «, t00=0x0004, t01=0x0128}
0x07a6…07d0              Head {h00=0x0026, h01=0x0022, text=»*   A7 = -1 IF REQUEST ERROR, ELSE«, t00=0x0004, t01=0x016a}
0x07d0…07fc (5, 0, 400)  Head {h00=0x0028, h01=0x0023, text=»*   A7 = -2 IF DISC I/O ERROR, ELSE «, t00=0x0005, t01=0x0004}
0x07fc…0824              Head {h00=0x0024, h01=0x0020, text=»*   A7 = -3 IF DISC NOT OPERABLE«, t00=0x0005, t01=0x0030}
0x0824…082e              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0005, t01=0x0058}
0x082e…0846              Head {h00=0x0014, h01=0x000f, text=» EJECT   TSWBLK «, t00=0x0005, t01=0x0062}
0x0846…0850              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0005, t01=0x007a}
0x0850…087e              Head {h00=0x002a, h01=0x0025, text=»* CHECK VALIDITY OF SWPBLK PARAMETERS «, t00=0x0005, t01=0x0084}
0x087e…0888              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0005, t01=0x00b2}
0x0888…08b0              Head {h00=0x0024, h01=0x001f, text=»TSWBLK EQU * SWB HANDLING ENTRY «, t00=0x0005, t01=0x00bc}
0x08b0…08d8              Head {h00=0x0024, h01=0x0020, text=» LD A1,SCTSWB GET SWBTAB ADDRESS«, t00=0x0005, t01=0x00e4}
0x08d8…08fe              Head {h00=0x0022, h01=0x0050, text=» RF(NZ) TSW:10 SWBTAB PRESENT «, t00=0x0005, t01=0x010c}
0x08fe…0908              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0005, t01=0x0132}
0x0908…0936              Head {h00=0x002a, h01=0x0026, text=»SWBERR EQU * COMMON REQUEST ERROR EXIT«, t00=0x0005, t01=0x013c}
0x0936…095c              Head {h00=0x0022, h01=0x001d, text=» ABL LKMRQE LKM REQUEST ERROR «, t00=0x0005, t01=0x016a}
0x095c…0966              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0005, t01=0x0190}
0x0966…097a              Head {h00=0x0010, h01=0x000c, text=»TSW:10 EQU *«, t00=0x0006, t01=0x000a}
0x097a…098c              Head {h00=0x000e, h01=0x000a, text=» ECR A4,A7«, t00=0x0006, t01=0x001e}
0x098c…09b0              Head {h00=0x0020, h01=0x001b, text=» ANK A4,/FF GET TYPE NUMBER «, t00=0x0006, t01=0x0030}
0x09b0…09d2              Head {h00=0x001e, h01=0x001a, text=» CWR* A4,A1 CHECK IF LEGAL«, t00=0x0006, t01=0x0054}
0x09d2…0a00              Head {h00=0x002a, h01=0x0050, text=» RB(G) SWBERR SWB TYPE NUMBER TOO BIG «, t00=0x0006, t01=0x0076}
0x0a00…0a12              Head {h00=0x000e, h01=0x0050, text=» ADR A4,A4«, t00=0x0006, t01=0x00a4}
0x0a12…0a44              Head {h00=0x002e, h01=0x002a, text=» ADR A1,A4 GET ADDRESS TO SWB TYPE POINTER«, t00=0x0006, t01=0x00b6}
0x0a44…0a70              Head {h00=0x0028, h01=0x0023, text=» LDR* A1,A1 GET ADDRESS TO SWB TYPE «, t00=0x0006, t01=0x00e8}
0x0a70…0aa0              Head {h00=0x002c, h01=0x0027, text=» ANK A7,/FF GET COPY NUMBER WITHIN TYPE «, t00=0x0006, t01=0x0114}
0x0aa0…0ac2              Head {h00=0x001e, h01=0x0050, text=» CCR A7,A1 CHECK IF LEGAL «, t00=0x0006, t01=0x0144}
0x0ac2…0af0              Head {h00=0x002a, h01=0x0050, text=» RB(G) SWBERR SWB COPY NUMBER TOO BIG «, t00=0x0006, t01=0x0166}
0x0af0…0afa (7, 2, 278)  Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0007, t01=0x0004}
0x0afa…0b16              Head {h00=0x0018, h01=0x0014, text=»* ACTIVATE LOAD TASK«, t00=0x0007, t01=0x000e}
0x0b16…0b20              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0007, t01=0x002a}
0x0b20…0b54              Head {h00=0x0030, h01=0x002b, text=» LDR A3,A5 GET TTAB ADDRESS OF CALLING TASK «, t00=0x0007, t01=0x0034}
0x0b54…0b7a              Head {h00=0x0022, h01=0x0050, text=» LDR A4,A6 LKM DATA DIRECTIVE «, t00=0x0007, t01=0x0068}
0x0b7a…0bb0              Head {h00=0x0032, h01=0x002e, text=» CF A15,QLTSWB ACTIVATE LDTASK AT ENTRY LT:SWB«, t00=0x0007, t01=0x008e}
0x0bb0…0bd4              Head {h00=0x0020, h01=0x001b, text=» ABL TDISP GO TO DISPATCHER «, t00=0x0007, t01=0x00c4}
0x0bd4…0bde              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0007, t01=0x00e8}
0x0bde…0be8              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0007, t01=0x00f2}
0x0be8…0bf2              Head {h00=0x0006, h01=0x0003, text=»* «, t00=0x0007, t01=0x00fc}
0x0bf2…0bfe              Head {h00=0x0008, h01=0x0004, text=» END«, t00=0x0007, t01=0x0106}
0x0bfe…0c02              Head {h00=0x4004, h01=0x0000}
0x0c02…0c06              00 07 01 12                                                                                                                                                                                                                                       ┆    ┆
0x0c06…0c0e (8, 1, 8)    20 04 00 00 00 08 00 04                                                                                                                                                                                                                           ┆        ┆
0x0c0e…0c5e (9, 0, 400)  4e 44 00 50 01 80 00 0c 00 50 5c 52 54 4e 5c 41 35 20 00 51 00 0a 00 0a 00 50 5c 45 4a 45 43 54 00 51 00 1a 00 06 00 50 2a 20 00 51 00 28 00 06 00 50 2a 20 00 51 00 32 00 2a 00 50 2a 20 20 20 20 43 55 52 50 4f 53 20 3d 20 53 55 42 52 4f 55   ┆ND P     P RTN A5  Q     P EJECT Q     P*  Q (   P*  Q 2 * P*    CURPOS = SUBROU┆
0x0c5e…0cae              54 49 4e 45 20 54 4f 20 53 45 54 20 43 55 52 53 4f 52 00 51 00 3c 00 3e 00 50 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 41 54 20 45 4e 54 52 59 20 41 34 20 3d 20 43 55 52 53 4f 52 20 50 4f 53 20 28 50 4f 53 49 54 49 4f 4e 20 41 4e 44 20 4c   ┆TINE TO SET CURSOR Q < > P*             AT ENTRY A4 = CURSOR POS (POSITION AND L┆
0x0cae…0cfe              49 4e 45 29 00 51 00 6a 00 06 00 50 2a 20 00 51 00 ac 00 10 00 50 43 55 52 50 4f 53 5c 45 51 55 5c 2a 00 51 00 b6 00 1a 00 50 5c 41 44 4b 4c 5c 41 34 2c 2f 31 46 31 46 5c 43 4f 4e 56 45 52 54 00 51 00 ca 00 1c 00 50 5c 4c 44 4b 5c 41 32 2c   ┆INE) Q j   P*  Q     PCURPOS EQU * Q     P ADKL A4,/1F1F CONVERT Q     P LDK A2,┆
0x0cfe…0d4e              53 43 41 44 44 5c 53 45 54 20 43 55 52 53 4f 52 00 51 00 e8 00 16 00 50 5c 43 46 5c 41 35 2c 4f 55 54 50 55 54 5c 53 45 4e 44 00 51 01 08 00 1c 00 50 5c 45 43 52 5c 41 32 2c 41 34 5c 50 4f 53 2e 20 58 20 3c 20 2f 38 30 3f 00 51 01 22 00 0e   ┆SCADD SET CURSOR Q     P CF A5,OUTPUT SEND Q     P ECR A2,A4 POS. X < /80? Q "  ┆
0x0d4e…0d9e              00 50 5c 4c 44 52 5c 41 32 2c 41 32 00 51 01 42 00 18 00 50 5c 52 46 28 4e 4e 29 5c 43 55 52 52 30 35 5c 59 45 53 21 20 00 51 01 54 00 12 00 50 5c 4c 43 4b 5c 41 34 2c 2f 37 46 30 30 20 00 51 01 70 00 10 00 50 43 55 52 52 30 35 5c 45 51 55   ┆ P LDR A2,A2 Q B   P RF(NN) CURR05 YES!  Q T   P LCK A4,/7F00  Q p   PCURR05 EQU┆
0x0d9e…0dee (10, 0, 400) 5c 2a 00 51 01 86 00 0e 00 50 5c 4c 44 52 5c 41 32 2c 41 34 00 52 00 0a 00 26 00 50 5c 43 46 5c 41 35 2c 4f 55 54 50 55 54 5c 4f 55 54 50 55 54 20 50 4f 53 49 54 49 4f 4e 20 28 58 29 20 00 52 00 1c 00 0e 00 50 5c 4c 44 52 5c 41 32 2c 41 34   ┆ * Q     P LDR A2,A4 R   & P CF A5,OUTPUT OUTPUT POSITION (X)  R     P LDR A2,A4┆
0x0dee…0e3e              00 52 00 46 00 1c 00 50 5c 52 46 28 4e 4e 29 5c 43 55 52 52 31 30 5c 59 20 3c 20 2f 38 30 21 20 00 52 00 58 00 10 00 50 5c 4c 44 4b 5c 41 32 2c 2f 37 46 20 00 52 00 78 00 0e 00 50 5c 52 46 5c 43 55 52 52 31 35 00 52 00 8c 00 10 00 50 43 55   ┆ R F   P RF(NN) CURR10 Y < /80!  R X   P LDK A2,/7F  R x   P RF CURR15 R     PCU┆
0x0e3e…0e8e              52 52 31 30 5c 45 51 55 5c 2a 00 52 00 9e 00 1a 00 50 5c 53 52 4c 5c 41 32 2c 38 5c 53 48 49 46 54 20 52 49 47 48 54 20 00 52 00 b2 00 10 00 50 43 55 52 52 31 35 5c 45 51 55 5c 2a 00 52 00 d0 00 20 00 50 5c 43 46 5c 41 35 2c 4f 55 54 50 55   ┆RR10 EQU * R     P SRL A2,8 SHIFT RIGHT  R     PCURR15 EQU * R     P CF A5,OUTPU┆
0x0e8e…0ede              54 5c 4f 55 54 50 55 54 20 4c 49 4e 45 28 59 29 00 52 00 e4 00 0c 00 50 5c 52 54 4e 5c 41 35 20 00 52 01 08 00 0a 00 50 5c 45 4a 45 43 54 00 52 01 18 00 0a 00 50 2a 5c 5c 5c 3d 32 00 52 01 26 00 0a 00 50 2a 5c 5c 5c 3d 32 00 52 01 34 00 0a   ┆T OUTPUT LINE(Y) R     P RTN A5  R     P EJECT R     P*   =2 R &   P*   =2 R 4  ┆
0x0ede…0f2e              00 50 2a 5c 5c 5c 3d 32 00 52 01 42 00 38 00 50 2a 5c 20 20 45 52 41 20 2d 20 53 55 42 52 4f 55 54 49 4e 45 20 54 4f 20 41 56 4f 49 44 20 55 4e 4e 45 43 45 53 53 41 52 59 20 4f 55 54 50 55 54 5c 5c 3d 32 00 52 01 50 00 0a 00 50 2a 5c 5c 5c   ┆ P*   =2 R B 8 P*   ERA - SUBROUTINE TO AVOID UNNECESSARY OUTPUT  =2 R P   P*   ┆
0x0f2e…0f7e (11, 0, 398) 3d 32 00 52 01 8c 00 0a 00 50 2a 5c 5c 5c 3d 32 00 53 00 0a 00 30 00 50 2a 5c 41 54 20 45 4e 54 52 59 20 41 34 20 3d 20 43 48 41 52 20 54 4f 20 45 52 41 53 45 20 46 52 4f 4d 20 55 53 45 52 5c 5c 3d 32 20 00 53 00 18 00 2e 00 50 2a 5c 41 54   ┆=2 R     P*   =2 S   0 P* AT ENTRY A4 = CHAR TO ERASE FROM USER  =2  S   . P* AT┆
0x0f7e…0fce              20 45 58 49 54 20 20 41 34 20 3d 20 43 48 41 52 20 54 4f 20 45 4e 44 20 4f 46 20 53 43 52 45 45 4e 5c 5c 3d 32 20 00 53 00 4c 00 0a 00 50 2a 5c 5c 5c 3d 32 00 53 00 7e 00 12 00 50 45 52 41 5c 45 51 55 5c 2a 5c 5c 3d 32 20 00 53 00 8c 00 22   ┆ EXIT  A4 = CHAR TO END OF SCREEN  =2  S L   P*   =2 S ~   PERA EQU *  =2  S   "┆
0x0fce…101e              00 50 5c 4c 44 5c 41 32 2c 44 57 54 50 4f 53 2c 41 36 5c 4d 41 58 20 43 48 41 52 2e 5c 3d 32 20 00 53 00 a2 00 20 00 50 5c 41 4e 4b 5c 41 32 2c 2f 46 46 5c 47 45 54 20 4d 41 58 20 43 48 41 52 2e 5c 3d 32 00 53 00 c8 00 30 00 50 5c 4c 43 5c   ┆ P LD A2,DWTPOS,A6 MAX CHAR. =2  S     P ANK A2,/FF GET MAX CHAR. =2 S   0 P LC ┆
0x101e…106e              41 33 2c 44 57 54 41 50 2b 31 2c 41 36 5c 43 55 52 52 45 4e 54 20 50 4f 53 2e 20 4f 4e 20 53 43 52 45 45 4e 5c 3d 32 20 00 53 00 ec 00 14 00 50 5c 41 4e 4b 5c 41 33 2c 2f 46 46 5c 5c 3d 32 20 00 53 01 20 00 32 00 50 5c 53 55 52 5c 41 32 2c   ┆A3,DWTAP+1,A6 CURRENT POS. ON SCREEN =2  S     P ANK A3,/FF  =2  S   2 P SUR A2,┆
0x106e…10bc              41 33 5c 4e 55 4d 42 45 52 20 4f 46 20 43 48 41 52 2e 20 54 4f 20 45 4e 44 20 4f 46 20 53 43 52 45 45 4e 5c 3d 32 00 53 01 38 00 20 00 50 5c 41 44 4b 5c 41 32 2c 31 5c 41 44 4a 55 53 54 20 4c 45 4e 47 54 48 20 5c 3d 32 20 00 53 01 6e         ┆A3 NUMBER OF CHAR. TO END OF SCREEN =2 S 8   P ADK A2,1 ADJUST LENGTH  =2  S n┆
0x10bc…110c (12, 2, 342) 00 20 00 50 5c 43 57 52 5c 41 34 2c 41 32 5c 4f 55 54 53 49 44 45 20 53 43 52 45 45 4e 5c 3d 32 00 54 00 04 00 18 00 50 5c 52 46 28 4c 29 5c 45 52 41 45 4e 44 5c 4e 4f 5c 3d 32 20 00 54 00 28 00 2e 00 50 5c 4c 44 52 5c 41 34 2c 41 32 5c 4f   ┆   P CWR A4,A2 OUTSIDE SCREEN =2 T     P RF(L) ERAEND NO =2  T ( . P LDR A4,A2 O┆
0x110c…115c              55 54 53 49 44 45 20 53 43 52 45 45 4e 20 4d 4f 44 49 46 59 20 4c 45 4e 47 54 48 5c 3d 32 00 54 00 44 00 1e 00 50 5c 4c 44 4b 4c 5c 41 33 2c 2f 46 46 46 46 5c 53 45 54 20 4f 56 45 52 5c 3d 34 00 54 00 76 00 22 00 50 45 52 41 45 4e 44 5c 45   ┆UTSIDE SCREEN MODIFY LENGTH =2 T D   P LDKL A3,/FFFF SET OVER =4 T v " PERAEND E┆
0x115c…11ac              51 55 5c 2a 5c 45 4e 44 20 53 55 42 52 4f 55 54 49 4e 45 5c 3d 32 00 54 00 98 00 16 00 50 5c 52 54 4e 5c 41 35 5c 52 45 54 55 52 4e 5c 3d 32 20 00 54 00 be 00 0e 00 50 41 42 44 59 5c 45 51 55 5c 2a 00 54 00 d8 00 2c 00 50 5c 43 46 5c 41 31   ┆QU * END SUBROUTINE =2 T     P RTN A5 RETURN =2  T     PABDY EQU * T   , P CF A1┆
0x11ac…11fc              35 2c 55 50 44 41 50 50 5c 55 50 44 41 54 45 20 43 55 52 53 4f 52 20 50 4f 53 49 54 49 4f 4e 5c 3d 35 00 54 00 ea 00 28 00 50 5c 52 54 4e 5c 41 31 35 5c 52 45 54 55 52 4e 20 54 4f 20 41 42 4f 52 54 20 52 4f 55 54 49 4e 45 5c 3d 35 20 00 54   ┆5,UPDAPP UPDATE CURSOR POSITION =5 T   ( P RTN A15 RETURN TO ABORT ROUTINE =5  T┆
0x11fc…1212              01 1a 00 08 00 50 5c 45 4e 44 00 54 01 46 40 04 00 00 00 54 01 52                                                                                                                                                                                 ┆     P END T F@    T R┆

Reduced view