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

⟦270f372c2⟧

    Length: 2048 (0x800)
    Notes: 00_class, 5900_R1K_CODE, 74_tag, NULL, R1k_Segment, seg_4868cb

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 5900       |Y   |		.CONST	0x5900								; Diana Version, RCG Major Version, RCG minor version
0002 0000       |    |		.CONST	0x0000								; Zero
0003 0238       | 8  |		.CONST	0x0238								; 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 0001       |    |		.CONST	0x0001								; 0, wired, #pages in seg - 1)
0008 ; --------------------------------------------------------------------------------------
0008 ; SUBPROGRAM
0008 ; --------------------------------------------------------------------------------------
0008 0057       | W  |		.CONST	0x0057								; Address of begin
0009 0004       |    |		.CONST	0x0004								; Address of exception handler
000a 001a       |    |		.CONST	0x001a								; Number of locals
000b			INIT_0008:
000b 4801       |H   |		Short_Literal	0x1
000c 4865       |He  |		Short_Literal	0x65
000d 00e3       |    |		Load_Encached	Natural_Cache
000e 03f9       |    |		Declare_Type	Discrete,Constrained,Visible
000f 029a 0063  |   c|		Declare_Subprogram	INIT_0060,For_Outer_Call,Visible,Unelaborated
0011 029a 007b  |   {|		Declare_Subprogram	INIT_0078,For_Outer_Call,Visible,Unelaborated
0013 029a 00db  |    |		Declare_Subprogram	INIT_00d8,For_Outer_Call,Visible,Unelaborated
0015 00db       |    |		Load_Top	At_Offset_3
0016 0266       | f  |		Execute	Discrete,Bounds
0017 e20d       |    |		Load	0x1,0xd
0018 0266       | f  |		Execute	Discrete,Bounds
0019 00e3       |    |		Load_Encached	Natural_Cache
001a 02a0       |    |		Declare_Subprogram	Null_Subprogram
001b 4802       |H   |		Short_Literal	0x2
001c 0351       | Q  |		Declare_Type	Array,Defined,Visible,Bounds_With_Object
001d e20d       |    |		Load	0x1,0xd
001e 00d9       |    |		Load_Top	At_Offset_1
001f 029f 01bb  |    |		Declare_Subprogram	INIT_01b8,For_Call
0021 4800       |H   |		Short_Literal	0x0
0022 4801       |H   |		Short_Literal	0x1
0023 4800       |H   |		Short_Literal	0x0
0024 4800       |H   |		Short_Literal	0x0
0025 4801       |H   |		Short_Literal	0x1
0026 4801       |H   |		Short_Literal	0x1
0027 031e       |    |		Declare_Type	Variant_Record,Defined,Visible
0028 4800       |H   |		Short_Literal	0x0
0029 4802       |H   |		Short_Literal	0x2
002a 029f 010b  |    |		Declare_Subprogram	INIT_0108,For_Call
002c 03fe       |    |		Declare_Type	Discrete,Defined,Visible
002d 00e3       |    |		Load_Encached	Natural_Cache
002e 00e3       |    |		Load_Encached	Natural_Cache
002f 02a0       |    |		Declare_Subprogram	Null_Subprogram
0030 4802       |H   |		Short_Literal	0x2
0031 032e       | .  |		Declare_Type	Record,Defined,Visible
0032 e20d       |    |		Load	0x1,0xd
0033 0129       | )  |		Execute	Any,Make_Visible
0034 029a 0133  |   3|		Declare_Subprogram	INIT_0130,For_Outer_Call,Visible,Unelaborated
0036 029a 0173  |   s|		Declare_Subprogram	INIT_0170,For_Outer_Call,Visible,Unelaborated
0038 029a 0183  |    |		Declare_Subprogram	INIT_0180,For_Outer_Call,Visible,Unelaborated
003a 00bf       |    |		Action	Accept_Activation
003b e002       |    |		Load	0x0,0x2
003c e003       |    |		Load	0x0,0x3
003d 00e3       |    |		Load_Encached	Natural_Cache
003e e004       |    |		Load	0x0,0x4
003f 1b50       | P  |		Execute	Package,Field_Read,Field_Number 0x50
0040 0387       |    |		Declare_Variable	Package
0041 00d8       |    |		Load_Top	At_Offset_0
0042 020f       |    |		Execute	Module,Activate
0043 e005       |    |		Load	0x0,0x5
0044 e006       |    |		Load	0x0,0x6
0045 e20d       |    |		Load	0x1,0xd
0046 e004       |    |		Load	0x0,0x4
0047 1b50       | P  |		Execute	Package,Field_Read,Field_Number 0x50
0048 0387       |    |		Declare_Variable	Package
0049 00d8       |    |		Load_Top	At_Offset_0
004a 020f       |    |		Execute	Module,Activate
004b 1d0e       |    |		Execute_Immediate	Reference_Lex_1,0xe
004c 00c7       |    |		Action	Elaborate_Subprogram
004d 1d0f       |    |		Execute_Immediate	Reference_Lex_1,0xf
004e 00c7       |    |		Action	Elaborate_Subprogram
004f 1d10       |    |		Execute_Immediate	Reference_Lex_1,0x10
0050 00c7       |    |		Action	Elaborate_Subprogram
0051 1d16       |    |		Execute_Immediate	Reference_Lex_1,0x16
0052 00c7       |    |		Action	Elaborate_Subprogram
0053 1d17       |    |		Execute_Immediate	Reference_Lex_1,0x17
0054 00c7       |    |		Action	Elaborate_Subprogram
0055 1d18       |    |		Execute_Immediate	Reference_Lex_1,0x18
0056 00c7       |    |		Action	Elaborate_Subprogram
0057			BODY_0008:
0057 00bc       |    |		Action	Signal_Activated
0058 00bb       |    |		Action	Signal_Completion
0059 0000 0000  |    |		.BLANK	0000[0x7]
0060 ; --------------------------------------------------------------------------------------
0060 ; SUBPROGRAM
0060 ; --------------------------------------------------------------------------------------
0060 006e       | n  |		.CONST	0x006e								; Address of begin
0061 0004       |    |		.CONST	0x0004								; Address of exception handler
0062 0005       |    |		.CONST	0x0005								; Number of locals
0063			INIT_0060:
0063 e20d       |    |		Load	0x1,0xd
0064 0007       |    |		Action	Break_Optional
0065 e004       |    |		Load	0x0,0x4
0066 1b0d       |    |		Execute	Package,Field_Read,Field_Number 0xd
0067 02c7       |    |		Declare_Variable	Any
0068 00d8       |    |		Load_Top	At_Offset_0
0069 1c00       |    |		Execute_Immediate	Run_Utility,0x0
006a 00e1       |    |		Load_Encached	Boolean_Cache
006b 0600       |    |		Execute_Immediate	Set_Value_Unchecked,0x0
006c 029f 0193  |    |		Declare_Subprogram	INIT_0190,For_Call
006e			BODY_0060:
006e 00be       |    |		Action	Activate_Tasks
006f 00cf       |    |		Action	Mark_Auxiliary
0070 7802       |x   |		Jump	0x73
0071 8405       |    |		Call	0x2,0x5
0072 00c9       |    |		Action	Pop_Auxiliary_Loop
0073 00da       |    |		Load_Top	At_Offset_2
0074 6ffc       |o   |		Jump_Zero	0x71
0075 00ce       |    |		Action	Pop_Auxiliary
0076 00db       |    |		Load_Top	At_Offset_3
0077 00ca       |    |		Action	Exit_Nullary_Function
0078 ; --------------------------------------------------------------------------------------
0078 ; SUBPROGRAM
0078 ; --------------------------------------------------------------------------------------
0078 0083       |    |		.CONST	0x0083								; Address of begin
0079 0004       |    |		.CONST	0x0004								; Address of exception handler
007a 0007       |    |		.CONST	0x0007								; Number of locals
007b			INIT_0078:
007b e214       |    |		Load	0x1,0x14
007c 0322       | "  |		Declare_Variable	Record
007d 00e3       |    |		Load_Encached	Natural_Cache
007e 03e9       |    |		Declare_Variable	Discrete,Duplicate
007f e213       |    |		Load	0x1,0x13
0080 0007       |    |		Action	Break_Optional
0081 e20d       |    |		Load	0x1,0xd
0082 03e9       |    |		Declare_Variable	Discrete,Duplicate
0083			BODY_0078:
0083 4801       |H   |		Short_Literal	0x1
0084 e5ff       |    |		Load	0x2,-0x1
0085 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
0086 01ac       |    |		Execute	Matrix,Last
0087 c215       |    |		Store	0x1,0x15
0088 e5ff       |    |		Load	0x2,-0x1
0089 00d8       |    |		Load_Top	At_Offset_0
008a 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
008b 00d8       |    |		Load_Top	At_Offset_0
008c 0335       | 5  |		Declare_Variable	Array,Duplicate
008d 00cd       |    |		Action	Spare6_Action
008e 4801       |H   |		Short_Literal	0x1
008f 00da       |    |		Load_Top	At_Offset_2
0090 01a9       |    |		Execute	Matrix,Reverse_Bounds
0091 0263       | c  |		Execute	Discrete,Above_Bound
0092 700c       |p   |		Jump_Nonzero	0x9f
0093 4802       |H   |		Short_Literal	0x2
0094 e409       |    |		Load	0x2,0x9
0095 01a9       |    |		Execute	Matrix,Reverse_Bounds
0096 0263       | c  |		Execute	Discrete,Above_Bound
0097 7006       |p   |		Jump_Nonzero	0x9e
0098 4800       |H   |		Short_Literal	0x0
0099 00d9       |    |		Load_Top	At_Offset_1
009a e40c       |    |		Load	0x2,0xc
009b e40a       |    |		Load	0x2,0xa
009c 01a6       |    |		Execute	Matrix,Field_Write
009d 3ffa       |?   |		Loop_Increasing	0x98
009e 3ff4       |?   |		Loop_Increasing	0x93
009f 00cd       |    |		Action	Spare6_Action
00a0 00d9       |    |		Load_Top	At_Offset_1
00a1 2902       |)   |		Execute	Variant_Record,Field_Write,Fixed,Indirect,Field_Number 0x2
00a2 00d1       |    |		Pop_Control	Pop_Count_1
00a3 e402       |    |		Load	0x2,0x2
00a4 8217       |    |		Call	0x1,0x17
00a5 00d1       |    |		Pop_Control	Pop_Count_1
00a6 4800       |H   |		Short_Literal	0x0
00a7 0053       | S  |		Store_Top_Uncheched	Discrete,At_Offset_3
00a8 e402       |    |		Load	0x2,0x2
00a9 00db       |    |		Load_Top	At_Offset_3
00aa 8216       |    |		Call	0x1,0x16
00ab 00d1       |    |		Pop_Control	Pop_Count_1
00ac e5ff       |    |		Load	0x2,-0x1
00ad e402       |    |		Load	0x2,0x2
00ae 4801       |H   |		Short_Literal	0x1
00af 8218       |    |		Call	0x1,0x18
00b0 00d1       |    |		Pop_Control	Pop_Count_1
00b1 e215       |    |		Load	0x1,0x15
00b2 00d8       |    |		Load_Top	At_Offset_0
00b3 0271       | q  |		Execute	Discrete,Times
00b4 c404       |    |		Store	0x2,0x4
00b5 00cf       |    |		Action	Mark_Auxiliary
00b6 e404       |    |		Load	0x2,0x4
00b7 4802       |H   |		Short_Literal	0x2
00b8 0263       | c  |		Execute	Discrete,Above_Bound
00b9 701b       |p   |		Jump_Nonzero	0xd5
00ba 4801       |H   |		Short_Literal	0x1
00bb a405       |    |		Store_Unchecked	0x2,0x5
00bc e402       |    |		Load	0x2,0x2
00bd e405       |    |		Load	0x2,0x5
00be 8216       |    |		Call	0x1,0x16
00bf 00d1       |    |		Pop_Control	Pop_Count_1
00c0 e402       |    |		Load	0x2,0x2
00c1 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
00c2 e402       |    |		Load	0x2,0x2
00c3 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
00c4 e5ff       |    |		Load	0x2,-0x1
00c5 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
00c6 01a7       |    |		Execute	Matrix,Field_Read
00c7 6806       |h   |		Jump_Zero	0xce
00c8 4802       |H   |		Short_Literal	0x2
00c9 a405       |    |		Store_Unchecked	0x2,0x5
00ca e402       |    |		Load	0x2,0x2
00cb e405       |    |		Load	0x2,0x5
00cc 8216       |    |		Call	0x1,0x16
00cd 00d1       |    |		Pop_Control	Pop_Count_1
00ce e5ff       |    |		Load	0x2,-0x1
00cf e402       |    |		Load	0x2,0x2
00d0 00da       |    |		Load_Top	At_Offset_2
00d1 8218       |    |		Call	0x1,0x18
00d2 00d1       |    |		Pop_Control	Pop_Count_1
00d3 00c8       |    |		Action	Pop_Auxiliary_Range
00d4 3fe5       |?   |		Loop_Increasing	0xba
00d5 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
00d6 0000 0000  |    |		.XXX[0x2]
00d8 ; --------------------------------------------------------------------------------------
00d8 ; SUBPROGRAM
00d8 ; --------------------------------------------------------------------------------------
00d8 00db       |    |		.CONST	0x00db								; Address of begin
00d9 0004       |    |		.CONST	0x0004								; Address of exception handler
00da 0001       |    |		.CONST	0x0001								; Number of locals
00db			BODY_00d8:
00db			INIT_00d8:
00db 4801       |H   |		Short_Literal	0x1
00dc e004       |    |		Load	0x0,0x4
00dd 182d       | -  |		Execute	Package,Field_Execute,Field_Number 0x2d
00de 0092 01ec  |    |		Action	Push_String_Extended,0x1ec					; "----- Le carre magique demande -----"
00e0 e004       |    |		Load	0x0,0x4
00e1 184f       | O  |		Execute	Package,Field_Execute,Field_Number 0x4f
00e2 4801       |H   |		Short_Literal	0x1
00e3 e004       |    |		Load	0x0,0x4
00e4 182d       | -  |		Execute	Package,Field_Execute,Field_Number 0x2d
00e5 00cf       |    |		Action	Mark_Auxiliary
00e6 e215       |    |		Load	0x1,0x15
00e7 4801       |H   |		Short_Literal	0x1
00e8 0263       | c  |		Execute	Discrete,Above_Bound
00e9 7018       |p   |		Jump_Nonzero	0x102
00ea 00cf       |    |		Action	Mark_Auxiliary
00eb e215       |    |		Load	0x1,0x15
00ec 4801       |H   |		Short_Literal	0x1
00ed 0263       | c  |		Execute	Discrete,Above_Bound
00ee 700d       |p   |		Jump_Nonzero	0xfc
00ef e219       |    |		Load	0x1,0x19
00f0 1b11       |    |		Execute	Package,Field_Read,Field_Number 0x11
00f1 e219       |    |		Load	0x1,0x19
00f2 1b10       |    |		Execute	Package,Field_Read,Field_Number 0x10
00f3 e404       |    |		Load	0x2,0x4
00f4 00db       |    |		Load_Top	At_Offset_3
00f5 e5ff       |    |		Load	0x2,-0x1
00f6 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
00f7 01a7       |    |		Execute	Matrix,Field_Read
00f8 e219       |    |		Load	0x1,0x19
00f9 1815       |    |		Execute	Package,Field_Execute,Field_Number 0x15
00fa 00c8       |    |		Action	Pop_Auxiliary_Range
00fb 3ff3       |?   |		Loop_Increasing	0xef
00fc 00ce       |    |		Action	Pop_Auxiliary
00fd 4801       |H   |		Short_Literal	0x1
00fe e004       |    |		Load	0x0,0x4
00ff 182d       | -  |		Execute	Package,Field_Execute,Field_Number 0x2d
0100 00c8       |    |		Action	Pop_Auxiliary_Range
0101 3fe8       |?   |		Loop_Increasing	0xea
0102 4502       |E   |		Exit_Suprogram	New_Top_Offset 0x2
0103 0000 0000  |    |		.BLANK	0000[0x5]
0108 ; --------------------------------------------------------------------------------------
0108 ; SUBPROGRAM
0108 ; --------------------------------------------------------------------------------------
0108 010b       |    |		.CONST	0x010b								; Address of begin
0109 0004       |    |		.CONST	0x0004								; Address of exception handler
010a 0001       |    |		.CONST	0x0001								; Number of locals
010b			BODY_0108:
010b			INIT_0108:
010b 4607       |F   |		Jump_Case	0x8
010c 4302       |C   |		Exit_Subprogram	From_Utility,New_Top_Offset 0x2				; case 0x0
010d 7807       |x   |		Jump	0x115								; case 0x1
010e 780a       |x   |		Jump	0x119								; case 0x2
010f 780e       |x   |		Jump	0x11e								; case 0x3
0110 7811       |x   |		Jump	0x122								; case 0x4
0111 7812       |x   |		Jump	0x124								; case 0x5
0112 7813       |x   |		Jump	0x126								; case 0x6
0113 7816       |x   |		Jump	0x12a								; case 0x7
0114 4302       |C   |		.XXX[0x1]
0115 00da       |    |		Load_Top	At_Offset_2
0116 0091 01e9  |    |		Action	Push_String_Extended_Indexed,0x1e9				; "NORD"
0118 4201       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x1
0119 00db       |    |		Load_Top	At_Offset_3
011a 00db       |    |		Load_Top	At_Offset_3
011b 00e0       |    |		Load_Encached	Standard_Cache
011c 181b       |    |		Execute	Package,Field_Execute,Field_Number 0x1b
011d 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
011e 00da       |    |		Load_Top	At_Offset_2
011f 00e0       |    |		Load_Encached	Standard_Cache
0120 181c       |    |		Execute	Package,Field_Execute,Field_Number 0x1c
0121 4201       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x1
0122 00db       |    |		Load_Top	At_Offset_3
0123 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
0124 00db       |    |		Load_Top	At_Offset_3
0125 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
0126 e213       |    |		Load	0x1,0x13
0127 00dc       |    |		Load_Top	At_Offset_4
0128 0267       | g  |		Execute	Discrete,Predecessor
0129 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
012a e213       |    |		Load	0x1,0x13
012b 00dc       |    |		Load_Top	At_Offset_4
012c 0268       | h  |		Execute	Discrete,Successor
012d 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
012e 0000 0000  |    |		.XXX[0x2]
0130 ; --------------------------------------------------------------------------------------
0130 ; SUBPROGRAM
0130 ; --------------------------------------------------------------------------------------
0130 0133       | 3  |		.CONST	0x0133								; Address of begin
0131 0004       |    |		.CONST	0x0004								; Address of exception handler
0132 0001       |    |		.CONST	0x0001								; Number of locals
0133			BODY_0130:
0133			INIT_0130:
0133 00da       |    |		Load_Top	At_Offset_2
0134 4602       |F   |		Jump_Case	0x3
0135 7814       |x   |		Jump	0x14a								; case 0x0
0136 7819       |x   |		Jump	0x150								; case 0x1
0137 7800       |x   |		Jump	0x138								; case 0x2
0138 00db       |    |		Load_Top	At_Offset_3
0139 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
013a 0aff       |    |		Execute_Immediate	Plus,-0x1
013b e5fe       |    |		Load	0x2,-0x2
013c 3800       |8   |		Execute	Record,Field_Write,Field_Number 0x0
013d 00db       |    |		Load_Top	At_Offset_3
013e 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
013f 0aff       |    |		Execute_Immediate	Plus,-0x1
0140 e5fe       |    |		Load	0x2,-0x2
0141 3801       |8   |		Execute	Record,Field_Write,Field_Number 0x1
0142 00db       |    |		Load_Top	At_Offset_3
0143 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
0144 0d01       |    |		Execute_Immediate	Less,0x1
0145 681c       |h   |		Jump_Zero	0x162
0146 e215       |    |		Load	0x1,0x15
0147 e5fe       |    |		Load	0x2,-0x2
0148 3800       |8   |		Execute	Record,Field_Write,Field_Number 0x0
0149 7818       |x   |		Jump	0x162
014a 00db       |    |		Load_Top	At_Offset_3
014b 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
014c 0aff       |    |		Execute_Immediate	Plus,-0x1
014d e5fe       |    |		Load	0x2,-0x2
014e 3801       |8   |		Execute	Record,Field_Write,Field_Number 0x1
014f 7812       |x   |		Jump	0x162
0150 00db       |    |		Load_Top	At_Offset_3
0151 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
0152 0aff       |    |		Execute_Immediate	Plus,-0x1
0153 e5fe       |    |		Load	0x2,-0x2
0154 3801       |8   |		Execute	Record,Field_Write,Field_Number 0x1
0155 00db       |    |		Load_Top	At_Offset_3
0156 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
0157 0a01       |    |		Execute_Immediate	Plus,0x1
0158 e5fe       |    |		Load	0x2,-0x2
0159 3800       |8   |		Execute	Record,Field_Write,Field_Number 0x0
015a 00db       |    |		Load_Top	At_Offset_3
015b 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
015c e215       |    |		Load	0x1,0x15
015d 027d       | }  |		Execute	Discrete,Greater
015e 6803       |h   |		Jump_Zero	0x162
015f 4801       |H   |		Short_Literal	0x1
0160 e5fe       |    |		Load	0x2,-0x2
0161 3800       |8   |		Execute	Record,Field_Write,Field_Number 0x0
0162 00db       |    |		Load_Top	At_Offset_3
0163 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
0164 0d01       |    |		Execute_Immediate	Less,0x1
0165 6803       |h   |		Jump_Zero	0x169
0166 e215       |    |		Load	0x1,0x15
0167 e5fe       |    |		Load	0x2,-0x2
0168 3801       |8   |		Execute	Record,Field_Write,Field_Number 0x1
0169 4502       |E   |		Exit_Suprogram	New_Top_Offset 0x2
016a 0000 0000  |    |		.BLANK	0000[0x6]
0170 ; --------------------------------------------------------------------------------------
0170 ; SUBPROGRAM
0170 ; --------------------------------------------------------------------------------------
0170 0173       | s  |		.CONST	0x0173								; Address of begin
0171 0004       |    |		.CONST	0x0004								; Address of exception handler
0172 0001       |    |		.CONST	0x0001								; Number of locals
0173			BODY_0170:
0173			INIT_0170:
0173 e215       |    |		Load	0x1,0x15
0174 09ff       |    |		Execute_Immediate	Binary_Scale,-0x1
0175 0a01       |    |		Execute_Immediate	Plus,0x1
0176 00db       |    |		Load_Top	At_Offset_3
0177 3800       |8   |		Execute	Record,Field_Write,Field_Number 0x0
0178 00da       |    |		Load_Top	At_Offset_2
0179 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
017a 00db       |    |		Load_Top	At_Offset_3
017b 3801       |8   |		Execute	Record,Field_Write,Field_Number 0x1
017c 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
017d 0000 0000  |    |		.XXX[0x3]
017f 0000       |    |
0180 ; --------------------------------------------------------------------------------------
0180 ; SUBPROGRAM
0180 ; --------------------------------------------------------------------------------------
0180 0183       |    |		.CONST	0x0183								; Address of begin
0181 0004       |    |		.CONST	0x0004								; Address of exception handler
0182 0001       |    |		.CONST	0x0001								; Number of locals
0183			BODY_0180:
0183			INIT_0180:
0183 00da       |    |		Load_Top	At_Offset_2
0184 e5fe       |    |		Load	0x2,-0x2
0185 3c01       |<   |		Execute	Record,Field_Read,Field_Number 0x1
0186 e5fe       |    |		Load	0x2,-0x2
0187 3c00       |<   |		Execute	Record,Field_Read,Field_Number 0x0
0188 e5fd       |    |		Load	0x2,-0x3
0189 2502       |%   |		Execute	Variant_Record,Field_Reference,Indirect,Field_Number 0x2
018a 01a6       |    |		Execute	Matrix,Field_Write
018b 4503       |E   |		Exit_Suprogram	New_Top_Offset 0x3
018c 0000 0000  |    |		.BLANK	0000[0x4]
0190 ; --------------------------------------------------------------------------------------
0190 ; SUBPROGRAM
0190 ; --------------------------------------------------------------------------------------
0190 0193       |    |		.CONST	0x0193								; Address of begin
0191 01a4       |    |		.CONST	0x01a4								; Address of exception handler
0192 0001       |    |		.CONST	0x0001								; Number of locals
0193			BODY_0190:
0193			INIT_0190:
0193 0092 01ed  |    |		Action	Push_String_Extended,0x1ed					; "Entrez la taille du carre magique (nombre impair): "
0195 e004       |    |		Load	0x0,0x4
0196 184b       | K  |		Execute	Package,Field_Execute,Field_Number 0x4b
0197 e21a       |    |		Load	0x1,0x1a
0198 1b0f       |    |		Execute	Package,Field_Read,Field_Number 0xf
0199 4800       |H   |		Short_Literal	0x0
019a e21a       |    |		Load	0x1,0x1a
019b 1813       |    |		Execute	Package,Field_Execute,Field_Number 0x13
019c c402       |    |		Store	0x2,0x2
019d e402       |    |		Load	0x2,0x2
019e 4801       |H   |		Short_Literal	0x1
019f 0279       | y  |		Execute	Discrete,And
01a0 6802       |h   |		Jump_Zero	0x1a3
01a1 4801       |H   |		Short_Literal	0x1
01a2 a404       |    |		Store_Unchecked	0x2,0x4
01a3 4501       |E   |		Exit_Suprogram	New_Top_Offset 0x1
01a4			TRAP_0190:
01a4 00d8       |    |		Load_Top	At_Offset_0
01a5 0107       |    |		Execute	Exception,Get_Name
01a6 4960       |I`  |		Short_Literal	0x160
01a7 496f       |Io  |		Short_Literal	0x16f
01a8 0262       | b  |		Execute	Discrete,In_Range
01a9 6807       |h   |		Jump_Zero	0x1b1
01aa 0092 01ee  |    |		Action	Push_String_Extended,0x1ee					; "Par defaut le carre est de taille 5"
01ac e004       |    |		Load	0x0,0x4
01ad 184f       | O  |		Execute	Package,Field_Execute,Field_Number 0x4f
01ae 4805       |H   |		Short_Literal	0x5
01af 00cb       |    |		Action	Pop_Block_With_Result
01b0 00ca       |    |		Action	Exit_Nullary_Function
01b1 0100       |    |		Execute	Exception,Raise
01b2 0000 0000  |    |		.BLANK	0000[0x6]
01b8 ; --------------------------------------------------------------------------------------
01b8 ; SUBPROGRAM
01b8 ; --------------------------------------------------------------------------------------
01b8 01bb       |    |		.CONST	0x01bb								; Address of begin
01b9 0004       |    |		.CONST	0x0004								; Address of exception handler
01ba 0001       |    |		.CONST	0x0001								; Number of locals
01bb			BODY_01b8:
01bb			INIT_01b8:
01bb 4609       |F   |		Jump_Case	0xa
01bc 4302       |C   |		Exit_Subprogram	From_Utility,New_Top_Offset 0x2				; case 0x0
01bd 4302       |C   |		Exit_Subprogram	From_Utility,New_Top_Offset 0x2				; case 0x1
01be 7808       |x   |		Jump	0x1c7								; case 0x2
01bf 780b       |x   |		Jump	0x1cb								; case 0x3
01c0 7827       |x'  |		Jump	0x1e8								; case 0x4
01c1 7826       |x&  |		Jump	0x1e8								; case 0x5
01c2 7825       |x%  |		Jump	0x1e8								; case 0x6
01c3 780d       |x   |		Jump	0x1d1								; case 0x7
01c4 7817       |x   |		Jump	0x1dc								; case 0x8
01c5 7822       |x"  |		Jump	0x1e8								; case 0x9
01c6 4302       |C   |		.XXX[0x1]
01c7 4801       |H   |		Short_Literal	0x1
01c8 4802       |H   |		Short_Literal	0x2
01c9 0311       |    |		Declare_Type	Variant_Record,Constrained_Incomplete
01ca 4201       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x1
01cb e5fd       |    |		Load	0x2,-0x3
01cc 00db       |    |		Load_Top	At_Offset_3
01cd 1c07       |    |		Execute_Immediate	Run_Utility,0x7
01ce e5fe       |    |		Load	0x2,-0x2
01cf 0306       |    |		Complete_Type	Variant_Record,By_Renaming
01d0 4304       |C   |		Exit_Subprogram	From_Utility,New_Top_Offset 0x4
01d1 00db       |    |		Load_Top	At_Offset_3
01d2 4801       |H   |		Short_Literal	0x1
01d3 e5fe       |    |		Load	0x2,-0x2
01d4 4801       |H   |		Short_Literal	0x1
01d5 e5fe       |    |		Load	0x2,-0x2
01d6 e211       |    |		Load	0x1,0x11
01d7 035b       | [  |		Declare_Type	Array,Constrained
01d8 4801       |H   |		Short_Literal	0x1
01d9 e5ff       |    |		Load	0x2,-0x1
01da 031b       |    |		Declare_Type	Variant_Record,Constrained
01db 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
01dc 00db       |    |		Load_Top	At_Offset_3
01dd 00db       |    |		Load_Top	At_Offset_3
01de 02fc       |    |		Declare_Variable	Variant_Record,With_Constraint
01df 4801       |H   |		Short_Literal	0x1
01e0 e5fe       |    |		Load	0x2,-0x2
01e1 4801       |H   |		Short_Literal	0x1
01e2 e5fe       |    |		Load	0x2,-0x2
01e3 e211       |    |		Load	0x1,0x11
01e4 0334       | 4  |		Declare_Variable	Array,With_Constraint
01e5 2d02       |-   |		Execute	Variant_Record,Field_Append,Fixed,Indirect,Field_Number 0x2
01e6 016a       | j  |		QQ_execute	Variant_Record,XXX
01e7 4202       |B   |		Exit_Subprogram	From_Utility,With_Result,New_Top_Offset 0x2
01e8 0869       | i  |		Execute_Immediate	Raise,0x69
01e9 ; --------------------------------------------------------------------------------------
01e9 ; STRING TABLE
01e9 ; --------------------------------------------------------------------------------------
01e9 000e       |    |		.STRTAB	0x000e->0x01f0							; "NORD"
01ea 0010       |    |		.STRTAB	0x0010->0x01f2							; "NORD_EST"
01eb 0016       |    |		.STRTAB	0x0016->0x01f6							; "NORD_OUEST"
01ec 001e       |    |		.STRTAB	0x001e->0x01fb							; "----- Le carre magique demande -----"
01ed 0040       | @  |		.STRTAB	0x0040->0x020d							; "Entrez la taille du carre magique (nombre impair): "
01ee 0071       | q  |		.STRTAB	0x0071->0x0226							; "Par defaut le carre est de taille 5"
01ef 0092       |    |		.STREND 0x0092->0x0238
01f0 4e4f 5244  |NORD|		.STRTAB_STRINGS
0238 ; --------------------------------------------------------------------------------------
0238 ; Debug Table
0238 ; --------------------------------------------------------------------------------------
0238 0004 000a  |    |		.DEBUG4	0x0004,0x000a,0xdc5d,0x0000,0x0001,0x000b
023e 000b 026a  |   j|		.DBG4T	0x000b,0x026a,0x8000,0x8000
0242 003b 0284  | ;  |		.DBG4T	0x003b,0x0284,0x8000,0x0000
0246 0063 028e  | c  |		.DBG4T	0x0063,0x028e,0x0002,0x4000
024a 007b 0299  | {  |		.DBG4T	0x007b,0x0299,0x0001,0x0000
024e 00db 02ad  |    |		.DBG4T	0x00db,0x02ad,0x0001,0x0000
0252 010b 0000  |    |		.DBG4T	0x010b,0x0000,0x0005,0x0000
0256 0133 02b6  | 3  |		.DBG4T	0x0133,0x02b6,0x0001,0x4000
025a 0173 02d0  | s  |		.DBG4T	0x0173,0x02d0,0x0001,0x0000
025e 0183 02d4  |    |		.DBG4T	0x0183,0x02d4,0x0001,0x0000
0262 0193 02d7  |    |		.DBG4T	0x0193,0x02d7,0x0004,0x0000
0266 01bb 0000  |    |		.DBG4T	0x01bb,0x0000,0x0005,0x0000
026a ; --------------------------------------------------------------------------------------
026a ; Debug chain
026a ; --------------------------------------------------------------------------------------
026a 000c 0000  |    |		.DBGLEN	0x000c,0x0000
026c 000b 000f  |    |		.DBGLNO	0x000b,0x000f,0x0011,0x0013,0x0015,0x001d,0x0028,0x002d,0x0032,0x0034,0x0036,0x0038
0278 0002 0003  |    |		.XXX[0xc]
027a 0005 0006  |    |
027c 0008 0009  |    |
027e 000a 000b  |    |
0280 000c 000d  |    |
0282 000e 000f  |    |
0284 ; --------------------------------------------------------------------------------------
0284 ; Debug chain
0284 ; --------------------------------------------------------------------------------------
0284 0008 0000  |    |		.DBGLEN	0x0008,0x0000
0286 003b 0043  | ; C|		.DBGLNO	0x003b,0x0043,0x004b,0x004d,0x004f,0x0051,0x0053,0x0055
028e ; --------------------------------------------------------------------------------------
028e ; Debug chain
028e ; --------------------------------------------------------------------------------------
028e 0003 0003  |    |		.DBGLEN	0x0003,0x0003
0290 0063 0065  | c e|		.DBGLNO	0x0063,0x0065,0x006a,0x0071,0x0073,0x0076
0296 0002 0001  |    |		.XXX[0x3]
0298 0003       |    |
0299 ; --------------------------------------------------------------------------------------
0299 ; Debug chain
0299 ; --------------------------------------------------------------------------------------
0299 0004 000e  |    |		.DBGLEN	0x0004,0x000e
029b 007b 007d  | { }|		.DBGLNO	0x007b,0x007d,0x007f,0x0081,0x0083,0x0088,0x00a3,0x00a6,0x00a8,0x00ac,0x00b1,0x00b6,0x00ba,0x00bc,0x00c0,0x00c8,0x00ca,0x00ce
02ad ; --------------------------------------------------------------------------------------
02ad ; Debug chain
02ad ; --------------------------------------------------------------------------------------
02ad 0000 0007  |    |		.DBGLEN	0x0000,0x0007
02af 00db 00de  |    |		.DBGLNO	0x00db,0x00de,0x00e2,0x00e6,0x00eb,0x00ef,0x00fd
02b6 ; --------------------------------------------------------------------------------------
02b6 ; Debug chain
02b6 ; --------------------------------------------------------------------------------------
02b6 0000 000c  |    |		.DBGLEN	0x0000,0x000c
02b8 0133 0138  | 3 8|		.DBGLNO	0x0133,0x0138,0x013d,0x0142,0x0146,0x014a,0x0150,0x0155,0x015a,0x015f,0x0162,0x0166
02c4 0001 0007  |    |		.XXX[0xc]
02c6 0008 0009  |    |
02c8 000a 0002  |    |
02ca 0003 0004  |    |
02cc 0005 0006  |    |
02ce 000b 000c  |    |
02d0 ; --------------------------------------------------------------------------------------
02d0 ; Debug chain
02d0 ; --------------------------------------------------------------------------------------
02d0 0000 0002  |    |		.DBGLEN	0x0000,0x0002
02d2 0173 0178  | s x|		.DBGLNO	0x0173,0x0178
02d4 ; --------------------------------------------------------------------------------------
02d4 ; Debug chain
02d4 ; --------------------------------------------------------------------------------------
02d4 0000 0001  |    |		.DBGLEN	0x0000,0x0001
02d6 0183       |    |		.DBGLNO	0x0183
02d7 ; --------------------------------------------------------------------------------------
02d7 ; Debug chain
02d7 ; --------------------------------------------------------------------------------------
02d7 0000 0006  |    |		.DBGLEN	0x0000,0x0006
02d9 0193 0197  |    |		.DBGLNO	0x0193,0x0197,0x019d,0x01a1,0x01aa,0x01ae
02df 0000 0000  |    |		.BLANK	0000[0x121]