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

⟦55a25c200⟧

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

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 5900       |Y   |		.CONST	0x5900								; Diana Version, RCG Major Version, RCG minor version
0002 0000       |    |		.CONST	0x0000								; Zero
0003 00a0       |    |		.CONST	0x00a0								; 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 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 002d       | -  |		.CONST	0x002d								; Address of begin
0019 004b       | K  |		.CONST	0x004b								; Address of exception handler
001a 0009       |    |		.CONST	0x0009								; Number of locals
001b			INIT_0018:
001b 4800       |H   |		Short_Literal	0x0
001c 4802       |H   |		Short_Literal	0x2
001d 029f 0053  |   S|		Declare_Subprogram	INIT_0050,For_Call
001f 03fd       |    |		Declare_Type	Discrete,Defined
0020 00d8       |    |		Load_Top	At_Offset_0
0021 0007       |    |		Action	Break_Optional
0022 00e2       |    |		Load_Encached	Integer_Cache
0023 03e9       |    |		Declare_Variable	Discrete,Duplicate
0024 03e9       |    |		Declare_Variable	Discrete,Duplicate
0025 03e9       |    |		Declare_Variable	Discrete,Duplicate
0026 00e1       |    |		Load_Encached	Boolean_Cache
0027 0601       |    |		Execute_Immediate	Set_Value_Unchecked,0x1
0028 e001       |    |		Load	0x0,0x1
0029 1b0d       |    |		Execute	Package,Field_Read,Field_Number 0xd
002a 02c7       |    |		Declare_Variable	Any
002b 00d8       |    |		Load_Top	At_Offset_0
002c 1c00       |    |		Execute_Immediate	Run_Utility,0x0
002d			BODY_0018:
002d 4801       |H   |		Short_Literal	0x1
002e a404       |    |		Store_Unchecked	0x2,0x4
002f 4802       |H   |		Short_Literal	0x2
0030 a405       |    |		Store_Unchecked	0x2,0x5
0031 4803       |H   |		Short_Literal	0x3
0032 a406       |    |		Store_Unchecked	0x2,0x6
0033 4804       |H   |		Short_Literal	0x4
0034 0053       | S  |		Store_Top_Uncheched	Discrete,At_Offset_3
0035 e404       |    |		Load	0x2,0x4
0036 0c08       |    |		Execute_Immediate	Greater_Equal,0x8
0037 e404       |    |		Load	0x2,0x4
0038 e405       |    |		Load	0x2,0x5
0039 027c       | |  |		Execute	Discrete,Less
003a 0279       | y  |		Execute	Discrete,And
003b e406       |    |		Load	0x2,0x6
003c 0f05       |    |		Execute_Immediate	Equal,0x5
003d e404       |    |		Load	0x2,0x4
003e 0f0a       |    |		Execute_Immediate	Equal,0xa
003f 0279       | y  |		Execute	Discrete,And
0040 0278       | x  |		Execute	Discrete,Or
0041 00da       |    |		Load_Top	At_Offset_2
0042 0278       | x  |		Execute	Discrete,Or
0043 6800       |h   |		Jump_Zero	0x44
0044 0092 0078  |   x|		Action	Push_String_Extended,0x78					; "((B > 7) and (B < C)) or ((D = 5) and (B = 10)) or F"
0046 e001       |    |		Load	0x0,0x1
0047 1b58       | X  |		Execute	Package,Field_Read,Field_Number 0x58
0048 1817       |    |		Execute	Package,Field_Execute,Field_Number 0x17
0049 c409       |    |		Store	0x2,0x9
004a 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
004b			TRAP_0018:
004b e002       |    |		Load	0x0,0x2
004c 010f       |    |		Execute	Exception,Equal
004d 6801       |h   |		Jump_Zero	0x4f
004e 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
004f 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
0050 ; --------------------------------------------------------------------------------------
0050 ; SUBPROGRAM
0050 ; --------------------------------------------------------------------------------------
0050 0053       | S  |		.CONST	0x0053								; Address of begin
0051 0004       |    |		.CONST	0x0004								; Address of exception handler
0052 0001       |    |		.CONST	0x0001								; Number of locals
0053			BODY_0050:
0053			INIT_0050:
0053 4607       |F   |		Jump_Case	0x8
0054 4302       |C   |		Exit_Subprogram	From_Utility,New_Top_Offset 0x2				; case 0x0
0055 7806       |x   |		Jump	0x5c								; case 0x1
0056 7809       |x   |		Jump	0x60								; case 0x2
0057 780d       |x   |		Jump	0x65								; case 0x3
0058 7810       |x   |		Jump	0x69								; case 0x4
0059 7811       |x   |		Jump	0x6b								; case 0x5
005a 7812       |x   |		Jump	0x6d								; case 0x6
005b 7815       |x   |		Jump	0x71								; case 0x7
005c 00da       |    |		Load_Top	At_Offset_2
005d 0091 0075  |   u|		Action	Push_String_Extended_Indexed,0x75				; "RED"
005f 4201       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x1
0060 00db       |    |		Load_Top	At_Offset_3
0061 00db       |    |		Load_Top	At_Offset_3
0062 00e0       |    |		Load_Encached	Standard_Cache
0063 181b       |    |		Execute	Package,Field_Execute,Field_Number 0x1b
0064 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
0065 00da       |    |		Load_Top	At_Offset_2
0066 00e0       |    |		Load_Encached	Standard_Cache
0067 181c       |    |		Execute	Package,Field_Execute,Field_Number 0x1c
0068 4201       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x1
0069 00db       |    |		Load_Top	At_Offset_3
006a 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
006b 00db       |    |		Load_Top	At_Offset_3
006c 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
006d e402       |    |		Load	0x2,0x2
006e 00dc       |    |		Load_Top	At_Offset_4
006f 0267       | g  |		Execute	Discrete,Predecessor
0070 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
0071 e402       |    |		Load	0x2,0x2
0072 00dc       |    |		Load_Top	At_Offset_4
0073 0268       | h  |		Execute	Discrete,Successor
0074 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
0075 ; --------------------------------------------------------------------------------------
0075 ; STRING TABLE
0075 ; --------------------------------------------------------------------------------------
0075 000a       |    |		.STRTAB	0x000a->0x007a							; "RED"
0076 000b       |    |		.STRTAB	0x000b->0x007b							; "GREEN"
0077 000e       |    |		.STRTAB	0x000e->0x007e							; "BLUE"
0078 0010       |    |		.STRTAB	0x0010->0x0080							; "((B > 7) and (B < C)) or ((D = 5) and (B = 10)) or F"
0079 0042       | B  |		.STREND 0x0042->0x009a
007a 5245 4447  |REDG|		.STRTAB_STRINGS
009a 0000 0000  |    |		.BLANK	0000[0x6]
00a0 ; --------------------------------------------------------------------------------------
00a0 ; Debug Table
00a0 ; --------------------------------------------------------------------------------------
00a0 0004 0004  |    |		.DEBUG4	0x0004,0x0004,0x2f9c,0x0000,0x0001,0x0003
00a6 000b 0000  |    |		.DBG4T	0x000b,0x0000,0x8000,0x0000
00aa 001b 00b2  |    |		.DBG4T	0x001b,0x00b2,0x8001,0x4000
00ae 0053 0000  | S  |		.DBG4T	0x0053,0x0000,0x0005,0x0000
00b2 ; --------------------------------------------------------------------------------------
00b2 ; Debug chain
00b2 ; --------------------------------------------------------------------------------------
00b2 0005 0008  |    |		.DBGLEN	0x0005,0x0008
00b4 001b 0020  |    |		.DBGLNO	0x001b,0x0020,0x0022,0x0026,0x0028,0x002d,0x002f,0x0031,0x0033,0x0035,0x0044,0x004e,0x004f
00c1 0001 0002  |    |		.XXX[0x8]
00c3 0003 0004  |    |
00c5 0005 0007  |    |
00c7 0008 0009  |    |
00c9 0000 0000  |    |		.BLANK	0000[0x137]