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

⟦c8e34ee8c⟧

    Length: 4146 (0x1032)
    Notes: pts_type(SC)
    Names: »STRINP.SC«

Derivation

└─⟦efe3a1cfc⟧ Bits:30009667 Philips computer tape "600113"
    └─⟦this⟧ »SCREEN/STRINP.SC« 

PTS(SC)

	IDENT  STRINP  78-09-15  8701 380 40320
********************************************************************
* 
*    DISPLAY MANAGEMENT IN CREDIT 
* 
*    RUNNING UNDER CREDIT 3.1 
*                  TOSS 8.1 
* 
********************************************************************
* 
*   STANDARD ROUTINE 'S T R I N P'
* 
*   INPUT FROM A STRING TO 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
*   <INPUT STRING>       THE INPUT STRING 
*   <INPUT START>        BINARY ITEM HOLDING START POSITION IN INPUT STR
*                        FIRST POSITION COUNT 0 
*                        AT RETURN INPUT START POINTS WHERE MOVE WAS END
*   <UNIT SEPARATOR>     STRING THAT HOLDS A CHARACTER WHICH SEPARATES E
*                        FIELD IN THE INPUT 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 STRINP
*                        0=OK 3=ERROR 
************************************************************************
 DDUM SPDDIV
 PDIV 
 ENTRY  STRINP INPUT FROM STRING TO FORMAT
* 
 EXT STRIN1 MOVE TO FORMAT
* 
*   DESCRIPTION OF ROUTINE STRIN1:
************************************************************
* 
*   ROUTINE FOR TRANSFER OF DATA TO A STRING
*   TO THE CURRENT FIELD INDICATED IN FCB 
* 
*   CALLED FROM CREDIT STANDARD MODULE 'S T R I N P'
* 
*   THE UNIT SEPARATOR IS FIRST SEARCHED. 
*   SEARCH STARTS AT GIVEN STARTPOSITION WITHIN THE STRING. 
*   WHEN THE UNIT SEPARATOR IS FOUND THE SUBSTRING TO BE
*   MOVED IS IDENTIFIED.
*   STANDARD MOVE ROUTINE (I:MOV) IS USED 
*   EXCEPTION: WHEN RECIEVING ITEM IS STRING AND SENDING
*              ITEM IS SHORTER THE REST WILL BE FILLED WITH X'00' 
* 
*   CALL STRIN1,<INPUT STRING>,<INPUT START>,<UNIT SEPARATOR> 
*   WHERE 
*   <INPUT STRING>    STRING TO HOLD INPUT
*   <INPUT START>     BINARY ITEM WITH START POSITION WITHIN
*                     <INPUT STRING> FIRST POSITION COUNT 0 
*                     AT RETURN INPUT START POINTS WHERE MOVE ENDED 
*   <UNIT SEPARATOR>  STRING TO HOLD A CHARACTER THAT SEPARATES 
*                     THE FIELDS IN <INPUT STRING>
* 
************************************************************
	EJECT
* 
STRINP PROC TYPE,INPSTR,INPSTA,INPUS,INDEX1,INDEX2,RETCOD 
* 
 CBL INDEX2,INDEX1,SINERR 
SIN010
 IB TYPE,SIN100,SIN200
 GETFLD 0,INDEX1,RETCOD ONLY FKI FIELDS 
 B SIN300 
SIN100
 GETFLD 1,INDEX1,RETCOD ONLY FINP FIELDS
 B SIN300 
SIN200
 GETFLD 2,INDEX1,RETCOD BOTH FKI AND FINP FIELDS
SIN300
 BZ SIN350 FIELD FOUND
 BOFL SIN350 FIELD FOUND BUT EMPTY COMP.
			FIELD EARILIER FOUND 
SINERR
 MOVE RETCOD,=W'3' RETURN ERROR CODE 3
 B SINRET 
	EJECT
* 
*   PERFORM MOVE FROM INPUT STRING TO CURRENT VARIABLE FIELD
* 
SIN350
 CALL STRIN1,INPSTR,INPSTA,INPUS
* 
 BNZ SINERR UNSUCESSFUL MOVE FROM STRING
 CBNL INDEX1,INDEX2,SIN400 JUMP IF ALL FIELDS MOVED 
 ADD INDEX1,=W'1' 
 SWITCH 
 B SIN010 
