M68kException.java
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19: package xeij;
20:
21: import java.lang.*;
22:
23: public class M68kException extends Exception {
24:
25:
26: public static final int M6E_INSTRUCTION_BREAK_POINT = -1;
27: public static final int M6E_WAIT_EXCEPTION = -2;
28:
29:
30:
31:
32: public static final int M6E_RESET_INITIAL_SSP = 0;
33: public static final int M6E_RESET_INITIAL_PC = 1;
34: public static final int M6E_ACCESS_FAULT = 2;
35: public static final int M6E_ADDRESS_ERROR = 3;
36: public static final int M6E_ILLEGAL_INSTRUCTION = 4;
37: public static final int M6E_DIVIDE_BY_ZERO = 5;
38: public static final int M6E_CHK_INSTRUCTION = 6;
39: public static final int M6E_TRAPV_INSTRUCTION = 7;
40: public static final int M6E_PRIVILEGE_VIOLATION = 8;
41: public static final int M6E_TRACE = 9;
42: public static final int M6E_LINE_1010_EMULATOR = 10;
43: public static final int M6E_LINE_1111_EMULATOR = 11;
44: public static final int M6E_FP_UNIMPLEMENTED_INSTRUCTION = 11;
45: public static final int M6E_FP_DISABLED = 11;
46: public static final int M6E_EMULATOR_INTERRUPT = 12;
47: public static final int M6E_COPROCESSOR_PROTOCOL_VIOLATION = 13;
48: public static final int M6E_FORMAT_ERROR = 14;
49: public static final int M6E_UNINITIALIZED_INTERRUPT = 15;
50: public static final int M6E_SPURIOUS_INTERRUPT = 24;
51: public static final int M6E_LEVEL_1_INTERRUPT_AUTOVECTOR = 25;
52: public static final int M6E_LEVEL_2_INTERRUPT_AUTOVECTOR = 26;
53: public static final int M6E_LEVEL_3_INTERRUPT_AUTOVECTOR = 27;
54: public static final int M6E_LEVEL_4_INTERRUPT_AUTOVECTOR = 28;
55: public static final int M6E_LEVEL_5_INTERRUPT_AUTOVECTOR = 29;
56: public static final int M6E_LEVEL_6_INTERRUPT_AUTOVECTOR = 30;
57: public static final int M6E_LEVEL_7_INTERRUPT_AUTOVECTOR = 31;
58: public static final int M6E_TRAP_0_INSTRUCTION_VECTOR = 32;
59: public static final int M6E_TRAP_1_INSTRUCTION_VECTOR = 33;
60: public static final int M6E_TRAP_2_INSTRUCTION_VECTOR = 34;
61: public static final int M6E_TRAP_3_INSTRUCTION_VECTOR = 35;
62: public static final int M6E_TRAP_4_INSTRUCTION_VECTOR = 36;
63: public static final int M6E_TRAP_5_INSTRUCTION_VECTOR = 37;
64: public static final int M6E_TRAP_6_INSTRUCTION_VECTOR = 38;
65: public static final int M6E_TRAP_7_INSTRUCTION_VECTOR = 39;
66: public static final int M6E_TRAP_8_INSTRUCTION_VECTOR = 40;
67: public static final int M6E_TRAP_9_INSTRUCTION_VECTOR = 41;
68: public static final int M6E_TRAP_10_INSTRUCTION_VECTOR = 42;
69: public static final int M6E_TRAP_11_INSTRUCTION_VECTOR = 43;
70: public static final int M6E_TRAP_12_INSTRUCTION_VECTOR = 44;
71: public static final int M6E_TRAP_13_INSTRUCTION_VECTOR = 45;
72: public static final int M6E_TRAP_14_INSTRUCTION_VECTOR = 46;
73: public static final int M6E_TRAP_15_INSTRUCTION_VECTOR = 47;
74: public static final int M6E_FP_BRANCH_SET_UNORDERED = 48;
75: public static final int M6E_FP_INEXACT_RESULT = 49;
76:
77: public static final int M6E_FP_DIVIDE_BY_ZERO = 50;
78: public static final int M6E_FP_UNDERFLOW = 51;
79:
80: public static final int M6E_FP_OPERAND_ERROR = 52;
81:
82: public static final int M6E_FP_OVERFLOW = 53;
83:
84: public static final int M6E_FP_SIGNALING_NAN = 54;
85:
86: public static final int M6E_FP_UNSUPPORTED_DATA_TYPE = 55;
87:
88:
89: public static final int M6E_MMU_CONFIGULATION_ERROR = 56;
90: public static final int M6E_MMU_ILLEGAL_OPERATION_ERROR = 57;
91: public static final int M6E_MMU_ACCESS_LEVEL_VIOLATION = 58;
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102: public static final int M6E_UNIMPLEMENTED_EFFECTIVE = 60;
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123: public static final int M6E_UNIMPLEMENTED_INSTRUCTION = 61;
124:
125: public static final String[] M6E_ERROR_NAME = {
126: "undefined exception #0",
127: "undefined exception #1",
128: "Access fault",
129: "Address error",
130: "Illegal instruction",
131: "Divide by zero",
132: "CHK instruction",
133: "Trapv instruction",
134: "Privilege violation",
135: "Trace",
136: "Line 1010 emulator",
137: "Line 1111 emulator",
138: "Emulator interrupt",
139: "Coprocessor protocol violation",
140: "Format error",
141: "Uninitialized interrupt",
142: "undefined exception #16",
143: "undefined exception #17",
144: "undefined exception #18",
145: "undefined exception #19",
146: "undefined exception #20",
147: "undefined exception #21",
148: "undefined exception #22",
149: "undefined exception #23",
150: "Spurious interrupt",
151: "Level 1 interrupt autovector",
152: "Level 2 interrupt autovector",
153: "Level 3 interrupt autovector",
154: "Level 4 interrupt autovector",
155: "Level 5 interrupt autovector",
156: "Level 6 interrupt autovector",
157: "Level 7 interrupt autovector",
158: "TRAP #0 instruction vector",
159: "TRAP #1 instruction vector",
160: "TRAP #2 instruction vector",
161: "TRAP #3 instruction vector",
162: "TRAP #4 instruction vector",
163: "TRAP #5 instruction vector",
164: "TRAP #6 instruction vector",
165: "TRAP #7 instruction vector",
166: "TRAP #8 instruction vector",
167: "TRAP #9 instruction vector",
168: "TRAP #10 instruction vector",
169: "TRAP #11 instruction vector",
170: "TRAP #12 instruction vector",
171: "TRAP #13 instruction vector",
172: "TRAP #14 instruction vector",
173: "TRAP #15 instruction vector",
174: "FP branch/set on unordered ",
175: "FP inexact result",
176: "FP divide by zero",
177: "FP underflow",
178: "FP operand error",
179: "FP overflow",
180: "FP signaling NAN",
181: "FP unsupported data type",
182: "MMU configulation error",
183: "MMU illegal operation error",
184: "MMU access level violation",
185: "undefined exception #59",
186: "Unimplemented effective address",
187: "Unimplemented instruction",
188: "undefined exception #62",
189: "undefined exception #63",
190: };
191:
192: public static M68kException m6eSignal;
193: public static int m6eNumber;
194: public static int m6eAddress;
195: public static int m6eDirection;
196: public static int m6eSize;
197:
198: }
199:
200:
201: