DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦eb6e2b452⟧

    Length: 1024 (0x400)
    Notes: 00_class, 5900_R1K_CODE, 74_tag, NULL, R1k_Segment, seg_03c0fe, seg_29d0d7

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

Disassembly

0000 000f       |    |		.CONST	0x000f								; Version of machine code
0001 5900       |Y   |		.CONST	0x5900								; Diana Version, RCG Major Version, RCG minor version
0002 0000       |    |		.CONST	0x0000								; Zero
0003 0160       | `  |		.CONST	0x0160								; Offset of debug table
0004 0100       |    |		.CONST	0x0100								; Default exception handler - raise instruction
0005 00bb       |    |		.CONST	0x00bb								; Module termination instruction - signal completion
0006 0000       |    |		.CONST	0x0000								; Offset to segment table (only in elab segments)
0007 8000       |    |		.CONST	0x8000								; 0, wired, #pages in seg - 1)
0008 ; --------------------------------------------------------------------------------------
0008 ; SUBPROGRAM
0008 ; --------------------------------------------------------------------------------------
0008 001c       |    |		.CONST	0x001c								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 0010       |    |		.CONST	0x0010								; Number of locals
000b			INIT_0008:
000b 029a 0023  |   #|		Declare_Subprogram	INIT_0020,For_Outer_Call,Visible,Unelaborated
000d 029a 0063  |   c|		Declare_Subprogram	INIT_0060,For_Outer_Call,Visible,Unelaborated
000f 029a 00b3  |    |		Declare_Subprogram	INIT_00b0,For_Outer_Call,Visible,Unelaborated
0011 029a 00cb  |    |		Declare_Subprogram	INIT_00c8,For_Outer_Call,Visible,Unelaborated
0013 00bf       |    |		Action	Accept_Activation
0014 1d0f       |    |		Execute_Immediate	Reference_Lex_1,0xf
0015 00c7       |    |		Action	Elaborate_Subprogram
0016 1d0d       |    |		Execute_Immediate	Reference_Lex_1,0xd
0017 00c7       |    |		Action	Elaborate_Subprogram
0018 1d0e       |    |		Execute_Immediate	Reference_Lex_1,0xe
0019 00c7       |    |		Action	Elaborate_Subprogram
001a 1d10       |    |		Execute_Immediate	Reference_Lex_1,0x10
001b 00c7       |    |		Action	Elaborate_Subprogram
001c			BODY_0008:
001c 00bc       |    |		Action	Signal_Activated
001d 00bb       |    |		Action	Signal_Completion
001e 0000 0000  |    |		.XXX[0x2]
0020 ; --------------------------------------------------------------------------------------
0020 ; SUBPROGRAM
0020 ; --------------------------------------------------------------------------------------
0020 002d       | -  |		.CONST	0x002d								; Address of begin
0021 0004       |    |		.CONST	0x0004								; Address of exception handler
0022 0005       |    |		.CONST	0x0005								; Number of locals
0023			INIT_0020:
0023 00e2       |    |		Load_Encached	Integer_Cache
0024 00e1       |    |		Load_Encached	Boolean_Cache
0025 e002       |    |		Load	0x0,0x2
0026 0322       | "  |		Declare_Variable	Record
0027 487e       |H~  |		Short_Literal	0x7e
0028 e003       |    |		Load	0x0,0x3
0029 1b0e       |    |		Execute	Package,Field_Read,Field_Number 0xe
002a 1c08       |    |		Execute_Immediate	Run_Utility,0x8
002b 00d8       |    |		Load_Top	At_Offset_0
002c 1c00       |    |		Execute_Immediate	Run_Utility,0x0
002d			BODY_0020:
002d 00cf       |    |		Action	Mark_Auxiliary
002e e5ff       |    |		Load	0x2,-0x1
002f 820f       |    |		Call	0x1,0xf
0030 00db       |    |		Load_Top	At_Offset_3
0031 017d       | }  |		Execute	Record,Structure_Write
0032 00da       |    |		Load_Top	At_Offset_2
0033 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
0034 7008       |p   |		Jump_Nonzero	0x3d
0035 483f       |H?  |		Short_Literal	0x3f
0036 4801       |H   |		Short_Literal	0x1
0037 e404       |    |		Load	0x2,0x4
0038 3401       |4   |		Execute	Record,Field_Reference,Field_Number 0x1
0039 01d6       |    |		Execute	Vector,Field_Write
003a 4801       |H   |		Short_Literal	0x1
003b 00db       |    |		Load_Top	At_Offset_3
003c 3800       |8   |		Execute	Record,Field_Write,Field_Number 0x0
003d 00d9       |    |		Load_Top	At_Offset_1
003e 00db       |    |		Load_Top	At_Offset_3
003f 3401       |4   |		Execute	Record,Field_Reference,Field_Number 0x1
0040 e003       |    |		Load	0x0,0x3
0041 1810       |    |		Execute	Package,Field_Execute,Field_Number 0x10
0042 00d1       |    |		Pop_Control	Pop_Count_1
0043 00d9       |    |		Load_Top	At_Offset_1
0044 4820       |H   |		Short_Literal	0x20
0045 e404       |    |		Load	0x2,0x4
0046 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
0047 e003       |    |		Load	0x0,0x3
0048 1824       | $  |		Execute	Package,Field_Execute,Field_Number 0x24
0049 00d1       |    |		Pop_Control	Pop_Count_1
004a 00e1       |    |		Load_Encached	Boolean_Cache
004b 00e2       |    |		Load_Encached	Integer_Cache
004c 480a       |H   |		Short_Literal	0xa
004d e405       |    |		Load	0x2,0x5
004e e003       |    |		Load	0x0,0x3
004f 1813       |    |		Execute	Package,Field_Execute,Field_Number 0x13
0050 e004       |    |		Load	0x0,0x4
0051 1818       |    |		Execute	Package,Field_Execute,Field_Number 0x18
0052 c402       |    |		Store	0x2,0x2
0053 c403       |    |		Store	0x2,0x3
0054 00db       |    |		Load_Top	At_Offset_3
0055 7005       |p   |		Jump_Nonzero	0x5b
0056 0092 0119  |    |		Action	Push_String_Extended,0x119					; "Integer input expected, bad syntax, or too big."
0058 e005       |    |		Load	0x0,0x5
0059 1864       | d  |		Execute	Package,Field_Execute,Field_Number 0x64
005a 7802       |x   |		Jump	0x5d
005b e402       |    |		Load	0x2,0x2
005c 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
005d 00c9       |    |		Action	Pop_Auxiliary_Loop
005e 7fcf       |    |		Jump	0x2e
005f 0000       |    |		.XXX[0x1]
0060 ; --------------------------------------------------------------------------------------
0060 ; SUBPROGRAM
0060 ; --------------------------------------------------------------------------------------
0060 006b       | k  |		.CONST	0x006b								; Address of begin
0061 0004       |    |		.CONST	0x0004								; Address of exception handler
0062 0004       |    |		.CONST	0x0004								; Number of locals
0063			INIT_0060:
0063 00e2       |    |		Load_Encached	Integer_Cache
0064 00e1       |    |		Load_Encached	Boolean_Cache
0065 4850       |HP  |		Short_Literal	0x50
0066 e003       |    |		Load	0x0,0x3
0067 1b0e       |    |		Execute	Package,Field_Read,Field_Number 0xe
0068 1c08       |    |		Execute_Immediate	Run_Utility,0x8
0069 00d8       |    |		Load_Top	At_Offset_0
006a 1c00       |    |		Execute_Immediate	Run_Utility,0x0
006b			BODY_0060:
006b 4800       |H   |		Short_Literal	0x0
006c 0052       | R  |		Store_Top_Unchecked	Discrete,At_Offset_2
006d 00cf       |    |		Action	Mark_Auxiliary
006e 7839       |x9  |		Jump	0xa8
006f e5ff       |    |		Load	0x2,-0x1
0070 820d       |    |		Call	0x1,0xd
0071 a402       |    |		Store_Unchecked	0x2,0x2
0072 00db       |    |		Load_Top	At_Offset_3
0073 e5fe       |    |		Load	0x2,-0x2
0074 027b       | {  |		Execute	Discrete,Greater_Equal
0075 e402       |    |		Load	0x2,0x2
0076 e5fd       |    |		Load	0x2,-0x3
0077 027a       | z  |		Execute	Discrete,Less_Equal
0078 0279       | y  |		Execute	Discrete,And
0079 0053       | S  |		Store_Top_Uncheched	Discrete,At_Offset_3
007a 00da       |    |		Load_Top	At_Offset_2
007b 702b       |p+  |		Jump_Nonzero	0xa7
007c 00d9       |    |		Load_Top	At_Offset_1
007d 0092 011a  |    |		Action	Push_String_Extended,0x11a					; "Integer input expected, in range ["
007f e003       |    |		Load	0x0,0x3
0080 1810       |    |		Execute	Package,Field_Execute,Field_Number 0x10
0081 00d1       |    |		Pop_Control	Pop_Count_1
0082 00d9       |    |		Load_Top	At_Offset_1
0083 4820       |H   |		Short_Literal	0x20
0084 4800       |H   |		Short_Literal	0x0
0085 480a       |H   |		Short_Literal	0xa
0086 e5fe       |    |		Load	0x2,-0x2
0087 e004       |    |		Load	0x0,0x4
0088 1816       |    |		Execute	Package,Field_Execute,Field_Number 0x16
0089 e003       |    |		Load	0x0,0x3
008a 1818       |    |		Execute	Package,Field_Execute,Field_Number 0x18
008b 00d1       |    |		Pop_Control	Pop_Count_1
008c 00d9       |    |		Load_Top	At_Offset_1
008d 0092 011b  |    |		Action	Push_String_Extended,0x11b					; ".."
008f e003       |    |		Load	0x0,0x3
0090 1818       |    |		Execute	Package,Field_Execute,Field_Number 0x18
0091 00d1       |    |		Pop_Control	Pop_Count_1
0092 00d9       |    |		Load_Top	At_Offset_1
0093 4820       |H   |		Short_Literal	0x20
0094 4800       |H   |		Short_Literal	0x0
0095 480a       |H   |		Short_Literal	0xa
0096 e5fd       |    |		Load	0x2,-0x3
0097 e004       |    |		Load	0x0,0x4
0098 1816       |    |		Execute	Package,Field_Execute,Field_Number 0x16
0099 e003       |    |		Load	0x0,0x3
009a 1818       |    |		Execute	Package,Field_Execute,Field_Number 0x18
009b 00d1       |    |		Pop_Control	Pop_Count_1
009c 00d9       |    |		Load_Top	At_Offset_1
009d 0092 011c  |    |		Action	Push_String_Extended,0x11c					; "]"
009f e003       |    |		Load	0x0,0x3
00a0 1818       |    |		Execute	Package,Field_Execute,Field_Number 0x18
00a1 00d1       |    |		Pop_Control	Pop_Count_1
00a2 00d9       |    |		Load_Top	At_Offset_1
00a3 e003       |    |		Load	0x0,0x3
00a4 1813       |    |		Execute	Package,Field_Execute,Field_Number 0x13
00a5 e005       |    |		Load	0x0,0x5
00a6 1864       | d  |		Execute	Package,Field_Execute,Field_Number 0x64
00a7 00c9       |    |		Action	Pop_Auxiliary_Loop
00a8 00da       |    |		Load_Top	At_Offset_2
00a9 6fc5       |o   |		Jump_Zero	0x6f
00aa 00ce       |    |		Action	Pop_Auxiliary
00ab 00da       |    |		Load_Top	At_Offset_2
00ac 4403       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x3
00ad 0000 0000  |    |		.XXX[0x3]
00af 0000       |    |
00b0 ; --------------------------------------------------------------------------------------
00b0 ; SUBPROGRAM
00b0 ; --------------------------------------------------------------------------------------
00b0 00b5       |    |		.CONST	0x00b5								; Address of begin
00b1 0004       |    |		.CONST	0x0004								; Address of exception handler
00b2 0002       |    |		.CONST	0x0002								; Number of locals
00b3			INIT_00b0:
00b3 e002       |    |		Load	0x0,0x2
00b4 0322       | "  |		Declare_Variable	Record
00b5			BODY_00b0:
00b5 00db       |    |		Load_Top	At_Offset_3
00b6 e005       |    |		Load	0x0,0x5
00b7 185f       | _  |		Execute	Package,Field_Execute,Field_Number 0x5f
00b8 00e3       |    |		Load_Encached	Natural_Cache
00b9 00d9       |    |		Load_Top	At_Offset_1
00ba 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
00bb e006       |    |		Load	0x0,0x6
00bc 184d       | M  |		Execute	Package,Field_Execute,Field_Number 0x4d
00bd 00d1       |    |		Pop_Control	Pop_Count_1
00be 00d9       |    |		Load_Top	At_Offset_1
00bf 3800       |8   |		Execute	Record,Field_Write,Field_Number 0x0
00c0 00d8       |    |		Load_Top	At_Offset_0
00c1 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00c2 0000 0000  |    |		.BLANK	0000[0x6]
00c8 ; --------------------------------------------------------------------------------------
00c8 ; SUBPROGRAM
00c8 ; --------------------------------------------------------------------------------------
00c8 00d4       |    |		.CONST	0x00d4								; Address of begin
00c9 0004       |    |		.CONST	0x0004								; Address of exception handler
00ca 0004       |    |		.CONST	0x0004								; Number of locals
00cb			INIT_00c8:
00cb 4864       |Hd  |		Short_Literal	0x64
00cc e003       |    |		Load	0x0,0x3
00cd 1b0e       |    |		Execute	Package,Field_Read,Field_Number 0xe
00ce 1c08       |    |		Execute_Immediate	Run_Utility,0x8
00cf 00d8       |    |		Load_Top	At_Offset_0
00d0 1c00       |    |		Execute_Immediate	Run_Utility,0x0
00d1 00e8       |    |		Load_Encached	Character_Cache
00d2 e002       |    |		Load	0x0,0x2
00d3 0322       | "  |		Declare_Variable	Record
00d4			BODY_00c8:
00d4 00cf       |    |		Action	Mark_Auxiliary
00d5 00db       |    |		Load_Top	At_Offset_3
00d6 4820       |H   |		Short_Literal	0x20
00d7 4800       |H   |		Short_Literal	0x0
00d8 e003       |    |		Load	0x0,0x3
00d9 1824       | $  |		Execute	Package,Field_Execute,Field_Number 0x24
00da 00d1       |    |		Pop_Control	Pop_Count_1
00db 00db       |    |		Load_Top	At_Offset_3
00dc e5ff       |    |		Load	0x2,-0x1
00dd e003       |    |		Load	0x0,0x3
00de 1810       |    |		Execute	Package,Field_Execute,Field_Number 0x10
00df 00d1       |    |		Pop_Control	Pop_Count_1
00e0 e5fe       |    |		Load	0x2,-0x2
00e1 6807       |h   |		Jump_Zero	0xe9
00e2 00db       |    |		Load_Top	At_Offset_3
00e3 0092 011d  |    |		Action	Push_String_Extended,0x11d					; " [Y] ? "
00e5 e003       |    |		Load	0x0,0x3
00e6 1818       |    |		Execute	Package,Field_Execute,Field_Number 0x18
00e7 00d1       |    |		Pop_Control	Pop_Count_1
00e8 7806       |x   |		Jump	0xef
00e9 00db       |    |		Load_Top	At_Offset_3
00ea 0092 011e  |    |		Action	Push_String_Extended,0x11e					; " [N] ? "
00ec e003       |    |		Load	0x0,0x3
00ed 1818       |    |		Execute	Package,Field_Execute,Field_Number 0x18
00ee 00d1       |    |		Pop_Control	Pop_Count_1
00ef 00db       |    |		Load_Top	At_Offset_3
00f0 e003       |    |		Load	0x0,0x3
00f1 1813       |    |		Execute	Package,Field_Execute,Field_Number 0x13
00f2 820f       |    |		Call	0x1,0xf
00f3 00da       |    |		Load_Top	At_Offset_2
00f4 017d       | }  |		Execute	Record,Structure_Write
00f5 00d9       |    |		Load_Top	At_Offset_1
00f6 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
00f7 7002       |p   |		Jump_Nonzero	0xfa
00f8 e5fe       |    |		Load	0x2,-0x2
00f9 4402       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x2
00fa 00d9       |    |		Load_Top	At_Offset_1
00fb 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
00fc 0f01       |    |		Execute_Immediate	Equal,0x1
00fd 6815       |h   |		Jump_Zero	0x113
00fe 4801       |H   |		Short_Literal	0x1
00ff 00da       |    |		Load_Top	At_Offset_2
0100 3401       |4   |		Execute	Record,Field_Reference,Field_Number 0x1
0101 01d7       |    |		Execute	Vector,Field_Read
0102 0053       | S  |		Store_Top_Uncheched	Discrete,At_Offset_3
0103 00da       |    |		Load_Top	At_Offset_2
0104 0f59       | Y  |		Execute_Immediate	Equal,0x59
0105 00db       |    |		Load_Top	At_Offset_3
0106 0f79       | y  |		Execute_Immediate	Equal,0x79
0107 0278       | x  |		Execute	Discrete,Or
0108 6802       |h   |		Jump_Zero	0x10b
0109 4801       |H   |		Short_Literal	0x1
010a 4402       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x2
010b 00da       |    |		Load_Top	At_Offset_2
010c 0f4e       | N  |		Execute_Immediate	Equal,0x4e
010d 00db       |    |		Load_Top	At_Offset_3
010e 0f6e       | n  |		Execute_Immediate	Equal,0x6e
010f 0278       | x  |		Execute	Discrete,Or
0110 6802       |h   |		Jump_Zero	0x113
0111 4800       |H   |		Short_Literal	0x0
0112 4402       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x2
0113 0092 011f  |    |		Action	Push_String_Extended,0x11f					; "Expected 'Y' or 'N' !"
0115 e005       |    |		Load	0x0,0x5
0116 1864       | d  |		Execute	Package,Field_Execute,Field_Number 0x64
0117 00c9       |    |		Action	Pop_Auxiliary_Loop
0118 7fbc       |    |		Jump	0xd5
0119 ; --------------------------------------------------------------------------------------
0119 ; STRING TABLE
0119 ; --------------------------------------------------------------------------------------
0119 0010       |    |		.STRTAB	0x0010->0x0121							; "Integer input expected, bad syntax, or too big."
011a 003d       | =  |		.STRTAB	0x003d->0x0138							; "Integer input expected, in range ["
011b 005d       | ]  |		.STRTAB	0x005d->0x0149							; ".."
011c 005d       | ]  |		.STRTAB	0x005d->0x014a							; "]"
011d 005c       | \  |		.STRTAB	0x005c->0x014b							; " [Y] ? "
011e 0061       | a  |		.STRTAB	0x0061->0x014e							; " [N] ? "
011f 0066       | f  |		.STRTAB	0x0066->0x0152							; "Expected 'Y' or 'N' !"
0120 0079       | y  |		.STREND 0x0079->0x015c
0121 496e 7465  |Inte|		.STRTAB_STRINGS
015d 0000 0000  |    |		.XXX[0x3]
015f 0000       |    |
0160 ; --------------------------------------------------------------------------------------
0160 ; Debug Table
0160 ; --------------------------------------------------------------------------------------
0160 0004 0012  |    |		.DEBUG4	0x0004,0x0012,0x2fdb,0x0000,0x0001,0x0000
0166 0000 0000  |    |		.BLANK	0000[0x9a]