SIN400
 MOVE RETCOD,=W'0'
SINRET RET
 PEND 
* 
* 
	END

HexDump

0x0000…0030 (0, 0, 398) Head {h00=0x002c, h01=0x0050, text=» IDENT  STRINP  78-09-15  8701 380 40320«, t00=0x0000, t01=0x0004}
0x0030…007c             Head {h00=0x0048, h01=0x0050, text=»********************************************************************«, t00=0x0000, t01=0x0034}
0x007c…0086             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0080}
0x0086…00b0             Head {h00=0x0026, h01=0x0050, text=»*    DISPLAY MANAGEMENT IN CREDIT «, t00=0x0000, t01=0x008a}
0x00b0…00ba             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x00b4}
0x00ba…00e0             Head {h00=0x0022, h01=0x0050, text=»*    RUNNING UNDER CREDIT 3.1 «, t00=0x0000, t01=0x00be}
0x00e0…0104             Head {h00=0x0020, h01=0x0050, text=»*                  TOSS 8.1 «, t00=0x0000, t01=0x00e4}
0x0104…010e             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x0108}
0x010e…015a             Head {h00=0x0048, h01=0x0050, text=»********************************************************************«, t00=0x0000, t01=0x0112}
0x015a…0164             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0000, t01=0x015e}
0x0164…018e             Head {h00=0x0026, h01=0x0050, text=»*   STANDARD ROUTINE 'S T R I N P'«, t00=0x0000, t01=0x0168}
0x018e…0198 (1, 0, 400) Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x0004}
0x0198…01e0             Head {h00=0x0044, h01=0x0050, text=»*   INPUT FROM A STRING TO THE VARIABLE FIELDS OF A COMPLETE OR «, t00=0x0001, t01=0x000e}
0x01e0…0206             Head {h00=0x0022, h01=0x0050, text=»*   A PART OF A DISPLAY FORMAT«, t00=0x0001, t01=0x0056}
0x0206…0210             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0001, t01=0x007c}
0x0210…0228             Head {h00=0x0014, h01=0x0050, text=»*   PARAMETERS: «, t00=0x0001, t01=0x0086}
0x0228…0278             Head {h00=0x004c, h01=0x0050, text=»*   <TYPE>               BINARY ITEM HOLDING FIELD TYPE 0=FKI 1=FINP 2=F«, t00=0x0001, t01=0x009e}
0x0278…02aa             Head {h00=0x002e, h01=0x0050, text=»*   <INPUT STRING>       THE INPUT STRING «, t00=0x0001, t01=0x00ee}
0x02aa…02fa             Head {h00=0x004c, h01=0x0050, text=»*   <INPUT START>        BINARY ITEM HOLDING START POSITION IN INPUT STR«, t00=0x0001, t01=0x0120}
0x02fa…0332             Head {h00=0x0034, h01=0x0050, text=»*                        FIRST POSITION COUNT 0 «, t00=0x0001, t01=0x0170}
0x0332…0382             Head {h00=0x004c, h01=0x0050, text=»*                        AT RETURN INPUT START POINTS WHERE MOVE WAS END«, t00=0x0002, t01=0x0018}
0x0382…03d2             Head {h00=0x004c, h01=0x0050, text=»*   <UNIT SEPARATOR>     STRING THAT HOLDS A CHARACTER WHICH SEPARATES E«, t00=0x0002, t01=0x0068}
0x03d2…040c             Head {h00=0x0036, h01=0x0050, text=»*                        FIELD IN THE INPUT STRING«, t00=0x0002, t01=0x00b8}
0x040c…045c             Head {h00=0x004c, h01=0x0050, text=»*   <INDEX1>             BINARY ITEM HOLDING THE FIRST VARIABLE FIELD IN«, t00=0x0002, t01=0x00f2}
0x045c…048a             Head {h00=0x002a, h01=0x0050, text=»*                        MUST NOT BE 0«, t00=0x0002, t01=0x0142}
0x048a…04d6             Head {h00=0x0048, h01=0x0050, text=»*                        AT RETURN <INDEX1> HOLDS THE FIELD INDEX TO«, t00=0x0002, t01=0x0170}
0x04d6…050c             Head {h00=0x0032, h01=0x0050, text=»*                        THE LAST MOVED FIELD «, t00=0x0003, t01=0x002c}
0x050c…055c             Head {h00=0x004c, h01=0x0050, text=»*   <INDEX2>             BINARY ITEM HOLDING THE LAST VARIABLE FIELD IND«, t00=0x0003, t01=0x0062}
0x055c…058a             Head {h00=0x002a, h01=0x0050, text=»*                        MUST NOT BE 0«, t00=0x0003, t01=0x00b2}
0x058a…05d6             Head {h00=0x0048, h01=0x0050, text=»*   <RETURN CODE>        BINARY ITEM HOLDING RETURN CODE FROM STRINP«, t00=0x0003, t01=0x00e0}
0x05d6…0604             Head {h00=0x002a, h01=0x0050, text=»*                        0=OK 3=ERROR «, t00=0x0003, t01=0x012c}
0x0604…0654             Head {h00=0x004c, h01=0x0050, text=»************************************************************************«, t00=0x0003, t01=0x015a}
0x0654…0668             Head {h00=0x0010, h01=0x0050, text=» DDUM SPDDIV«, t00=0x0004, t01=0x001a}
0x0668…0676             Head {h00=0x000a, h01=0x0050, text=» PDIV «, t00=0x0004, t01=0x002e}
0x0676…06a8             Head {h00=0x002e, h01=0x0050, text=» ENTRY  STRINP INPUT FROM STRING TO FORMAT«, t00=0x0004, t01=0x003c}
0x06a8…06b2             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x006e}
0x06b2…06d4             Head {h00=0x001e, h01=0x0050, text=» EXT STRIN1 MOVE TO FORMAT«, t00=0x0004, t01=0x0078}
0x06d4…06de             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x009a}
0x06de…0708             Head {h00=0x0026, h01=0x0050, text=»*   DESCRIPTION OF ROUTINE STRIN1:«, t00=0x0004, t01=0x00a4}
0x0708…074c             Head {h00=0x0040, h01=0x0050, text=»************************************************************«, t00=0x0004, t01=0x00ce}
0x074c…0756             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x0112}
0x0756…078a             Head {h00=0x0030, h01=0x0050, text=»*   ROUTINE FOR TRANSFER OF DATA TO A STRING«, t00=0x0004, t01=0x011c}
0x078a…07bc             Head {h00=0x002e, h01=0x0050, text=»*   TO THE CURRENT FIELD INDICATED IN FCB «, t00=0x0004, t01=0x0150}
0x07bc…07c6             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0004, t01=0x0182}
0x07c6…0802             Head {h00=0x0038, h01=0x0050, text=»*   CALLED FROM CREDIT STANDARD MODULE 'S T R I N P'«, t00=0x0004, t01=0x018c}
0x0802…080c             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0005, t01=0x0038}
0x080c…083e             Head {h00=0x002e, h01=0x0050, text=»*   THE UNIT SEPARATOR IS FIRST SEARCHED. «, t00=0x0005, t01=0x0042}
0x083e…0882             Head {h00=0x0040, h01=0x0050, text=»*   SEARCH STARTS AT GIVEN STARTPOSITION WITHIN THE STRING. «, t00=0x0005, t01=0x0074}
0x0882…08c2             Head {h00=0x003c, h01=0x0050, text=»*   WHEN THE UNIT SEPARATOR IS FOUND THE SUBSTRING TO BE«, t00=0x0005, t01=0x00b8}
0x08c2…08e2             Head {h00=0x001c, h01=0x0050, text=»*   MOVED IS IDENTIFIED.«, t00=0x0005, t01=0x00f8}
0x08e2…0914             Head {h00=0x002e, h01=0x0050, text=»*   STANDARD MOVE ROUTINE (I:MOV) IS USED «, t00=0x0005, t01=0x0118}
0x0914…0954             Head {h00=0x003c, h01=0x0050, text=»*   EXCEPTION: WHEN RECIEVING ITEM IS STRING AND SENDING«, t00=0x0005, t01=0x014a}
0x0954…099e             Head {h00=0x0046, h01=0x0050, text=»*              ITEM IS SHORTER THE REST WILL BE FILLED WITH X'00' «, t00=0x0005, t01=0x018a}
0x099e…09a8             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0006, t01=0x0044}
0x09a8…09ee             Head {h00=0x0042, h01=0x0050, text=»*   CALL STRIN1,<INPUT STRING>,<INPUT START>,<UNIT SEPARATOR> «, t00=0x0006, t01=0x004e}
0x09ee…0a00             Head {h00=0x000e, h01=0x0050, text=»*   WHERE «, t00=0x0006, t01=0x0094}
0x0a00…0a32             Head {h00=0x002e, h01=0x0050, text=»*   <INPUT STRING>    STRING TO HOLD INPUT«, t00=0x0006, t01=0x00a6}
0x0a32…0a76             Head {h00=0x0040, h01=0x0050, text=»*   <INPUT START>     BINARY ITEM WITH START POSITION WITHIN«, t00=0x0006, t01=0x00d8}
0x0a76…0aba             Head {h00=0x0040, h01=0x0050, text=»*                     <INPUT STRING> FIRST POSITION COUNT 0 «, t00=0x0006, t01=0x011c}
0x0aba…0b06             Head {h00=0x0048, h01=0x0050, text=»*                     AT RETURN INPUT START POINTS WHERE MOVE ENDED «, t00=0x0006, t01=0x0160}
0x0b06…0b4e             Head {h00=0x0044, h01=0x0050, text=»*   <UNIT SEPARATOR>  STRING TO HOLD A CHARACTER THAT SEPARATES «, t00=0x0007, t01=0x001c}
0x0b4e…0b88             Head {h00=0x0036, h01=0x0050, text=»*                     THE FIELDS IN <INPUT STRING>«, t00=0x0007, t01=0x0064}
0x0b88…0b92             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0007, t01=0x009e}
0x0b92…0bd6             Head {h00=0x0040, h01=0x0050, text=»************************************************************«, t00=0x0007, t01=0x00a8}
0x0bd6…0be4             Head {h00=0x000a, h01=0x0050, text=» EJECT«, t00=0x0007, t01=0x00ec}
0x0be4…0bee             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0007, t01=0x00fa}
0x0bee…0c30             Head {h00=0x003e, h01=0x0050, text=»STRINP PROC TYPE,INPSTR,INPSTA,INPUS,INDEX1,INDEX2,RETCOD «, t00=0x0007, t01=0x0104}
0x0c30…0c3a             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0007, t01=0x0146}
0x0c3a…0c5c             Head {h00=0x001e, h01=0x0050, text=» CBL INDEX2,INDEX1,SINERR «, t00=0x0007, t01=0x0150}
0x0c5c…0c6a             Head {h00=0x000a, h01=0x0050, text=»SIN010«, t00=0x0007, t01=0x0172}
0x0c6a…0c88             Head {h00=0x001a, h01=0x0050, text=» IB TYPE,SIN100,SIN200«, t00=0x0007, t01=0x0180}
0x0c88…0cb8             Head {h00=0x002c, h01=0x0050, text=» GETFLD 0,INDEX1,RETCOD ONLY FKI FIELDS «, t00=0x0008, t01=0x000e}
0x0cb8…0cca             Head {h00=0x000e, h01=0x0050, text=» B SIN300 «, t00=0x0008, t01=0x003e}
0x0cca…0cd8             Head {h00=0x000a, h01=0x0050, text=»SIN100«, t00=0x0008, t01=0x0050}
0x0cd8…0d08             Head {h00=0x002c, h01=0x0050, text=» GETFLD 1,INDEX1,RETCOD ONLY FINP FIELDS«, t00=0x0008, t01=0x005e}
0x0d08…0d1a             Head {h00=0x000e, h01=0x0050, text=» B SIN300 «, t00=0x0008, t01=0x008e}
0x0d1a…0d28             Head {h00=0x000a, h01=0x0050, text=»SIN200«, t00=0x0008, t01=0x00a0}
0x0d28…0d60             Head {h00=0x0034, h01=0x0050, text=» GETFLD 2,INDEX1,RETCOD BOTH FKI AND FINP FIELDS«, t00=0x0008, t01=0x00ae}
0x0d60…0d6e             Head {h00=0x000a, h01=0x0050, text=»SIN300«, t00=0x0008, t01=0x00e6}
0x0d6e…0d8c             Head {h00=0x001a, h01=0x0050, text=» BZ SIN350 FIELD FOUND«, t00=0x0008, t01=0x00f4}
0x0d8c…0dbc             Head {h00=0x002c, h01=0x0050, text=» BOFL SIN350 FIELD FOUND BUT EMPTY COMP.«, t00=0x0008, t01=0x0112}
0x0dbc…0ddc             Head {h00=0x001c, h01=0x0050, text=»   FIELD EARILIER FOUND «, t00=0x0008, t01=0x0142}
0x0ddc…0dea             Head {h00=0x000a, h01=0x0050, text=»SINERR«, t00=0x0008, t01=0x0162}
0x0dea…0e18             Head {h00=0x002a, h01=0x0050, text=» MOVE RETCOD,=W'3' RETURN ERROR CODE 3«, t00=0x0008, t01=0x0170}
0x0e18…0e2a             Head {h00=0x000e, h01=0x0050, text=» B SINRET «, t00=0x0009, t01=0x000e}
0x0e2a…0e38             Head {h00=0x000a, h01=0x0050, text=» EJECT«, t00=0x0009, t01=0x0020}
0x0e38…0e42             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x002e}
0x0e42…0e86             Head {h00=0x0040, h01=0x0050, text=»*   PERFORM MOVE FROM INPUT STRING TO CURRENT VARIABLE FIELD«, t00=0x0009, t01=0x0038}
0x0e86…0e90             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x007c}
0x0e90…0e9e             Head {h00=0x000a, h01=0x0050, text=»SIN350«, t00=0x0009, t01=0x0086}
0x0e9e…0ec6             Head {h00=0x0024, h01=0x0050, text=» CALL STRIN1,INPSTR,INPSTA,INPUS«, t00=0x0009, t01=0x0094}
0x0ec6…0ed0             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x0009, t01=0x00bc}
0x0ed0…0f00             Head {h00=0x002c, h01=0x0050, text=» BNZ SINERR UNSUCESSFUL MOVE FROM STRING«, t00=0x0009, t01=0x00c6}
0x0f00…0f3c             Head {h00=0x0038, h01=0x0050, text=» CBNL INDEX1,INDEX2,SIN400 JUMP IF ALL FIELDS MOVED «, t00=0x0009, t01=0x00f6}
0x0f3c…0f56             Head {h00=0x0016, h01=0x0050, text=» ADD INDEX1,=W'1' «, t00=0x0009, t01=0x0132}
0x0f56…0f66             Head {h00=0x000c, h01=0x0050, text=» SWITCH «, t00=0x0009, t01=0x014c}
0x0f66…0f78             Head {h00=0x000e, h01=0x0050, text=» B SIN010 «, t00=0x0009, t01=0x015c}
0x0f78…0f86             Head {h00=0x000a, h01=0x0050, text=»SIN400«, t00=0x0009, t01=0x016e}
0x0f86…0fa0             Head {h00=0x0016, h01=0x0050, text=» MOVE RETCOD,=W'0'«, t00=0x0009, t01=0x017c}
0x0fa0…0fb2             Head {h00=0x000e, h01=0x0050, text=»SINRET RET«, t00=0x000a, t01=0x0008}
0x0fb2…0fc0             Head {h00=0x000a, h01=0x0050, text=» PEND «, t00=0x000a, t01=0x001a}
0x0fc0…0fca             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000a, t01=0x0028}
0x0fca…0fd4             Head {h00=0x0006, h01=0x0050, text=»* «, t00=0x000a, t01=0x0032}
0x0fd4…0fe0             Head {h00=0x0008, h01=0x0050, text=» END«, t00=0x000a, t01=0x003c}
0x0fe0…0fe4             Head {h00=0x4004, h01=0x0000}
0x0fe4…0fe8             00 0a 00 48                                                                                                                                                                                                                                       ┆   H┆
0x0fe8…0ff0 (11, 1, 8)  20 04 00 00 00 0b 00 04                                                                                                                                                                                                                           ┆        ┆
0x0ff0…1032 (12, 1, 66) 4c 20 45 52 52 50 52 54 20 45 52 52 4f 52 0d 01 05 cd 00 00 00 00 88 20 00 b4 e1 31 14 01 49 ce 5c 14 a1 20 fc ff 54 00 f6 a1 00 00 5f 2c 39 c3 8e 20 00 ae 00 b4 00 0c 00 2c 00 28 03 13 02 02 05 ed                                             ┆L ERRPRT ERROR             1  I       T     _,9          , (      ┆

Reduced view