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

⟦856e611ab⟧

    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 00c0       |    |		.CONST	0x00c0								; 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 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 58a6       |X   |		Indirect_Literal	Float,0xbc,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 e5ff       |    |		Load	0x2,-0x1
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 c403       |    |		Store	0x2,0x3
0021 e403       |    |		Load	0x2,0x3
0022 014c       | L  |		Execute	Float,Greater_Zero
0023 6803       |h   |		Jump_Zero	0x27
0024 5893       |X   |		Indirect_Literal	Float,0xb8,1.0
0025 c404       |    |		Store	0x2,0x4
0026 7805       |x   |		Jump	0x2c
0027 588c       |X   |		Indirect_Literal	Float,0xb4,-1.0
0028 c404       |    |		Store	0x2,0x4
0029 e403       |    |		Load	0x2,0x3
002a 023e       | >  |		Execute	Float,Absolute_Value
002b c403       |    |		Store	0x2,0x3
002c e5fe       |    |		Load	0x2,-0x2
002d 00d8       |    |		Load_Top	At_Offset_0
002e e20e       |    |		Load	0x1,0xe
002f 0234       | 4  |		Execute	Float,In_Type
0030 7001       |p   |		Jump_Nonzero	0x32
0031 0801       |    |		Execute_Immediate	Raise,0x1
0032 c406       |    |		Store	0x2,0x6
0033 e406       |    |		Load	0x2,0x6
0034 0149       | I  |		Execute	Float,Less_Equal_Zero
0035 6802       |h   |		Jump_Zero	0x38
0036 e006       |    |		Load	0x0,0x6
0037 0257       | W  |		Execute	Discrete,Raise
0038 e406       |    |		Load	0x2,0x6
0039 e20e       |    |		Load	0x1,0xe
003a 0232       | 2  |		Execute	Float,Check_In_Type
003b e403       |    |		Load	0x2,0x3
003c e20e       |    |		Load	0x1,0xe
003d 0232       | 2  |		Execute	Float,Check_In_Type
003e e005       |    |		Load	0x0,0x5
003f e230       | 0  |		Load	0x1,0x30
0040 0096       |    |		Execute	Package,Entry
0041 c402       |    |		Store	0x2,0x2
0042 586d       |Xm  |		Indirect_Literal	Float,0xb0,4.0
0043 e402       |    |		Load	0x2,0x2
0044 023b       | ;  |		Execute	Float,Times
0045 e406       |    |		Load	0x2,0x6
0046 023a       | :  |		Execute	Float,Divide
0047 e20e       |    |		Load	0x1,0xe
0048 0232       | 2  |		Execute	Float,Check_In_Type
0049 e008       |    |		Load	0x0,0x8
004a e230       | 0  |		Load	0x1,0x30
004b 0096       |    |		Execute	Package,Entry
004c c409       |    |		Store	0x2,0x9
004d e409       |    |		Load	0x2,0x9
004e 0235       | 5  |		Execute	Float,Round_To_Discrete
004f 00e2       |    |		Load_Encached	Integer_Cache
0050 025e       | ^  |		Execute	Discrete,Convert
0051 4803       |H   |		Short_Literal	0x3
0052 0279       | y  |		Execute	Discrete,And
0053 00d8       |    |		Load_Top	At_Offset_0
0054 e22f       | /  |		Load	0x1,0x2f
0055 0260       | `  |		Execute	Discrete,In_Type
0056 7001       |p   |		Jump_Nonzero	0x58
0057 0801       |    |		Execute_Immediate	Raise,0x1
0058 0052       | R  |		Store_Top_Unchecked	Discrete,At_Offset_2
0059 00d9       |    |		Load_Top	At_Offset_1
005a 4801       |H   |		Short_Literal	0x1
005b 0279       | y  |		Execute	Discrete,And
005c 0059       | Y  |		Store_Top	Discrete,At_Offset_1
005d 4804       |H   |		Short_Literal	0x4
005e e406       |    |		Load	0x2,0x6
005f e20e       |    |		Load	0x1,0xe
0060 0232       | 2  |		Execute	Float,Check_In_Type
0061 e004       |    |		Load	0x0,0x4
0062 e230       | 0  |		Load	0x1,0x30
0063 0096       |    |		Execute	Package,Entry
0064 c407       |    |		Store	0x2,0x7
0065 e406       |    |		Load	0x2,0x6
0066 e407       |    |		Load	0x2,0x7
0067 023c       | <  |		Execute	Float,Minus
0068 c408       |    |		Store	0x2,0x8
0069 e409       |    |		Load	0x2,0x9
006a 5841       |XA  |		Indirect_Literal	Float,0xac,0.25
006b 023b       | ;  |		Execute	Float,Times
006c c409       |    |		Store	0x2,0x9
006d e402       |    |		Load	0x2,0x2
006e e409       |    |		Load	0x2,0x9
006f e407       |    |		Load	0x2,0x7
0070 023b       | ;  |		Execute	Float,Times
0071 023c       | <  |		Execute	Float,Minus
0072 e409       |    |		Load	0x2,0x9
0073 e408       |    |		Load	0x2,0x8
0074 023b       | ;  |		Execute	Float,Times
0075 023c       | <  |		Execute	Float,Minus
0076 c402       |    |		Store	0x2,0x2
0077 e402       |    |		Load	0x2,0x2
0078 e406       |    |		Load	0x2,0x6
0079 023a       | :  |		Execute	Float,Divide
007a 582d       |X-  |		Indirect_Literal	Float,0xa8,6.283185307179586
007b 023b       | ;  |		Execute	Float,Times
007c c402       |    |		Store	0x2,0x2
007d 00da       |    |		Load_Top	At_Offset_2
007e e20e       |    |		Load	0x1,0xe
007f 0232       | 2  |		Execute	Float,Check_In_Type
0080 e402       |    |		Load	0x2,0x2
0081 e20e       |    |		Load	0x1,0xe
0082 0232       | 2  |		Execute	Float,Check_In_Type
0083 8252       | R  |		Call	0x1,0x52
0084 c40a       |    |		Store	0x2,0xa
0085 00da       |    |		Load_Top	At_Offset_2
0086 e20e       |    |		Load	0x1,0xe
0087 0232       | 2  |		Execute	Float,Check_In_Type
0088 e402       |    |		Load	0x2,0x2
0089 e20e       |    |		Load	0x1,0xe
008a 0232       | 2  |		Execute	Float,Check_In_Type
008b 8253       | S  |		Call	0x1,0x53
008c c40b       |    |		Store	0x2,0xb
008d 00d8       |    |		Load_Top	At_Offset_0
008e 7008       |p   |		Jump_Nonzero	0x97
008f 00db       |    |		Load_Top	At_Offset_3
0090 7001       |p   |		Jump_Nonzero	0x92
0091 08e0       |    |		Execute_Immediate	Raise,0xe0
0092 e40a       |    |		Load	0x2,0xa
0093 e40b       |    |		Load	0x2,0xb
0094 023a       | :  |		Execute	Float,Divide
0095 c405       |    |		Store	0x2,0x5
0096 7808       |x   |		Jump	0x9f
0097 e40a       |    |		Load	0x2,0xa
0098 7001       |p   |		Jump_Nonzero	0x9a
0099 08e0       |    |		Execute_Immediate	Raise,0xe0
009a 00db       |    |		Load_Top	At_Offset_3
009b e40a       |    |		Load	0x2,0xa
009c 023a       | :  |		Execute	Float,Divide
009d 023f       | ?  |		Execute	Float,Unary_Minus
009e c405       |    |		Store	0x2,0x5
009f e404       |    |		Load	0x2,0x4
00a0 e405       |    |		Load	0x2,0x5
00a1 023b       | ;  |		Execute	Float,Times
00a2 00d8       |    |		Load_Top	At_Offset_0
00a3 e20e       |    |		Load	0x1,0xe
00a4 0234       | 4  |		Execute	Float,In_Type
00a5 7001       |p   |		Jump_Nonzero	0xa7
00a6 0801       |    |		Execute_Immediate	Raise,0x1
00a7 4402       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x2
00a8 4019 21fb  |@ ! |		.DBL	6.283185307179586
00aa 5444 2d18  |TD- |
00ac 3fd0 0000  |?   |		.DBL	0.25
00ae 0000 0000  |    |
00b0 4010 0000  |@   |		.DBL	4.0
00b2 0000 0000  |    |
00b4 bff0 0000  |    |		.DBL	-1.0
00b6 0000 0000  |    |
00b8 3ff0 0000  |?   |		.DBL	1.0
00ba 0000 0000  |    |
00bc 0000 0000  |    |		.DBL	0.0
00be 0000 0000  |    |
00c0 ; --------------------------------------------------------------------------------------
00c0 ; Debug Table
00c0 ; --------------------------------------------------------------------------------------
00c0 0004 0014  |    |		.DEBUG4	0x0004,0x0014,0x8f31,0x0000,0x0001,0x0000
00c6 0000 0000  |    |		.XXX[0xe]
00c8 0100 2800  |  ( |
00ca 0000 0000  |    |
00cc 0002 0000  |    |
00ce 0011 0000  |    |
00d0 0000 0800  |    |
00d2 0000 5000  |  P |
00d4 0000 0000  |    |		.BLANK	0000[0x2d]
0101 0020 0500  |    |		.XXX[0xc]
0103 0000 0000  |    |
0105 0000 4000  |  @ |
0107 0002 2000  |    |
0109 0000 0100  |    |
010b 0000 0a00  |    |
010d 0000 0000  |    |		.BLANK	0000[0x2d]
013a 0004 00a0  |    |		.XXX[0xc]
013c 0000 0000  |    |
013e 0000 0800  |    |
0140 0000 4400  |  D |
0142 0000 0020  |    |
0144 0000 0140  |   @|
0146 0000 0000  |    |		.BLANK	0000[0x2e]
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]