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

⟦b9f29cdd8⟧

    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 0090       |    |		.CONST	0x0090								; 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 0022       | "  |		.CONST	0x0022								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 0009       |    |		.CONST	0x0009								; 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 5878       |Xx  |		Indirect_Literal	Float,0x88,0.6931471805599453
0010 e20e       |    |		Load	0x1,0xe
0011 02bf       |    |		Declare_Variable	Float,With_Value,With_Constraint
0012 4806       |H   |		Short_Literal	0x6
0013 e20e       |    |		Load	0x1,0xe
0014 0122       | "  |		Execute	Any,Make_Root_Type
0015 1c01       |    |		Execute_Immediate	Run_Utility,0x1
0016 0271       | q  |		Execute	Discrete,Times
0017 0237       | 7  |		Execute	Float,Convert_From_Discrete
0018 e20e       |    |		Load	0x1,0xe
0019 0238       | 8  |		Execute	Float,Convert
001a 5869       |Xi  |		Indirect_Literal	Float,0x84,1.3862943611198906
001b e20e       |    |		Load	0x1,0xe
001c 02bf       |    |		Declare_Variable	Float,With_Value,With_Constraint
001d 00d9       |    |		Load_Top	At_Offset_1
001e 5869       |Xi  |		Indirect_Literal	Float,0x88,0.6931471805599453
001f 023b       | ;  |		Execute	Float,Times
0020 e20e       |    |		Load	0x1,0xe
0021 02bf       |    |		Declare_Variable	Float,With_Value,With_Constraint
0022			BODY_0008:
0022 e5ff       |    |		Load	0x2,-0x1
0023 7004       |p   |		Jump_Nonzero	0x28
0024 e5ff       |    |		Load	0x2,-0x1
0025 e20e       |    |		Load	0x1,0xe
0026 0232       | 2  |		Execute	Float,Check_In_Type
0027 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
0028 e5ff       |    |		Load	0x2,-0x1
0029 00d8       |    |		Load_Top	At_Offset_0
002a e20e       |    |		Load	0x1,0xe
002b 0234       | 4  |		Execute	Float,In_Type
002c 7001       |p   |		Jump_Nonzero	0x2e
002d 0801       |    |		Execute_Immediate	Raise,0x1
002e c404       |    |		Store	0x2,0x4
002f e404       |    |		Load	0x2,0x4
0030 023e       | >  |		Execute	Float,Absolute_Value
0031 c405       |    |		Store	0x2,0x5
0032 e404       |    |		Load	0x2,0x4
0033 014a       | J  |		Execute	Float,Greater_Equal_Zero
0034 6803       |h   |		Jump_Zero	0x38
0035 584a       |XJ  |		Indirect_Literal	Float,0x80,1.0
0036 c403       |    |		Store	0x2,0x3
0037 7802       |x   |		Jump	0x3a
0038 5843       |XC  |		Indirect_Literal	Float,0x7c,-1.0
0039 c403       |    |		Store	0x2,0x3
003a e405       |    |		Load	0x2,0x5
003b 5848       |XH  |		Indirect_Literal	Float,0x84,1.3862943611198906
003c 0242       | B  |		Execute	Float,Less_Equal
003d 6816       |h   |		Jump_Zero	0x54
003e 5839       |X9  |		Indirect_Literal	Float,0x78,2.0
003f e405       |    |		Load	0x2,0x5
0040 023b       | ;  |		Execute	Float,Times
0041 e20e       |    |		Load	0x1,0xe
0042 0232       | 2  |		Execute	Float,Check_In_Type
0043 824f       | O  |		Call	0x1,0x4f
0044 c402       |    |		Store	0x2,0x2
0045 e403       |    |		Load	0x2,0x3
0046 e402       |    |		Load	0x2,0x2
0047 00d8       |    |		Load_Top	At_Offset_0
0048 582f       |X/  |		Indirect_Literal	Float,0x78,2.0
0049 023d       | =  |		Execute	Float,Plus
004a 023a       | :  |		Execute	Float,Divide
004b 023b       | ;  |		Execute	Float,Times
004c c402       |    |		Store	0x2,0x2
004d e402       |    |		Load	0x2,0x2
004e 00d8       |    |		Load_Top	At_Offset_0
004f e20e       |    |		Load	0x1,0xe
0050 0234       | 4  |		Execute	Float,In_Type
0051 7001       |p   |		Jump_Nonzero	0x53
0052 0801       |    |		Execute_Immediate	Raise,0x1
0053 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
0054 e405       |    |		Load	0x2,0x5
0055 00d9       |    |		Load_Top	At_Offset_1
0056 0245       | E  |		Execute	Float,Greater
0057 6807       |h   |		Jump_Zero	0x5f
0058 e403       |    |		Load	0x2,0x3
0059 00d8       |    |		Load_Top	At_Offset_0
005a e20e       |    |		Load	0x1,0xe
005b 0234       | 4  |		Execute	Float,In_Type
005c 7001       |p   |		Jump_Nonzero	0x5e
005d 0801       |    |		Execute_Immediate	Raise,0x1
005e 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
005f 5818       |X   |		Indirect_Literal	Float,0x78,2.0
0060 e405       |    |		Load	0x2,0x5
0061 023b       | ;  |		Execute	Float,Times
0062 e20e       |    |		Load	0x1,0xe
0063 0232       | 2  |		Execute	Float,Check_In_Type
0064 824f       | O  |		Call	0x1,0x4f
0065 c402       |    |		Store	0x2,0x2
0066 e403       |    |		Load	0x2,0x3
0067 5818       |X   |		Indirect_Literal	Float,0x80,1.0
0068 580f       |X   |		Indirect_Literal	Float,0x78,2.0
0069 e402       |    |		Load	0x2,0x2
006a 580d       |X   |		Indirect_Literal	Float,0x78,2.0
006b 023d       | =  |		Execute	Float,Plus
006c 023a       | :  |		Execute	Float,Divide
006d 023c       | <  |		Execute	Float,Minus
006e 023b       | ;  |		Execute	Float,Times
006f c402       |    |		Store	0x2,0x2
0070 e402       |    |		Load	0x2,0x2
0071 00d8       |    |		Load_Top	At_Offset_0
0072 e20e       |    |		Load	0x1,0xe
0073 0234       | 4  |		Execute	Float,In_Type
0074 7001       |p   |		Jump_Nonzero	0x76
0075 0801       |    |		Execute_Immediate	Raise,0x1
0076 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
0077 0000       |    |		.XXX[0x1]
0078 4000 0000  |@   |		.DBL	2.0
007a 0000 0000  |    |
007c bff0 0000  |    |		.DBL	-1.0
007e 0000 0000  |    |
0080 3ff0 0000  |?   |		.DBL	1.0
0082 0000 0000  |    |
0084 3ff6 2e42  |? .B|		.DBL	1.3862943611198906
0086 fefa 39ef  |  9 |
0088 3fe6 2e42  |? .B|		.DBL	0.6931471805599453
008a fefa 39ef  |  9 |
008c 0000 0000  |    |		.BLANK	0000[0x4]
0090 ; --------------------------------------------------------------------------------------
0090 ; Debug Table
0090 ; --------------------------------------------------------------------------------------
0090 0004 0001  |    |		.DEBUG4	0x0004,0x0001,0xf264,0x0000,0x0001,0x0001
0096 000b 009a  |    |		.DBG4T	0x000b,0x009a,0x1002,0x0000
009a ; --------------------------------------------------------------------------------------
009a ; Debug chain
009a ; --------------------------------------------------------------------------------------
009a 0006 0010  |    |		.DBGLEN	0x0006,0x0010
009c 000b 000d  |    |		.DBGLNO	0x000b,0x000d,0x000f,0x0012,0x001a,0x001d,0x0022,0x0024,0x0028,0x002f,0x0032,0x0035,0x0038,0x003a,0x003e,0x0045,0x004d,0x0054,0x0058,0x005f,0x0066,0x0070
00b2 0000 0000  |    |		.BLANK	0000[0x14e]