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

⟦b7e52d60e⟧

    Length: 4424 (0x1148)
    Notes: pts_type(SC)
    Names: »STROUT.SC«

Derivation

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

PTS(SC)

	IDENT STROUT	REL=10.0,800314,870138041000
********************************************************************
* 
*    DISPLAY MANAGEMENT IN CREDIT 
* 
*    RUNNING UNDER CREDIT 10.0
*                  TOSS 10.0
* 
********************************************************************
* 
*   STANDARD ROUTINE 'S T R O U T'
* 
*   OUTPUT TO A STRING FROM THE VARIABLE FIELDS OF A COMPLETE OR
*   A PART OF A DISPLAY FORMAT
* 
*   PARAMETERS: 
*   <TYPE>               BINARY ITEM HOLDING FIELD TYPE 0=FKI 1=FINP 2=F
*   <OUTPUT STRING>      THE OUTPUT STRING
*   <OUTPUT START>       BINARY ITEM HOLDING START POSITION IN OUTPUT ST
*                        FIRST POSITION COUNT 0 
*                        AT RETURN <OUTPUT START> POINTS WHERE MOVE WAS 
*   <UNIT SEPARATOR>     STRING THAT HOLDS A CHARACTER WHICH SEPARATES E
*                        FIELD IN THE OUTPUT STRING 
*   <INDEX1>             BINARY ITEM HOLDING THE FIRST VARIABLE FIELD IN
*                        MUST NOT BE 0
*                        AT RETURN <INDEX1> HOLDS THE FIELD INDEX TO
*                        THE LAST MOVED FIELD 
*   <INDEX2>             BINARY ITEM HOLDING THE LAST VARIABLE FIELD IND
*                        MUST NOT BE 0
*   <RETURN CODE>        BINARY ITEM HOLDING RETURN CODE FROM STROUT
*                        0=OK 3=ERROR 
***************************************************************** 
 DDUM SPDDIV
 PDIV 
 ENTRY STROUT OUTPUT FROM FORMAT TO STRING
* 
 EXT STROU1 MOVE TO OUTPUT STRING 
* 
*   DESCRIPTION OF ROUTINE STROU1*
************************************************************
* 
*   ROUTINE FOR TRANSFER OF DATA FROM THE CURRENT FIELD INDICATED IN
*   FCB TO A OUTPUT STRING
* 
*   CALLED FORM CREDIT STANDARD MODULE 'S T R O U T'
* 
*   A CHECK THAT OUTPUT STRING IS LARGE ENOUGH IS PERFORMED FIRST.
*   MOVE ROUTINE T:DUPX USED BY T:DUPL FUNCTION IS USED, NOT NEEDED 
*   BYTES IN OUTPUT STRING ARE FILLED WITH X'00'
*   THE UNIT SEPARATOR IS PLACED IN THE FIRST POSITION AFTER CURRENT
*   FIELD IN OUTPUT STRING. 
* 
*   CALL STROU1,<OUTPUT STRING>,<OUTPUT START>,<UNIT SEPARATOR> 
*   WHERE 
*   <OUTPUT STRING>    STRING TO HOLD OUTPUT
*   <OUTPUT START>     BINARY ITEM WITH START POSITION WITHIN 
*                      <OUTPUT STRING> FIRST POSITION COUNT 0 
*                      AT RETURN OUTPUT START POINTS WHERE MOVE ENDED 
*   <UNIT SEPARATOR>   STRING TO HOLD A CHARACTER THAT SEPARATES
*                      THE FIELDS IN <OUTPUT STRING>
* 
************************************************************
	EJECT
* 
STROUT PROC TYPE,OUTSTR,OUTSTA,OUTUS,INDEX1,INDEX2,RETCOD 
	PBIN	TYPE,OUTSTA,INDEX1,INDEX2,RETCOD
	PSTRG	OUTSTR,OUTUS 
* 
 CBL INDEX2,INDEX1,SOUERR 
SOU010
 IB TYPE,SOU100,SOU200
 GETFLD 0,INDEX1,RETCOD ONLY FKI FIELDS 
 B SOU300 
