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

⟦808e01cb8⟧

    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 00c8       |    |		.CONST	0x00c8								; 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 000a       |    |		.CONST	0x000a								; Number of locals
000b			INIT_0008:
000b e20e       |    |		Load	0x1,0xe
000c 03d8       |    |		Declare_Variable	Float,Duplicate
000d 03d8       |    |		Declare_Variable	Float,Duplicate
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 03d8       |    |		Declare_Variable	Float,Duplicate
0013 03d8       |    |		Declare_Variable	Float,Duplicate
0014			BODY_0008:
0014 e5fe       |    |		Load	0x2,-0x2
0015 00d8       |    |		Load_Top	At_Offset_0
0016 e20e       |    |		Load	0x1,0xe
0017 0234       | 4  |		Execute	Float,In_Type
0018 7001       |p   |		Jump_Nonzero	0x1a
0019 0801       |    |		Execute_Immediate	Raise,0x1
001a 0049       | I  |		Store_Top	Float,At_Offset_1
001b 00d8       |    |		Load_Top	At_Offset_0
001c 0149       | I  |		Execute	Float,Less_Equal_Zero
001d 6802       |h   |		Jump_Zero	0x20
001e e006       |    |		Load	0x0,0x6
001f 0257       | W  |		Execute	Discrete,Raise
0020 e5ff       |    |		Load	0x2,-0x1
0021 00d8       |    |		Load_Top	At_Offset_0
0022 e20e       |    |		Load	0x1,0xe
0023 0234       | 4  |		Execute	Float,In_Type
0024 7001       |p   |		Jump_Nonzero	0x26
0025 0801       |    |		Execute_Immediate	Raise,0x1
0026 c402       |    |		Store	0x2,0x2
0027 e402       |    |		Load	0x2,0x2
0028 e20e       |    |		Load	0x1,0xe
0029 0232       | 2  |		Execute	Float,Check_In_Type
002a 5899       |X   |		Indirect_Literal	Float,0xc4,1.0
002b e20e       |    |		Load	0x1,0xe
002c 0232       | 2  |		Execute	Float,Check_In_Type
002d e00b       |    |		Load	0x0,0xb
002e e230       | 0  |		Load	0x1,0x30
002f 0096       |    |		Execute	Package,Entry
0030 c403       |    |		Store	0x2,0x3
0031 e402       |    |		Load	0x2,0x2
0032 023e       | >  |		Execute	Float,Absolute_Value
0033 c402       |    |		Store	0x2,0x2
0034 e402       |    |		Load	0x2,0x2
0035 588e       |X   |		Indirect_Literal	Float,0xc4,1.0
0036 0245       | E  |		Execute	Float,Greater
0037 6802       |h   |		Jump_Zero	0x3a
0038 e006       |    |		Load	0x0,0x6
0039 0257       | W  |		Execute	Discrete,Raise
003a e402       |    |		Load	0x2,0x2
003b 5888       |X   |		Indirect_Literal	Float,0xc4,1.0
003c 0247       | G  |		Execute	Float,Equal
003d 6813       |h   |		Jump_Zero	0x51
003e 00d8       |    |		Load_Top	At_Offset_0
003f 5880       |X   |		Indirect_Literal	Float,0xc0,4.0
0040 023a       | :  |		Execute	Float,Divide
0041 004a       | J  |		Store_Top	Float,At_Offset_2
0042 e403       |    |		Load	0x2,0x3
0043 e20e       |    |		Load	0x1,0xe
0044 0232       | 2  |		Execute	Float,Check_In_Type
0045 00da       |    |		Load_Top	At_Offset_2
0046 e20e       |    |		Load	0x1,0xe
0047 0232       | 2  |		Execute	Float,Check_In_Type
0048 e00b       |    |		Load	0x0,0xb
0049 e230       | 0  |		Load	0x1,0x30
004a 0096       |    |		Execute	Package,Entry
004b 00d8       |    |		Load_Top	At_Offset_0
004c e20e       |    |		Load	0x1,0xe
004d 0234       | 4  |		Execute	Float,In_Type
004e 7001       |p   |		Jump_Nonzero	0x50
004f 0801       |    |		Execute_Immediate	Raise,0x1
0050 4402       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x2
0051 e402       |    |		Load	0x2,0x2
0052 c405       |    |		Store	0x2,0x5
0053 e402       |    |		Load	0x2,0x2
0054 5867       |Xg  |		Indirect_Literal	Float,0xbc,0.5
0055 0244       | D  |		Execute	Float,Less
0056 6807       |h   |		Jump_Zero	0x5e
0057 586c       |Xl  |		Indirect_Literal	Float,0xc4,1.0
0058 e402       |    |		Load	0x2,0x2
0059 00d8       |    |		Load_Top	At_Offset_0
005a 023b       | ;  |		Execute	Float,Times
005b 023c       | <  |		Execute	Float,Minus
005c c404       |    |		Store	0x2,0x4
005d 780e       |x   |		Jump	0x6c
005e 585d       |X]  |		Indirect_Literal	Float,0xbc,0.5
005f 585c       |X\  |		Indirect_Literal	Float,0xbc,0.5
0060 e402       |    |		Load	0x2,0x2
0061 023c       | <  |		Execute	Float,Minus
0062 023d       | =  |		Execute	Float,Plus
0063 c406       |    |		Store	0x2,0x6
0064 5853       |XS  |		Indirect_Literal	Float,0xb8,2.0
0065 e406       |    |		Load	0x2,0x6
0066 023b       | ;  |		Execute	Float,Times
0067 e406       |    |		Load	0x2,0x6
0068 00d8       |    |		Load_Top	At_Offset_0
0069 023b       | ;  |		Execute	Float,Times
006a 023c       | <  |		Execute	Float,Minus
006b c404       |    |		Store	0x2,0x4
006c e404       |    |		Load	0x2,0x4
006d e20e       |    |		Load	0x1,0xe
006e 0232       | 2  |		Execute	Float,Check_In_Type
006f 8248       | H  |		Call	0x1,0x48
0070 c404       |    |		Store	0x2,0x4
0071 e404       |    |		Load	0x2,0x4
0072 e405       |    |		Load	0x2,0x5
0073 0243       | C  |		Execute	Float,Greater_Equal
0074 6814       |h   |		Jump_Zero	0x89
0075 e20e       |    |		Load	0x1,0xe
0076 00d8       |    |		Load_Top	At_Offset_0
0077 e404       |    |		Load	0x2,0x4
0078 e20e       |    |		Load	0x1,0xe
0079 0232       | 2  |		Execute	Float,Check_In_Type
007a e405       |    |		Load	0x2,0x5
007b e20e       |    |		Load	0x1,0xe
007c 0232       | 2  |		Execute	Float,Check_In_Type
007d 8255       | U  |		Call	0x1,0x55
007e c407       |    |		Store	0x2,0x7
007f 004b       | K  |		Store_Top	Float,At_Offset_3
0080 00db       |    |		Load_Top	At_Offset_3
0081 00db       |    |		Load_Top	At_Offset_3
0082 023d       | =  |		Execute	Float,Plus
0083 5830       |X0  |		Indirect_Literal	Float,0xb4,0.15915494309189532
0084 023b       | ;  |		Execute	Float,Times
0085 00d9       |    |		Load_Top	At_Offset_1
0086 023b       | ;  |		Execute	Float,Times
0087 004a       | J  |		Store_Top	Float,At_Offset_2
0088 7817       |x   |		Jump	0xa0
0089 e20e       |    |		Load	0x1,0xe
008a 00d8       |    |		Load_Top	At_Offset_0
008b e405       |    |		Load	0x2,0x5
008c e20e       |    |		Load	0x1,0xe
008d 0232       | 2  |		Execute	Float,Check_In_Type
008e e404       |    |		Load	0x2,0x4
008f e20e       |    |		Load	0x1,0xe
0090 0232       | 2  |		Execute	Float,Check_In_Type
0091 8255       | U  |		Call	0x1,0x55
0092 c407       |    |		Store	0x2,0x7
0093 004b       | K  |		Store_Top	Float,At_Offset_3
0094 00d8       |    |		Load_Top	At_Offset_0
0095 581a       |X   |		Indirect_Literal	Float,0xb0,0.25
0096 023b       | ;  |		Execute	Float,Times
0097 e407       |    |		Load	0x2,0x7
0098 e408       |    |		Load	0x2,0x8
0099 023d       | =  |		Execute	Float,Plus
009a 5819       |X   |		Indirect_Literal	Float,0xb4,0.15915494309189532
009b 023b       | ;  |		Execute	Float,Times
009c 00da       |    |		Load_Top	At_Offset_2
009d 023b       | ;  |		Execute	Float,Times
009e 023c       | <  |		Execute	Float,Minus
009f 004a       | J  |		Store_Top	Float,At_Offset_2
00a0 e403       |    |		Load	0x2,0x3
00a1 e20e       |    |		Load	0x1,0xe
00a2 0232       | 2  |		Execute	Float,Check_In_Type
00a3 00da       |    |		Load_Top	At_Offset_2
00a4 e20e       |    |		Load	0x1,0xe
00a5 0232       | 2  |		Execute	Float,Check_In_Type
00a6 e00b       |    |		Load	0x0,0xb
00a7 e230       | 0  |		Load	0x1,0x30
00a8 0096       |    |		Execute	Package,Entry
00a9 00d8       |    |		Load_Top	At_Offset_0
00aa e20e       |    |		Load	0x1,0xe
00ab 0234       | 4  |		Execute	Float,In_Type
00ac 7001       |p   |		Jump_Nonzero	0xae
00ad 0801       |    |		Execute_Immediate	Raise,0x1
00ae 4402       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x2
00af 0000       |    |		.XXX[0x1]
00b0 3fd0 0000  |?   |		.DBL	0.25
00b2 0000 0000  |    |
00b4 3fc4 5f30  |? _0|		.DBL	0.15915494309189532
00b6 6dc9 c882  |m   |
00b8 4000 0000  |@   |		.DBL	2.0
00ba 0000 0000  |    |
00bc 3fe0 0000  |?   |		.DBL	0.5
00be 0000 0000  |    |
00c0 4010 0000  |@   |		.DBL	4.0
00c2 0000 0000  |    |
00c4 3ff0 0000  |?   |		.DBL	1.0
00c6 0000 0000  |    |
00c8 ; --------------------------------------------------------------------------------------
00c8 ; Debug Table
00c8 ; --------------------------------------------------------------------------------------
00c8 0004 0001  |    |		.DEBUG4	0x0004,0x0001,0xf277,0x0000,0x0001,0x0001
00ce 000b 00d2  |    |		.DBG4T	0x000b,0x00d2,0x1002,0x0000
00d2 ; --------------------------------------------------------------------------------------
00d2 ; Debug chain
00d2 ; --------------------------------------------------------------------------------------
00d2 0001 0017  |    |		.DBGLEN	0x0001,0x0017
00d4 000b 0014  |    |		.DBGLNO	0x000b,0x0014,0x001b,0x001e,0x0020,0x0027,0x0031,0x0034,0x0038,0x003a,0x003e,0x0042,0x0051,0x0053,0x0057,0x005e,0x0064,0x006c,0x0071,0x0075,0x0080,0x0089,0x0094,0x00a0
00ec 0000 0000  |    |		.BLANK	0000[0x114]