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

⟦7075218db⟧

    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 001a       |    |		.CONST	0x001a								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 000e       |    |		.CONST	0x000e								; 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 e20e       |    |		Load	0x1,0xe
0014 03d8       |    |		Declare_Variable	Float,Duplicate
0015 58aa       |X   |		Indirect_Literal	Float,0xc0,0.0
0016 e20e       |    |		Load	0x1,0xe
0017 02bf       |    |		Declare_Variable	Float,With_Value,With_Constraint
0018 e22f       | /  |		Load	0x1,0x2f
0019 03e9       |    |		Declare_Variable	Discrete,Duplicate
001a			BODY_0008:
001a e5fe       |    |		Load	0x2,-0x2
001b 00d8       |    |		Load_Top	At_Offset_0
001c e20e       |    |		Load	0x1,0xe
001d 0234       | 4  |		Execute	Float,In_Type
001e 7001       |p   |		Jump_Nonzero	0x20
001f 0801       |    |		Execute_Immediate	Raise,0x1
0020 c406       |    |		Store	0x2,0x6
0021 e406       |    |		Load	0x2,0x6
0022 0149       | I  |		Execute	Float,Less_Equal_Zero
0023 6802       |h   |		Jump_Zero	0x26
0024 e006       |    |		Load	0x0,0x6
0025 0257       | W  |		Execute	Discrete,Raise
0026 e5ff       |    |		Load	0x2,-0x1
0027 7001       |p   |		Jump_Nonzero	0x29
0028 08e0       |    |		Execute_Immediate	Raise,0xe0
0029 e5ff       |    |		Load	0x2,-0x1
002a 00d8       |    |		Load_Top	At_Offset_0
002b e20e       |    |		Load	0x1,0xe
002c 0234       | 4  |		Execute	Float,In_Type
002d 7001       |p   |		Jump_Nonzero	0x2f
002e 0801       |    |		Execute_Immediate	Raise,0x1
002f c403       |    |		Store	0x2,0x3
0030 e403       |    |		Load	0x2,0x3
0031 014c       | L  |		Execute	Float,Greater_Zero
0032 6803       |h   |		Jump_Zero	0x36
0033 5888       |X   |		Indirect_Literal	Float,0xbc,1.0
0034 c404       |    |		Store	0x2,0x4
0035 7805       |x   |		Jump	0x3b
0036 5881       |X   |		Indirect_Literal	Float,0xb8,-1.0
0037 c404       |    |		Store	0x2,0x4
0038 e403       |    |		Load	0x2,0x3
0039 023e       | >  |		Execute	Float,Absolute_Value
003a c403       |    |		Store	0x2,0x3
003b e406       |    |		Load	0x2,0x6
003c e20e       |    |		Load	0x1,0xe
003d 0232       | 2  |		Execute	Float,Check_In_Type
003e e403       |    |		Load	0x2,0x3
003f e20e       |    |		Load	0x1,0xe
0040 0232       | 2  |		Execute	Float,Check_In_Type
0041 e005       |    |		Load	0x0,0x5
0042 e230       | 0  |		Load	0x1,0x30
0043 0096       |    |		Execute	Package,Entry
0044 c402       |    |		Store	0x2,0x2
0045 586e       |Xn  |		Indirect_Literal	Float,0xb4,4.0
0046 e402       |    |		Load	0x2,0x2
0047 023b       | ;  |		Execute	Float,Times
0048 e406       |    |		Load	0x2,0x6
0049 023a       | :  |		Execute	Float,Divide
004a e20e       |    |		Load	0x1,0xe
004b 0232       | 2  |		Execute	Float,Check_In_Type
004c e007       |    |		Load	0x0,0x7
004d e230       | 0  |		Load	0x1,0x30
004e 0096       |    |		Execute	Package,Entry
004f c409       |    |		Store	0x2,0x9
0050 e409       |    |		Load	0x2,0x9
0051 0235       | 5  |		Execute	Float,Round_To_Discrete
0052 00e2       |    |		Load_Encached	Integer_Cache
0053 025e       | ^  |		Execute	Discrete,Convert
0054 4803       |H   |		Short_Literal	0x3
0055 0279       | y  |		Execute	Discrete,And
0056 00d8       |    |		Load_Top	At_Offset_0
0057 e22f       | /  |		Load	0x1,0x2f
0058 0260       | `  |		Execute	Discrete,In_Type
0059 7001       |p   |		Jump_Nonzero	0x5b
005a 0801       |    |		Execute_Immediate	Raise,0x1
005b 0052       | R  |		Store_Top_Unchecked	Discrete,At_Offset_2
005c 00d9       |    |		Load_Top	At_Offset_1
005d 4801       |H   |		Short_Literal	0x1
005e 0279       | y  |		Execute	Discrete,And
005f 0059       | Y  |		Store_Top	Discrete,At_Offset_1
0060 4804       |H   |		Short_Literal	0x4
0061 e406       |    |		Load	0x2,0x6
0062 e20e       |    |		Load	0x1,0xe
0063 0232       | 2  |		Execute	Float,Check_In_Type
0064 e004       |    |		Load	0x0,0x4
0065 e230       | 0  |		Load	0x1,0x30
0066 0096       |    |		Execute	Package,Entry
0067 c407       |    |		Store	0x2,0x7
0068 e406       |    |		Load	0x2,0x6
0069 e407       |    |		Load	0x2,0x7
006a 023c       | <  |		Execute	Float,Minus
006b c408       |    |		Store	0x2,0x8
006c e409       |    |		Load	0x2,0x9
006d 5842       |XB  |		Indirect_Literal	Float,0xb0,0.25
006e 023b       | ;  |		Execute	Float,Times
006f c409       |    |		Store	0x2,0x9
0070 e402       |    |		Load	0x2,0x2
0071 e409       |    |		Load	0x2,0x9
0072 e407       |    |		Load	0x2,0x7
0073 023b       | ;  |		Execute	Float,Times
0074 023c       | <  |		Execute	Float,Minus
0075 e409       |    |		Load	0x2,0x9
0076 e408       |    |		Load	0x2,0x8
0077 023b       | ;  |		Execute	Float,Times
0078 023c       | <  |		Execute	Float,Minus
0079 c402       |    |		Store	0x2,0x2
007a e402       |    |		Load	0x2,0x2
007b e406       |    |		Load	0x2,0x6
007c 023a       | :  |		Execute	Float,Divide
007d 582e       |X.  |		Indirect_Literal	Float,0xac,6.283185307179586
007e 023b       | ;  |		Execute	Float,Times
007f c402       |    |		Store	0x2,0x2
0080 00da       |    |		Load_Top	At_Offset_2
0081 e20e       |    |		Load	0x1,0xe
0082 0232       | 2  |		Execute	Float,Check_In_Type
0083 e402       |    |		Load	0x2,0x2
0084 e20e       |    |		Load	0x1,0xe
0085 0232       | 2  |		Execute	Float,Check_In_Type
0086 8252       | R  |		Call	0x1,0x52
0087 c40a       |    |		Store	0x2,0xa
0088 00da       |    |		Load_Top	At_Offset_2
0089 e20e       |    |		Load	0x1,0xe
008a 0232       | 2  |		Execute	Float,Check_In_Type
008b e402       |    |		Load	0x2,0x2
008c e20e       |    |		Load	0x1,0xe
008d 0232       | 2  |		Execute	Float,Check_In_Type
008e 8253       | S  |		Call	0x1,0x53
008f c40b       |    |		Store	0x2,0xb
0090 00d8       |    |		Load_Top	At_Offset_0
0091 0f01       |    |		Execute_Immediate	Equal,0x1
0092 6809       |h   |		Jump_Zero	0x9c
0093 00db       |    |		Load_Top	At_Offset_3
0094 7001       |p   |		Jump_Nonzero	0x96
0095 08e0       |    |		Execute_Immediate	Raise,0xe0
0096 e40a       |    |		Load	0x2,0xa
0097 e40b       |    |		Load	0x2,0xb
0098 023a       | :  |		Execute	Float,Divide
0099 023f       | ?  |		Execute	Float,Unary_Minus
009a c405       |    |		Store	0x2,0x5
009b 7807       |x   |		Jump	0xa3
009c e40a       |    |		Load	0x2,0xa
009d 7001       |p   |		Jump_Nonzero	0x9f
009e 08e0       |    |		Execute_Immediate	Raise,0xe0
009f 00db       |    |		Load_Top	At_Offset_3
00a0 e40a       |    |		Load	0x2,0xa
00a1 023a       | :  |		Execute	Float,Divide
00a2 c405       |    |		Store	0x2,0x5
00a3 e404       |    |		Load	0x2,0x4
00a4 e405       |    |		Load	0x2,0x5
00a5 023b       | ;  |		Execute	Float,Times
00a6 00d8       |    |		Load_Top	At_Offset_0
00a7 e20e       |    |		Load	0x1,0xe
00a8 0234       | 4  |		Execute	Float,In_Type
00a9 7001       |p   |		Jump_Nonzero	0xab
00aa 0801       |    |		Execute_Immediate	Raise,0x1
00ab 4402       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x2
00ac 4019 21fb  |@ ! |		.DBL	6.283185307179586
00ae 5444 2d18  |TD- |
00b0 3fd0 0000  |?   |		.DBL	0.25
00b2 0000 0000  |    |
00b4 4010 0000  |@   |		.DBL	4.0
00b6 0000 0000  |    |
00b8 bff0 0000  |    |		.DBL	-1.0
00ba 0000 0000  |    |
00bc 3ff0 0000  |?   |		.DBL	1.0
00be 0000 0000  |    |
00c0 0000 0000  |    |		.DBL	0.0
00c2 0000 0000  |    |
00c4 0000 0000  |    |		.BLANK	0000[0x4]
00c8 ; --------------------------------------------------------------------------------------
00c8 ; Debug Table
00c8 ; --------------------------------------------------------------------------------------
00c8 0004 0001  |    |		.DEBUG4	0x0004,0x0001,0xf27d,0x0000,0x0001,0x0001
00ce 000b 00d2  |    |		.DBG4T	0x000b,0x00d2,0x1002,0x0000
00d2 ; --------------------------------------------------------------------------------------
00d2 ; Debug chain
00d2 ; --------------------------------------------------------------------------------------
00d2 0004 001d  |    |		.DBGLEN	0x0004,0x001d
00d4 000b 0013  |    |		.DBGLNO	0x000b,0x0013,0x0015,0x0018,0x001a,0x0021,0x0024,0x0026,0x0028,0x0029,0x0030,0x0033,0x0036,0x0038,0x003b,0x0045,0x0050,0x005c,0x0060,0x0068,0x006c,0x0070,0x007a,0x0080,0x0088,0x0090,0x0093,0x0095,0x0096,0x009c,0x009e,0x009f,0x00a3
00f5 0000 0000  |    |		.BLANK	0000[0x10b]