|
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 - download
Length: 2048 (0x800) Notes: 00_class, 5800_R1K_CODE, 74_tag, NULL, R1k_Segment, seg_16ccd7
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦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 01c8 | | .CONST 0x01c8 ; 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 0001 | | .CONST 0x0001 ; 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 002f | / | .CONST 0x002f ; Address of begin 0019 00da | | .CONST 0x00da ; Address of exception handler 001a 000a | | .CONST 0x000a ; Number of locals 001b INIT_0018: 001b e001 | | Load 0x0,0x1 001c e002 | | Load 0x0,0x2 001d 00e6 | | Load_Encached Float_Cache 001e e003 | | Load 0x0,0x3 001f 1b51 | Q | Execute Package,Field_Read,Field_Number 0x51 0020 0387 | | Declare_Variable Package 0021 00d8 | | Load_Top At_Offset_0 0022 020f | | Execute Module,Activate 0023 00e6 | | Load_Encached Float_Cache 0024 00e6 | | Load_Encached Float_Cache 0025 00e6 | | Load_Encached Float_Cache 0026 00e6 | | Load_Encached Float_Cache 0027 00e8 | | Load_Encached Character_Cache 0028 e004 | | Load 0x0,0x4 0029 1b0d | | Execute Package,Field_Read,Field_Number 0xd 002a 0322 | " | Declare_Variable Record 002b 00d8 | | Load_Top At_Offset_0 002c 0322 | " | Declare_Variable Record 002d 00d8 | | Load_Top At_Offset_0 002e 0322 | " | Declare_Variable Record 002f BODY_0018: 002f 0092 00dc | | Action Push_String_Extended,0xdc ; "This program demonstrates the RPC facility." 0031 e003 | | Load 0x0,0x3 0032 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 0033 0092 00dd | | Action Push_String_Extended,0xdd ; "The service allows clients to perform complex number arithmatic." 0035 e003 | | Load 0x0,0x3 0036 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 0037 0092 00de | | Action Push_String_Extended,0xde ; "You will be prompted to enter two complex numbers: X and Y," 0039 e003 | | Load 0x0,0x3 003a 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 003b 0092 00df | | Action Push_String_Extended,0xdf ; "and either addition or subtraction as the operation." 003d e003 | | Load 0x0,0x3 003e 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 003f 00ea | | Load_Encached Null_String_Cache 0040 e003 | | Load 0x0,0x3 0041 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 0042 00ea | | Load_Encached Null_String_Cache 0043 e003 | | Load 0x0,0x3 0044 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 0045 00cf | | Action Mark_Auxiliary 0046 0092 00e0 | | Action Push_String_Extended,0xe0 ; "Enter X Real Part ('Q' for Quit)" 0048 e003 | | Load 0x0,0x3 0049 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 004a e402 | | Load 0x2,0x2 004b 1b0f | | Execute Package,Field_Read,Field_Number 0xf 004c 4800 |H | Short_Literal 0x0 004d e402 | | Load 0x2,0x2 004e 1814 | | Execute Package,Field_Execute,Field_Number 0x14 004f c403 | | Store 0x2,0x3 0050 0092 00e1 | | Action Push_String_Extended,0xe1 ; "Enter X Imaginary Part ('Q' for Quit)" 0052 e003 | | Load 0x0,0x3 0053 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 0054 e402 | | Load 0x2,0x2 0055 1b0f | | Execute Package,Field_Read,Field_Number 0xf 0056 4800 |H | Short_Literal 0x0 0057 e402 | | Load 0x2,0x2 0058 1814 | | Execute Package,Field_Execute,Field_Number 0x14 0059 c404 | | Store 0x2,0x4 005a e404 | | Load 0x2,0x4 005b e403 | | Load 0x2,0x3 005c e004 | | Load 0x0,0x4 005d 180e | | Execute Package,Field_Execute,Field_Number 0xe 005e 00db | | Load_Top At_Offset_3 005f 017d | } | Execute Record,Structure_Write 0060 0092 00e2 | | Action Push_String_Extended,0xe2 ; "Enter Y Real Part ('Q' for Quit)" 0062 e003 | | Load 0x0,0x3 0063 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 0064 e402 | | Load 0x2,0x2 0065 1b0f | | Execute Package,Field_Read,Field_Number 0xf 0066 4800 |H | Short_Literal 0x0 0067 e402 | | Load 0x2,0x2 0068 1814 | | Execute Package,Field_Execute,Field_Number 0x14 0069 c405 | | Store 0x2,0x5 006a 0092 00e3 | | Action Push_String_Extended,0xe3 ; "Enter Y Imaginary Part ('Q' for Quit)" 006c e003 | | Load 0x0,0x3 006d 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 006e e402 | | Load 0x2,0x2 006f 1b0f | | Execute Package,Field_Read,Field_Number 0xf 0070 4800 |H | Short_Literal 0x0 0071 e402 | | Load 0x2,0x2 0072 1814 | | Execute Package,Field_Execute,Field_Number 0x14 0073 c406 | | Store 0x2,0x6 0074 e406 | | Load 0x2,0x6 0075 e405 | | Load 0x2,0x5 0076 e004 | | Load 0x0,0x4 0077 180e | | Execute Package,Field_Execute,Field_Number 0xe 0078 00da | | Load_Top At_Offset_2 0079 017d | } | Execute Record,Structure_Write 007a 00ea | | Load_Encached Null_String_Cache 007b e003 | | Load 0x0,0x3 007c 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 007d 0092 00e4 | | Action Push_String_Extended,0xe4 ; "Enter 'A' for Addition, 'S' for Subtract, or 'Q' for Quit" 007f e003 | | Load 0x0,0x3 0080 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 0081 00e8 | | Load_Encached Character_Cache 0082 e003 | | Load 0x0,0x3 0083 1845 | E | Execute Package,Field_Execute,Field_Number 0x45 0084 c407 | | Store 0x2,0x7 0085 e407 | | Load 0x2,0x7 0086 00d8 | | Load_Top At_Offset_0 0087 0d54 | T | Execute_Immediate Less,0x54 0088 700a |p | Jump_Nonzero 0x93 0089 00d8 | | Load_Top At_Offset_0 008a 0c61 | a | Execute_Immediate Greater_Equal,0x61 008b 7002 |p | Jump_Nonzero 0x8e 008c 00d1 | | Pop_Control Pop_Count_1 008d 4501 |E | Exit_Suprogram New_Top_Offset 0x1 008e 0b61 | a | Execute_Immediate Case_Compare,0x61 008f 7008 |p | Jump_Nonzero 0x98 0090 0f73 | s | Execute_Immediate Equal,0x73 0091 7015 |p | Jump_Nonzero 0xa7 0092 4501 |E | Exit_Suprogram New_Top_Offset 0x1 0093 0b41 | A | Execute_Immediate Case_Compare,0x41 0094 7003 |p | Jump_Nonzero 0x98 0095 0f53 | S | Execute_Immediate Equal,0x53 0096 7010 |p | Jump_Nonzero 0xa7 0097 4501 |E | Exit_Suprogram New_Top_Offset 0x1 0098 00d1 | | Pop_Control Pop_Count_1 0099 00d9 | | Load_Top At_Offset_1 009a 00db | | Load_Top At_Offset_3 009b e004 | | Load 0x0,0x4 009c 1811 | | Execute Package,Field_Execute,Field_Number 0x11 009d e408 | | Load 0x2,0x8 009e 017d | } | Execute Record,Structure_Write 009f 00ea | | Load_Encached Null_String_Cache 00a0 e003 | | Load 0x0,0x3 00a1 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 00a2 0092 00e5 | | Action Push_String_Extended,0xe5 ; "X + Y = " 00a4 e003 | | Load 0x0,0x3 00a5 184b | K | Execute Package,Field_Execute,Field_Number 0x4b 00a6 780d |x | Jump 0xb4 00a7 00d9 | | Load_Top At_Offset_1 00a8 00db | | Load_Top At_Offset_3 00a9 e004 | | Load 0x0,0x4 00aa 1812 | | Execute Package,Field_Execute,Field_Number 0x12 00ab e408 | | Load 0x2,0x8 00ac 017d | } | Execute Record,Structure_Write 00ad 00ea | | Load_Encached Null_String_Cache 00ae e003 | | Load 0x0,0x3 00af 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 00b0 0092 00e6 | | Action Push_String_Extended,0xe6 ; "X - Y = " 00b2 e003 | | Load 0x0,0x3 00b3 184b | K | Execute Package,Field_Execute,Field_Number 0x4b 00b4 e402 | | Load 0x2,0x2 00b5 1b12 | | Execute Package,Field_Read,Field_Number 0x12 00b6 e402 | | Load 0x2,0x2 00b7 1b11 | | Execute Package,Field_Read,Field_Number 0x11 00b8 e402 | | Load 0x2,0x2 00b9 1b10 | | Execute Package,Field_Read,Field_Number 0x10 00ba e408 | | Load 0x2,0x8 00bb e004 | | Load 0x0,0x4 00bc 180f | | Execute Package,Field_Execute,Field_Number 0xf 00bd e402 | | Load 0x2,0x2 00be 1816 | | Execute Package,Field_Execute,Field_Number 0x16 00bf 0092 00e7 | | Action Push_String_Extended,0xe7 ; " + " 00c1 e003 | | Load 0x0,0x3 00c2 184b | K | Execute Package,Field_Execute,Field_Number 0x4b 00c3 e402 | | Load 0x2,0x2 00c4 1b12 | | Execute Package,Field_Read,Field_Number 0x12 00c5 e402 | | Load 0x2,0x2 00c6 1b11 | | Execute Package,Field_Read,Field_Number 0x11 00c7 e402 | | Load 0x2,0x2 00c8 1b10 | | Execute Package,Field_Read,Field_Number 0x10 00c9 e408 | | Load 0x2,0x8 00ca e004 | | Load 0x0,0x4 00cb 1810 | | Execute Package,Field_Execute,Field_Number 0x10 00cc e402 | | Load 0x2,0x2 00cd 1816 | | Execute Package,Field_Execute,Field_Number 0x16 00ce 0092 00e8 | | Action Push_String_Extended,0xe8 ; "i" 00d0 e003 | | Load 0x0,0x3 00d1 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 00d2 00ea | | Load_Encached Null_String_Cache 00d3 e003 | | Load 0x0,0x3 00d4 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 00d5 00ea | | Load_Encached Null_String_Cache 00d6 e003 | | Load 0x0,0x3 00d7 184f | O | Execute Package,Field_Execute,Field_Number 0x4f 00d8 00c9 | | Action Pop_Auxiliary_Loop 00d9 7f6c | l | Jump 0x46 00da TRAP_0018: 00da 0007 | | Action Break_Optional 00db 4501 |E | Exit_Suprogram New_Top_Offset 0x1 00dc ; -------------------------------------------------------------------------------------- 00dc ; STRING TABLE 00dc ; -------------------------------------------------------------------------------------- 00dc 001c | | .STRTAB 0x001c->0x00ea ; "This program demonstrates the RPC facility." 00dd 0045 | E | .STRTAB 0x0045->0x00ff ; "The service allows clients to perform complex number arithmatic." 00de 0083 | | .STRTAB 0x0083->0x011f ; "You will be prompted to enter two complex numbers: X and Y," 00df 00bd | | .STRTAB 0x00bd->0x013d ; "and either addition or subtraction as the operation." 00e0 00ef | | .STRTAB 0x00ef->0x0157 ; "Enter X Real Part ('Q' for Quit)" 00e1 010d | | .STRTAB 0x010d->0x0167 ; "Enter X Imaginary Part ('Q' for Quit)" 00e2 0130 | 0 | .STRTAB 0x0130->0x017a ; "Enter Y Real Part ('Q' for Quit)" 00e3 014e | N | .STRTAB 0x014e->0x018a ; "Enter Y Imaginary Part ('Q' for Quit)" 00e4 0171 | q | .STRTAB 0x0171->0x019c ; "Enter 'A' for Addition, 'S' for Subtract, or 'Q' for Quit" 00e5 01a8 | | .STRTAB 0x01a8->0x01b9 ; "X + Y = " 00e6 01ae | | .STRTAB 0x01ae->0x01bd ; "X - Y = " 00e7 01b4 | | .STRTAB 0x01b4->0x01c1 ; " + " 00e8 01b6 | | .STRTAB 0x01b6->0x01c3 ; "i" 00e9 01b5 | | .STREND 0x01b5->0x01c3 00ea 5468 6973 |This| .STRTAB_STRINGS 01c4 0000 0000 | | .BLANK 0000[0x4] 01c8 ; -------------------------------------------------------------------------------------- 01c8 ; Debug Table 01c8 ; -------------------------------------------------------------------------------------- 01c8 0004 0001 | | .DEBUG4 0x0004,0x0001,0x7401,0x0000,0x0001,0x0002 01ce 000b 0000 | | .DBG4T 0x000b,0x0000,0x8000,0x0000 01d2 001b 01d6 | | .DBG4T 0x001b,0x01d6,0x8001,0x4000 01d6 ; -------------------------------------------------------------------------------------- 01d6 ; Debug chain 01d6 ; -------------------------------------------------------------------------------------- 01d6 0007 0022 | "| .DBGLEN 0x0007,0x0022 01d8 001b 0023 | #| .DBGLNO 0x001b,0x0023,0x0024,0x0025,0x0026,0x0027,0x0028,0x002f,0x0033,0x0037,0x003b,0x003f,0x0042,0x0046,0x004a,0x0050,0x0054,0x005a,0x0060,0x0064,0x006a,0x006e,0x0074,0x007a,0x007d,0x0081,0x0085,0x008d,0x0099,0x009f,0x00a2,0x00a7,0x00ad,0x00b0,0x00b4,0x00bf,0x00c3,0x00ce,0x00d2,0x00d5,0x00db 0201 0001 0002 | | .XXX[0x22] 0203 0003 0004 | | 0205 0005 0006 | | 0207 0008 0009 | | 0209 000a 000b | | 020b 000c 000d | | 020d 000e 000f | | 020f 0010 0011 | | 0211 0012 0013 | | 0213 0014 0015 | | 0215 001c 0016 | | 0217 0017 0018 | | 0219 0019 001a | | 021b 001b 001d | | 021d 001e 001f | | 021f 0020 0021 | !| 0221 0022 0023 | " #| 0223 0000 0000 | | .BLANK 0000[0x1dd]