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

⟦7c06f4b64⟧

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

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 00f0       |    |		.CONST	0x00f0								; 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 003d       | =  |		.CONST	0x003d								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 001b       |    |		.CONST	0x001b								; Number of locals
000b			INIT_0008:
000b 0007       |    |		Action	Break_Optional
000c e001       |    |		Load	0x0,0x1
000d 1b17       |    |		Execute	Package,Field_Read,Field_Number 0x17
000e 1b11       |    |		Execute	Package,Field_Read,Field_Number 0x11
000f 0129       | )  |		Execute	Any,Make_Visible
0010 00d8       |    |		Load_Top	At_Offset_0
0011 0129       | )  |		Execute	Any,Make_Visible
0012 00d9       |    |		Load_Top	At_Offset_1
0013 0129       | )  |		Execute	Any,Make_Visible
0014 00da       |    |		Load_Top	At_Offset_2
0015 0129       | )  |		Execute	Any,Make_Visible
0016 00db       |    |		Load_Top	At_Offset_3
0017 0129       | )  |		Execute	Any,Make_Visible
0018 e20d       |    |		Load	0x1,0xd
0019 0129       | )  |		Execute	Any,Make_Visible
001a e20d       |    |		Load	0x1,0xd
001b 0129       | )  |		Execute	Any,Make_Visible
001c e20d       |    |		Load	0x1,0xd
001d 0129       | )  |		Execute	Any,Make_Visible
001e e002       |    |		Load	0x0,0x2
001f 1b0d       |    |		Execute	Package,Field_Read,Field_Number 0xd
0020 0266       | f  |		Execute	Discrete,Bounds
0021 e20d       |    |		Load	0x1,0xd
0022 02a0       |    |		Declare_Subprogram	Null_Subprogram
0023 4801       |H   |		Short_Literal	0x1
0024 035e       | ^  |		Declare_Type	Array,Defined,Visible
0025 00d8       |    |		Load_Top	At_Offset_0
0026 0336       | 6  |		Declare_Variable	Array,Visible
0027 029a 0093  |    |		Declare_Subprogram	INIT_0090,For_Outer_Call,Visible,Unelaborated
0029 00bf       |    |		Action	Accept_Activation
002a 4861       |Ha  |		Short_Literal	0x61
002b 487a       |Hz  |		Short_Literal	0x7a
002c 00e8       |    |		Load_Encached	Character_Cache
002d 03f8       |    |		Declare_Type	Discrete,Constrained
002e 4841       |HA  |		Short_Literal	0x41
002f 485a       |HZ  |		Short_Literal	0x5a
0030 00e8       |    |		Load_Encached	Character_Cache
0031 03f8       |    |		Declare_Type	Discrete,Constrained
0032 e003       |    |		Load	0x0,0x3
0033 1819       |    |		Execute	Package,Field_Execute,Field_Number 0x19
0034 e003       |    |		Load	0x0,0x3
0035 181d       |    |		Execute	Package,Field_Execute,Field_Number 0x1d
0036 e003       |    |		Load	0x0,0x3
0037 1830       | 0  |		Execute	Package,Field_Execute,Field_Number 0x30
0038 0007       |    |		Action	Break_Optional
0039 1d17       |    |		Execute_Immediate	Reference_Lex_1,0x17
003a 00c7       |    |		Action	Elaborate_Subprogram
003b 029d 00bb  |    |		Declare_Subprogram	INIT_00b8,For_Outer_Call
003d			BODY_0008:
003d e20e       |    |		Load	0x1,0xe
003e 0092 00cc  |    |		Action	Push_String_Extended,0xcc					; "Up"
0040 821b       |    |		Call	0x1,0x1b
0041 c20e       |    |		Store	0x1,0xe
0042 e20f       |    |		Load	0x1,0xf
0043 0092 00cd  |    |		Action	Push_String_Extended,0xcd					; "Down"
0045 821b       |    |		Call	0x1,0x1b
0046 c20f       |    |		Store	0x1,0xf
0047 e210       |    |		Load	0x1,0x10
0048 0092 00ce  |    |		Action	Push_String_Extended,0xce					; "Left"
004a 821b       |    |		Call	0x1,0x1b
004b c210       |    |		Store	0x1,0x10
004c e211       |    |		Load	0x1,0x11
004d 0092 00cf  |    |		Action	Push_String_Extended,0xcf					; "Right"
004f 821b       |    |		Call	0x1,0x1b
0050 c211       |    |		Store	0x1,0x11
0051 e214       |    |		Load	0x1,0x14
0052 0092 00d0  |    |		Action	Push_String_Extended,0xd0					; "C_G"
0054 821b       |    |		Call	0x1,0x1b
0055 c214       |    |		Store	0x1,0x14
0056 e213       |    |		Load	0x1,0x13
0057 0092 00d1  |    |		Action	Push_String_Extended,0xd1					; "Enter"
0059 821b       |    |		Call	0x1,0x1b
005a c213       |    |		Store	0x1,0x13
005b 00d9       |    |		Load_Top	At_Offset_1
005c 0092 00d2  |    |		Action	Push_String_Extended,0xd2					; "FACIT"
005e 01df       |    |		Execute	Vector,Equal
005f 00da       |    |		Load_Top	At_Offset_2
0060 0092 00d3  |    |		Action	Push_String_Extended,0xd3					; "RATIONAL"
0062 01df       |    |		Execute	Vector,Equal
0063 0278       | x  |		Execute	Discrete,Or
0064 6806       |h   |		Jump_Zero	0x6b
0065 e212       |    |		Load	0x1,0x12
0066 0092 00d4  |    |		Action	Push_String_Extended,0xd4					; "Promot"
0068 821b       |    |		Call	0x1,0x1b
0069 c212       |    |		Store	0x1,0x12
006a 780a       |x   |		Jump	0x75
006b 00d9       |    |		Load_Top	At_Offset_1
006c 0092 00d5  |    |		Action	Push_String_Extended,0xd5					; "VT100"
006e 01df       |    |		Execute	Vector,Equal
006f 6805       |h   |		Jump_Zero	0x75
0070 e212       |    |		Load	0x1,0x12
0071 0092 00d1  |    |		Action	Push_String_Extended,0xd1					; "Enter"
0073 821b       |    |		Call	0x1,0x1b
0074 c212       |    |		Store	0x1,0x12
0075 00cf       |    |		Action	Mark_Auxiliary
0076 e002       |    |		Load	0x0,0x2
0077 1b0d       |    |		Execute	Package,Field_Read,Field_Number 0xd
0078 0265       | e  |		Execute	Discrete,Reverse_Bounds
0079 0007       |    |		Action	Break_Optional
007a e216       |    |		Load	0x1,0x16
007b 00d9       |    |		Load_Top	At_Offset_1
007c 00d8       |    |		Load_Top	At_Offset_0
007d 00da       |    |		Load_Top	At_Offset_2
007e 01d7       |    |		Execute	Vector,Field_Read
007f e21a       |    |		Load	0x1,0x1a
0080 e21e       |    |		Load	0x1,0x1e
0081 e002       |    |		Load	0x0,0x2
0082 1810       |    |		Execute	Package,Field_Execute,Field_Number 0x10
0083 821b       |    |		Call	0x1,0x1b
0084 00d9       |    |		Load_Top	At_Offset_1
0085 00db       |    |		Load_Top	At_Offset_3
0086 01d6       |    |		Execute	Vector,Field_Write
0087 00d2       |    |		Pop_Control	Pop_Count_2
0088 00c8       |    |		Action	Pop_Auxiliary_Range
0089 3ff0       |?   |		Loop_Increasing	0x7a
008a 00ce       |    |		Action	Pop_Auxiliary
008b 00bc       |    |		Action	Signal_Activated
008c 00bb       |    |		Action	Signal_Completion
008d 0000 0000  |    |		.XXX[0x3]
008f 0000       |    |
0090 ; --------------------------------------------------------------------------------------
0090 ; SUBPROGRAM
0090 ; --------------------------------------------------------------------------------------
0090 0094       |    |		.CONST	0x0094								; Address of begin
0091 0004       |    |		.CONST	0x0004								; Address of exception handler
0092 0002       |    |		.CONST	0x0002								; Number of locals
0093			INIT_0090:
0093 00e8       |    |		Load_Encached	Character_Cache
0094			BODY_0090:
0094 00db       |    |		Load_Top	At_Offset_3
0095 e001       |    |		Load	0x0,0x1
0096 1b17       |    |		Execute	Package,Field_Read,Field_Number 0x17
0097 1b13       |    |		Execute	Package,Field_Read,Field_Number 0x13
0098 0260       | `  |		Execute	Discrete,In_Type
0099 6815       |h   |		Jump_Zero	0xaf
009a 00db       |    |		Load_Top	At_Offset_3
009b e001       |    |		Load	0x0,0x1
009c 1b17       |    |		Execute	Package,Field_Read,Field_Number 0x17
009d 1b13       |    |		Execute	Package,Field_Read,Field_Number 0x13
009e 025b       | [  |		Execute	Discrete,Check_In_Type
009f e001       |    |		Load	0x0,0x1
00a0 1b17       |    |		Execute	Package,Field_Read,Field_Number 0x17
00a1 1817       |    |		Execute	Package,Field_Execute,Field_Number 0x17
00a2 0051       | Q  |		Store_Top_Unchecked	Discrete,At_Offset_1
00a3 00d8       |    |		Load_Top	At_Offset_0
00a4 e218       |    |		Load	0x1,0x18
00a5 0260       | `  |		Execute	Discrete,In_Type
00a6 00d9       |    |		Load_Top	At_Offset_1
00a7 e219       |    |		Load	0x1,0x19
00a8 0260       | `  |		Execute	Discrete,In_Type
00a9 0278       | x  |		Execute	Discrete,Or
00aa 6802       |h   |		Jump_Zero	0xad
00ab 4801       |H   |		Short_Literal	0x1
00ac 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00ad 4800       |H   |		Short_Literal	0x0
00ae 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00af 4800       |H   |		Short_Literal	0x0
00b0 4401       |D   |		Exit_Subprogram	With_Value,New_Top_Offset 0x1
00b1 0000 0000  |    |		.BLANK	0000[0x7]
00b8 ; --------------------------------------------------------------------------------------
00b8 ; SUBPROGRAM
00b8 ; --------------------------------------------------------------------------------------
00b8 00bc       |    |		.CONST	0x00bc								; Address of begin
00b9 0004       |    |		.CONST	0x0004								; Address of exception handler
00ba 0002       |    |		.CONST	0x0002								; Number of locals
00bb			INIT_00b8:
00bb 00e1       |    |		Load_Encached	Boolean_Cache
00bc			BODY_00b8:
00bc 00e1       |    |		Load_Encached	Boolean_Cache
00bd e001       |    |		Load	0x0,0x1
00be 1b17       |    |		Execute	Package,Field_Read,Field_Number 0x17
00bf 1b11       |    |		Execute	Package,Field_Read,Field_Number 0x11
00c0 e21a       |    |		Load	0x1,0x1a
00c1 e5ff       |    |		Load	0x2,-0x1
00c2 e001       |    |		Load	0x0,0x1
00c3 1b17       |    |		Execute	Package,Field_Read,Field_Number 0x17
00c4 181a       |    |		Execute	Package,Field_Execute,Field_Number 0x1a
00c5 c5fe       |    |		Store	0x2,-0x2
00c6 0059       | Y  |		Store_Top	Discrete,At_Offset_1
00c7 00d8       |    |		Load_Top	At_Offset_0
00c8 7002       |p   |		Jump_Nonzero	0xcb
00c9 e004       |    |		Load	0x0,0x4
00ca 0257       | W  |		Execute	Discrete,Raise
00cb 4502       |E   |		Exit_Suprogram	New_Top_Offset 0x2
00cc ; --------------------------------------------------------------------------------------
00cc ; STRING TABLE
00cc ; --------------------------------------------------------------------------------------
00cc 0016       |    |		.STRTAB	0x0016->0x00d7							; "Up"
00cd 0016       |    |		.STRTAB	0x0016->0x00d8							; "Down"
00ce 0018       |    |		.STRTAB	0x0018->0x00da							; "Left"
00cf 001a       |    |		.STRTAB	0x001a->0x00dc							; "Right"
00d0 001d       |    |		.STRTAB	0x001d->0x00de							; "C_G"
00d1 001e       |    |		.STRTAB	0x001e->0x00e0							; "Enter"
00d2 0021       | !  |		.STRTAB	0x0021->0x00e2							; "FACIT"
00d3 0024       | $  |		.STRTAB	0x0024->0x00e5							; "RATIONAL"
00d4 002a       | *  |		.STRTAB	0x002a->0x00e9							; "Promot"
00d5 002e       | .  |		.STRTAB	0x002e->0x00ec							; "VT100"
00d6 0031       | 1  |		.STREND 0x0031->0x00ee
00d7 5570 446f  |UpDo|		.STRTAB_STRINGS
00ef 0000       |    |		.XXX[0x1]
00f0 ; --------------------------------------------------------------------------------------
00f0 ; Debug Table
00f0 ; --------------------------------------------------------------------------------------
00f0 0004 0007  |    |		.DEBUG4	0x0004,0x0007,0x550b,0x0000,0x0001,0x0000
00f6 0000 0000  |    |		.BLANK	0000[0x10a]