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

⟦56b560819⟧

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

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦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 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 0000       |    |		.CONST	0x0000								; 0, wired, #pages in seg - 1)
0008 ; --------------------------------------------------------------------------------------
0008 ; SUBPROGRAM
0008 ; --------------------------------------------------------------------------------------
0008 001d       |    |		.CONST	0x001d								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 0010       |    |		.CONST	0x0010								; Number of locals
000b			INIT_0008:
000b 4800       |H   |		Short_Literal	0x0
000c 4806       |H   |		Short_Literal	0x6
000d 029f 0023  |   #|		Declare_Subprogram	INIT_0020,For_Call
000f 03fe       |    |		Declare_Type	Discrete,Defined,Visible
0010 029a 004b  |   K|		Declare_Subprogram	INIT_0048,For_Outer_Call,Visible,Unelaborated
0012 029a 005b  |   [|		Declare_Subprogram	INIT_0058,For_Outer_Call,Visible,Unelaborated
0014 029a 0083  |    |		Declare_Subprogram	INIT_0080,For_Outer_Call,Visible,Unelaborated
0016 00bf       |    |		Action	Accept_Activation
0017 1d0e       |    |		Execute_Immediate	Reference_Lex_1,0xe
0018 00c7       |    |		Action	Elaborate_Subprogram
0019 1d0f       |    |		Execute_Immediate	Reference_Lex_1,0xf
001a 00c7       |    |		Action	Elaborate_Subprogram
001b 1d10       |    |		Execute_Immediate	Reference_Lex_1,0x10
001c 00c7       |    |		Action	Elaborate_Subprogram
001d			BODY_0008:
001d 00bc       |    |		Action	Signal_Activated
001e 00bb       |    |		Action	Signal_Completion
001f 0000       |    |		.XXX[0x1]
0020 ; --------------------------------------------------------------------------------------
0020 ; SUBPROGRAM
0020 ; --------------------------------------------------------------------------------------
0020 0023       | #  |		.CONST	0x0023								; Address of begin
0021 0004       |    |		.CONST	0x0004								; Address of exception handler
0022 0001       |    |		.CONST	0x0001								; Number of locals
0023			BODY_0020:
0023			INIT_0020:
0023 4607       |F   |		Jump_Case	0x8
0024 4302       |C   |		Exit_Subprogram	From_Utility,New_Top_Offset 0x2				; case 0x0
0025 7807       |x   |		Jump	0x2d								; case 0x1
0026 780a       |x   |		Jump	0x31								; case 0x2
0027 780e       |x   |		Jump	0x36								; case 0x3
0028 7811       |x   |		Jump	0x3a								; case 0x4
0029 7812       |x   |		Jump	0x3c								; case 0x5
002a 7813       |x   |		Jump	0x3e								; case 0x6
002b 7816       |x   |		Jump	0x42								; case 0x7
002c 4302       |C   |		.XXX[0x1]
002d 00da       |    |		Load_Top	At_Offset_2
002e 0091 00a1  |    |		Action	Push_String_Extended_Indexed,0xa1				; "IS_EQUAL"
0030 4201       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x1
0031 00db       |    |		Load_Top	At_Offset_3
0032 00db       |    |		Load_Top	At_Offset_3
0033 00e0       |    |		Load_Encached	Standard_Cache
0034 181b       |    |		Execute	Package,Field_Execute,Field_Number 0x1b
0035 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
0036 00da       |    |		Load_Top	At_Offset_2
0037 00e0       |    |		Load_Encached	Standard_Cache
0038 181c       |    |		Execute	Package,Field_Execute,Field_Number 0x1c
0039 4201       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x1
003a 00db       |    |		Load_Top	At_Offset_3
003b 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
003c 00db       |    |		Load_Top	At_Offset_3
003d 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
003e e20d       |    |		Load	0x1,0xd
003f 00dc       |    |		Load_Top	At_Offset_4
0040 0267       | g  |		Execute	Discrete,Predecessor
0041 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
0042 e20d       |    |		Load	0x1,0xd
0043 00dc       |    |		Load_Top	At_Offset_4
0044 0268       | h  |		Execute	Discrete,Successor
0045 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
0046 0000 0000  |    |		.XXX[0x2]
0048 ; --------------------------------------------------------------------------------------
0048 ; SUBPROGRAM
0048 ; --------------------------------------------------------------------------------------
0048 004b       | K  |		.CONST	0x004b								; Address of begin
0049 0004       |    |		.CONST	0x0004								; Address of exception handler
004a 0001       |    |		.CONST	0x0001								; Number of locals
004b			BODY_0048:
004b			INIT_0048:
004b 00da       |    |		Load_Top	At_Offset_2
004c 4800       |H   |		Short_Literal	0x0
004d 4805       |H   |		Short_Literal	0x5
004e 0262       | b  |		Execute	Discrete,In_Range
004f 7002       |p   |		Jump_Nonzero	0x52
0050 4801       |H   |		Short_Literal	0x1
0051 4402       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x2
0052 e003       |    |		Load	0x0,0x3
0053 0257       | W  |		Execute	Discrete,Raise
0054 0000 0000  |    |		.BLANK	0000[0x4]
0058 ; --------------------------------------------------------------------------------------
0058 ; SUBPROGRAM
0058 ; --------------------------------------------------------------------------------------
0058 005b       | [  |		.CONST	0x005b								; Address of begin
0059 0004       |    |		.CONST	0x0004								; Address of exception handler
005a 0001       |    |		.CONST	0x0001								; Number of locals
005b			BODY_0058:
005b			INIT_0058:
005b 00da       |    |		Load_Top	At_Offset_2
005c 4606       |F   |		Jump_Case	0x7
005d 7808       |x   |		Jump	0x66								; case 0x0
005e 780b       |x   |		Jump	0x6a								; case 0x1
005f 780e       |x   |		Jump	0x6e								; case 0x2
0060 7811       |x   |		Jump	0x72								; case 0x3
0061 7814       |x   |		Jump	0x76								; case 0x4
0062 7817       |x   |		Jump	0x7a								; case 0x5
0063 7800       |x   |		Jump	0x64								; case 0x6
0064 e003       |    |		Load	0x0,0x3
0065 0257       | W  |		Execute	Discrete,Raise
0066 00db       |    |		Load_Top	At_Offset_3
0067 e5fd       |    |		Load	0x2,-0x3
0068 016f       | o  |		Execute	Variant_Record,Equal
0069 4403       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x3
006a e5fd       |    |		Load	0x2,-0x3
006b e5fe       |    |		Load	0x2,-0x2
006c 8004       |    |		Call	0x0,0x4
006d 4403       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x3
006e e5fd       |    |		Load	0x2,-0x3
006f e5fe       |    |		Load	0x2,-0x2
0070 8005       |    |		Call	0x0,0x5
0071 4403       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x3
0072 e5fd       |    |		Load	0x2,-0x3
0073 e5fe       |    |		Load	0x2,-0x2
0074 8006       |    |		Call	0x0,0x6
0075 4403       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x3
0076 e5fd       |    |		Load	0x2,-0x3
0077 e5fe       |    |		Load	0x2,-0x2
0078 8007       |    |		Call	0x0,0x7
0079 4403       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x3
007a 00db       |    |		Load_Top	At_Offset_3
007b e5fd       |    |		Load	0x2,-0x3
007c 016f       | o  |		Execute	Variant_Record,Equal
007d 0f00       |    |		Execute_Immediate	Equal,0x0
007e 4403       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x3
007f 0000       |    |		.XXX[0x1]
0080 ; --------------------------------------------------------------------------------------
0080 ; SUBPROGRAM
0080 ; --------------------------------------------------------------------------------------
0080 0083       |    |		.CONST	0x0083								; Address of begin
0081 0004       |    |		.CONST	0x0004								; Address of exception handler
0082 0001       |    |		.CONST	0x0001								; Number of locals
0083			BODY_0080:
0083			INIT_0080:
0083 00da       |    |		Load_Top	At_Offset_2
0084 4606       |F   |		Jump_Case	0x7
0085 7809       |x   |		Jump	0x8f								; case 0x0
0086 780b       |x   |		Jump	0x92								; case 0x1
0087 780d       |x   |		Jump	0x95								; case 0x2
0088 780f       |x   |		Jump	0x98								; case 0x3
0089 7811       |x   |		Jump	0x9b								; case 0x4
008a 7813       |x   |		Jump	0x9e								; case 0x5
008b 7800       |x   |		Jump	0x8c								; case 0x6
008c 0092 00a8  |    |		Action	Push_String_Extended,0xa8					; "Is_Any"
008e 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
008f 0092 00a9  |    |		Action	Push_String_Extended,0xa9					; "Is_Equal"
0091 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
0092 0092 00aa  |    |		Action	Push_String_Extended,0xaa					; "Is_Less"
0094 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
0095 0092 00ab  |    |		Action	Push_String_Extended,0xab					; "Is_Less_Or_Equal"
0097 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
0098 0092 00ac  |    |		Action	Push_String_Extended,0xac					; "Is_Greater"
009a 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
009b 0092 00ad  |    |		Action	Push_String_Extended,0xad					; "Is_Greater_Or_Equal"
009d 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
009e 0092 00ae  |    |		Action	Push_String_Extended,0xae					; "Is_Different"
00a0 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00a1 ; --------------------------------------------------------------------------------------
00a1 ; STRING TABLE
00a1 ; --------------------------------------------------------------------------------------
00a1 001e       |    |		.STRTAB	0x001e->0x00b0							; "IS_EQUAL"
00a2 0024       | $  |		.STRTAB	0x0024->0x00b4							; "IS_LESS"
00a3 0029       | )  |		.STRTAB	0x0029->0x00b7							; "IS_LESS_OR_EQUAL"
00a4 0037       | 7  |		.STRTAB	0x0037->0x00bf							; "IS_GREATER"
00a5 003f       | ?  |		.STRTAB	0x003f->0x00c4							; "IS_GREATER_OR_EQUAL"
00a6 0050       | P  |		.STRTAB	0x0050->0x00ce							; "IS_DIFFERENT"
00a7 005a       | Z  |		.STRTAB	0x005a->0x00d4							; "IS_ANY"
00a8 005e       | ^  |		.STRTAB	0x005e->0x00d7							; "Is_Any"
00a9 0062       | b  |		.STRTAB	0x0062->0x00da							; "Is_Equal"
00aa 0068       | h  |		.STRTAB	0x0068->0x00de							; "Is_Less"
00ab 006d       | m  |		.STRTAB	0x006d->0x00e1							; "Is_Less_Or_Equal"
00ac 007b       | {  |		.STRTAB	0x007b->0x00e9							; "Is_Greater"
00ad 0083       |    |		.STRTAB	0x0083->0x00ee							; "Is_Greater_Or_Equal"
00ae 0094       |    |		.STRTAB	0x0094->0x00f8							; "Is_Different"
00af 009e       |    |		.STREND 0x009e->0x00fe
00b0 4953 5f45  |IS_E|		.STRTAB_STRINGS
00fe 0000 0000  |    |		.XXX[0x2]
0100 ; --------------------------------------------------------------------------------------
0100 ; Debug Table
0100 ; --------------------------------------------------------------------------------------
0100 0004 0004  |    |		.DEBUG4	0x0004,0x0004,0x9abd,0x0000,0x0001,0x0006
0106 000b 011e  |    |		.DBG4T	0x000b,0x011e,0x0000,0x0000
010a 0017 0124  |   $|		.DBG4T	0x0017,0x0124,0x0000,0x0000
010e 0023 0000  | #  |		.DBG4T	0x0023,0x0000,0x0005,0x0000
0112 004b 0129  | K )|		.DBG4T	0x004b,0x0129,0x0002,0x4000
0116 005b 0131  | [ 1|		.DBG4T	0x005b,0x0131,0x0002,0x4000
011a 0083 0143  |   C|		.DBG4T	0x0083,0x0143,0x0002,0x4000
011e ; --------------------------------------------------------------------------------------
011e ; Debug chain
011e ; --------------------------------------------------------------------------------------
011e 0004 0000  |    |		.DBGLEN	0x0004,0x0000
0120 000b 0010  |    |		.DBGLNO	0x000b,0x0010,0x0012,0x0014
0124 ; --------------------------------------------------------------------------------------
0124 ; Debug chain
0124 ; --------------------------------------------------------------------------------------
0124 0003 0000  |    |		.DBGLEN	0x0003,0x0000
0126 0017 0019  |    |		.DBGLNO	0x0017,0x0019,0x001b
0129 ; --------------------------------------------------------------------------------------
0129 ; Debug chain
0129 ; --------------------------------------------------------------------------------------
0129 0000 0003  |    |		.DBGLEN	0x0000,0x0003
012b 004b 0050  | K P|		.DBGLNO	0x004b,0x0050,0x0052
012e 0001 0003  |    |		.XXX[0x3]
0130 0002       |    |
0131 ; --------------------------------------------------------------------------------------
0131 ; Debug chain
0131 ; --------------------------------------------------------------------------------------
0131 0000 0008  |    |		.DBGLEN	0x0000,0x0008
0133 005b 0064  | [ d|		.DBGLNO	0x005b,0x0064,0x0066,0x006a,0x006e,0x0072,0x0076,0x007a
013b 0001 0008  |    |		.XXX[0x8]
013d 0002 0003  |    |
013f 0004 0005  |    |
0141 0006 0007  |    |
0143 ; --------------------------------------------------------------------------------------
0143 ; Debug chain
0143 ; --------------------------------------------------------------------------------------
0143 0000 0008  |    |		.DBGLEN	0x0000,0x0008
0145 0083 008c  |    |		.DBGLNO	0x0083,0x008c,0x008f,0x0092,0x0095,0x0098,0x009b,0x009e
014d 0001 0008  |    |		.XXX[0x8]
014f 0002 0003  |    |
0151 0004 0005  |    |
0153 0006 0007  |    |
0155 0000 0000  |    |		.BLANK	0000[0xab]