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

⟦d7d8e5a9f⟧

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

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦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 00e0       |    |		.CONST	0x00e0								; 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 0010       |    |		.CONST	0x0010								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 0001       |    |		.CONST	0x0001								; Number of locals
000b			INIT_0008:
000b 029a 001b  |    |		Declare_Subprogram	INIT_0018,For_Outer_Call,Visible,Unelaborated
000d 00bf       |    |		Action	Accept_Activation
000e 1d0d       |    |		Execute_Immediate	Reference_Lex_1,0xd
000f 00c7       |    |		Action	Elaborate_Subprogram
0010			BODY_0008:
0010 00bc       |    |		Action	Signal_Activated
0011 00bb       |    |		Action	Signal_Completion
0012 0000 0000  |    |		.BLANK	0000[0x6]
0018 ; --------------------------------------------------------------------------------------
0018 ; SUBPROGRAM
0018 ; --------------------------------------------------------------------------------------
0018 0027       | '  |		.CONST	0x0027								; Address of begin
0019 0004       |    |		.CONST	0x0004								; Address of exception handler
001a 0006       |    |		.CONST	0x0006								; Number of locals
001b			INIT_0018:
001b 8002       |    |		Call	0x0,0x2
001c e003       |    |		Load	0x0,0x3
001d 0322       | "  |		Declare_Variable	Record
001e 8004       |    |		Call	0x0,0x4
001f 00d9       |    |		Load_Top	At_Offset_1
0020 017d       | }  |		Execute	Record,Structure_Write
0021 029f 0063  |   c|		Declare_Subprogram	INIT_0060,For_Call
0023 029f 007b  |   {|		Declare_Subprogram	INIT_0078,For_Call
0025 029f 0093  |    |		Declare_Subprogram	INIT_0090,For_Call
0027			BODY_0018:
0027 e402       |    |		Load	0x2,0x2
0028 0219       |    |		Execute	Heap_Access,All_Read
0029 00d8       |    |		Load_Top	At_Offset_0
002a 3c03       |<   |		Execute	Record,Field_Read,Field_Number 0x3
002b 8005       |    |		Call	0x0,0x5
002c 00d9       |    |		Load_Top	At_Offset_1
002d 3803       |8   |		Execute	Record,Field_Write,Field_Number 0x3
002e 00d1       |    |		Pop_Control	Pop_Count_1
002f 00cf       |    |		Action	Mark_Auxiliary
0030 e006       |    |		Load	0x0,0x6
0031 0265       | e  |		Execute	Discrete,Reverse_Bounds
0032 0007       |    |		Action	Break_Optional
0033 8404       |    |		Call	0x2,0x4
0034 00c8       |    |		Action	Pop_Auxiliary_Range
0035 3ffd       |?   |		Loop_Increasing	0x33
0036 00ce       |    |		Action	Pop_Auxiliary
0037 e402       |    |		Load	0x2,0x2
0038 0219       |    |		Execute	Heap_Access,All_Read
0039 00d8       |    |		Load_Top	At_Offset_0
003a 3c02       |<   |		Execute	Record,Field_Read,Field_Number 0x2
003b e402       |    |		Load	0x2,0x2
003c 0217       |    |		Execute	Heap_Access,All_Reference
003d 3c03       |<   |		Execute	Record,Field_Read,Field_Number 0x3
003e e402       |    |		Load	0x2,0x2
003f 0217       |    |		Execute	Heap_Access,All_Reference
0040 3c05       |<   |		Execute	Record,Field_Read,Field_Number 0x5
0041 8007       |    |		Call	0x0,0x7
0042 00d9       |    |		Load_Top	At_Offset_1
0043 3802       |8   |		Execute	Record,Field_Write,Field_Number 0x2
0044 00d1       |    |		Pop_Control	Pop_Count_1
0045 7800       |x   |		Jump	0x46
0046 e009       |    |		Load	0x0,0x9
0047 180e       |    |		Execute	Package,Field_Execute,Field_Number 0xe
0048 4802       |H   |		Short_Literal	0x2
0049 0092 00bc  |    |		Action	Push_String_Extended,0xbc					; "Execution Time => "
004b e402       |    |		Load	0x2,0x2
004c 0217       |    |		Execute	Heap_Access,All_Reference
004d 3c03       |<   |		Execute	Record,Field_Read,Field_Number 0x3
004e 800a       |    |		Call	0x0,0xa
004f e00b       |    |		Load	0x0,0xb
0050 1825       | %  |		Execute	Package,Field_Execute,Field_Number 0x25
0051 01cc       |    |		Execute	Vector,Catenate
0052 e00c       |    |		Load	0x0,0xc
0053 1813       |    |		Execute	Package,Field_Execute,Field_Number 0x13
0054 8406       |    |		Call	0x2,0x6
0055 e009       |    |		Load	0x0,0x9
0056 180e       |    |		Execute	Package,Field_Execute,Field_Number 0xe
0057 e00c       |    |		Load	0x0,0xc
0058 1821       | !  |		Execute	Package,Field_Execute,Field_Number 0x21
0059 00db       |    |		Load_Top	At_Offset_3
005a 0092 00bd  |    |		Action	Push_String_Extended,0xbd					; "Predefined Test Epilog"
005c 800d       |    |		Call	0x0,0xd
005d 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
005e 0000 0000  |    |		.XXX[0x2]
0060 ; --------------------------------------------------------------------------------------
0060 ; SUBPROGRAM
0060 ; --------------------------------------------------------------------------------------
0060 0069       | i  |		.CONST	0x0069								; Address of begin
0061 0004       |    |		.CONST	0x0004								; Address of exception handler
0062 0002       |    |		.CONST	0x0002								; Number of locals
0063			INIT_0060:
0063 e402       |    |		Load	0x2,0x2
0064 0217       |    |		Execute	Heap_Access,All_Reference
0065 3c03       |<   |		Execute	Record,Field_Read,Field_Number 0x3
0066 e409       |    |		Load	0x2,0x9
0067 800e       |    |		Call	0x0,0xe
0068 800f       |    |		Call	0x0,0xf
0069			BODY_0060:
0069 00d8       |    |		Load_Top	At_Offset_0
006a 01db       |    |		Execute	Vector,Length
006b 680b       |h   |		Jump_Zero	0x77
006c e402       |    |		Load	0x2,0x2
006d 0219       |    |		Execute	Heap_Access,All_Read
006e 00d8       |    |		Load_Top	At_Offset_0
006f 3c03       |<   |		Execute	Record,Field_Read,Field_Number 0x3
0070 00da       |    |		Load_Top	At_Offset_2
0071 8010       |    |		Call	0x0,0x10
0072 e409       |    |		Load	0x2,0x9
0073 8011       |    |		Call	0x0,0x11
0074 00d9       |    |		Load_Top	At_Offset_1
0075 3803       |8   |		Execute	Record,Field_Write,Field_Number 0x3
0076 00d1       |    |		Pop_Control	Pop_Count_1
0077 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
0078 ; --------------------------------------------------------------------------------------
0078 ; SUBPROGRAM
0078 ; --------------------------------------------------------------------------------------
0078 0080       |    |		.CONST	0x0080								; Address of begin
0079 0004       |    |		.CONST	0x0004								; Address of exception handler
007a 0002       |    |		.CONST	0x0002								; Number of locals
007b			INIT_0078:
007b e012       |    |		Load	0x0,0x12
007c 1b0f       |    |		Execute	Package,Field_Read,Field_Number 0xf
007d 02c7       |    |		Declare_Variable	Any
007e 00d8       |    |		Load_Top	At_Offset_0
007f 1c00       |    |		Execute_Immediate	Run_Utility,0x0
0080			BODY_0078:
0080 00d8       |    |		Load_Top	At_Offset_0
0081 e402       |    |		Load	0x2,0x2
0082 0217       |    |		Execute	Heap_Access,All_Reference
0083 3c02       |<   |		Execute	Record,Field_Read,Field_Number 0x2
0084 8013       |    |		Call	0x0,0x13
0085 c602       |    |		Store	0x3,0x2
0086 4802       |H   |		Short_Literal	0x2
0087 e402       |    |		Load	0x2,0x2
0088 0217       |    |		Execute	Heap_Access,All_Reference
0089 3c05       |<   |		Execute	Record,Field_Read,Field_Number 0x5
008a 00da       |    |		Load_Top	At_Offset_2
008b 8014       |    |		Call	0x0,0x14
008c 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
008d 0000 0000  |    |		.XXX[0x3]
008f 0000       |    |
0090 ; --------------------------------------------------------------------------------------
0090 ; SUBPROGRAM
0090 ; --------------------------------------------------------------------------------------
0090 009b       |    |		.CONST	0x009b								; Address of begin
0091 0004       |    |		.CONST	0x0004								; Address of exception handler
0092 0003       |    |		.CONST	0x0003								; Number of locals
0093			INIT_0090:
0093 e009       |    |		Load	0x0,0x9
0094 1b1a       |    |		Execute	Package,Field_Read,Field_Number 0x1a
0095 e402       |    |		Load	0x2,0x2
0096 0217       |    |		Execute	Heap_Access,All_Reference
0097 3c03       |<   |		Execute	Record,Field_Read,Field_Number 0x3
0098 8015       |    |		Call	0x0,0x15
0099 e016       |    |		Load	0x0,0x16
009a 03f1       |    |		Declare_Variable	Discrete,With_Value
009b			BODY_0090:
009b 00d8       |    |		Load_Top	At_Offset_0
009c 4604       |F   |		Jump_Case	0x5
009d 780a       |x   |		Jump	0xa8								; case 0x0
009e 7806       |x   |		Jump	0xa5								; case 0x1
009f 7802       |x   |		Jump	0xa2								; case 0x2
00a0 7801       |x   |		Jump	0xa2								; case 0x3
00a1 7800       |x   |		Jump	0xa2								; case 0x4
00a2 4807       |H   |		Short_Literal	0x7
00a3 0052       | R  |		Store_Top_Unchecked	Discrete,At_Offset_2
00a4 7805       |x   |		Jump	0xaa
00a5 4803       |H   |		Short_Literal	0x3
00a6 0052       | R  |		Store_Top_Unchecked	Discrete,At_Offset_2
00a7 7802       |x   |		Jump	0xaa
00a8 4806       |H   |		Short_Literal	0x6
00a9 0052       | R  |		Store_Top_Unchecked	Discrete,At_Offset_2
00aa e009       |    |		Load	0x0,0x9
00ab 180e       |    |		Execute	Package,Field_Execute,Field_Number 0xe
00ac 00da       |    |		Load_Top	At_Offset_2
00ad e402       |    |		Load	0x2,0x2
00ae 0217       |    |		Execute	Heap_Access,All_Reference
00af 3c05       |<   |		Execute	Record,Field_Read,Field_Number 0x5
00b0 800f       |    |		Call	0x0,0xf
00b1 0092 00be  |    |		Action	Push_String_Extended,0xbe					; " Result => "
00b3 01cc       |    |		Execute	Vector,Catenate
00b4 00db       |    |		Load_Top	At_Offset_3
00b5 e016       |    |		Load	0x0,0x16
00b6 011c       |    |		Execute	Any,Convert_Unchecked
00b7 1c01       |    |		Execute_Immediate	Run_Utility,0x1
00b8 01cc       |    |		Execute	Vector,Catenate
00b9 e00c       |    |		Load	0x0,0xc
00ba 1813       |    |		Execute	Package,Field_Execute,Field_Number 0x13
00bb 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
00bc ; --------------------------------------------------------------------------------------
00bc ; STRING TABLE
00bc ; --------------------------------------------------------------------------------------
00bc 0008       |    |		.STRTAB	0x0008->0x00c0							; "Execution Time => "
00bd 0018       |    |		.STRTAB	0x0018->0x00c9							; "Predefined Test Epilog"
00be 002c       | ,  |		.STRTAB	0x002c->0x00d4							; " Result => "
00bf 0035       | 5  |		.STREND 0x0035->0x00d9
00c0 4578 6563  |Exec|		.STRTAB_STRINGS
00da 0000 0000  |    |		.BLANK	0000[0x6]
00e0 ; --------------------------------------------------------------------------------------
00e0 ; Debug Table
00e0 ; --------------------------------------------------------------------------------------
00e0 0004 000a  |    |		.DEBUG4	0x0004,0x000a,0x4566,0x0000,0x0001,0x0000
00e6 0000 0000  |    |		.BLANK	0000[0x11a]