|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 1024 (0x400)
Notes: 00_class, 5800_R1K_CODE, 74_tag, NULL, R1k_Segment, seg_779ce4
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
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 0198 | | .CONST 0x0198 ; 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 8001 | | .CONST 0x8001 ; 0, wired, #pages in seg - 1)
0008 ; --------------------------------------------------------------------------------------
0008 ; SUBPROGRAM
0008 ; --------------------------------------------------------------------------------------
0008 0034 | 4 | .CONST 0x0034 ; Address of begin
0009 0082 | | .CONST 0x0082 ; Address of exception handler
000a 000f | | .CONST 0x000f ; Number of locals
000b INIT_0008:
000b 6090 |` | Indirect_Literal Discrete,0x9c,{0x00000000, 0x00003e00}
000c 608b |` | Indirect_Literal Discrete,0x98,{0x00000000, 0x00003fff}
000d e020 | | Load 0x0,0x20
000e 03f8 | | Declare_Type Discrete,Constrained
000f 6084 |` | Indirect_Literal Discrete,0x94,{0x00000000, 0x00003600}
0010 607f |` | Indirect_Literal Discrete,0x90,{0x00000000, 0x000037ff}
0011 e020 | | Load 0x0,0x20
0012 03f8 | | Declare_Type Discrete,Constrained
0013 e5ff | | Load 0x2,-0x1
0014 8021 | ! | Call 0x0,0x21
0015 e022 | " | Load 0x0,0x22
0016 0322 | " | Declare_Variable Record
0017 00d9 | | Load_Top At_Offset_1
0018 8023 | # | Call 0x0,0x23
0019 00d9 | | Load_Top At_Offset_1
001a 017d | } | Execute Record,Structure_Write
001b e024 | $ | Load 0x0,0x24
001c 0322 | " | Declare_Variable Record
001d 00d9 | | Load_Top At_Offset_1
001e 8025 | % | Call 0x0,0x25
001f 00d9 | | Load_Top At_Offset_1
0020 017d | } | Execute Record,Structure_Write
0021 e020 | | Load 0x0,0x20
0022 0007 | | Action Break_Optional
0023 00da | | Load_Top At_Offset_2
0024 8026 | & | Call 0x0,0x26
0025 e020 | | Load 0x0,0x20
0026 03f1 | | Declare_Variable Discrete,With_Value
0027 00e2 | | Load_Encached Integer_Cache
0028 0600 | | Execute_Immediate Set_Value_Unchecked,0x0
0029 00e2 | | Load_Encached Integer_Cache
002a 029f 00a3 | | Declare_Subprogram For_Call,INIT_00a0
002c 029f 00bb | | Declare_Subprogram For_Call,INIT_00b8
002e 029f 00d3 | | Declare_Subprogram For_Call,INIT_00d0
0030 029f 0103 | | Declare_Subprogram For_Call,INIT_0100
0032 029f 012b | +| Declare_Subprogram For_Call,INIT_0128
0034 BODY_0008:
0034 e408 | | Load 0x2,0x8
0035 e406 | | Load 0x2,0x6
0036 8027 | ' | Call 0x0,0x27
0037 a407 | | Store_Unchecked 0x2,0x7
0038 e407 | | Load 0x2,0x7
0039 840b | | Call 0x2,0xb
003a 6804 |h | Jump_Zero 0x3f
003b e408 | | Load 0x2,0x8
003c 0a02 | | Execute_Immediate Plus,0x2
003d c408 | | Store 0x2,0x8
003e 7803 |x | Jump 0x42
003f e408 | | Load 0x2,0x8
0040 0a01 | | Execute_Immediate Plus,0x1
0041 c408 | | Store 0x2,0x8
0042 00cf | | Action Mark_Auxiliary
0043 e408 | | Load 0x2,0x8
0044 e406 | | Load 0x2,0x6
0045 8027 | ' | Call 0x0,0x27
0046 a407 | | Store_Unchecked 0x2,0x7
0047 e407 | | Load 0x2,0x7
0048 840b | | Call 0x2,0xb
0049 6803 |h | Jump_Zero 0x4d
004a 4802 |H | Short_Literal 0x2
004b a40a | | Store_Unchecked 0x2,0xa
004c 7802 |x | Jump 0x4f
004d 4801 |H | Short_Literal 0x1
004e a40a | | Store_Unchecked 0x2,0xa
004f e409 | | Load 0x2,0x9
0050 e40a | | Load 0x2,0xa
0051 0273 | s | Execute Discrete,Plus
0052 c409 | | Store 0x2,0x9
0053 e407 | | Load 0x2,0x7
0054 6047 |`G | Indirect_Literal Discrete,0x9c,{0x00000000, 0x00003e00}
0055 6042 |`B | Indirect_Literal Discrete,0x98,{0x00000000, 0x00003fff}
0056 0262 | b | Execute Discrete,In_Range
0057 e407 | | Load 0x2,0x7
0058 603b |`; | Indirect_Literal Discrete,0x94,{0x00000000, 0x00003600}
0059 6036 |`6 | Indirect_Literal Discrete,0x90,{0x00000000, 0x000037ff}
005a 0262 | b | Execute Discrete,In_Range
005b 0278 | x | Execute Discrete,Or
005c 680c |h | Jump_Zero 0x69
005d e409 | | Load 0x2,0x9
005e 0275 | u | Execute Discrete,Unary_Minus
005f e407 | | Load 0x2,0x7
0060 840c | | Call 0x2,0xc
0061 840e | | Call 0x2,0xe
0062 6801 |h | Jump_Zero 0x64
0063 7817 |x | Jump 0x7b
0064 e028 | ( | Load 0x0,0x28
0065 6803 |h | Jump_Zero 0x69
0066 0092 0149 | I| Action Push_String_Extended,0x149 ; " Passed up on End Loop"
0068 8029 | ) | Call 0x0,0x29
0069 e407 | | Load 0x2,0x7
006a 0fa4 | | Execute_Immediate Equal,0xa4
006b e407 | | Load 0x2,0x7
006c 0fa3 | | Execute_Immediate Equal,0xa3
006d 0278 | x | Execute Discrete,Or
006e 6801 |h | Jump_Zero 0x70
006f 840f | | Call 0x2,0xf
0070 e408 | | Load 0x2,0x8
0071 e40a | | Load 0x2,0xa
0072 00d8 | | Load_Top At_Offset_0
0073 e020 | | Load 0x0,0x20
0074 0260 | ` | Execute Discrete,In_Type
0075 7001 |p | Jump_Nonzero 0x77
0076 0801 | | Execute_Immediate Raise,0x1
0077 0273 | s | Execute Discrete,Plus
0078 c408 | | Store 0x2,0x8
0079 00c9 | | Action Pop_Auxiliary_Loop
007a 7fc8 | | Jump 0x43
007b 00ce | | Action Pop_Auxiliary
007c e408 | | Load 0x2,0x8
007d e406 | | Load 0x2,0x6
007e 802a | * | Call 0x0,0x2a
007f e004 | | Load 0x0,0x4
0080 1819 | | Execute Package,Field_Execute,Field_Number 0x19
0081 4401 |D | Exit_Subprogram With_Result,0x1
0082 TRAP_0008:
0082 0007 | | Action Break_Optional
0083 e00e | | Load 0x0,0xe
0084 180e | | Execute Package,Field_Execute,Field_Number 0xe
0085 4806 |H | Short_Literal 0x6
0086 0092 014a | J| Action Push_String_Extended,0x14a ; "Unable to calculate FOR loops last instruction; decision coverage suppressed for "
0088 e5ff | | Load 0x2,-0x1
0089 802b | + | Call 0x0,0x2b
008a 01cc | | Execute Vector,Catenate
008b e00f | | Load 0x0,0xf
008c 1813 | | Execute Package,Field_Execute,Field_Number 0x13
008d 4800 |H | Short_Literal 0x0
008e 4401 |D | Exit_Subprogram With_Result,0x1
008f 0000 | | .XXX[0x1]
0090 0000 0000 | | .LITERAL {0x00000000, 0x000037ff}
0094 0000 0000 | | .LITERAL {0x00000000, 0x00003600}
0098 0000 0000 | | .LITERAL {0x00000000, 0x00003fff}
009c 0000 0000 | | .LITERAL {0x00000000, 0x00003e00}
00a0 ; --------------------------------------------------------------------------------------
00a0 ; SUBPROGRAM
00a0 ; --------------------------------------------------------------------------------------
00a0 00a3 | | .CONST 0x00a3 ; Address of begin
00a1 0004 | | .CONST 0x0004 ; Address of exception handler
00a2 0001 | | .CONST 0x0001 ; Number of locals
00a3 BODY_00a0:
00a3 INIT_00a0:
00a3 00da | | Load_Top At_Offset_2
00a4 4a99 |J | Short_Literal 0x299
00a5 4a9f |J | Short_Literal 0x29f
00a6 0262 | b | Execute Discrete,In_Range
00a7 700c |p | Jump_Nonzero 0xb4
00a8 00da | | Load_Top At_Offset_2
00a9 48a0 |H | Short_Literal 0xa0
00aa 48a7 |H | Short_Literal 0xa7
00ab 0262 | b | Execute Discrete,In_Range
00ac 7005 |p | Jump_Nonzero 0xb2
00ad 00da | | Load_Top At_Offset_2
00ae 4890 |H | Short_Literal 0x90
00af 4892 |H | Short_Literal 0x92
00b0 0262 | b | Execute Discrete,In_Range
00b1 4401 |D | Exit_Subprogram With_Result,0x1
00b2 4801 |H | Short_Literal 0x1
00b3 4401 |D | Exit_Subprogram With_Result,0x1
00b4 4801 |H | Short_Literal 0x1
00b5 4401 |D | Exit_Subprogram With_Result,0x1
00b6 0000 0000 | | .XXX[0x2]
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 00da | | Load_Top At_Offset_2
00bc 49ff |I | Short_Literal 0x1ff
00bd 0279 | y | Execute Discrete,And
00be 00e3 | | Load_Encached Natural_Cache
00bf 03ec | | Declare_Variable Discrete,With_Value,With_Constraint
00c0 BODY_00b8:
00c0 00d8 | | Load_Top At_Offset_0
00c1 4900 |I | Short_Literal 0x100
00c2 027b | { | Execute Discrete,Greater_Equal
00c3 6804 |h | Jump_Zero 0xc8
00c4 00d8 | | Load_Top At_Offset_0
00c5 4e00 |N | Short_Literal 0x600
00c6 0273 | s | Execute Discrete,Plus
00c7 4401 |D | Exit_Subprogram With_Result,0x1
00c8 00d8 | | Load_Top At_Offset_0
00c9 4401 |D | Exit_Subprogram With_Result,0x1
00ca 0000 0000 | | .BLANK 0000[0x6]
00d0 ; --------------------------------------------------------------------------------------
00d0 ; SUBPROGRAM
00d0 ; --------------------------------------------------------------------------------------
00d0 00db | | .CONST 0x00db ; Address of begin
00d1 0004 | | .CONST 0x0004 ; Address of exception handler
00d2 0003 | | .CONST 0x0003 ; Number of locals
00d3 INIT_00d0:
00d3 00da | | Load_Top At_Offset_2
00d4 840c | | Call 0x2,0xc
00d5 e7fe | | Load 0x3,-0x2
00d6 00d9 | | Load_Top At_Offset_1
00d7 0273 | s | Execute Discrete,Plus
00d8 0a01 | | Execute_Immediate Plus,0x1
00d9 00e2 | | Load_Encached Integer_Cache
00da 03ec | | Declare_Variable Discrete,With_Value,With_Constraint
00db BODY_00d0:
00db 00d8 | | Load_Top At_Offset_0
00dc 601f |` | Indirect_Literal Discrete,0xfc,{0x00000000, 0x00010000}
00dd 027b | { | Execute Discrete,Greater_Equal
00de 6809 |h | Jump_Zero 0xe8
00df 00d8 | | Load_Top At_Offset_0
00e0 6017 |` | Indirect_Literal Discrete,0xf8,{0xffffffff, 0xffff0000}
00e1 0273 | s | Execute Discrete,Plus
00e2 00d8 | | Load_Top At_Offset_0
00e3 00e2 | | Load_Encached Integer_Cache
00e4 0260 | ` | Execute Discrete,In_Type
00e5 7001 |p | Jump_Nonzero 0xe7
00e6 0801 | | Execute_Immediate Raise,0x1
00e7 4402 |D | Exit_Subprogram With_Result,0x2
00e8 00d8 | | Load_Top At_Offset_0
00e9 0d00 | | Execute_Immediate Less,0x0
00ea 6809 |h | Jump_Zero 0xf4
00eb 00d8 | | Load_Top At_Offset_0
00ec 600f |` | Indirect_Literal Discrete,0xfc,{0x00000000, 0x00010000}
00ed 0273 | s | Execute Discrete,Plus
00ee 00d8 | | Load_Top At_Offset_0
00ef 00e2 | | Load_Encached Integer_Cache
00f0 0260 | ` | Execute Discrete,In_Type
00f1 7001 |p | Jump_Nonzero 0xf3
00f2 0801 | | Execute_Immediate Raise,0x1
00f3 4402 |D | Exit_Subprogram With_Result,0x2
00f4 00d8 | | Load_Top At_Offset_0
00f5 4402 |D | Exit_Subprogram With_Result,0x2
00f6 0000 0000 | | .XXX[0x2]
00f8 ffff ffff | | .LITERAL {0xffffffff, 0xffff0000}
00fc 0000 0000 | | .LITERAL {0x00000000, 0x00010000}
0100 ; --------------------------------------------------------------------------------------
0100 ; SUBPROGRAM
0100 ; --------------------------------------------------------------------------------------
0100 0103 | | .CONST 0x0103 ; Address of begin
0101 0004 | | .CONST 0x0004 ; Address of exception handler
0102 0001 | | .CONST 0x0001 ; Number of locals
0103 BODY_0100:
0103 INIT_0100:
0103 e028 | ( | Load 0x0,0x28
0104 680b |h | Jump_Zero 0x110
0105 0092 014b | K| Action Push_String_Extended,0x14b ; "LOOP"
0107 00db | | Load_Top At_Offset_3
0108 00e0 | | Load_Encached Standard_Cache
0109 1818 | | Execute Package,Field_Execute,Field_Number 0x18
010a 01cc | | Execute Vector,Catenate
010b e7fe | | Load 0x3,-0x2
010c 00e0 | | Load_Encached Standard_Cache
010d 1818 | | Execute Package,Field_Execute,Field_Number 0x18
010e 01cc | | Execute Vector,Catenate
010f 8029 | ) | Call 0x0,0x29
0110 00da | | Load_Top At_Offset_2
0111 e7fe | | Load 0x3,-0x2
0112 0afe | | Execute_Immediate Plus,-0x2
0113 00d8 | | Load_Top At_Offset_0
0114 00e2 | | Load_Encached Integer_Cache
0115 0260 | ` | Execute Discrete,In_Type
0116 7001 |p | Jump_Nonzero 0x118
0117 0801 | | Execute_Immediate Raise,0x1
0118 e7fe | | Load 0x3,-0x2
0119 0a02 | | Execute_Immediate Plus,0x2
011a 00d8 | | Load_Top At_Offset_0
011b 00e2 | | Load_Encached Integer_Cache
011c 0260 | ` | Execute Discrete,In_Type
011d 7001 |p | Jump_Nonzero 0x11f
011e 0801 | | Execute_Immediate Raise,0x1
011f 0262 | b | Execute Discrete,In_Range
0120 4402 |D | Exit_Subprogram With_Result,0x2
0121 0000 0000 | | .BLANK 0000[0x7]
0128 ; --------------------------------------------------------------------------------------
0128 ; SUBPROGRAM
0128 ; --------------------------------------------------------------------------------------
0128 013d | = | .CONST 0x013d ; Address of begin
0129 0004 | | .CONST 0x0004 ; Address of exception handler
012a 0003 | | .CONST 0x0003 ; Number of locals
012b INIT_0128:
012b e408 | | Load 0x2,0x8
012c 0a01 | | Execute_Immediate Plus,0x1
012d 00d8 | | Load_Top At_Offset_0
012e e020 | | Load 0x0,0x20
012f 0260 | ` | Execute Discrete,In_Type
0130 7001 |p | Jump_Nonzero 0x132
0131 0801 | | Execute_Immediate Raise,0x1
0132 e406 | | Load 0x2,0x6
0133 8027 | ' | Call 0x0,0x27
0134 e020 | | Load 0x0,0x20
0135 03f1 | | Declare_Variable Discrete,With_Value
0136 e408 | | Load 0x2,0x8
0137 e40a | | Load 0x2,0xa
0138 0273 | s | Execute Discrete,Plus
0139 e409 | | Load 0x2,0x9
013a 0272 | r | Execute Discrete,Minus
013b 00e2 | | Load_Encached Integer_Cache
013c 03ec | | Declare_Variable Discrete,With_Value,With_Constraint
013d BODY_0128:
013d 00d8 | | Load_Top At_Offset_0
013e 00da | | Load_Top At_Offset_2
013f 840e | | Call 0x2,0xe
0140 6802 |h | Jump_Zero 0x143
0141 00cc | | Action Pop_Block
0142 7f38 | 8 | Jump 0x7b
0143 e028 | ( | Load 0x0,0x28
0144 6803 |h | Jump_Zero 0x148
0145 0092 014c | L| Action Push_String_Extended,0x14c ; " Passed up on Extended End Loop"
0147 8029 | ) | Call 0x0,0x29
0148 4501 |E | Exit_Subprogram 0x1
0149 ; --------------------------------------------------------------------------------------
0149 ; STRING TABLE
0149 ; --------------------------------------------------------------------------------------
0149 000a | | .STRTAB 0x000a->0x014e ; " Passed up on End Loop"
014a 001f | | .STRTAB 0x001f->0x0159 ; "Unable to calculate FOR loops last instruction; decision coverage suppressed for "
014b 006e | n | .STRTAB 0x006e->0x0182 ; "LOOP"
014c 0070 | p | .STRTAB 0x0070->0x0184 ; " Passed up on Extended End Loop"
014d 008e | | .STREND 0x008e->0x0194
014e 2020 5061 | Pa| .STRTAB_STRINGS
0194 0000 0000 | | .BLANK 0000[0x4]
0198 ; --------------------------------------------------------------------------------------
0198 ; Debug Table
0198 ; --------------------------------------------------------------------------------------
0198 0004 000a | | .DEBUG4 0x0004,0x000a,0xa363,0x0000,0x0001,0x0000
019e 0000 0000 | | .BLANK 0000[0x62]