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

⟦5782cf50d⟧

    Length: 1024 (0x400)
    Notes: 00_class, 5800_R1K_CODE, 74_tag, NULL, R1k_Segment, seg_6a18da

Derivation

└─⟦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 5800       |X   |		.CONST	0x5800								; Diana Version, RCG Major Version, RCG minor version
0002 0000       |    |		.CONST	0x0000								; Zero
0003 0100       |    |		.CONST	0x0100								; 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 0011       |    |		.CONST	0x0011								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 0004       |    |		.CONST	0x0004								; Number of locals
000b			INIT_0008:
000b e230       | 0  |		Load	0x1,0x30
000c 0007       |    |		Action	Break_Optional
000d 029f 0033  |   3|		Declare_Subprogram	INIT_0030,For_Call
000f 029f 00bb  |    |		Declare_Subprogram	INIT_00b8,For_Call
0011			BODY_0008:
0011 00cf       |    |		Action	Mark_Auxiliary
0012 e5ff       |    |		Load	0x2,-0x1
0013 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
0014 01d9       |    |		Execute	Vector,Reverse_Bounds
0015 0263       | c  |		Execute	Discrete,Above_Bound
0016 700f       |p   |		Jump_Nonzero	0x26
0017 00d8       |    |		Load_Top	At_Offset_0
0018 e5ff       |    |		Load	0x2,-0x1
0019 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
001a 01d5       |    |		Execute	Vector,Field_Reference
001b 2c01       |,   |		Execute	Variant_Record,Field_Read,Fixed,Direct,Field_Number 0x1
001c 0f04       |    |		Execute_Immediate	Equal,0x4
001d 6806       |h   |		Jump_Zero	0x24
001e e230       | 0  |		Load	0x1,0x30
001f e5ff       |    |		Load	0x2,-0x1
0020 8231       | 1  |		Call	0x1,0x31
0021 c402       |    |		Store	0x2,0x2
0022 8404       |    |		Call	0x2,0x4
0023 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
0024 00c8       |    |		Action	Pop_Auxiliary_Range
0025 3ff1       |?   |		Loop_Increasing	0x17
0026 00ce       |    |		Action	Pop_Auxiliary
0027 e5ff       |    |		Load	0x2,-0x1
0028 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
0029 8403       |    |		Call	0x2,0x3
002a 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
002b 0000 0000  |    |		.BLANK	0000[0x5]
0030 ; --------------------------------------------------------------------------------------
0030 ; SUBPROGRAM
0030 ; --------------------------------------------------------------------------------------
0030 0033       | 3  |		.CONST	0x0033								; Address of begin
0031 0004       |    |		.CONST	0x0004								; Address of exception handler
0032 0001       |    |		.CONST	0x0001								; Number of locals
0033			BODY_0030:
0033			INIT_0030:
0033 00da       |    |		Load_Top	At_Offset_2
0034 01db       |    |		Execute	Vector,Length
0035 0b00       |    |		Execute_Immediate	Case_Compare,0x0
0036 7044       |pD  |		Jump_Nonzero	0x7b
0037 0f01       |    |		Execute_Immediate	Equal,0x1
0038 7045       |pE  |		Jump_Nonzero	0x7e
0039 00da       |    |		Load_Top	At_Offset_2
003a 01dd       |    |		Execute	Vector,First
003b 00db       |    |		Load_Top	At_Offset_3
003c 01d5       |    |		Execute	Vector,Field_Reference
003d 2c02       |,   |		Execute	Variant_Record,Field_Read,Fixed,Direct,Field_Number 0x2
003e 681e       |h   |		Jump_Zero	0x5d
003f 4801       |H   |		Short_Literal	0x1
0040 4801       |H   |		Short_Literal	0x1
0041 e248       | H  |		Load	0x1,0x48
0042 0334       | 4  |		Declare_Variable	Array,With_Constraint
0043 00db       |    |		Load_Top	At_Offset_3
0044 01dd       |    |		Execute	Vector,First
0045 e7ff       |    |		Load	0x3,-0x1
0046 01d5       |    |		Execute	Vector,Field_Reference
0047 4801       |H   |		Short_Literal	0x1
0048 00da       |    |		Load_Top	At_Offset_2
0049 01d6       |    |		Execute	Vector,Field_Write
004a 8403       |    |		Call	0x2,0x3
004b 0092 00d9  |    |		Action	Push_String_Extended,0xd9					; " and "
004d 01cc       |    |		Execute	Vector,Catenate
004e 00db       |    |		Load_Top	At_Offset_3
004f 01dd       |    |		Execute	Vector,First
0050 0a01       |    |		Execute_Immediate	Plus,0x1
0051 00d8       |    |		Load_Top	At_Offset_0
0052 00e2       |    |		Load_Encached	Integer_Cache
0053 0260       | `  |		Execute	Discrete,In_Type
0054 7001       |p   |		Jump_Nonzero	0x56
0055 0801       |    |		Execute_Immediate	Raise,0x1
0056 e7ff       |    |		Load	0x3,-0x1
0057 01dc       |    |		Execute	Vector,Last
0058 e7ff       |    |		Load	0x3,-0x1
0059 01cf       |    |		Execute	Vector,Slice_Read
005a 8403       |    |		Call	0x2,0x3
005b 01cc       |    |		Execute	Vector,Catenate
005c 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
005d 4801       |H   |		Short_Literal	0x1
005e 4801       |H   |		Short_Literal	0x1
005f e248       | H  |		Load	0x1,0x48
0060 0334       | 4  |		Declare_Variable	Array,With_Constraint
0061 00db       |    |		Load_Top	At_Offset_3
0062 01dd       |    |		Execute	Vector,First
0063 e7ff       |    |		Load	0x3,-0x1
0064 01d5       |    |		Execute	Vector,Field_Reference
0065 4801       |H   |		Short_Literal	0x1
0066 00da       |    |		Load_Top	At_Offset_2
0067 01d6       |    |		Execute	Vector,Field_Write
0068 8403       |    |		Call	0x2,0x3
0069 0092 00da  |    |		Action	Push_String_Extended,0xda					; " & "
006b 01cc       |    |		Execute	Vector,Catenate
006c 00db       |    |		Load_Top	At_Offset_3
006d 01dd       |    |		Execute	Vector,First
006e 0a01       |    |		Execute_Immediate	Plus,0x1
006f 00d8       |    |		Load_Top	At_Offset_0
0070 00e2       |    |		Load_Encached	Integer_Cache
0071 0260       | `  |		Execute	Discrete,In_Type
0072 7001       |p   |		Jump_Nonzero	0x74
0073 0801       |    |		Execute_Immediate	Raise,0x1
0074 e7ff       |    |		Load	0x3,-0x1
0075 01dc       |    |		Execute	Vector,Last
0076 e7ff       |    |		Load	0x3,-0x1
0077 01cf       |    |		Execute	Vector,Slice_Read
0078 8403       |    |		Call	0x2,0x3
0079 01cc       |    |		Execute	Vector,Catenate
007a 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
007b 00d1       |    |		Pop_Control	Pop_Count_1
007c 00ea       |    |		Load_Encached	Null_String_Cache
007d 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
007e 00da       |    |		Load_Top	At_Offset_2
007f 01dd       |    |		Execute	Vector,First
0080 00db       |    |		Load_Top	At_Offset_3
0081 01d5       |    |		Execute	Vector,Field_Reference
0082 2c01       |,   |		Execute	Variant_Record,Field_Read,Fixed,Direct,Field_Number 0x1
0083 4604       |F   |		Jump_Case	0x5
0084 7805       |x   |		Jump	0x8a								; case 0x0
0085 7814       |x   |		Jump	0x9a								; case 0x1
0086 7824       |x$  |		Jump	0xab								; case 0x2
0087 7826       |x&  |		Jump	0xae								; case 0x3
0088 7800       |x   |		Jump	0x89								; case 0x4
0089 08e0       |    |		Execute_Immediate	Raise,0xe0
008a 0092 00db  |    |		Action	Push_String_Extended,0xdb					; "Data("
008c 00db       |    |		Load_Top	At_Offset_3
008d 01dd       |    |		Execute	Vector,First
008e e7ff       |    |		Load	0x3,-0x1
008f 01d5       |    |		Execute	Vector,Field_Reference
0090 2e03       |.   |		Execute	Variant_Record,Field_Read,Variant,Direct,Field_Number 0x3
0091 e245       | E  |		Load	0x1,0x45
0092 1810       |    |		Execute	Package,Field_Execute,Field_Number 0x10
0093 e001       |    |		Load	0x0,0x1
0094 1815       |    |		Execute	Package,Field_Execute,Field_Number 0x15
0095 01cc       |    |		Execute	Vector,Catenate
0096 0092 00dc  |    |		Action	Push_String_Extended,0xdc					; ")"
0098 01cc       |    |		Execute	Vector,Catenate
0099 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
009a 0092 00dd  |    |		Action	Push_String_Extended,0xdd					; "Silence("
009c 4820       |H   |		Short_Literal	0x20
009d e7ff       |    |		Load	0x3,-0x1
009e 01dd       |    |		Execute	Vector,First
009f e7ff       |    |		Load	0x3,-0x1
00a0 01d5       |    |		Execute	Vector,Field_Reference
00a1 2e05       |.   |		Execute	Variant_Record,Field_Read,Variant,Direct,Field_Number 0x5
00a2 e00f       |    |		Load	0x0,0xf
00a3 1829       | )  |		Execute	Package,Field_Execute,Field_Number 0x29
00a4 e010       |    |		Load	0x0,0x10
00a5 181c       |    |		Execute	Package,Field_Execute,Field_Number 0x1c
00a6 01cc       |    |		Execute	Vector,Catenate
00a7 0092 00dc  |    |		Action	Push_String_Extended,0xdc					; ")"
00a9 01cc       |    |		Execute	Vector,Catenate
00aa 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00ab 0092 00de  |    |		Action	Push_String_Extended,0xde					; "Break"
00ad 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00ae 0092 00df  |    |		Action	Push_String_Extended,0xdf					; "Disconnect"
00b0 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00b1 0000 0000  |    |		.BLANK	0000[0x7]
00b8 ; --------------------------------------------------------------------------------------
00b8 ; SUBPROGRAM
00b8 ; --------------------------------------------------------------------------------------
00b8 00c0       |    |		.CONST	0x00c0								; Address of begin
00b9 0004       |    |		.CONST	0x0004								; Address of exception handler
00ba 0002       |    |		.CONST	0x0002								; Number of locals
00bb			INIT_00b8:
00bb e5ff       |    |		Load	0x2,-0x1
00bc e402       |    |		Load	0x2,0x2
00bd 8233       | 3  |		Call	0x1,0x33
00be 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
00bf 8403       |    |		Call	0x2,0x3
00c0			BODY_00b8:
00c0 e402       |    |		Load	0x2,0x2
00c1 e5ff       |    |		Load	0x2,-0x1
00c2 8234       | 4  |		Call	0x1,0x34
00c3 c402       |    |		Store	0x2,0x2
00c4 e402       |    |		Load	0x2,0x2
00c5 8232       | 2  |		Call	0x1,0x32
00c6 6808       |h   |		Jump_Zero	0xcf
00c7 0092 00e0  |    |		Action	Push_String_Extended,0xe0					; "("
00c9 00d9       |    |		Load_Top	At_Offset_1
00ca 01cc       |    |		Execute	Vector,Catenate
00cb 0092 00dc  |    |		Action	Push_String_Extended,0xdc					; ")"
00cd 01cc       |    |		Execute	Vector,Catenate
00ce 00ca       |    |		Action	Exit_Nullary_Function
00cf 0092 00e0  |    |		Action	Push_String_Extended,0xe0					; "("
00d1 00d9       |    |		Load_Top	At_Offset_1
00d2 01cc       |    |		Execute	Vector,Catenate
00d3 0092 00e1  |    |		Action	Push_String_Extended,0xe1					; ") or "
00d5 01cc       |    |		Execute	Vector,Catenate
00d6 8404       |    |		Call	0x2,0x4
00d7 01cc       |    |		Execute	Vector,Catenate
00d8 00ca       |    |		Action	Exit_Nullary_Function
00d9 ; --------------------------------------------------------------------------------------
00d9 ; STRING TABLE
00d9 ; --------------------------------------------------------------------------------------
00d9 0014       |    |		.STRTAB	0x0014->0x00e3							; " and "
00da 0017       |    |		.STRTAB	0x0017->0x00e5							; " & "
00db 0018       |    |		.STRTAB	0x0018->0x00e7							; "Data("
00dc 001b       |    |		.STRTAB	0x001b->0x00e9							; ")"
00dd 001a       |    |		.STRTAB	0x001a->0x00ea							; "Silence("
00de 0020       |    |		.STRTAB	0x0020->0x00ee							; "Break"
00df 0023       | #  |		.STRTAB	0x0023->0x00f0							; "Disconnect"
00e0 002b       | +  |		.STRTAB	0x002b->0x00f5							; "("
00e1 002a       | *  |		.STRTAB	0x002a->0x00f6							; ") or "
00e2 002d       | -  |		.STREND 0x002d->0x00f8
00e3 2061 6e64  | and|		.STRTAB_STRINGS
00f9 0000 0000  |    |		.BLANK	0000[0x7]
0100 ; --------------------------------------------------------------------------------------
0100 ; Debug Table
0100 ; --------------------------------------------------------------------------------------
0100 0004 000a  |    |		.DEBUG4	0x0004,0x000a,0x7e42,0x0000,0x0001,0x0000
0106 0105 c284  |    |		.XXX[0xe]
0108 0000 bb36  |   6|
010a a065 e372  | e r|
010c a7b8 0000  |    |
010e 0150 32f1  | P2 |
0110 c782 a100  |    |
0112 0000 a000  |    |
0114 0000 0000  |    |		.BLANK	0000[0xc]
0120 0203 0802  |    |		.XXX[0x19]
0122 2091 8000  |    |
0124 0000 0000  |    |
0126 2a2e 2140  |*.!@|
0128 0000 1008  |    |
012a 1978 dcaa  | x  |
012c 5eb0 0000  |^   |
012e 5000 0000  |P   |
0130 9000 067b  |   {|
0132 6000 0000  |`   |
0134 2000 0000  |    |
0136 2001 80c6  |    |
0138 0088       |    |
0139 0000 0000  |    |		.BLANK	0000[0x7]
0140 0206 5e37  |  ^7|		.XXX[0x13]
0142 2a97 ac00  |*   |
0144 0014 0000  |    |
0146 0024 0001  | $  |
0148 9ed8 0000  |    |
014a 0008 0000  |    |
014c 0008 0000  |    |
014e 0018 0002  |    |
0150 bbc0 020b  |    |
0152 82f0       |    |
0153 0000 0000  |    |		.BLANK	0000[0x4]
0157 0105 d6c4  |    |		.XXX[0x1b]
0159 0001 acbd  |    |
015b 1f83 d99e  |    |
015d e000 0000  |    |
015f 08d0 37f0  |  7 |
0161 8fa2 4a20  |  J |
0163 0004 6400  |  d |
0165 0000 0000  |    |
0167 0000 0001  |    |
0169 a512 8580  |    |
016b 0000 4001  |  @ |
016d a514 8580  |    |
016f 0000 4000  |  @ |
0171 2600       |&   |
0172 0000 0000  |    |		.BLANK	0000[0x5]
0177 6945 2160  |iE!`|		.XXX[0x9]
0179 0000 1007  |    |
017b e0f6 67b8  |  g |
017d 0000 0002  |    |
017f 3000       |0   |
0180 0000 0000  |    |		.BLANK	0000[0x5]
0185 2000 0000  |    |		.XXX[0x4]
0187 0009 8000  |    |
0189 0000 0000  |    |		.BLANK	0000[0x8]
0191 0206 fdfe  |    |		.XXX[0x5]
0193 e2d6 ec00  |    |
0195 008c       |    |
0196 0000 0000  |    |		.BLANK	0000[0x5]
019b 0008 0000  |    |		.XXX[0x29]
019d 0000 0000  |    |
019f 0018 0003  |    |
01a1 1a58 020b  | X  |
01a3 ab70 020b  | p  |
01a5 7de8 020c  |}   |
01a7 1fe8 0105  |    |
01a9 eb04 0000  |    |
01ab 1750 2051  | P Q|
01ad 1c9e a000  |    |
01af 0000 0050  |   P|
01b1 288e 4f50  |( OP|
01b3 0000 0000  |    |
01b5 2000 0000  |    |
01b7 0000 0000  |    |
01b9 0001 de60  |   `|
01bb 8580 0000  |    |
01bd 4001 e1d2  |@   |
01bf 8580 0000  |    |
01c1 4000 2600  |@ & |
01c3 1800       |    |
01c4 0000 0000  |    |		.BLANK	0000[0x4]
01c8 7874 a160  |xt `|		.XXX[0x12]
01ca 0000 1008  |    |
01cc 1447 27a8  | G' |
01ce 0000 0000  |    |
01d0 1000 0000  |    |
01d2 9000 080d  |    |
01d4 2000 0000  |    |
01d6 2000 0000  |    |
01d8 2009 8006  |    |
01da 0000 0000  |    |		.BLANK	0000[0x8]
01e2 0207 0131  |   1|		.XXX[0x13]
01e4 8fe9 c000  |    |
01e6 0004 0000  |    |
01e8 0024 0002  | $  |
01ea 0348 0000  | H  |
01ec 0008 0000  |    |
01ee 0008 0000  |    |
01f0 0018 0003  |    |
01f2 39e0 020b  |9   |
01f4 d3f0       |    |
01f5 0000 0000  |    |		.BLANK	0000[0x4]
01f9 0105 ff44  |   D|		.XXX[0x7]
01fb 0002 0572  |   r|
01fd a079 61d5  | ya |
01ff 7187       |q   |