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

⟦3ac4ea4fb⟧

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

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 5800       |X   |		.CONST	0x5800								; 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 8000       |    |		.CONST	0x8000								; 0, wired, #pages in seg - 1)
0008 ; --------------------------------------------------------------------------------------
0008 ; SUBPROGRAM
0008 ; --------------------------------------------------------------------------------------
0008 0055       | U  |		.CONST	0x0055								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 0010       |    |		.CONST	0x0010								; Number of locals
000b			INIT_0008:
000b e20e       |    |		Load	0x1,0xe
000c 03d8       |    |		Declare_Variable	Float,Duplicate
000d e20e       |    |		Load	0x1,0xe
000e 03d8       |    |		Declare_Variable	Float,Duplicate
000f 03d8       |    |		Declare_Variable	Float,Duplicate
0010 03d8       |    |		Declare_Variable	Float,Duplicate
0011 03d8       |    |		Declare_Variable	Float,Duplicate
0012 e22c       | ,  |		Load	0x1,0x2c
0013 03e9       |    |		Declare_Variable	Discrete,Duplicate
0014 58e3       |X   |		Indirect_Literal	Float,0xf8,1.0
0015 e20e       |    |		Load	0x1,0xe
0016 02bf       |    |		Declare_Variable	Float,With_Value,With_Constraint
0017 58dc       |X   |		Indirect_Literal	Float,0xf4,0.6931471805599453
0018 e20e       |    |		Load	0x1,0xe
0019 02bf       |    |		Declare_Variable	Float,With_Value,With_Constraint
001a 4806       |H   |		Short_Literal	0x6
001b e20e       |    |		Load	0x1,0xe
001c 0122       | "  |		Execute	Any,Make_Root_Type
001d 1c01       |    |		Execute_Immediate	Run_Utility,0x1
001e 0271       | q  |		Execute	Discrete,Times
001f 0237       | 7  |		Execute	Float,Convert_From_Discrete
0020 e20e       |    |		Load	0x1,0xe
0021 0238       | 8  |		Execute	Float,Convert
0022 4ffd       |O   |		Short_Literal	-0x3
0023 4803       |H   |		Short_Literal	0x3
0024 e20e       |    |		Load	0x1,0xe
0025 02a0       |    |		Declare_Subprogram	Null_Subprogram
0026 4801       |H   |		Short_Literal	0x1
0027 035d       | ]  |		Declare_Type	Array,Defined
0028 00d8       |    |		Load_Top	At_Offset_0
0029 0337       | 7  |		Declare_Variable	Array
002a 00d8       |    |		Load_Top	At_Offset_0
002b 0335       | 5  |		Declare_Variable	Array,Duplicate
002c 00cd       |    |		Action	Spare6_Action
002d 58c2       |X   |		Indirect_Literal	Float,0xf0,0.125
002e 4ffd       |O   |		Short_Literal	-0x3
002f 00da       |    |		Load_Top	At_Offset_2
0030 01d6       |    |		Execute	Vector,Field_Write
0031 58ba       |X   |		Indirect_Literal	Float,0xec,0.25
0032 4ffe       |O   |		Short_Literal	-0x2
0033 00da       |    |		Load_Top	At_Offset_2
0034 01d6       |    |		Execute	Vector,Field_Write
0035 58b2       |X   |		Indirect_Literal	Float,0xe8,0.5
0036 4fff       |O   |		Short_Literal	-0x1
0037 00da       |    |		Load_Top	At_Offset_2
0038 01d6       |    |		Execute	Vector,Field_Write
0039 58be       |X   |		Indirect_Literal	Float,0xf8,1.0
003a 4800       |H   |		Short_Literal	0x0
003b 00da       |    |		Load_Top	At_Offset_2
003c 01d6       |    |		Execute	Vector,Field_Write
003d 58a6       |X   |		Indirect_Literal	Float,0xe4,2.0
003e 4801       |H   |		Short_Literal	0x1
003f 00da       |    |		Load_Top	At_Offset_2
0040 01d6       |    |		Execute	Vector,Field_Write
0041 589e       |X   |		Indirect_Literal	Float,0xe0,4.0
0042 4802       |H   |		Short_Literal	0x2
0043 00da       |    |		Load_Top	At_Offset_2
0044 01d6       |    |		Execute	Vector,Field_Write
0045 5896       |X   |		Indirect_Literal	Float,0xdc,8.0
0046 4803       |H   |		Short_Literal	0x3
0047 00da       |    |		Load_Top	At_Offset_2
0048 01d6       |    |		Execute	Vector,Field_Write
0049 00d9       |    |		Load_Top	At_Offset_1
004a 01d4       |    |		Execute	Vector,Structure_Write
004b 5890       |X   |		Indirect_Literal	Float,0xdc,8.0
004c 608b       |`   |		Indirect_Literal	Discrete,0xd8,{0x00000000, 0x00000400}
004d 0237       | 7  |		Execute	Float,Convert_From_Discrete
004e e20e       |    |		Load	0x1,0xe
004f 0238       | 8  |		Execute	Float,Convert
0050 023b       | ;  |		Execute	Float,Times
0051 5882       |X   |		Indirect_Literal	Float,0xd4,0.6931471805999999
0052 023b       | ;  |		Execute	Float,Times
0053 e20e       |    |		Load	0x1,0xe
0054 02bf       |    |		Declare_Variable	Float,With_Value,With_Constraint
0055			BODY_0008:
0055 e5ff       |    |		Load	0x2,-0x1
0056 7004       |p   |		Jump_Nonzero	0x5b
0057 e5ff       |    |		Load	0x2,-0x1
0058 e20e       |    |		Load	0x1,0xe
0059 0232       | 2  |		Execute	Float,Check_In_Type
005a 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
005b e5ff       |    |		Load	0x2,-0x1
005c 00d8       |    |		Load_Top	At_Offset_0
005d e20e       |    |		Load	0x1,0xe
005e 0234       | 4  |		Execute	Float,In_Type
005f 7001       |p   |		Jump_Nonzero	0x61
0060 0801       |    |		Execute_Immediate	Raise,0x1
0061 c404       |    |		Store	0x2,0x4
0062 e404       |    |		Load	0x2,0x4
0063 014c       | L  |		Execute	Float,Greater_Zero
0064 6803       |h   |		Jump_Zero	0x68
0065 5892       |X   |		Indirect_Literal	Float,0xf8,1.0
0066 c403       |    |		Store	0x2,0x3
0067 7802       |x   |		Jump	0x6a
0068 5867       |Xg  |		Indirect_Literal	Float,0xd0,-1.0
0069 c403       |    |		Store	0x2,0x3
006a e404       |    |		Load	0x2,0x4
006b 023e       | >  |		Execute	Float,Absolute_Value
006c c405       |    |		Store	0x2,0x5
006d e405       |    |		Load	0x2,0x5
006e 00d9       |    |		Load_Top	At_Offset_1
006f 0243       | C  |		Execute	Float,Greater_Equal
0070 6801       |h   |		Jump_Zero	0x72
0071 08e0       |    |		Execute_Immediate	Raise,0xe0
0072 00db       |    |		Load_Top	At_Offset_3
0073 5880       |X   |		Indirect_Literal	Float,0xf4,0.6931471805599453
0074 023b       | ;  |		Execute	Float,Times
0075 c408       |    |		Store	0x2,0x8
0076 e405       |    |		Load	0x2,0x5
0077 e408       |    |		Load	0x2,0x8
0078 0243       | C  |		Execute	Float,Greater_Equal
0079 683f       |h?  |		Jump_Zero	0xb9
007a e20e       |    |		Load	0x1,0xe
007b 00d8       |    |		Load_Top	At_Offset_0
007c e22c       | ,  |		Load	0x1,0x2c
007d e405       |    |		Load	0x2,0x5
007e e20e       |    |		Load	0x1,0xe
007f 0232       | 2  |		Execute	Float,Check_In_Type
0080 824e       | N  |		Call	0x1,0x4e
0081 c409       |    |		Store	0x2,0x9
0082 c406       |    |		Store	0x2,0x6
0083 c407       |    |		Store	0x2,0x7
0084 e409       |    |		Load	0x2,0x9
0085 0aff       |    |		Execute_Immediate	Plus,-0x1
0086 a409       |    |		Store_Unchecked	0x2,0x9
0087 e231       | 1  |		Load	0x1,0x31
0088 0f02       |    |		Execute_Immediate	Equal,0x2
0089 701a       |p   |		Jump_Nonzero	0xa4
008a e409       |    |		Load	0x2,0x9
008b 4804       |H   |		Short_Literal	0x4
008c 026f       | o  |		Execute	Discrete,Remainder
008d a40a       |    |		Store_Unchecked	0x2,0xa
008e e409       |    |		Load	0x2,0x9
008f e40a       |    |		Load	0x2,0xa
0090 0272       | r  |		Execute	Discrete,Minus
0091 09fe       |    |		Execute_Immediate	Binary_Scale,-0x2
0092 a409       |    |		Store_Unchecked	0x2,0x9
0093 e406       |    |		Load	0x2,0x6
0094 e40a       |    |		Load	0x2,0xa
0095 00db       |    |		Load_Top	At_Offset_3
0096 01d7       |    |		Execute	Vector,Field_Read
0097 023b       | ;  |		Execute	Float,Times
0098 c406       |    |		Store	0x2,0x6
0099 e407       |    |		Load	0x2,0x7
009a e40a       |    |		Load	0x2,0xa
009b 00db       |    |		Load_Top	At_Offset_3
009c 01d7       |    |		Execute	Vector,Field_Read
009d 023b       | ;  |		Execute	Float,Times
009e c407       |    |		Store	0x2,0x7
009f e406       |    |		Load	0x2,0x6
00a0 e407       |    |		Load	0x2,0x7
00a1 023d       | =  |		Execute	Float,Plus
00a2 c404       |    |		Store	0x2,0x4
00a3 7804       |x   |		Jump	0xa8
00a4 e406       |    |		Load	0x2,0x6
00a5 e407       |    |		Load	0x2,0x7
00a6 023d       | =  |		Execute	Float,Plus
00a7 c404       |    |		Store	0x2,0x4
00a8 e403       |    |		Load	0x2,0x3
00a9 e409       |    |		Load	0x2,0x9
00aa e404       |    |		Load	0x2,0x4
00ab e20e       |    |		Load	0x1,0xe
00ac 0232       | 2  |		Execute	Float,Check_In_Type
00ad e007       |    |		Load	0x0,0x7
00ae e230       | 0  |		Load	0x1,0x30
00af 0096       |    |		Execute	Package,Entry
00b0 023b       | ;  |		Execute	Float,Times
00b1 c402       |    |		Store	0x2,0x2
00b2 e402       |    |		Load	0x2,0x2
00b3 00d8       |    |		Load_Top	At_Offset_0
00b4 e20e       |    |		Load	0x1,0xe
00b5 0234       | 4  |		Execute	Float,In_Type
00b6 7001       |p   |		Jump_Nonzero	0xb8
00b7 0801       |    |		Execute_Immediate	Raise,0x1
00b8 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00b9 e405       |    |		Load	0x2,0x5
00ba e20e       |    |		Load	0x1,0xe
00bb 0232       | 2  |		Execute	Float,Check_In_Type
00bc 824f       | O  |		Call	0x1,0x4f
00bd c402       |    |		Store	0x2,0x2
00be e403       |    |		Load	0x2,0x3
00bf 5828       |X(  |		Indirect_Literal	Float,0xe8,0.5
00c0 023b       | ;  |		Execute	Float,Times
00c1 e402       |    |		Load	0x2,0x2
00c2 00d8       |    |		Load_Top	At_Offset_0
00c3 e402       |    |		Load	0x2,0x2
00c4 5833       |X3  |		Indirect_Literal	Float,0xf8,1.0
00c5 023d       | =  |		Execute	Float,Plus
00c6 023a       | :  |		Execute	Float,Divide
00c7 023d       | =  |		Execute	Float,Plus
00c8 023b       | ;  |		Execute	Float,Times
00c9 00d8       |    |		Load_Top	At_Offset_0
00ca e20e       |    |		Load	0x1,0xe
00cb 0234       | 4  |		Execute	Float,In_Type
00cc 7001       |p   |		Jump_Nonzero	0xce
00cd 0801       |    |		Execute_Immediate	Raise,0x1
00ce 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00cf 0000       |    |		.XXX[0x1]
00d0 bff0 0000  |    |		.DBL	-1.0
00d2 0000 0000  |    |
00d4 3fe6 2e42  |? .B|		.DBL	0.6931471805999999
00d6 feff bb3b  |   ;|
00d8 0000 0000  |    |		.LITERAL	{0x00000000, 0x00000400}
00dc 4020 0000  |@   |		.DBL	8.0
00de 0000 0000  |    |
00e0 4010 0000  |@   |		.DBL	4.0
00e2 0000 0000  |    |
00e4 4000 0000  |@   |		.DBL	2.0
00e6 0000 0000  |    |
00e8 3fe0 0000  |?   |		.DBL	0.5
00ea 0000 0000  |    |
00ec 3fd0 0000  |?   |		.DBL	0.25
00ee 0000 0000  |    |
00f0 3fc0 0000  |?   |		.DBL	0.125
00f2 0000 0000  |    |
00f4 3fe6 2e42  |? .B|		.DBL	0.6931471805599453
00f6 fefa 39ef  |  9 |
00f8 3ff0 0000  |?   |		.DBL	1.0
00fa 0000 0000  |    |
00fc 0000 0000  |    |		.BLANK	0000[0x4]
0100 ; --------------------------------------------------------------------------------------
0100 ; Debug Table
0100 ; --------------------------------------------------------------------------------------
0100 0004 0014  |    |		.DEBUG4	0x0004,0x0014,0x8f3b,0x0000,0x0001,0x0000
0106 4000 0002  |@   |		.XXX[0xa]
0108 2000 0000  |    |
010a 0100 0000  |    |
010c 0a40 0002  | @  |
010e 04d0 9500  |    |
0110 0000 0000  |    |		.BLANK	0000[0x1b]
012b 0005 00e0  |    |		.XXX[0x30]
012d 0380 0492  |    |
012f 4000 1aff  |@   |
0131 5a1d 4040  |Z @@|
0133 0200 02b4  |    |
0135 0000 002e  |   .|
0137 e000 0008  |    |
0139 0000 003c  |   <|
013b 00a0 0000  |    |
013d 0020 0000  |    |
013f 0800 0000  |    |
0141 4400 0000  |D   |
0143 0020 0000  |    |
0145 0148 0000  | H  |
0147 409a 1588  |@   |
0149 0000 409a  |  @ |
014b 1608 0000  |    |
014d 409a 1648  |@  H|
014f 0000 409a  |  @ |
0151 1668 0000  | h  |
0153 409a 1688  |@   |
0155 0000 409a  |  @ |
0157 16a8 0000  |    |
0159 409a 16e0  |@   |
015b 0000 0000  |    |		.BLANK	0000[0xa]
0165 a01c       |    |		.XXX[0x1]
0166 0000 0000  |    |		.BLANK	0000[0xe]
0174 8014 0000  |    |		.XXX[0xb]
0176 0000 0000  |    |
0178 0100 0000  |    |
017a 0880 0000  |    |
017c 0004 0000  |    |
017e 0028       | (  |
017f 0000 0000  |    |		.BLANK	0000[0x2e]
01ad 1002 8000  |    |		.XXX[0xb]
01af 0000 0000  |    |
01b1 0020 0000  |    |
01b3 0110 0000  |    |
01b5 0000 8000  |    |
01b7 0005       |    |
01b8 0000 0000  |    |		.BLANK	0000[0x48]