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

⟦e86220b57⟧

    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 00d8       |    |		.CONST	0x00d8								; 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 0014       |    |		.CONST	0x0014								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 0027       | '  |		.CONST	0x0027								; Number of locals
000b			INIT_0008:
000b 029a 005b  |   [|		Declare_Subprogram	INIT_0058,For_Outer_Call,Visible,Unelaborated
000d 00bf       |    |		Action	Accept_Activation
000e 029d 008b  |    |		Declare_Subprogram	INIT_0088,For_Outer_Call
0010 029d 009b  |    |		Declare_Subprogram	INIT_0098,For_Outer_Call
0012 1d25       | %  |		Execute_Immediate	Reference_Lex_1,0x25
0013 00c7       |    |		Action	Elaborate_Subprogram
0014			BODY_0008:
0014 e211       |    |		Load	0x1,0x11
0015 e210       |    |		Load	0x1,0x10
0016 027e       | ~  |		Execute	Discrete,Not_Equal
0017 6809       |h   |		Jump_Zero	0x21
0018 e213       |    |		Load	0x1,0x13
0019 e212       |    |		Load	0x1,0x12
001a e211       |    |		Load	0x1,0x11
001b 00d8       |    |		Load_Top	At_Offset_0
001c e20f       |    |		Load	0x1,0xf
001d 0260       | `  |		Execute	Discrete,In_Type
001e 7001       |p   |		Jump_Nonzero	0x20
001f 0801       |    |		Execute_Immediate	Raise,0x1
0020 8227       | '  |		Call	0x1,0x27
0021 e215       |    |		Load	0x1,0x15
0022 e210       |    |		Load	0x1,0x10
0023 027e       | ~  |		Execute	Discrete,Not_Equal
0024 6809       |h   |		Jump_Zero	0x2e
0025 e217       |    |		Load	0x1,0x17
0026 e216       |    |		Load	0x1,0x16
0027 e215       |    |		Load	0x1,0x15
0028 00d8       |    |		Load_Top	At_Offset_0
0029 e20f       |    |		Load	0x1,0xf
002a 0260       | `  |		Execute	Discrete,In_Type
002b 7001       |p   |		Jump_Nonzero	0x2d
002c 0801       |    |		Execute_Immediate	Raise,0x1
002d 8227       | '  |		Call	0x1,0x27
002e e219       |    |		Load	0x1,0x19
002f e210       |    |		Load	0x1,0x10
0030 027e       | ~  |		Execute	Discrete,Not_Equal
0031 6809       |h   |		Jump_Zero	0x3b
0032 e21b       |    |		Load	0x1,0x1b
0033 e21a       |    |		Load	0x1,0x1a
0034 e219       |    |		Load	0x1,0x19
0035 00d8       |    |		Load_Top	At_Offset_0
0036 e20f       |    |		Load	0x1,0xf
0037 0260       | `  |		Execute	Discrete,In_Type
0038 7001       |p   |		Jump_Nonzero	0x3a
0039 0801       |    |		Execute_Immediate	Raise,0x1
003a 8227       | '  |		Call	0x1,0x27
003b e21d       |    |		Load	0x1,0x1d
003c e210       |    |		Load	0x1,0x10
003d 027e       | ~  |		Execute	Discrete,Not_Equal
003e 6809       |h   |		Jump_Zero	0x48
003f e21f       |    |		Load	0x1,0x1f
0040 e21e       |    |		Load	0x1,0x1e
0041 e21d       |    |		Load	0x1,0x1d
0042 00d8       |    |		Load_Top	At_Offset_0
0043 e20f       |    |		Load	0x1,0xf
0044 0260       | `  |		Execute	Discrete,In_Type
0045 7001       |p   |		Jump_Nonzero	0x47
0046 0801       |    |		Execute_Immediate	Raise,0x1
0047 8227       | '  |		Call	0x1,0x27
0048 e221       | !  |		Load	0x1,0x21
0049 e210       |    |		Load	0x1,0x10
004a 027e       | ~  |		Execute	Discrete,Not_Equal
004b 6809       |h   |		Jump_Zero	0x55
004c e223       | #  |		Load	0x1,0x23
004d e222       | "  |		Load	0x1,0x22
004e e221       | !  |		Load	0x1,0x21
004f 00d8       |    |		Load_Top	At_Offset_0
0050 e20f       |    |		Load	0x1,0xf
0051 0260       | `  |		Execute	Discrete,In_Type
0052 7001       |p   |		Jump_Nonzero	0x54
0053 0801       |    |		Execute_Immediate	Raise,0x1
0054 8227       | '  |		Call	0x1,0x27
0055 00bc       |    |		Action	Signal_Activated
0056 00bb       |    |		Action	Signal_Completion
0057 0000       |    |		.XXX[0x1]
0058 ; --------------------------------------------------------------------------------------
0058 ; SUBPROGRAM
0058 ; --------------------------------------------------------------------------------------
0058 0065       | e  |		.CONST	0x0065								; Address of begin
0059 0004       |    |		.CONST	0x0004								; Address of exception handler
005a 0003       |    |		.CONST	0x0003								; Number of locals
005b			INIT_0058:
005b 00da       |    |		Load_Top	At_Offset_2
005c e003       |    |		Load	0x0,0x3
005d 01d5       |    |		Execute	Vector,Field_Reference
005e 2402       |$   |		Execute	Variant_Record,Field_Reference,Fixed,Direct,Field_Number 0x2
005f 0007       |    |		Action	Break_Optional
0060 00db       |    |		Load_Top	At_Offset_3
0061 e003       |    |		Load	0x0,0x3
0062 01d5       |    |		Execute	Vector,Field_Reference
0063 2403       |$   |		Execute	Variant_Record,Field_Reference,Fixed,Direct,Field_Number 0x3
0064 0007       |    |		Action	Break_Optional
0065			BODY_0058:
0065 00d9       |    |		Load_Top	At_Offset_1
0066 e20e       |    |		Load	0x1,0xe
0067 027f       |    |		Execute	Discrete,Equal
0068 681d       |h   |		Jump_Zero	0x86
0069 00d8       |    |		Load_Top	At_Offset_0
006a 00d8       |    |		Load_Top	At_Offset_0
006b 0c06       |    |		Execute_Immediate	Greater_Equal,0x6
006c 700a       |p   |		Jump_Nonzero	0x77
006d 4605       |F   |		Jump_Case	0x6
006e 7809       |x   |		Jump	0x78								; case 0x0
006f 780a       |x   |		Jump	0x7a								; case 0x1
0070 780c       |x   |		Jump	0x7d								; case 0x2
0071 780e       |x   |		Jump	0x80								; case 0x3
0072 7810       |x   |		Jump	0x83								; case 0x4
0073 7800       |x   |		Jump	0x74								; case 0x5
0074 e5fe       |    |		Load	0x2,-0x2
0075 8224       | $  |		Call	0x1,0x24
0076 4503       |E   |		Exit_Suprogram	New_Top_Offset 0x3
0077 00d1       |    |		Pop_Control	Pop_Count_1
0078 0008       |    |		Action	Idle
0079 4503       |E   |		Exit_Suprogram	New_Top_Offset 0x3
007a e5fe       |    |		Load	0x2,-0x2
007b 8214       |    |		Call	0x1,0x14
007c 4503       |E   |		Exit_Suprogram	New_Top_Offset 0x3
007d e5fe       |    |		Load	0x2,-0x2
007e 8218       |    |		Call	0x1,0x18
007f 4503       |E   |		Exit_Suprogram	New_Top_Offset 0x3
0080 e5fe       |    |		Load	0x2,-0x2
0081 821c       |    |		Call	0x1,0x1c
0082 4503       |E   |		Exit_Suprogram	New_Top_Offset 0x3
0083 e5fe       |    |		Load	0x2,-0x2
0084 8220       |    |		Call	0x1,0x20
0085 4503       |E   |		Exit_Suprogram	New_Top_Offset 0x3
0086 e004       |    |		Load	0x0,0x4
0087 0257       | W  |		Execute	Discrete,Raise
0088 ; --------------------------------------------------------------------------------------
0088 ; SUBPROGRAM
0088 ; --------------------------------------------------------------------------------------
0088 008b       |    |		.CONST	0x008b								; Address of begin
0089 0004       |    |		.CONST	0x0004								; Address of exception handler
008a 0001       |    |		.CONST	0x0001								; Number of locals
008b			BODY_0088:
008b			INIT_0088:
008b 00da       |    |		Load_Top	At_Offset_2
008c e20f       |    |		Load	0x1,0xf
008d 1c04       |    |		Execute_Immediate	Run_Utility,0x4
008e 0a01       |    |		Execute_Immediate	Plus,0x1
008f 00d8       |    |		Load_Top	At_Offset_0
0090 00e3       |    |		Load_Encached	Natural_Cache
0091 0260       | `  |		Execute	Discrete,In_Type
0092 7001       |p   |		Jump_Nonzero	0x94
0093 0801       |    |		Execute_Immediate	Raise,0x1
0094 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
0095 0000 0000  |    |		.XXX[0x3]
0097 0000       |    |
0098 ; --------------------------------------------------------------------------------------
0098 ; SUBPROGRAM
0098 ; --------------------------------------------------------------------------------------
0098 00a0       |    |		.CONST	0x00a0								; Address of begin
0099 0004       |    |		.CONST	0x0004								; Address of exception handler
009a 0002       |    |		.CONST	0x0002								; Number of locals
009b			INIT_0098:
009b e5fd       |    |		Load	0x2,-0x3
009c 01da       |    |		Execute	Vector,Bounds
009d e005       |    |		Load	0x0,0x5
009e 035b       | [  |		Declare_Type	Array,Constrained
009f 0337       | 7  |		Declare_Variable	Array
00a0			BODY_0098:
00a0 e006       |    |		Load	0x0,0x6
00a1 e007       |    |		Load	0x0,0x7
00a2 027f       |    |		Execute	Discrete,Equal
00a3 6802       |h   |		Jump_Zero	0xa6
00a4 e008       |    |		Load	0x0,0x8
00a5 0257       | W  |		Execute	Discrete,Raise
00a6 00d8       |    |		Load_Top	At_Offset_0
00a7 e5fd       |    |		Load	0x2,-0x3
00a8 8009       |    |		Call	0x0,0x9
00a9 00d1       |    |		Pop_Control	Pop_Count_1
00aa e006       |    |		Load	0x0,0x6
00ab 0a01       |    |		Execute_Immediate	Plus,0x1
00ac c006       |    |		Store	0x0,0x6
00ad e5fd       |    |		Load	0x2,-0x3
00ae 01db       |    |		Execute	Vector,Length
00af e00a       |    |		Load	0x0,0xa
00b0 1c08       |    |		Execute_Immediate	Run_Utility,0x8
00b1 e20e       |    |		Load	0x1,0xe
00b2 00d9       |    |		Load_Top	At_Offset_1
00b3 2802       |(   |		Execute	Variant_Record,Field_Write,Fixed,Direct,Field_Number 0x2
00b4 e5ff       |    |		Load	0x2,-0x1
00b5 00d8       |    |		Load_Top	At_Offset_0
00b6 e20f       |    |		Load	0x1,0xf
00b7 0260       | `  |		Execute	Discrete,In_Type
00b8 7001       |p   |		Jump_Nonzero	0xba
00b9 0801       |    |		Execute_Immediate	Raise,0x1
00ba 8226       | &  |		Call	0x1,0x26
00bb 00d9       |    |		Load_Top	At_Offset_1
00bc 2803       |(   |		Execute	Variant_Record,Field_Write,Fixed,Direct,Field_Number 0x3
00bd e5fe       |    |		Load	0x2,-0x2
00be 800b       |    |		Call	0x0,0xb
00bf 00d9       |    |		Load_Top	At_Offset_1
00c0 2804       |(   |		Execute	Variant_Record,Field_Write,Fixed,Direct,Field_Number 0x4
00c1 00d9       |    |		Load_Top	At_Offset_1
00c2 00d9       |    |		Load_Top	At_Offset_1
00c3 00d8       |    |		Load_Top	At_Offset_0
00c4 2505       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x5
00c5 00da       |    |		Load_Top	At_Offset_2
00c6 01da       |    |		Execute	Vector,Bounds
00c7 00da       |    |		Load_Top	At_Offset_2
00c8 01da       |    |		Execute	Vector,Bounds
00c9 00da       |    |		Load_Top	At_Offset_2
00ca 027f       |    |		Execute	Discrete,Equal
00cb 7001       |p   |		Jump_Nonzero	0xcd
00cc 08e0       |    |		Execute_Immediate	Raise,0xe0
00cd 00cd       |    |		Action	Spare6_Action
00ce 027f       |    |		Execute	Discrete,Equal
00cf 7001       |p   |		Jump_Nonzero	0xd1
00d0 08e0       |    |		Execute_Immediate	Raise,0xe0
00d1 00d2       |    |		Pop_Control	Pop_Count_2
00d2 00d9       |    |		Load_Top	At_Offset_1
00d3 2905       |)   |		Execute	Variant_Record,Field_Write,Fixed,Indirect,Field_Number 0x5
00d4 e006       |    |		Load	0x0,0x6
00d5 e003       |    |		Load	0x0,0x3
00d6 01d6       |    |		Execute	Vector,Field_Write
00d7 4504       |E   |		Exit_Suprogram	New_Top_Offset 0x4
00d8 ; --------------------------------------------------------------------------------------
00d8 ; Debug Table
00d8 ; --------------------------------------------------------------------------------------
00d8 0004 0004  |    |		.DEBUG4	0x0004,0x0004,0x9ace,0x0000,0x0001,0x0005
00de 000b 00f2  |    |		.DBG4T	0x000b,0x00f2,0x4000,0x0000
00e2 000e 00f5  |    |		.DBG4T	0x000e,0x00f5,0x4000,0x0000
00e6 005b 0104  | [  |		.DBG4T	0x005b,0x0104,0x1001,0x4000
00ea 008b 011a  |    |		.DBG4T	0x008b,0x011a,0x1002,0x0000
00ee 009b 011d  |    |		.DBG4T	0x009b,0x011d,0x1001,0x0000
00f2 ; --------------------------------------------------------------------------------------
00f2 ; Debug chain
00f2 ; --------------------------------------------------------------------------------------
00f2 0001 0000  |    |		.DBGLEN	0x0001,0x0000
00f4 000b       |    |		.DBGLNO	0x000b
00f5 ; --------------------------------------------------------------------------------------
00f5 ; Debug chain
00f5 ; --------------------------------------------------------------------------------------
00f5 0003 000a  |    |		.DBGLEN	0x0003,0x000a
00f7 000e 0010  |    |		.DBGLNO	0x000e,0x0010,0x0012,0x0014,0x0018,0x0021,0x0025,0x002e,0x0032,0x003b,0x003f,0x0048,0x004c
0104 ; --------------------------------------------------------------------------------------
0104 ; Debug chain
0104 ; --------------------------------------------------------------------------------------
0104 0002 0009  |    |		.DBGLEN	0x0002,0x0009
0106 005b 0060  | [ `|		.DBGLNO	0x005b,0x0060,0x0065,0x0069,0x0074,0x0078,0x007a,0x007d,0x0080,0x0083,0x0086
0111 0001 0002  |    |		.XXX[0x9]
0113 0007 0008  |    |
0115 0003 0004  |    |
0117 0005 0006  |    |
0119 0009       |    |
011a ; --------------------------------------------------------------------------------------
011a ; Debug chain
011a ; --------------------------------------------------------------------------------------
011a 0000 0001  |    |		.DBGLEN	0x0000,0x0001
011c 008b       |    |		.DBGLNO	0x008b
011d ; --------------------------------------------------------------------------------------
011d ; Debug chain
011d ; --------------------------------------------------------------------------------------
011d 0001 0005  |    |		.DBGLEN	0x0001,0x0005
011f 009b 00a0  |    |		.DBGLNO	0x009b,0x00a0,0x00a4,0x00a6,0x00aa,0x00ad
0125 0000 0000  |    |		.BLANK	0000[0xdb]