SOU100
 GETFLD 1,INDEX1,RETCOD ONLY FINP FIELDS
 B SOU300 
SOU200
 GETFLD 2,INDEX1,RETCOD BOTH FKI AND FINP FIELDS
SOU300
 BZ SOU350 FIELD FOUND
 BOFL SOU350 FIELD FOUND BUT EMPTY
			COMPULSORY FIELD EARLIER 
SOUERR
 MOVE RETCOD,=W'3' RETURN ERROR CODE 3
 B SOURET 
 EJECT
* 
*   PERFORM MOVE TO OUTPUT STRING FROM CURRENT VARIABLE FIELD 
* 
SOU350
 CALL STROU1,OUTSTR,OUTSTA,OUTUS
 BNZ SOUERR MOVE NOT OK 
 CBNL INDEX1,INDEX2,SOU400
 ADD INDEX1,=W'1' 
 SWITCH 
 B SOU010 
SOU400
 MOVE RETCOD,=W'0'
SOURET RET
 PEND 
	END

HexDump

0x0000…0032 (0, 0, 400)  Head {h00=0x002e, h01=0x0050, text=» IDENT STROUT REL=10.0,800314,870138041000«, t00=0x0000, t01=0x0004}
0x0032…007e              Head {h00=0x0048, h01=0x0050, text=»********************************************************************«, t00=0x0000, t01=0x0036}
0x007e…0088              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0082}
0x0088…00b2              Head {h00=0x0026, h01=0x0050, text=»*    DISPLAY MANAGEMENT IN CREDIT «, t00=0x0000, t01=0x008c}
0x00b2…00bc              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x00b6}
0x00bc…00e2              Head {h00=0x0022, h01=0x0050, text=»*    RUNNING UNDER CREDIT 10.0«, t00=0x0000, t01=0x00c0}
0x00e2…0106              Head {h00=0x0020, h01=0x0050, text=»*                  TOSS 10.0«, t00=0x0000, t01=0x00e6}
0x0106…0110              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x010a}
0x0110…015c              Head {h00=0x0048, h01=0x0050, text=»********************************************************************«, t00=0x0000, t01=0x0114}
0x015c…0166              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0160}
0x0166…0190              Head {h00=0x0026, h01=0x0050, text=»*   STANDARD ROUTINE 'S T R O U T'«, t00=0x0000, t01=0x016a}
0x0190…019a (1, 0, 400)  Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x0004}
0x019a…01e2              Head {h00=0x0044, h01=0x0050, text=»*   OUTPUT TO A STRING FROM THE VARIABLE FIELDS OF A COMPLETE OR«, t00=0x0001, t01=0x000e}
0x01e2…0208              Head {h00=0x0022, h01=0x0050, text=»*   A PART OF A DISPLAY FORMAT«, t00=0x0001, t01=0x0056}
0x0208…0212              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x007c}
0x0212…022a              Head {h00=0x0014, h01=0x0050, text=»*   PARAMETERS: «, t00=0x0001, t01=0x0086}
0x022a…027a              Head {h00=0x004c, h01=0x0050, text=»*   <TYPE>               BINARY ITEM HOLDING FIELD TYPE 0=FKI 1=FINP 2=F«, t00=0x0001, t01=0x009e}
0x027a…02ac              Head {h00=0x002e, h01=0x0050, text=»*   <OUTPUT STRING>      THE OUTPUT STRING«, t00=0x0001, t01=0x00ee}
0x02ac…02fc              Head {h00=0x004c, h01=0x0050, text=»*   <OUTPUT START>       BINARY ITEM HOLDING START POSITION IN OUTPUT ST«, t00=0x0001, t01=0x0120}
0x02fc…0334              Head {h00=0x0034, h01=0x0050, text=»*                        FIRST POSITION COUNT 0 «, t00=0x0001, t01=0x0170}
0x0334…0384              Head {h00=0x004c, h01=0x0050, text=»*                        AT RETURN <OUTPUT START> POINTS WHERE MOVE WAS «, t00=0x0002, t01=0x0018}
0x0384…03d4              Head {h00=0x004c, h01=0x0050, text=»*   <UNIT SEPARATOR>     STRING THAT HOLDS A CHARACTER WHICH SEPARATES E«, t00=0x0002, t01=0x0068}
0x03d4…0410              Head {h00=0x0038, h01=0x0050, text=»*                        FIELD IN THE OUTPUT STRING «, t00=0x0002, t01=0x00b8}
0x0410…0460              Head {h00=0x004c, h01=0x0050, text=»*   <INDEX1>             BINARY ITEM HOLDING THE FIRST VARIABLE FIELD IN«, t00=0x0002, t01=0x00f4}
0x0460…048e              Head {h00=0x002a, h01=0x0050, text=»*                        MUST NOT BE 0«, t00=0x0002, t01=0x0144}
0x048e…04da              Head {h00=0x0048, h01=0x0050, text=»*                        AT RETURN <INDEX1> HOLDS THE FIELD INDEX TO«, t00=0x0002, t01=0x0172}
0x04da…0510              Head {h00=0x0032, h01=0x0050, text=»*                        THE LAST MOVED FIELD «, t00=0x0003, t01=0x002e}
0x0510…0560              Head {h00=0x004c, h01=0x0050, text=»*   <INDEX2>             BINARY ITEM HOLDING THE LAST VARIABLE FIELD IND«, t00=0x0003, t01=0x0064}
0x0560…058e              Head {h00=0x002a, h01=0x0050, text=»*                        MUST NOT BE 0«, t00=0x0003, t01=0x00b4}
0x058e…05da              Head {h00=0x0048, h01=0x0050, text=»*   <RETURN CODE>        BINARY ITEM HOLDING RETURN CODE FROM STROUT«, t00=0x0003, t01=0x00e2}
0x05da…0608              Head {h00=0x002a, h01=0x0050, text=»*                        0=OK 3=ERROR «, t00=0x0003, t01=0x012e}
0x0608…0652              Head {h00=0x0046, h01=0x0050, text=»***************************************************************** «, t00=0x0003, t01=0x015c}
0x0652…0666              Head {h00=0x0010, h01=0x0050, text=» DDUM SPDDIV«, t00=0x0004, t01=0x0016}
0x0666…0674              Head {h00=0x000a, h01=0x0050, text=» PDIV «, t00=0x0004, t01=0x002a}
0x0674…06a6              Head {h00=0x002e, h01=0x0050, text=» ENTRY STROUT OUTPUT FROM FORMAT TO STRING«, t00=0x0004, t01=0x0038}
0x06a6…06b0              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x006a}
0x06b0…06da              Head {h00=0x0026, h01=0x0050, text=» EXT STROU1 MOVE TO OUTPUT STRING «, t00=0x0004, t01=0x0074}
0x06da…06e4              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x009e}
0x06e4…070e              Head {h00=0x0026, h01=0x0050, text=»*   DESCRIPTION OF ROUTINE STROU1*«, t00=0x0004, t01=0x00a8}
0x070e…0752              Head {h00=0x0040, h01=0x0050, text=»************************************************************«, t00=0x0004, t01=0x00d2}
0x0752…075c              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x0116}
0x075c…07a8              Head {h00=0x0048, h01=0x0050, text=»*   ROUTINE FOR TRANSFER OF DATA FROM THE CURRENT FIELD INDICATED IN«, t00=0x0004, t01=0x0120}
0x07a8…07ca              Head {h00=0x001e, h01=0x0050, text=»*   FCB TO A OUTPUT STRING«, t00=0x0004, t01=0x016c}
0x07ca…07d4              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x018e}
0x07d4…0810              Head {h00=0x0038, h01=0x0050, text=»*   CALLED FORM CREDIT STANDARD MODULE 'S T R O U T'«, t00=0x0005, t01=0x0008}
0x0810…081a              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x0044}
0x081a…0864              Head {h00=0x0046, h01=0x0050, text=»*   A CHECK THAT OUTPUT STRING IS LARGE ENOUGH IS PERFORMED FIRST.«, t00=0x0005, t01=0x004e}
0x0864…08b0              Head {h00=0x0048, h01=0x0050, text=»*   MOVE ROUTINE T:DUPX USED BY T:DUPL FUNCTION IS USED, NOT NEEDED «, t00=0x0005, t01=0x0098}
0x08b0…08e8              Head {h00=0x0034, h01=0x0050, text=»*   BYTES IN OUTPUT STRING ARE FILLED WITH X'00'«, t00=0x0005, t01=0x00e4}
0x08e8…0934              Head {h00=0x0048, h01=0x0050, text=»*   THE UNIT SEPARATOR IS PLACED IN THE FIRST POSITION AFTER CURRENT«, t00=0x0005, t01=0x011c}
0x0934…0958              Head {h00=0x0020, h01=0x0050, text=»*   FIELD IN OUTPUT STRING. «, t00=0x0005, t01=0x0168}
0x0958…0962              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x018c}
0x0962…09aa              Head {h00=0x0044, h01=0x0050, text=»*   CALL STROU1,<OUTPUT STRING>,<OUTPUT START>,<UNIT SEPARATOR> «, t00=0x0006, t01=0x0008}
0x09aa…09bc              Head {h00=0x000e, h01=0x0050, text=»*   WHERE «, t00=0x0006, t01=0x0050}
0x09bc…09f0              Head {h00=0x0030, h01=0x0050, text=»*   <OUTPUT STRING>    STRING TO HOLD OUTPUT«, t00=0x0006, t01=0x0062}
0x09f0…0a36              Head {h00=0x0042, h01=0x0050, text=»*   <OUTPUT START>     BINARY ITEM WITH START POSITION WITHIN «, t00=0x0006, t01=0x0096}
0x0a36…0a7c              Head {h00=0x0042, h01=0x0050, text=»*                      <OUTPUT STRING> FIRST POSITION COUNT 0 «, t00=0x0006, t01=0x00dc}
0x0a7c…0aca              Head {h00=0x004a, h01=0x0050, text=»*                      AT RETURN OUTPUT START POINTS WHERE MOVE ENDED «, t00=0x0006, t01=0x0122}
0x0aca…0b12              Head {h00=0x0044, h01=0x0050, text=»*   <UNIT SEPARATOR>   STRING TO HOLD A CHARACTER THAT SEPARATES«, t00=0x0006, t01=0x0170}
0x0b12…0b4e              Head {h00=0x0038, h01=0x0050, text=»*                      THE FIELDS IN <OUTPUT STRING>«, t00=0x0007, t01=0x0028}
0x0b4e…0b58              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0007, t01=0x0064}
0x0b58…0b9c              Head {h00=0x0040, h01=0x0050, text=»************************************************************«, t00=0x0007, t01=0x006e}
0x0b9c…0baa              Head {h00=0x000a, h01=0x0050, text=» EJECT«, t00=0x0007, t01=0x00b2}
0x0baa…0bb4              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0007, t01=0x00c0}
0x0bb4…0bf6              Head {h00=0x003e, h01=0x0050, text=»STROUT PROC TYPE,OUTSTR,OUTSTA,OUTUS,INDEX1,INDEX2,RETCOD «, t00=0x0007, t01=0x00ca}
0x0bf6…0c24              Head {h00=0x002a, h01=0x0050, text=» PBIN TYPE,OUTSTA,INDEX1,INDEX2,RETCOD«, t00=0x0007, t01=0x010c}
0x0c24…0c40              Head {h00=0x0018, h01=0x0050, text=» PSTRG OUTSTR,OUTUS «, t00=0x0007, t01=0x013a}
0x0c40…0c4a              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0007, t01=0x0156}
0x0c4a…0c6c              Head {h00=0x001e, h01=0x0050, text=» CBL INDEX2,INDEX1,SOUERR «, t00=0x0007, t01=0x0160}
0x0c6c…0c7a              Head {h00=0x000a, h01=0x0050, text=»SOU010«, t00=0x0007, t01=0x0182}
0x0c7a…0c98              Head {h00=0x001a, h01=0x0050, text=» IB TYPE,SOU100,SOU200«, t00=0x0007, t01=0x0190}
0x0c98…0cc8              Head {h00=0x002c, h01=0x0050, text=» GETFLD 0,INDEX1,RETCOD ONLY FKI FIELDS «, t00=0x0008, t01=0x001e}
0x0cc8…0cda              Head {h00=0x000e, h01=0x0050, text=» B SOU300 «, t00=0x0008, t01=0x004e}
0x0cda…0ce8              Head {h00=0x000a, h01=0x0050, text=»SOU100«, t00=0x0008, t01=0x0060}
0x0ce8…0d18              Head {h00=0x002c, h01=0x0050, text=» GETFLD 1,INDEX1,RETCOD ONLY FINP FIELDS«, t00=0x0008, t01=0x006e}
0x0d18…0d2a              Head {h00=0x000e, h01=0x0050, text=» B SOU300 «, t00=0x0008, t01=0x009e}
0x0d2a…0d38              Head {h00=0x000a, h01=0x0050, text=»SOU200«, t00=0x0008, t01=0x00b0}
0x0d38…0d70              Head {h00=0x0034, h01=0x0050, text=» GETFLD 2,INDEX1,RETCOD BOTH FKI AND FINP FIELDS«, t00=0x0008, t01=0x00be}
0x0d70…0d7e              Head {h00=0x000a, h01=0x0050, text=»SOU300«, t00=0x0008, t01=0x00f6}
0x0d7e…0d9c              Head {h00=0x001a, h01=0x0050, text=» BZ SOU350 FIELD FOUND«, t00=0x0008, t01=0x0104}
0x0d9c…0dc6              Head {h00=0x0026, h01=0x0050, text=» BOFL SOU350 FIELD FOUND BUT EMPTY«, t00=0x0008, t01=0x0122}
0x0dc6…0dea              Head {h00=0x0020, h01=0x0050, text=»   COMPULSORY FIELD EARLIER «, t00=0x0008, t01=0x014c}
0x0dea…0df8              Head {h00=0x000a, h01=0x0050, text=»SOUERR«, t00=0x0008, t01=0x0170}
0x0df8…0e26              Head {h00=0x002a, h01=0x0050, text=» MOVE RETCOD,=W'3' RETURN ERROR CODE 3«, t00=0x0008, t01=0x017e}
0x0e26…0e38              Head {h00=0x000e, h01=0x0050, text=» B SOURET «, t00=0x0009, t01=0x001c}
0x0e38…0e46              Head {h00=0x000a, h01=0x0050, text=» EJECT«, t00=0x0009, t01=0x002e}
0x0e46…0e50              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x003c}
0x0e50…0e96              Head {h00=0x0042, h01=0x0050, text=»*   PERFORM MOVE TO OUTPUT STRING FROM CURRENT VARIABLE FIELD «, t00=0x0009, t01=0x0046}
0x0e96…0ea0              Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x008c}
0x0ea0…0eae              Head {h00=0x000a, h01=0x0050, text=»SOU350«, t00=0x0009, t01=0x0096}
0x0eae…0ed6              Head {h00=0x0024, h01=0x0050, text=» CALL STROU1,OUTSTR,OUTSTA,OUTUS«, t00=0x0009, t01=0x00a4}
0x0ed6…0ef6              Head {h00=0x001c, h01=0x0050, text=» BNZ SOUERR MOVE NOT OK «, t00=0x0009, t01=0x00cc}
0x0ef6…0f18              Head {h00=0x001e, h01=0x0050, text=» CBNL INDEX1,INDEX2,SOU400«, t00=0x0009, t01=0x00ec}
0x0f18…0f32              Head {h00=0x0016, h01=0x0050, text=» ADD INDEX1,=W'1' «, t00=0x0009, t01=0x010e}
0x0f32…0f42              Head {h00=0x000c, h01=0x0050, text=» SWITCH «, t00=0x0009, t01=0x0128}
0x0f42…0f54              Head {h00=0x000e, h01=0x0050, text=» B SOU010 «, t00=0x0009, t01=0x0138}
0x0f54…0f62              Head {h00=0x000a, h01=0x0050, text=»SOU400«, t00=0x0009, t01=0x014a}
0x0f62…0f7c              Head {h00=0x0016, h01=0x0050, text=» MOVE RETCOD,=W'0'«, t00=0x0009, t01=0x0158}
0x0f7c…0f8e              Head {h00=0x000e, h01=0x0050, text=»SOURET RET«, t00=0x0009, t01=0x0172}
0x0f8e…0f9c              Head {h00=0x000a, h01=0x0050, text=» PEND «, t00=0x0009, t01=0x0184}
0x0f9c…0fa8 (10, 2, 20)  Head {h00=0x0008, h01=0x0050, text=» END«, t00=0x000a, t01=0x0004}
0x0fa8…0fac              Head {h00=0x4004, h01=0x0000}
0x0fac…0fb0              00 0a 00 10                                                                                                                                                                                                                                       ┆    ┆
0x0fb0…0fb8 (11, 1, 8)   20 04 00 00 00 0b 00 04                                                                                                                                                                                                                           ┆        ┆
0x0fb8…1008 (12, 0, 400) 00 26 00 50 2a 5c 44 49 53 50 4c 41 59 20 42 55 46 46 45 52 2e 20 4d 4f 56 49 4e 47 20 49 53 20 45 4e 44 45 44 20 00 1c 00 04 00 1c 00 50 2a 5c 57 48 45 4e 20 58 27 30 30 27 20 49 53 20 44 45 54 45 43 54 45 44 00 1c 00 2e 00 2c 00 50 2a 5c   ┆ & P* DISPLAY BUFFER. MOVING IS ENDED        P* WHEN X'00' IS DETECTED   . , P* ┆
0x1008…1058              4f 55 54 50 55 54 3a 20 41 31 3d 4e 55 4d 42 45 52 20 4f 46 20 4d 4f 56 45 44 20 43 48 41 52 41 43 54 45 52 53 20 00 1c 00 4e 00 06 00 50 2a 20 00 1c 00 7e 00 10 00 50 4d 4f 56 4f 55 54 5c 45 51 55 5c 2a 00 1c 00 88 00 1c 00 50 5c 4c 44 4b   ┆OUTPUT: A1=NUMBER OF MOVED CHARACTERS    N   P*    ~   PMOVOUT EQU *       P LDK┆
0x1058…10a8              5c 41 31 2c 30 5c 43 4c 45 41 52 20 43 4f 55 4e 54 45 52 20 00 1c 00 9c 00 16 00 50 5c 4c 44 5c 41 32 2c 46 43 42 44 59 2c 42 46 43 42 20 00 1c 00 bc 00 14 00 50 5c 4c 44 5c 41 32 2c 45 43 42 42 41 2c 41 32 20 00 1c 00 d6 00 26 00 50 5c 41   ┆ A1,0 CLEAR COUNTER        P LD A2,FCBDY,BFCB        P LD A2,ECBBA,A2      & P A┆
0x10a8…10f8              44 4b 5c 41 32 2c 32 5c 47 45 54 20 44 49 53 50 4c 41 59 20 42 55 46 46 45 52 20 53 54 41 52 54 00 1c 00 ee 00 2c 00 50 5c 4c 44 5c 41 33 2c 42 55 46 46 53 54 2c 42 46 43 42 5c 47 45 54 20 55 53 45 52 20 42 55 46 46 45 52 20 53 54 41 52 54   ┆DK A2,2 GET DISPLAY BUFFER START     , P LD A3,BUFFST,BFCB GET USER BUFFER START┆
0x10f8…1148              00 1c 01 18 00 2c 00 50 5c 41 44 5c 41 33 2c 52 45 4c 50 4f 53 2c 42 46 43 42 5c 47 45 54 20 43 55 52 52 45 4e 54 20 50 4f 53 49 54 49 4f 4e 20 00 1c 01 48 00 10 00 50 4d 4f 56 31 30 30 5c 45 51 55 5c 2a 00 1c 01 78 00 28 00 50 5c 4c 43 52   ┆     , P AD A3,RELPOS,BFCB GET CURRENT POSITION    H   PMOV100 EQU *   x ( P LCR┆

Reduced view