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

⟦8c127ffe7⟧

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

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 0138       | 8  |		.CONST	0x0138								; 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 0010       |    |		.CONST	0x0010								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 0001       |    |		.CONST	0x0001								; Number of locals
000b			INIT_0008:
000b 029a 001b  |    |		Declare_Subprogram	INIT_0018,For_Outer_Call,Visible,Unelaborated
000d 00bf       |    |		Action	Accept_Activation
000e 1d0d       |    |		Execute_Immediate	Reference_Lex_1,0xd
000f 00c7       |    |		Action	Elaborate_Subprogram
0010			BODY_0008:
0010 00bc       |    |		Action	Signal_Activated
0011 00bb       |    |		Action	Signal_Completion
0012 0000 0000  |    |		.BLANK	0000[0x6]
0018 ; --------------------------------------------------------------------------------------
0018 ; SUBPROGRAM
0018 ; --------------------------------------------------------------------------------------
0018 0034       | 4  |		.CONST	0x0034								; Address of begin
0019 0004       |    |		.CONST	0x0004								; Address of exception handler
001a 0009       |    |		.CONST	0x0009								; Number of locals
001b			INIT_0018:
001b e002       |    |		Load	0x0,0x2
001c 0007       |    |		Action	Break_Optional
001d 029f 0043  |   C|		Declare_Subprogram	INIT_0040,For_Call
001f 029f 007b  |   {|		Declare_Subprogram	INIT_0078,For_Call
0021 029f 00bb  |    |		Declare_Subprogram	INIT_00b8,For_Call
0023 029f 011b  |    |		Declare_Subprogram	INIT_0118,For_Call
0025 a003       |    |		Store_Unchecked	0x0,0x3
0026 00c6       |    |		Action	Check_Subprogram_Elaborated
0027 4806       |H   |		Short_Literal	0x6
0028 4802       |H   |		Short_Literal	0x2
0029 0099       |    |		Action	Reference_Dynamic
002a 0093 0000  |    |		push_full_address	0x0
002c 600f       |`   |		Indirect_Literal	Discrete,0x3c,{0x80000000, 0x00010000}
002d 0273       | s  |		Execute	Discrete,Plus
002e e004       |    |		Load	0x0,0x4
002f 0273       | s  |		Execute	Discrete,Plus
0030 e005       |    |		Load	0x0,0x5
0031 0273       | s  |		Execute	Discrete,Plus
0032 4809       |H   |		Short_Literal	0x9
0033 0007       |    |		Action	Break_Optional
0034			BODY_0018:
0034 4807       |H   |		Short_Literal	0x7
0035 4802       |H   |		Short_Literal	0x2
0036 0099       |    |		Action	Reference_Dynamic
0037 4808       |H   |		Short_Literal	0x8
0038 4802       |H   |		Short_Literal	0x2
0039 0099       |    |		Action	Reference_Dynamic
003a 8003       |    |		Call	0x0,0x3
003b 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
003c 8000 0000  |    |		.LITERAL	{0x80000000, 0x00010000}
0040 ; --------------------------------------------------------------------------------------
0040 ; SUBPROGRAM
0040 ; --------------------------------------------------------------------------------------
0040 004c       | L  |		.CONST	0x004c								; Address of begin
0041 0004       |    |		.CONST	0x0004								; Address of exception handler
0042 0004       |    |		.CONST	0x0004								; Number of locals
0043			INIT_0040:
0043 00da       |    |		Load_Top	At_Offset_2
0044 0227       | '  |		Execute	Access,All_Reference
0045 3c2f       |</  |		Execute	Record,Field_Read,Field_Number 0x2f
0046 e006       |    |		Load	0x0,0x6
0047 03f1       |    |		Declare_Variable	Discrete,With_Value
0048 e007       |    |		Load	0x0,0x7
0049 0007       |    |		Action	Break_Optional
004a e007       |    |		Load	0x0,0x7
004b 0007       |    |		Action	Break_Optional
004c			BODY_0040:
004c 00da       |    |		Load_Top	At_Offset_2
004d 00db       |    |		Load_Top	At_Offset_3
004e 4802       |H   |		Short_Literal	0x2
004f 026f       | o  |		Execute	Discrete,Remainder
0050 0272       | r  |		Execute	Discrete,Minus
0051 005b       | [  |		Store_Top	Discrete,At_Offset_3
0052 4801       |H   |		Short_Literal	0x1
0053 00db       |    |		Load_Top	At_Offset_3
0054 e002       |    |		Load	0x0,0x2
0055 03ba       |    |		Declare_Variable	Access,By_Allocation,With_Constraint
0056 a402       |    |		Store_Unchecked	0x2,0x2
0057 4805       |H   |		Short_Literal	0x5
0058 0052       | R  |		Store_Top_Unchecked	Discrete,At_Offset_2
0059 480f       |H   |		Short_Literal	0xf
005a 0051       | Q  |		Store_Top_Unchecked	Discrete,At_Offset_1
005b 00cf       |    |		Action	Mark_Auxiliary
005c 00db       |    |		Load_Top	At_Offset_3
005d 4801       |H   |		Short_Literal	0x1
005e 0263       | c  |		Execute	Discrete,Above_Bound
005f 7017       |p   |		Jump_Nonzero	0x77
0060 e7fe       |    |		Load	0x3,-0x2
0061 8008       |    |		Call	0x0,0x8
0062 00d9       |    |		Load_Top	At_Offset_1
0063 e402       |    |		Load	0x2,0x2
0064 0227       | '  |		Execute	Access,All_Reference
0065 01d5       |    |		Execute	Vector,Field_Reference
0066 3800       |8   |		Execute	Record,Field_Write,Field_Number 0x0
0067 e7fd       |    |		Load	0x3,-0x3
0068 0af1       |    |		Execute_Immediate	Plus,-0xf
0069 00d8       |    |		Load_Top	At_Offset_0
006a e007       |    |		Load	0x0,0x7
006b 0260       | `  |		Execute	Discrete,In_Type
006c 7001       |p   |		Jump_Nonzero	0x6e
006d 0801       |    |		Execute_Immediate	Raise,0x1
006e 8009       |    |		Call	0x0,0x9
006f 0a0f       |    |		Execute_Immediate	Plus,0xf
0070 00d9       |    |		Load_Top	At_Offset_1
0071 e402       |    |		Load	0x2,0x2
0072 0227       | '  |		Execute	Access,All_Reference
0073 01d5       |    |		Execute	Vector,Field_Reference
0074 3801       |8   |		Execute	Record,Field_Write,Field_Number 0x1
0075 00c8       |    |		Action	Pop_Auxiliary_Range
0076 3fe9       |?   |		Loop_Increasing	0x60
0077 4504       |E   |		Exit_Suprogram	New_Top_Offset 0x4
0078 ; --------------------------------------------------------------------------------------
0078 ; SUBPROGRAM
0078 ; --------------------------------------------------------------------------------------
0078 007f       |    |		.CONST	0x007f								; Address of begin
0079 0004       |    |		.CONST	0x0004								; Address of exception handler
007a 0003       |    |		.CONST	0x0003								; Number of locals
007b			INIT_0078:
007b e00a       |    |		Load	0x0,0xa
007c 0600       |    |		Execute_Immediate	Set_Value_Unchecked,0x0
007d e00a       |    |		Load	0x0,0xa
007e 0007       |    |		Action	Break_Optional
007f			BODY_0078:
007f e402       |    |		Load	0x2,0x2
0080 0227       | '  |		Execute	Access,All_Reference
0081 01dd       |    |		Execute	Vector,First
0082 0059       | Y  |		Store_Top	Discrete,At_Offset_1
0083 00cf       |    |		Action	Mark_Auxiliary
0084 782a       |x*  |		Jump	0xaf
0085 00d9       |    |		Load_Top	At_Offset_1
0086 0a01       |    |		Execute_Immediate	Plus,0x1
0087 e402       |    |		Load	0x2,0x2
0088 0227       | '  |		Execute	Access,All_Reference
0089 01d5       |    |		Execute	Vector,Field_Reference
008a 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
008b 00da       |    |		Load_Top	At_Offset_2
008c 0a01       |    |		Execute_Immediate	Plus,0x1
008d e402       |    |		Load	0x2,0x2
008e 0227       | '  |		Execute	Access,All_Reference
008f 01d5       |    |		Execute	Vector,Field_Reference
0090 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
0091 00db       |    |		Load_Top	At_Offset_3
0092 e402       |    |		Load	0x2,0x2
0093 0227       | '  |		Execute	Access,All_Reference
0094 01d5       |    |		Execute	Vector,Field_Reference
0095 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
0096 e603       |    |		Load	0x3,0x3
0097 e402       |    |		Load	0x2,0x2
0098 0227       | '  |		Execute	Access,All_Reference
0099 01d5       |    |		Execute	Vector,Field_Reference
009a 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
009b e7fd       |    |		Load	0x3,-0x3
009c e7fe       |    |		Load	0x3,-0x2
009d 3400       |4   |		Execute	Record,Field_Reference,Field_Number 0x0
009e e7ff       |    |		Load	0x3,-0x1
009f 800b       |    |		Call	0x0,0xb
00a0 00da       |    |		Load_Top	At_Offset_2
00a1 0a01       |    |		Execute_Immediate	Plus,0x1
00a2 005b       | [  |		Store_Top	Discrete,At_Offset_3
00a3 00da       |    |		Load_Top	At_Offset_2
00a4 e7f9       |    |		Load	0x3,-0x7
00a5 027b       | {  |		Execute	Discrete,Greater_Equal
00a6 6804       |h   |		Jump_Zero	0xab
00a7 e7ff       |    |		Load	0x3,-0x1
00a8 800c       |    |		Call	0x0,0xc
00a9 4800       |H   |		Short_Literal	0x0
00aa 0053       | S  |		Store_Top_Uncheched	Discrete,At_Offset_3
00ab 00d9       |    |		Load_Top	At_Offset_1
00ac 0a02       |    |		Execute_Immediate	Plus,0x2
00ad 005a       | Z  |		Store_Top	Discrete,At_Offset_2
00ae 00c9       |    |		Action	Pop_Auxiliary_Loop
00af 00d9       |    |		Load_Top	At_Offset_1
00b0 e402       |    |		Load	0x2,0x2
00b1 0227       | '  |		Execute	Access,All_Reference
00b2 01dc       |    |		Execute	Vector,Last
00b3 027c       | |  |		Execute	Discrete,Less
00b4 77d0       |w   |		Jump_Nonzero	0x85
00b5 4508       |E   |		Exit_Suprogram	New_Top_Offset 0x8
00b6 0000 0000  |    |		.XXX[0x2]
00b8 ; --------------------------------------------------------------------------------------
00b8 ; SUBPROGRAM
00b8 ; --------------------------------------------------------------------------------------
00b8 00bb       |    |		.CONST	0x00bb								; Address of begin
00b9 0004       |    |		.CONST	0x0004								; Address of exception handler
00ba 0001       |    |		.CONST	0x0001								; Number of locals
00bb			BODY_00b8:
00bb			INIT_00b8:
00bb e402       |    |		Load	0x2,0x2
00bc e002       |    |		Load	0x0,0x2
00bd 022f       | /  |		Execute	Access,Equal
00be 6804       |h   |		Jump_Zero	0xc3
00bf e7fa       |    |		Load	0x3,-0x6
00c0 e7fb       |    |		Load	0x3,-0x5
00c1 e7ff       |    |		Load	0x3,-0x1
00c2 8403       |    |		Call	0x2,0x3
00c3 e7f9       |    |		Load	0x3,-0x7
00c4 00d8       |    |		Load_Top	At_Offset_0
00c5 0c06       |    |		Execute_Immediate	Greater_Equal,0x6
00c6 7010       |p   |		Jump_Nonzero	0xd7
00c7 4605       |F   |		Jump_Case	0x6
00c8 780f       |x   |		Jump	0xd8								; case 0x0
00c9 7817       |x   |		Jump	0xe1								; case 0x1
00ca 782c       |x,  |		Jump	0xf7								; case 0x2
00cb 7834       |x4  |		Jump	0x100								; case 0x3
00cc 783c       |x<  |		Jump	0x109								; case 0x4
00cd 7800       |x   |		Jump	0xce								; case 0x5
00ce 6045       |`E  |		Indirect_Literal	Discrete,0x114,{0x00000000, 0x7fffffff}
00cf e7fa       |    |		Load	0x3,-0x6
00d0 e7fb       |    |		Load	0x3,-0x5
00d1 e7fc       |    |		Load	0x3,-0x4
00d2 e7fd       |    |		Load	0x3,-0x3
00d3 e7fe       |    |		Load	0x3,-0x2
00d4 e7ff       |    |		Load	0x3,-0x1
00d5 8404       |    |		Call	0x2,0x4
00d6 4507       |E   |		Exit_Suprogram	New_Top_Offset 0x7
00d7 00d1       |    |		Pop_Control	Pop_Count_1
00d8 e402       |    |		Load	0x2,0x2
00d9 e00d       |    |		Load	0x0,0xd
00da e00e       |    |		Load	0x0,0xe
00db a00f       |    |		Store_Unchecked	0x0,0xf
00dc 8010       |    |		Call	0x0,0x10
00dd c402       |    |		Store	0x2,0x2
00de 4800       |H   |		Short_Literal	0x0
00df a7f9       |    |		Store_Unchecked	0x3,-0x7
00e0 4507       |E   |		Exit_Suprogram	New_Top_Offset 0x7
00e1 4800       |H   |		Short_Literal	0x0
00e2 e402       |    |		Load	0x2,0x2
00e3 0227       | '  |		Execute	Access,All_Reference
00e4 01dd       |    |		Execute	Vector,First
00e5 e402       |    |		Load	0x2,0x2
00e6 0227       | '  |		Execute	Access,All_Reference
00e7 01dd       |    |		Execute	Vector,First
00e8 e402       |    |		Load	0x2,0x2
00e9 0227       | '  |		Execute	Access,All_Reference
00ea 01db       |    |		Execute	Vector,Length
00eb 09ff       |    |		Execute_Immediate	Binary_Scale,-0x1
00ec 0273       | s  |		Execute	Discrete,Plus
00ed 0aff       |    |		Execute_Immediate	Plus,-0x1
00ee e402       |    |		Load	0x2,0x2
00ef 0227       | '  |		Execute	Access,All_Reference
00f0 01cf       |    |		Execute	Vector,Slice_Read
00f1 e7fd       |    |		Load	0x3,-0x3
00f2 e7fe       |    |		Load	0x3,-0x2
00f3 3400       |4   |		Execute	Record,Field_Reference,Field_Number 0x0
00f4 e7ff       |    |		Load	0x3,-0x1
00f5 8011       |    |		Call	0x0,0x11
00f6 4507       |E   |		Exit_Suprogram	New_Top_Offset 0x7
00f7 4800       |H   |		Short_Literal	0x0
00f8 e402       |    |		Load	0x2,0x2
00f9 0227       | '  |		Execute	Access,All_Reference
00fa e7fd       |    |		Load	0x3,-0x3
00fb e7fe       |    |		Load	0x3,-0x2
00fc 3400       |4   |		Execute	Record,Field_Reference,Field_Number 0x0
00fd e7ff       |    |		Load	0x3,-0x1
00fe 8011       |    |		Call	0x0,0x11
00ff 4507       |E   |		Exit_Suprogram	New_Top_Offset 0x7
0100 4801       |H   |		Short_Literal	0x1
0101 e7fa       |    |		Load	0x3,-0x6
0102 e7fb       |    |		Load	0x3,-0x5
0103 e7fc       |    |		Load	0x3,-0x4
0104 e7fd       |    |		Load	0x3,-0x3
0105 e7fe       |    |		Load	0x3,-0x2
0106 e7ff       |    |		Load	0x3,-0x1
0107 8404       |    |		Call	0x2,0x4
0108 4507       |E   |		Exit_Suprogram	New_Top_Offset 0x7
0109 4805       |H   |		Short_Literal	0x5
010a e7fa       |    |		Load	0x3,-0x6
010b e7fb       |    |		Load	0x3,-0x5
010c e7fc       |    |		Load	0x3,-0x4
010d e7fd       |    |		Load	0x3,-0x3
010e e7fe       |    |		Load	0x3,-0x2
010f e7ff       |    |		Load	0x3,-0x1
0110 8404       |    |		Call	0x2,0x4
0111 4507       |E   |		Exit_Suprogram	New_Top_Offset 0x7
0112 0000 0000  |    |		.XXX[0x2]
0114 0000 0000  |    |		.LITERAL	{0x00000000, 0x7fffffff}
0118 ; --------------------------------------------------------------------------------------
0118 ; SUBPROGRAM
0118 ; --------------------------------------------------------------------------------------
0118 011b       |    |		.CONST	0x011b								; Address of begin
0119 0004       |    |		.CONST	0x0004								; Address of exception handler
011a 0001       |    |		.CONST	0x0001								; Number of locals
011b			BODY_0118:
011b			INIT_0118:
011b e7f9       |    |		Load	0x3,-0x7
011c 00e3       |    |		Load_Encached	Natural_Cache
011d 025e       | ^  |		Execute	Discrete,Convert
011e e7fa       |    |		Load	0x3,-0x6
011f 00d8       |    |		Load_Top	At_Offset_0
0120 e007       |    |		Load	0x0,0x7
0121 0260       | `  |		Execute	Discrete,In_Type
0122 7001       |p   |		Jump_Nonzero	0x124
0123 0801       |    |		Execute_Immediate	Raise,0x1
0124 e7fb       |    |		Load	0x3,-0x5
0125 00d8       |    |		Load_Top	At_Offset_0
0126 e007       |    |		Load	0x0,0x7
0127 0260       | `  |		Execute	Discrete,In_Type
0128 7001       |p   |		Jump_Nonzero	0x12a
0129 0801       |    |		Execute_Immediate	Raise,0x1
012a e7fc       |    |		Load	0x3,-0x4
012b e7fd       |    |		Load	0x3,-0x3
012c e7fe       |    |		Load	0x3,-0x2
012d e7ff       |    |		Load	0x3,-0x1
012e 8405       |    |		Call	0x2,0x5
012f c7f9       |    |		Store	0x3,-0x7
0130 4507       |E   |		Exit_Suprogram	New_Top_Offset 0x7
0131 0000 0000  |    |		.BLANK	0000[0x7]
0138 ; --------------------------------------------------------------------------------------
0138 ; Debug Table
0138 ; --------------------------------------------------------------------------------------
0138 0004 0000  |    |		.DEBUG4	0x0004,0x0000,0x6925,0x0000,0x0001,0x0006
013e 000b 0000  |    |		.DBG4T	0x000b,0x0000,0x8000,0x0000
0142 001b 0156  |   V|		.DBG4T	0x001b,0x0156,0x8001,0x0000
0146 0043 015e  | C ^|		.DBG4T	0x0043,0x015e,0x0001,0x0000
014a 007b 016a  | { j|		.DBG4T	0x007b,0x016a,0x0001,0x4000
014e 00bb 017e  |   ~|		.DBG4T	0x00bb,0x017e,0x0001,0x4000
0152 011b 0000  |    |		.DBG4T	0x011b,0x0000,0x000b,0x0000
0156 ; --------------------------------------------------------------------------------------
0156 ; Debug chain
0156 ; --------------------------------------------------------------------------------------
0156 0005 0001  |    |		.DBGLEN	0x0005,0x0001
0158 001b 001d  |    |		.DBGLNO	0x001b,0x001d,0x001f,0x0021,0x0023,0x0034
015e ; --------------------------------------------------------------------------------------
015e ; Debug chain
015e ; --------------------------------------------------------------------------------------
015e 0003 0007  |    |		.DBGLEN	0x0003,0x0007
0160 0043 0048  | C H|		.DBGLNO	0x0043,0x0048,0x004a,0x004c,0x0052,0x0057,0x0059,0x005c,0x0060,0x0067
016a ; --------------------------------------------------------------------------------------
016a ; Debug chain
016a ; --------------------------------------------------------------------------------------
016a 0002 0008  |    |		.DBGLEN	0x0002,0x0008
016c 007b 007d  | { }|		.DBGLNO	0x007b,0x007d,0x007f,0x0085,0x00a0,0x00a3,0x00a7,0x00a9,0x00ab,0x00af
0176 0001 0003  |    |		.XXX[0x8]
0178 0004 0005  |    |
017a 0006 0007  |    |
017c 0008 0002  |    |
017e ; --------------------------------------------------------------------------------------
017e ; Debug chain
017e ; --------------------------------------------------------------------------------------
017e 0000 000a  |    |		.DBGLEN	0x0000,0x000a
0180 00bb 00bf  |    |		.DBGLNO	0x00bb,0x00bf,0x00c3,0x00ce,0x00d8,0x00de,0x00e1,0x00f7,0x0100,0x0109
018a 0001 0002  |    |		.XXX[0xa]
018c 0003 0008  |    |
018e 0009 000a  |    |
0190 0004 0005  |    |
0192 0006 0007  |    |
0194 0000 0000  |    |		.BLANK	0000[0x6c]