diff options
Diffstat (limited to 'sim/testsuite/bfin/se_undefinedinstruction2.S')
-rw-r--r-- | sim/testsuite/bfin/se_undefinedinstruction2.S | 3147 |
1 files changed, 3147 insertions, 0 deletions
diff --git a/sim/testsuite/bfin/se_undefinedinstruction2.S b/sim/testsuite/bfin/se_undefinedinstruction2.S new file mode 100644 index 0000000..d21e375 --- /dev/null +++ b/sim/testsuite/bfin/se_undefinedinstruction2.S @@ -0,0 +1,3147 @@ +//Original:/proj/frio/dv/testcases/seq/se_undefinedinstruction2/se_undefinedinstruction2.dsp +// Description: 16 bit special cases Undefined Instructions in Supervisor Mode +# mach: bfin +# sim: --environment operating + +#include "test.h" +.include "testutils.inc" +start + +// +// Constants and Defines +// + +include(gen_int.inc) +include(selfcheck.inc) +include(std.inc) +include(mmrs.inc) +include(symtable.inc) + +#ifndef STACKSIZE +#define STACKSIZE 0x10 // change for how much stack you need +#endif +#ifndef ITABLE +#define ITABLE 0xF0000000 +#endif + +GEN_INT_INIT(ITABLE) // set location for interrupt table + +// +// Reset/Bootstrap Code +// (Here we should set the processor operating modes, initialize registers, +// etc.) +// + +BOOT: +INIT_R_REGS(0); // initialize general purpose regs + +INIT_P_REGS(0); // initialize the pointers + +INIT_I_REGS(0); // initialize the dsp address regs +INIT_M_REGS(0); +INIT_L_REGS(0); +INIT_B_REGS(0); + +CLI R1; // inhibit events during MMR writes + +LD32_LABEL(sp, USTACK); // setup the user stack pointer +USP = SP; + +LD32_LABEL(sp, KSTACK); // setup the kernel stack pointer +FP = SP; // and frame pointer + +LD32(p0, EVT0); // Setup Event Vectors and Handlers + + P0 += 4; // EVT0 not used (Emulation) + + P0 += 4; // EVT1 not used (Reset) + +LD32_LABEL(r0, NHANDLE); // NMI Handler (Int2) + [ P0 ++ ] = R0; + +LD32_LABEL(r0, XHANDLE); // Exception Handler (Int3) + [ P0 ++ ] = R0; + + P0 += 4; // EVT4 not used (Global Interrupt Enable) + +LD32_LABEL(r0, HWHANDLE); // HW Error Handler (Int5) + [ P0 ++ ] = R0; + +LD32_LABEL(r0, THANDLE); // Timer Handler (Int6) + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I7HANDLE); // IVG7 Handler + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I8HANDLE); // IVG8 Handler + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I9HANDLE); // IVG9 Handler + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I10HANDLE);// IVG10 Handler + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I11HANDLE);// IVG11 Handler + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I12HANDLE);// IVG12 Handler + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I13HANDLE);// IVG13 Handler + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I14HANDLE);// IVG14 Handler + [ P0 ++ ] = R0; + +LD32_LABEL(r0, I15HANDLE);// IVG15 Handler + [ P0 ++ ] = R0; + +LD32(p0, EVT_OVERRIDE); + R0 = 0; + [ P0 ++ ] = R0; + + R1 = -1; // Change this to mask interrupts (*) +CSYNC; // wait for MMR writes to finish +STI R1; // sync and reenable events (implicit write to IMASK) + +DUMMY: + + A0 = 0; // reset accumulators + A1 = 0; + + R0 = 0 (Z); + +LT0 = r0; // set loop counters to something deterministic +LB0 = r0; +LC0 = r0; +LT1 = r0; +LB1 = r0; +LC1 = r0; + +ASTAT = r0; // reset other internal regs +SYSCFG = r0; +RETS = r0; // prevent X's breaking LINK instruction + +// The following code sets up the test for running in USER mode + +LD32_LABEL(r0, STARTUSER);// One gets to user mode by doing a + // ReturnFromInterrupt (RTI) +RETI = r0; // We need to load the return address + +// Comment the following line for a USER Mode test + +JUMP STARTSUP; // jump to code start for SUPERVISOR mode + +RTI; + +STARTSUP: +LD32_LABEL(p1, BEGIN); +r4 = p1; + +LD32(p0, EVT15); + +CLI R1; // inhibit events during write to MMR + [ P0 ] = P1; // IVG15 (General) handler (Int 15) load with start +CSYNC; // wait for it +STI R1; // reenable events with proper imask + +RAISE 15; // after we RTI, INT 15 should be taken + +RTI; + +// +// The Main Program +// + +STARTUSER: + +LINK 0; // change for how much stack frame space you need. + +JUMP BEGIN; + +//********************************************************************* + +BEGIN: + + // COMMENT the following line for USER MODE tests + [ -- SP ] = RETI; // enable interrupts in supervisor mode + + // **** YOUR CODE GOES HERE **** + + // count of UI's will be in r5, which was initialized to 0 by header + +// 16 bit special cases COUNT = 830 + .dw 0x10E ; + .dw 0x124 ; +.ifndef BFIN_HW + // XXX: hardware doesnt trigger illegal exception ? + .dw 0x125 ; +.endif + .dw 0x164 ; +.ifndef BFIN_HW + // XXX: hardware doesnt trigger illegal exception ? + .dw 0x165 ; +.endif + .dw 0x128 ; + .dw 0x129 ; + .dw 0x12A ; + .dw 0x12B ; + .dw 0x12C ; + .dw 0x12D ; + .dw 0x12E ; + .dw 0x12F ; + .dw 0x168 ; + .dw 0x169 ; + .dw 0x16A ; + .dw 0x16B ; + .dw 0x16C ; + .dw 0x16D ; + .dw 0x16E ; + .dw 0x16F ; +#if 0 + // EMUDAT = [SP++]; is valid + .dw 0x13F ; + // [SP++] = EMUDAT; is valid + .dw 0x17F ; +#endif + .dw 0x486 ; + .dw 0x487 ; + .dw 0x210 ; + .dw 0x211 ; + .dw 0x212 ; + .dw 0x213 ; + .dw 0x214 ; + .dw 0x215 ; + .dw 0x216 ; + .dw 0x217 ; + .dw 0x305 ; +#if 0 + // Not documented, but hardware takes them + // CC = <reserved astat> + .dw 0x307 ; + .dw 0x308 ; + .dw 0x309 ; + .dw 0x30A ; + .dw 0x30B ; + .dw 0x30C ; + .dw 0x30D ; + .dw 0x30E ; + .dw 0x30F ; + .dw 0x310 ; + .dw 0x311 ; + .dw 0x312 ; + .dw 0x313 ; + .dw 0x314 ; + .dw 0x315 ; + .dw 0x316 ; + .dw 0x317 ; + .dw 0x318 ; + .dw 0x319 ; + .dw 0x31A ; + .dw 0x31B ; + .dw 0x31C ; + .dw 0x31D ; + .dw 0x31E ; + .dw 0x31F ; +#endif + .dw 0x325 ; +#if 0 + // Not documented, but hardware takes them + // CC |= <reserved astat> + .dw 0x327 ; + .dw 0x328 ; + .dw 0x329 ; + .dw 0x32A ; + .dw 0x32B ; + .dw 0x32C ; + .dw 0x32D ; + .dw 0x32E ; + .dw 0x32F ; + .dw 0x330 ; + .dw 0x331 ; + .dw 0x332 ; + .dw 0x333 ; + .dw 0x334 ; + .dw 0x335 ; + .dw 0x336 ; + .dw 0x337 ; + .dw 0x338 ; + .dw 0x339 ; + .dw 0x33A ; + .dw 0x33B ; + .dw 0x33C ; + .dw 0x33D ; + .dw 0x33E ; + .dw 0x33F ; +#endif + .dw 0x345 ; +#if 0 + // Not documented, but hardware takes them + // CC &= <reserved astat> + .dw 0x347 ; + .dw 0x348 ; + .dw 0x349 ; + .dw 0x34A ; + .dw 0x34B ; + .dw 0x34C ; + .dw 0x34D ; + .dw 0x34E ; + .dw 0x34F ; + .dw 0x350 ; + .dw 0x351 ; + .dw 0x352 ; + .dw 0x353 ; + .dw 0x354 ; + .dw 0x355 ; + .dw 0x356 ; + .dw 0x357 ; + .dw 0x358 ; + .dw 0x359 ; + .dw 0x35A ; + .dw 0x35B ; + .dw 0x35C ; + .dw 0x35D ; + .dw 0x35E ; + .dw 0x35F ; +#endif + .dw 0x365 ; +#if 0 + // Not documented, but hardware takes them + // CC ^= <reserved astat> + .dw 0x367 ; + .dw 0x368 ; + .dw 0x369 ; + .dw 0x36A ; + .dw 0x36B ; + .dw 0x36C ; + .dw 0x36D ; + .dw 0x36E ; + .dw 0x36F ; + .dw 0x370 ; + .dw 0x371 ; + .dw 0x372 ; + .dw 0x373 ; + .dw 0x374 ; + .dw 0x375 ; + .dw 0x376 ; + .dw 0x377 ; + .dw 0x378 ; + .dw 0x379 ; + .dw 0x37A ; + .dw 0x37B ; + .dw 0x37C ; + .dw 0x37D ; + .dw 0x37E ; + .dw 0x37F ; +#endif + .dw 0x385 ; +#if 0 + // Not documented, but hardware takes them + // <reserved astat> = CC + .dw 0x387 ; + .dw 0x388 ; + .dw 0x389 ; + .dw 0x38A ; + .dw 0x38B ; + .dw 0x38C ; + .dw 0x38D ; + .dw 0x38E ; + .dw 0x38F ; + .dw 0x390 ; + .dw 0x391 ; + .dw 0x392 ; + .dw 0x393 ; + .dw 0x394 ; + .dw 0x395 ; + .dw 0x396 ; + .dw 0x397 ; + .dw 0x398 ; + .dw 0x399 ; + .dw 0x39A ; + .dw 0x39B ; + .dw 0x39C ; + .dw 0x39D ; + .dw 0x39E ; + .dw 0x39F ; +#endif + .dw 0x3A5 ; +#if 0 + // Not documented, but hardware takes them + // <reserved astat> |= CC + .dw 0x3A7 ; + .dw 0x3A8 ; + .dw 0x3A9 ; + .dw 0x3AA ; + .dw 0x3AB ; + .dw 0x3AC ; + .dw 0x3AD ; + .dw 0x3AE ; + .dw 0x3AF ; + .dw 0x3B0 ; + .dw 0x3B1 ; + .dw 0x3B2 ; + .dw 0x3B3 ; + .dw 0x3B4 ; + .dw 0x3B5 ; + .dw 0x3B6 ; + .dw 0x3B7 ; + .dw 0x3B8 ; + .dw 0x3B9 ; + .dw 0x3BA ; + .dw 0x3BB ; + .dw 0x3BC ; + .dw 0x3BD ; + .dw 0x3BE ; + .dw 0x3BF ; +#endif + .dw 0x3C5 ; +#if 0 + // Not documented, but hardware takes them + // <reserved astat> &= CC + .dw 0x3C7 ; + .dw 0x3C8 ; + .dw 0x3C9 ; + .dw 0x3CA ; + .dw 0x3CB ; + .dw 0x3CC ; + .dw 0x3CD ; + .dw 0x3CE ; + .dw 0x3CF ; + .dw 0x3D0 ; + .dw 0x3D1 ; + .dw 0x3D2 ; + .dw 0x3D3 ; + .dw 0x3D4 ; + .dw 0x3D5 ; + .dw 0x3D6 ; + .dw 0x3D7 ; + .dw 0x3D8 ; + .dw 0x3D9 ; + .dw 0x3DA ; + .dw 0x3DB ; + .dw 0x3DC ; + .dw 0x3DD ; + .dw 0x3DE ; + .dw 0x3DF ; +#endif + .dw 0x3E5 ; +#if 0 + // Not documented, but hardware takes them + // <reserved astat> ^= CC + .dw 0x3E7 ; + .dw 0x3E8 ; + .dw 0x3E9 ; + .dw 0x3EA ; + .dw 0x3EB ; + .dw 0x3EC ; + .dw 0x3ED ; + .dw 0x3EE ; + .dw 0x3EF ; + .dw 0x3F0 ; + .dw 0x3F1 ; + .dw 0x3F2 ; + .dw 0x3F3 ; + .dw 0x3F4 ; + .dw 0x3F5 ; + .dw 0x3F6 ; + .dw 0x3F7 ; + .dw 0x3F8 ; + .dw 0x3F9 ; + .dw 0x3FA ; + .dw 0x3FB ; + .dw 0x3FC ; + .dw 0x3FD ; + .dw 0x3FE ; + .dw 0x3FF ; +#endif + .dw 0x3A00 ; + .dw 0x3A01 ; + .dw 0x3A02 ; + .dw 0x3A03 ; + .dw 0x3A04 ; + .dw 0x3A05 ; + .dw 0x3A06 ; + .dw 0x3A07 ; + .dw 0x3A08 ; + .dw 0x3A09 ; + .dw 0x3A0A ; + .dw 0x3A0B ; + .dw 0x3A0C ; + .dw 0x3A0D ; + .dw 0x3A0E ; + .dw 0x3A0F ; + .dw 0x3A10 ; + .dw 0x3A11 ; + .dw 0x3A12 ; + .dw 0x3A13 ; + .dw 0x3A14 ; + .dw 0x3A15 ; + .dw 0x3A16 ; + .dw 0x3A17 ; + .dw 0x3A18 ; + .dw 0x3A19 ; + .dw 0x3A1A ; + .dw 0x3A1B ; + .dw 0x3A1C ; + .dw 0x3A1D ; + .dw 0x3A1E ; + .dw 0x3A1F ; + .dw 0x3A20 ; + .dw 0x3A21 ; + .dw 0x3A22 ; + .dw 0x3A23 ; + .dw 0x3A24 ; + .dw 0x3A25 ; + .dw 0x3A26 ; + .dw 0x3A27 ; + .dw 0x3A28 ; + .dw 0x3A29 ; + .dw 0x3A2A ; + .dw 0x3A2B ; + .dw 0x3A2C ; + .dw 0x3A2D ; + .dw 0x3A2E ; + .dw 0x3A2F ; + .dw 0x3A30 ; + .dw 0x3A31 ; + .dw 0x3A32 ; + .dw 0x3A33 ; + .dw 0x3A34 ; + .dw 0x3A35 ; + .dw 0x3A36 ; + .dw 0x3A37 ; + .dw 0x3A38 ; + .dw 0x3A39 ; + .dw 0x3A3A ; + .dw 0x3A3B ; + .dw 0x3A3C ; + .dw 0x3A3D ; + .dw 0x3A3E ; + .dw 0x3A3F ; + .dw 0x3A40 ; + .dw 0x3A41 ; + .dw 0x3A42 ; + .dw 0x3A43 ; + .dw 0x3A44 ; + .dw 0x3A45 ; + .dw 0x3A46 ; + .dw 0x3A47 ; + .dw 0x3A48 ; + .dw 0x3A49 ; + .dw 0x3A4A ; + .dw 0x3A4B ; + .dw 0x3A4C ; + .dw 0x3A4D ; + .dw 0x3A4E ; + .dw 0x3A4F ; + .dw 0x3A50 ; + .dw 0x3A51 ; + .dw 0x3A52 ; + .dw 0x3A53 ; + .dw 0x3A54 ; + .dw 0x3A55 ; + .dw 0x3A56 ; + .dw 0x3A57 ; + .dw 0x3A58 ; + .dw 0x3A59 ; + .dw 0x3A5A ; + .dw 0x3A5B ; + .dw 0x3A5C ; + .dw 0x3A5D ; + .dw 0x3A5E ; + .dw 0x3A5F ; + .dw 0x3A60 ; + .dw 0x3A61 ; + .dw 0x3A62 ; + .dw 0x3A63 ; + .dw 0x3A64 ; + .dw 0x3A65 ; + .dw 0x3A66 ; + .dw 0x3A67 ; + .dw 0x3A68 ; + .dw 0x3A69 ; + .dw 0x3A6A ; + .dw 0x3A6B ; + .dw 0x3A6C ; + .dw 0x3A6D ; + .dw 0x3A6E ; + .dw 0x3A6F ; + .dw 0x3A70 ; + .dw 0x3A71 ; + .dw 0x3A72 ; + .dw 0x3A73 ; + .dw 0x3A74 ; + .dw 0x3A75 ; + .dw 0x3A76 ; + .dw 0x3A77 ; + .dw 0x3A78 ; + .dw 0x3A79 ; + .dw 0x3A7A ; + .dw 0x3A7B ; + .dw 0x3A7C ; + .dw 0x3A7D ; + .dw 0x3A7E ; + .dw 0x3A7F ; + .dw 0x3A80 ; + .dw 0x3A81 ; + .dw 0x3A82 ; + .dw 0x3A83 ; + .dw 0x3A84 ; + .dw 0x3A85 ; + .dw 0x3A86 ; + .dw 0x3A87 ; + .dw 0x3A88 ; + .dw 0x3A89 ; + .dw 0x3A8A ; + .dw 0x3A8B ; + .dw 0x3A8C ; + .dw 0x3A8D ; + .dw 0x3A8E ; + .dw 0x3A8F ; + .dw 0x3A90 ; + .dw 0x3A91 ; + .dw 0x3A92 ; + .dw 0x3A93 ; + .dw 0x3A94 ; + .dw 0x3A95 ; + .dw 0x3A96 ; + .dw 0x3A97 ; + .dw 0x3A98 ; + .dw 0x3A99 ; + .dw 0x3A9A ; + .dw 0x3A9B ; + .dw 0x3A9C ; + .dw 0x3A9D ; + .dw 0x3A9E ; + .dw 0x3A9F ; + .dw 0x3AA0 ; + .dw 0x3AA1 ; + .dw 0x3AA2 ; + .dw 0x3AA3 ; + .dw 0x3AA4 ; + .dw 0x3AA5 ; + .dw 0x3AA6 ; + .dw 0x3AA7 ; + .dw 0x3AA8 ; + .dw 0x3AA9 ; + .dw 0x3AAA ; + .dw 0x3AAB ; + .dw 0x3AAC ; + .dw 0x3AAD ; + .dw 0x3AAE ; + .dw 0x3AAF ; + .dw 0x3AB0 ; + .dw 0x3AB1 ; + .dw 0x3AB2 ; + .dw 0x3AB3 ; + .dw 0x3AB4 ; + .dw 0x3AB5 ; + .dw 0x3AB6 ; + .dw 0x3AB7 ; + .dw 0x3AB8 ; + .dw 0x3AB9 ; + .dw 0x3ABA ; + .dw 0x3ABB ; + .dw 0x3ABC ; + .dw 0x3ABD ; + .dw 0x3ABE ; + .dw 0x3ABF ; + .dw 0x3AC0 ; + .dw 0x3AC1 ; + .dw 0x3AC2 ; + .dw 0x3AC3 ; + .dw 0x3AC4 ; + .dw 0x3AC5 ; + .dw 0x3AC6 ; + .dw 0x3AC7 ; + .dw 0x3AC8 ; + .dw 0x3AC9 ; + .dw 0x3ACA ; + .dw 0x3ACB ; + .dw 0x3ACC ; + .dw 0x3ACD ; + .dw 0x3ACE ; + .dw 0x3ACF ; + .dw 0x3AD0 ; + .dw 0x3AD1 ; + .dw 0x3AD2 ; + .dw 0x3AD3 ; + .dw 0x3AD4 ; + .dw 0x3AD5 ; + .dw 0x3AD6 ; + .dw 0x3AD7 ; + .dw 0x3AD8 ; + .dw 0x3AD9 ; + .dw 0x3ADA ; + .dw 0x3ADB ; + .dw 0x3ADC ; + .dw 0x3ADD ; + .dw 0x3ADE ; + .dw 0x3ADF ; + .dw 0x3AE0 ; + .dw 0x3AE1 ; + .dw 0x3AE2 ; + .dw 0x3AE3 ; + .dw 0x3AE4 ; + .dw 0x3AE5 ; + .dw 0x3AE6 ; + .dw 0x3AE7 ; + .dw 0x3AE8 ; + .dw 0x3AE9 ; + .dw 0x3AEA ; + .dw 0x3AEB ; + .dw 0x3AEC ; + .dw 0x3AED ; + .dw 0x3AEE ; + .dw 0x3AEF ; + .dw 0x3AF0 ; + .dw 0x3AF1 ; + .dw 0x3AF2 ; + .dw 0x3AF3 ; + .dw 0x3AF4 ; + .dw 0x3AF5 ; + .dw 0x3AF6 ; + .dw 0x3AF7 ; + .dw 0x3AF8 ; + .dw 0x3AF9 ; + .dw 0x3AFA ; + .dw 0x3AFB ; + .dw 0x3AFC ; + .dw 0x3AFD ; + .dw 0x3AFE ; + .dw 0x3AFF ; + .dw 0x3B00 ; + .dw 0x3B01 ; + .dw 0x3B02 ; + .dw 0x3B03 ; + .dw 0x3B04 ; + .dw 0x3B05 ; + .dw 0x3B06 ; + .dw 0x3B07 ; + .dw 0x3B08 ; + .dw 0x3B09 ; + .dw 0x3B0A ; + .dw 0x3B0B ; + .dw 0x3B0C ; + .dw 0x3B0D ; + .dw 0x3B0E ; + .dw 0x3B0F ; + .dw 0x3B10 ; + .dw 0x3B11 ; + .dw 0x3B12 ; + .dw 0x3B13 ; + .dw 0x3B14 ; + .dw 0x3B15 ; + .dw 0x3B16 ; + .dw 0x3B17 ; + .dw 0x3B18 ; + .dw 0x3B19 ; + .dw 0x3B1A ; + .dw 0x3B1B ; + .dw 0x3B1C ; + .dw 0x3B1D ; + .dw 0x3B1E ; + .dw 0x3B1F ; + .dw 0x3B20 ; + .dw 0x3B21 ; + .dw 0x3B22 ; + .dw 0x3B23 ; + .dw 0x3B24 ; + .dw 0x3B25 ; + .dw 0x3B26 ; + .dw 0x3B27 ; + .dw 0x3B28 ; + .dw 0x3B29 ; + .dw 0x3B2A ; + .dw 0x3B2B ; + .dw 0x3B2C ; + .dw 0x3B2D ; + .dw 0x3B2E ; + .dw 0x3B2F ; + .dw 0x3B30 ; + .dw 0x3B31 ; + .dw 0x3B32 ; + .dw 0x3B33 ; + .dw 0x3B34 ; + .dw 0x3B35 ; + .dw 0x3B36 ; + .dw 0x3B37 ; + .dw 0x3B38 ; + .dw 0x3B39 ; + .dw 0x3B3A ; + .dw 0x3B3B ; + .dw 0x3B3C ; + .dw 0x3B3D ; + .dw 0x3B3E ; + .dw 0x3B3F ; + .dw 0x3B40 ; + .dw 0x3B41 ; + .dw 0x3B42 ; + .dw 0x3B43 ; + .dw 0x3B44 ; + .dw 0x3B45 ; + .dw 0x3B46 ; + .dw 0x3B47 ; + .dw 0x3B48 ; + .dw 0x3B49 ; + .dw 0x3B4A ; + .dw 0x3B4B ; + .dw 0x3B4C ; + .dw 0x3B4D ; + .dw 0x3B4E ; + .dw 0x3B4F ; + .dw 0x3B50 ; + .dw 0x3B51 ; + .dw 0x3B52 ; + .dw 0x3B53 ; + .dw 0x3B54 ; + .dw 0x3B55 ; + .dw 0x3B56 ; + .dw 0x3B57 ; + .dw 0x3B58 ; + .dw 0x3B59 ; + .dw 0x3B5A ; + .dw 0x3B5B ; + .dw 0x3B5C ; + .dw 0x3B5D ; + .dw 0x3B5E ; + .dw 0x3B5F ; + .dw 0x3B60 ; + .dw 0x3B61 ; + .dw 0x3B62 ; + .dw 0x3B63 ; + .dw 0x3B64 ; + .dw 0x3B65 ; + .dw 0x3B66 ; + .dw 0x3B67 ; + .dw 0x3B68 ; + .dw 0x3B69 ; + .dw 0x3B6A ; + .dw 0x3B6B ; + .dw 0x3B6C ; + .dw 0x3B6D ; + .dw 0x3B6E ; + .dw 0x3B6F ; + .dw 0x3B70 ; + .dw 0x3B71 ; + .dw 0x3B72 ; + .dw 0x3B73 ; + .dw 0x3B74 ; + .dw 0x3B75 ; + .dw 0x3B76 ; + .dw 0x3B77 ; + .dw 0x3B78 ; + .dw 0x3B79 ; + .dw 0x3B7A ; + .dw 0x3B7B ; + .dw 0x3B7C ; + .dw 0x3B7D ; + .dw 0x3B7E ; + .dw 0x3B7F ; + .dw 0x3B80 ; + .dw 0x3B81 ; + .dw 0x3B82 ; + .dw 0x3B83 ; + .dw 0x3B84 ; + .dw 0x3B85 ; + .dw 0x3B86 ; + .dw 0x3B87 ; + .dw 0x3B88 ; + .dw 0x3B89 ; + .dw 0x3B8A ; + .dw 0x3B8B ; + .dw 0x3B8C ; + .dw 0x3B8D ; + .dw 0x3B8E ; + .dw 0x3B8F ; + .dw 0x3B90 ; + .dw 0x3B91 ; + .dw 0x3B92 ; + .dw 0x3B93 ; + .dw 0x3B94 ; + .dw 0x3B95 ; + .dw 0x3B96 ; + .dw 0x3B97 ; + .dw 0x3B98 ; + .dw 0x3B99 ; + .dw 0x3B9A ; + .dw 0x3B9B ; + .dw 0x3B9C ; + .dw 0x3B9D ; + .dw 0x3B9E ; + .dw 0x3B9F ; + .dw 0x3BA0 ; + .dw 0x3BA1 ; + .dw 0x3BA2 ; + .dw 0x3BA3 ; + .dw 0x3BA4 ; + .dw 0x3BA5 ; + .dw 0x3BA6 ; + .dw 0x3BA7 ; + .dw 0x3BA8 ; + .dw 0x3BA9 ; + .dw 0x3BAA ; + .dw 0x3BAB ; + .dw 0x3BAC ; + .dw 0x3BAD ; + .dw 0x3BAE ; + .dw 0x3BAF ; + .dw 0x3BB0 ; + .dw 0x3BB1 ; + .dw 0x3BB2 ; + .dw 0x3BB3 ; + .dw 0x3BB4 ; + .dw 0x3BB5 ; + .dw 0x3BB6 ; + .dw 0x3BB7 ; + .dw 0x3BB8 ; + .dw 0x3BB9 ; + .dw 0x3BBA ; + .dw 0x3BBB ; + .dw 0x3BBC ; + .dw 0x3BBD ; + .dw 0x3BBE ; + .dw 0x3BBF ; + .dw 0x3BC0 ; + .dw 0x3BC1 ; + .dw 0x3BC2 ; + .dw 0x3BC3 ; + .dw 0x3BC4 ; + .dw 0x3BC5 ; + .dw 0x3BC6 ; + .dw 0x3BC7 ; + .dw 0x3BC8 ; + .dw 0x3BC9 ; + .dw 0x3BCA ; + .dw 0x3BCB ; + .dw 0x3BCC ; + .dw 0x3BCD ; + .dw 0x3BCE ; + .dw 0x3BCF ; + .dw 0x3BD0 ; + .dw 0x3BD1 ; + .dw 0x3BD2 ; + .dw 0x3BD3 ; + .dw 0x3BD4 ; + .dw 0x3BD5 ; + .dw 0x3BD6 ; + .dw 0x3BD7 ; + .dw 0x3BD8 ; + .dw 0x3BD9 ; + .dw 0x3BDA ; + .dw 0x3BDB ; + .dw 0x3BDC ; + .dw 0x3BDD ; + .dw 0x3BDE ; + .dw 0x3BDF ; + .dw 0x3BE0 ; + .dw 0x3BE1 ; + .dw 0x3BE2 ; + .dw 0x3BE3 ; + .dw 0x3BE4 ; + .dw 0x3BE5 ; + .dw 0x3BE6 ; + .dw 0x3BE7 ; + .dw 0x3BE8 ; + .dw 0x3BE9 ; + .dw 0x3BEA ; + .dw 0x3BEB ; + .dw 0x3BEC ; + .dw 0x3BED ; + .dw 0x3BEE ; + .dw 0x3BEF ; + .dw 0x3BF0 ; + .dw 0x3BF1 ; + .dw 0x3BF2 ; + .dw 0x3BF3 ; + .dw 0x3BF4 ; + .dw 0x3BF5 ; + .dw 0x3BF6 ; + .dw 0x3BF7 ; + .dw 0x3BF8 ; + .dw 0x3BF9 ; + .dw 0x3BFA ; + .dw 0x3BFB ; + .dw 0x3BFC ; + .dw 0x3BFD ; + .dw 0x3BFE ; + .dw 0x3BFF ; + .dw 0x3140 ; + .dw 0x3141 ; + .dw 0x3142 ; + .dw 0x3143 ; + .dw 0x3144 ; + .dw 0x3145 ; + .dw 0x3146 ; + .dw 0x3147 ; + .dw 0x3148 ; + .dw 0x3149 ; + .dw 0x314A ; + .dw 0x314B ; + .dw 0x314C ; + .dw 0x314D ; + .dw 0x314E ; + .dw 0x314F ; + .dw 0x3150 ; + .dw 0x3151 ; + .dw 0x3152 ; + .dw 0x3153 ; + .dw 0x3154 ; + .dw 0x3155 ; + .dw 0x3156 ; + .dw 0x3157 ; + .dw 0x3158 ; + .dw 0x3159 ; + .dw 0x315A ; + .dw 0x315B ; + .dw 0x315C ; + .dw 0x315D ; + .dw 0x315E ; + .dw 0x315F ; + .dw 0x3160 ; + .dw 0x3161 ; + .dw 0x3162 ; + .dw 0x3163 ; + .dw 0x3164 ; + .dw 0x3165 ; + .dw 0x3166 ; + .dw 0x3167 ; + .dw 0x3168 ; + .dw 0x3169 ; + .dw 0x316A ; + .dw 0x316B ; + .dw 0x316C ; + .dw 0x316D ; + .dw 0x316E ; + .dw 0x316F ; + .dw 0x3170 ; + .dw 0x3171 ; + .dw 0x3172 ; + .dw 0x3173 ; + .dw 0x3174 ; + .dw 0x3175 ; + .dw 0x3176 ; + .dw 0x3177 ; + .dw 0x3178 ; + .dw 0x3179 ; + .dw 0x317A ; + .dw 0x317B ; + .dw 0x317C ; + .dw 0x317D ; + .dw 0x317E ; + .dw 0x317F ; + .dw 0x3340 ; + .dw 0x3341 ; + .dw 0x3342 ; + .dw 0x3343 ; + .dw 0x3344 ; + .dw 0x3345 ; + .dw 0x3346 ; + .dw 0x3347 ; + .dw 0x3348 ; + .dw 0x3349 ; + .dw 0x334A ; + .dw 0x334B ; + .dw 0x334C ; + .dw 0x334D ; + .dw 0x334E ; + .dw 0x334F ; + .dw 0x3350 ; + .dw 0x3351 ; + .dw 0x3352 ; + .dw 0x3353 ; + .dw 0x3354 ; + .dw 0x3355 ; + .dw 0x3356 ; + .dw 0x3357 ; + .dw 0x3358 ; + .dw 0x3359 ; + .dw 0x335A ; + .dw 0x335B ; + .dw 0x335C ; + .dw 0x335D ; + .dw 0x335E ; + .dw 0x335F ; + .dw 0x3360 ; + .dw 0x3361 ; + .dw 0x3362 ; + .dw 0x3363 ; + .dw 0x3364 ; + .dw 0x3365 ; + .dw 0x3366 ; + .dw 0x3367 ; + .dw 0x3368 ; + .dw 0x3369 ; + .dw 0x336A ; + .dw 0x336B ; + .dw 0x336C ; + .dw 0x336D ; + .dw 0x336E ; + .dw 0x336F ; + .dw 0x3370 ; + .dw 0x3371 ; + .dw 0x3372 ; + .dw 0x3373 ; + .dw 0x3374 ; + .dw 0x3375 ; + .dw 0x3376 ; + .dw 0x3377 ; + .dw 0x3378 ; + .dw 0x3379 ; + .dw 0x337A ; + .dw 0x337B ; + .dw 0x337C ; + .dw 0x337D ; + .dw 0x337E ; + .dw 0x337F ; + .dw 0x3540 ; + .dw 0x3541 ; + .dw 0x3542 ; + .dw 0x3543 ; + .dw 0x3544 ; + .dw 0x3545 ; + .dw 0x3546 ; + .dw 0x3547 ; + .dw 0x3548 ; + .dw 0x3549 ; + .dw 0x354A ; + .dw 0x354B ; + .dw 0x354C ; + .dw 0x354D ; + .dw 0x354E ; + .dw 0x354F ; + .dw 0x3550 ; + .dw 0x3551 ; + .dw 0x3552 ; + .dw 0x3553 ; + .dw 0x3554 ; + .dw 0x3555 ; + .dw 0x3556 ; + .dw 0x3557 ; + .dw 0x3558 ; + .dw 0x3559 ; + .dw 0x355A ; + .dw 0x355B ; + .dw 0x355C ; + .dw 0x355D ; + .dw 0x355E ; + .dw 0x355F ; + .dw 0x3560 ; + .dw 0x3561 ; + .dw 0x3562 ; + .dw 0x3563 ; + .dw 0x3564 ; + .dw 0x3565 ; + .dw 0x3566 ; + .dw 0x3567 ; + .dw 0x3568 ; + .dw 0x3569 ; + .dw 0x356A ; + .dw 0x356B ; + .dw 0x356C ; + .dw 0x356D ; + .dw 0x356E ; + .dw 0x356F ; + .dw 0x3570 ; + .dw 0x3571 ; + .dw 0x3572 ; + .dw 0x3573 ; + .dw 0x3574 ; + .dw 0x3575 ; + .dw 0x3576 ; + .dw 0x3577 ; + .dw 0x3578 ; + .dw 0x3579 ; + .dw 0x357A ; + .dw 0x357B ; + .dw 0x357C ; + .dw 0x357D ; + .dw 0x357E ; + .dw 0x357F ; + .dw 0x3740 ; + .dw 0x3741 ; + .dw 0x3742 ; + .dw 0x3743 ; + .dw 0x3744 ; + .dw 0x3745 ; + .dw 0x3746 ; + .dw 0x3747 ; + .dw 0x3748 ; + .dw 0x3749 ; + .dw 0x374A ; + .dw 0x374B ; + .dw 0x374C ; + .dw 0x374D ; + .dw 0x374E ; + .dw 0x374F ; + .dw 0x3750 ; + .dw 0x3751 ; + .dw 0x3752 ; + .dw 0x3753 ; + .dw 0x3754 ; + .dw 0x3755 ; + .dw 0x3756 ; + .dw 0x3757 ; + .dw 0x3758 ; + .dw 0x3759 ; + .dw 0x375A ; + .dw 0x375B ; + .dw 0x375C ; + .dw 0x375D ; + .dw 0x375E ; + .dw 0x375F ; + .dw 0x3760 ; + .dw 0x3761 ; + .dw 0x3762 ; + .dw 0x3763 ; + .dw 0x3764 ; + .dw 0x3765 ; + .dw 0x3766 ; + .dw 0x3767 ; + .dw 0x3768 ; + .dw 0x3769 ; + .dw 0x376A ; + .dw 0x376B ; + .dw 0x376C ; + .dw 0x376D ; + .dw 0x376E ; + .dw 0x376F ; + .dw 0x3770 ; + .dw 0x3771 ; + .dw 0x3772 ; + .dw 0x3773 ; + .dw 0x3774 ; + .dw 0x3775 ; + .dw 0x3776 ; + .dw 0x3777 ; + .dw 0x3778 ; + .dw 0x3779 ; + .dw 0x377A ; + .dw 0x377B ; + .dw 0x377C ; + .dw 0x377D ; + .dw 0x377E ; + .dw 0x377F ; + .dw 0x3940 ; + .dw 0x3941 ; + .dw 0x3942 ; + .dw 0x3943 ; + .dw 0x3944 ; + .dw 0x3945 ; + .dw 0x3946 ; + .dw 0x3947 ; + .dw 0x3948 ; + .dw 0x3949 ; + .dw 0x394A ; + .dw 0x394B ; + .dw 0x394C ; + .dw 0x394D ; + .dw 0x394E ; + .dw 0x394F ; + .dw 0x3950 ; + .dw 0x3951 ; + .dw 0x3952 ; + .dw 0x3953 ; + .dw 0x3954 ; + .dw 0x3955 ; + .dw 0x3956 ; + .dw 0x3957 ; + .dw 0x3958 ; + .dw 0x3959 ; + .dw 0x395A ; + .dw 0x395B ; + .dw 0x395C ; + .dw 0x395D ; + .dw 0x395E ; + .dw 0x395F ; + .dw 0x3960 ; + .dw 0x3961 ; + .dw 0x3962 ; + .dw 0x3963 ; + .dw 0x3964 ; + .dw 0x3965 ; + .dw 0x3966 ; + .dw 0x3967 ; + .dw 0x3968 ; + .dw 0x3969 ; + .dw 0x396A ; + .dw 0x396B ; + .dw 0x396C ; + .dw 0x396D ; + .dw 0x396E ; + .dw 0x396F ; + .dw 0x3970 ; + .dw 0x3971 ; + .dw 0x3972 ; + .dw 0x3973 ; + .dw 0x3974 ; + .dw 0x3975 ; + .dw 0x3976 ; + .dw 0x3977 ; + .dw 0x3978 ; + .dw 0x3979 ; + .dw 0x397A ; + .dw 0x397B ; + .dw 0x397C ; + .dw 0x397D ; + .dw 0x397E ; + .dw 0x397F ; + .dw 0x3D40 ; + .dw 0x3D41 ; + .dw 0x3D42 ; + .dw 0x3D43 ; + .dw 0x3D44 ; + .dw 0x3D45 ; + .dw 0x3D46 ; + .dw 0x3D47 ; + .dw 0x3D48 ; + .dw 0x3D49 ; + .dw 0x3D4A ; + .dw 0x3D4B ; + .dw 0x3D4C ; + .dw 0x3D4D ; + .dw 0x3D4E ; + .dw 0x3D4F ; + .dw 0x3D50 ; + .dw 0x3D51 ; + .dw 0x3D52 ; + .dw 0x3D53 ; + .dw 0x3D54 ; + .dw 0x3D55 ; + .dw 0x3D56 ; + .dw 0x3D57 ; + .dw 0x3D58 ; + .dw 0x3D59 ; + .dw 0x3D5A ; + .dw 0x3D5B ; + .dw 0x3D5C ; + .dw 0x3D5D ; + .dw 0x3D5E ; + .dw 0x3D5F ; + .dw 0x3D60 ; + .dw 0x3D61 ; + .dw 0x3D62 ; + .dw 0x3D63 ; + .dw 0x3D64 ; + .dw 0x3D65 ; + .dw 0x3D66 ; + .dw 0x3D67 ; + .dw 0x3D68 ; + .dw 0x3D69 ; + .dw 0x3D6A ; + .dw 0x3D6B ; + .dw 0x3D6C ; + .dw 0x3D6D ; + .dw 0x3D6E ; + .dw 0x3D6F ; + .dw 0x3D70 ; + .dw 0x3D71 ; + .dw 0x3D72 ; + .dw 0x3D73 ; + .dw 0x3D74 ; + .dw 0x3D75 ; + .dw 0x3D76 ; + .dw 0x3D77 ; + .dw 0x3D78 ; + .dw 0x3D79 ; + .dw 0x3D7A ; + .dw 0x3D7B ; + .dw 0x3D7C ; + .dw 0x3D7D ; + .dw 0x3D7E ; + .dw 0x3D7F ; + .dw 0x3F40 ; + .dw 0x3F41 ; + .dw 0x3F42 ; + .dw 0x3F43 ; + .dw 0x3F44 ; + .dw 0x3F45 ; + .dw 0x3F46 ; + .dw 0x3F47 ; + .dw 0x3F48 ; + .dw 0x3F49 ; + .dw 0x3F4A ; + .dw 0x3F4B ; + .dw 0x3F4C ; + .dw 0x3F4D ; + .dw 0x3F4E ; + .dw 0x3F4F ; + .dw 0x3F50 ; + .dw 0x3F51 ; + .dw 0x3F52 ; + .dw 0x3F53 ; + .dw 0x3F54 ; + .dw 0x3F55 ; + .dw 0x3F56 ; + .dw 0x3F57 ; + .dw 0x3F58 ; + .dw 0x3F59 ; + .dw 0x3F5A ; + .dw 0x3F5B ; + .dw 0x3F5C ; + .dw 0x3F5D ; + .dw 0x3F5E ; + .dw 0x3F5F ; + .dw 0x3F60 ; + .dw 0x3F61 ; + .dw 0x3F62 ; + .dw 0x3F63 ; + .dw 0x3F64 ; + .dw 0x3F65 ; + .dw 0x3F66 ; + .dw 0x3F67 ; + .dw 0x3F68 ; + .dw 0x3F69 ; + .dw 0x3F6A ; + .dw 0x3F6B ; + .dw 0x3F6C ; + .dw 0x3F6D ; + .dw 0x3F6E ; + .dw 0x3F6F ; + .dw 0x3F70 ; + .dw 0x3F71 ; + .dw 0x3F72 ; + .dw 0x3F73 ; + .dw 0x3F74 ; + .dw 0x3F75 ; + .dw 0x3F76 ; + .dw 0x3F77 ; + .dw 0x3F78 ; + .dw 0x3F79 ; + .dw 0x3F7A ; + .dw 0x3F7B ; + .dw 0x3F7C ; + .dw 0x3F7D ; + .dw 0x3F7E ; + .dw 0x3F7F ; + .dw 0x3104 ; + .dw 0x3105 ; + .dw 0x310C ; + .dw 0x310D ; + .dw 0x3114 ; + .dw 0x3115 ; + .dw 0x311C ; + .dw 0x311D ; + .dw 0x3124 ; + .dw 0x3125 ; + .dw 0x312C ; + .dw 0x312D ; + .dw 0x3134 ; + .dw 0x3135 ; + .dw 0x313C ; + .dw 0x313D ; + .dw 0x3304 ; + .dw 0x3305 ; + .dw 0x330C ; + .dw 0x330D ; + .dw 0x3314 ; + .dw 0x3315 ; + .dw 0x331C ; + .dw 0x331D ; + .dw 0x3324 ; + .dw 0x3325 ; + .dw 0x332C ; + .dw 0x332D ; + .dw 0x3334 ; + .dw 0x3335 ; + .dw 0x333C ; + .dw 0x333D ; + .dw 0x3504 ; + .dw 0x3505 ; + .dw 0x350C ; + .dw 0x350D ; + .dw 0x3514 ; + .dw 0x3515 ; + .dw 0x351C ; + .dw 0x351D ; + .dw 0x3524 ; + .dw 0x3525 ; + .dw 0x352C ; + .dw 0x352D ; + .dw 0x3534 ; + .dw 0x3535 ; + .dw 0x353C ; + .dw 0x353D ; + .dw 0x3704 ; + .dw 0x3705 ; + .dw 0x370C ; + .dw 0x370D ; + .dw 0x3714 ; + .dw 0x3715 ; + .dw 0x371C ; + .dw 0x371D ; + .dw 0x3724 ; + .dw 0x3725 ; + .dw 0x372C ; + .dw 0x372D ; + .dw 0x3734 ; + .dw 0x3735 ; + .dw 0x373C ; + .dw 0x373D ; + .dw 0x3904 ; + .dw 0x3905 ; + .dw 0x390C ; + .dw 0x390D ; + .dw 0x3914 ; + .dw 0x3915 ; + .dw 0x391C ; + .dw 0x391D ; + .dw 0x3924 ; + .dw 0x3925 ; + .dw 0x392C ; + .dw 0x392D ; + .dw 0x3934 ; + .dw 0x3935 ; + .dw 0x393C ; + .dw 0x393D ; + .dw 0x3D04 ; + .dw 0x3D05 ; + .dw 0x3D0C ; + .dw 0x3D0D ; + .dw 0x3D14 ; + .dw 0x3D15 ; + .dw 0x3D1C ; + .dw 0x3D1D ; + .dw 0x3D24 ; + .dw 0x3D25 ; + .dw 0x3D2C ; + .dw 0x3D2D ; + .dw 0x3D34 ; + .dw 0x3D35 ; + .dw 0x3D3C ; + .dw 0x3D3D ; + .dw 0x3F04 ; + .dw 0x3F05 ; + .dw 0x3F0C ; + .dw 0x3F0D ; + .dw 0x3F14 ; + .dw 0x3F15 ; + .dw 0x3F1C ; + .dw 0x3F1D ; + .dw 0x3F24 ; + .dw 0x3F25 ; + .dw 0x3F2C ; + .dw 0x3F2D ; + .dw 0x3F34 ; + .dw 0x3F35 ; + .dw 0x3F3C ; + .dw 0x3F3D ; + .dw 0x3820 ; + .dw 0x3821 ; + .dw 0x3822 ; + .dw 0x3823 ; + .dw 0x3824 ; + .dw 0x3825 ; + .dw 0x3826 ; + .dw 0x3827 ; + .dw 0x3828 ; + .dw 0x3829 ; + .dw 0x382A ; + .dw 0x382B ; + .dw 0x382C ; + .dw 0x382D ; + .dw 0x382E ; + .dw 0x382F ; + .dw 0x3860 ; + .dw 0x3861 ; + .dw 0x3862 ; + .dw 0x3863 ; + .dw 0x3864 ; + .dw 0x3865 ; + .dw 0x3866 ; + .dw 0x3867 ; + .dw 0x3868 ; + .dw 0x3869 ; + .dw 0x386A ; + .dw 0x386B ; + .dw 0x386C ; + .dw 0x386D ; + .dw 0x386E ; + .dw 0x386F ; + .dw 0x38A0 ; + .dw 0x38A1 ; + .dw 0x38A2 ; + .dw 0x38A3 ; + .dw 0x38A4 ; + .dw 0x38A5 ; + .dw 0x38A6 ; + .dw 0x38A7 ; + .dw 0x38A8 ; + .dw 0x38A9 ; + .dw 0x38AA ; + .dw 0x38AB ; + .dw 0x38AC ; + .dw 0x38AD ; + .dw 0x38AE ; + .dw 0x38AF ; + .dw 0x38E0 ; + .dw 0x38E1 ; + .dw 0x38E2 ; + .dw 0x38E3 ; + .dw 0x38E4 ; + .dw 0x38E5 ; + .dw 0x38E6 ; + .dw 0x38E7 ; + .dw 0x38E8 ; + .dw 0x38E9 ; + .dw 0x38EA ; + .dw 0x38EB ; + .dw 0x38EC ; + .dw 0x38ED ; + .dw 0x38EE ; + .dw 0x38EF ; + .dw 0x3920 ; + .dw 0x3921 ; + .dw 0x3922 ; + .dw 0x3923 ; + .dw 0x3924 ; + .dw 0x3925 ; + .dw 0x3926 ; + .dw 0x3927 ; + .dw 0x3928 ; + .dw 0x3929 ; + .dw 0x392A ; + .dw 0x392B ; + .dw 0x392C ; + .dw 0x392D ; + .dw 0x392E ; + .dw 0x392F ; + .dw 0x39A0 ; + .dw 0x39A1 ; + .dw 0x39A2 ; + .dw 0x39A3 ; + .dw 0x39A4 ; + .dw 0x39A5 ; + .dw 0x39A6 ; + .dw 0x39A7 ; + .dw 0x39A8 ; + .dw 0x39A9 ; + .dw 0x39AA ; + .dw 0x39AB ; + .dw 0x39AC ; + .dw 0x39AD ; + .dw 0x39AE ; + .dw 0x39AF ; + .dw 0x39E0 ; + .dw 0x39E1 ; + .dw 0x39E2 ; + .dw 0x39E3 ; + .dw 0x39E4 ; + .dw 0x39E5 ; + .dw 0x39E6 ; + .dw 0x39E7 ; + .dw 0x39E8 ; + .dw 0x39E9 ; + .dw 0x39EA ; + .dw 0x39EB ; + .dw 0x39EC ; + .dw 0x39ED ; + .dw 0x39EE ; + .dw 0x39EF ; +#if 0 + // EMUDAT = Dreg; is valid + .dw 0x3E38 ; + .dw 0x3E39 ; + .dw 0x3E3A ; + .dw 0x3E3B ; + .dw 0x3E3C ; + .dw 0x3E3D ; + .dw 0x3E3E ; + .dw 0x3E3F ; + // EMUDAT = Preg; is valid + .dw 0x3E78 ; + .dw 0x3E79 ; + .dw 0x3E7A ; + .dw 0x3E7B ; + .dw 0x3E7C ; + .dw 0x3E7D ; + .dw 0x3E7E ; + .dw 0x3E7F ; + // EMUDAT = Ireg; is valid + .dw 0x3EB8 ; + .dw 0x3EB9 ; + .dw 0x3EBA ; + .dw 0x3EBB ; + // EMUDAT = Mreg; is valid + .dw 0x3EBC ; + .dw 0x3EBD ; + .dw 0x3EBE ; + .dw 0x3EBF ; + // EMUDAT = Breg; is valid + .dw 0x3EF8 ; + .dw 0x3EF9 ; + .dw 0x3EFA ; + .dw 0x3EFB ; + // EMUDAT = Lreg; is valid + .dw 0x3EFC ; + .dw 0x3EFD ; + .dw 0x3EFE ; + .dw 0x3EFF ; + // EMUDAT = Areg; is valid + .dw 0x3F38 ; + .dw 0x3F39 ; + .dw 0x3F3A ; + .dw 0x3F3B ; +#endif + .dw 0x3F3C ; + .dw 0x3F3D ; +#if 0 + // EMUDAT = ASTAT; is valid + .dw 0x3F3E ; + // EMUDAT = RETS; is valid + .dw 0x3F3F ; + // EMUDAT = loopregs; is valid + .dw 0x3FB8 ; + .dw 0x3FB9 ; + .dw 0x3FBA ; + .dw 0x3FBB ; + .dw 0x3FBC ; + .dw 0x3FBD ; + // EMUDAT = cycles; is valid + .dw 0x3FBE ; + .dw 0x3FBF ; + // EMUDAT = USP; is valid + .dw 0x3FF8 ; + // EMUDAT = SEQSTAT; is valid + .dw 0x3FF9 ; + // EMUDAT = SYSCFG; is valid + .dw 0x3FFA ; + // EMDUAT = RET[IXNE]; is valid + .dw 0x3FFB ; + .dw 0x3FFC ; + .dw 0x3FFD ; + .dw 0x3FFE ; + // EMUDAT = EMUDAT; is valid + .dw 0x3FFF ; + // Dreg = EMUDAT; is valid + .dw 0x31C7 ; + .dw 0x31CF ; + .dw 0x31D7 ; + .dw 0x31DF ; +#if 0 + // R4 = EMUDAT; breaks the test + .dw 0x31E7 ; + // R5 = EMUDAT; breaks the test + .dw 0x31EF ; +#endif + .dw 0x31F7 ; + .dw 0x31FF ; + // Preg = EMUDAT; is valid + .dw 0x33C7 ; + .dw 0x33CF ; + .dw 0x33D7 ; + .dw 0x33DF ; + .dw 0x33E7 ; + .dw 0x33EF ; + .dw 0x33F7 ; + .dw 0x33FF ; + // Ireg = EMUDAT; is valid + .dw 0x35C7 ; + .dw 0x35CF ; + .dw 0x35D7 ; + .dw 0x35DF ; + // Mreg = EMUDAT; is valid + .dw 0x35E7 ; + .dw 0x35EF ; + .dw 0x35F7 ; + .dw 0x35FF ; + // EMUDAT = Breg; is valid + .dw 0x37C7 ; + .dw 0x37CF ; + .dw 0x37D7 ; + .dw 0x37DF ; + // EMUDAT = Lreg; is valid + .dw 0x37E7 ; + .dw 0x37EF ; + .dw 0x37F7 ; + .dw 0x37FF ; +#endif + .dw 0x39C7 ; + .dw 0x39CF ; + .dw 0x39D7 ; + .dw 0x39DF ; + .dw 0x39E7 ; + .dw 0x39EF ; +#if 0 + // ASTAT = EMUDAT; is valid + .dw 0x39F7 ; + // RETS = EMUDAT; is valid + .dw 0x39FF ; + // loopregs = EMUDAT; is valid + .dw 0x3DC7 ; + .dw 0x3DCF ; + .dw 0x3DD7 ; + .dw 0x3DDF ; + .dw 0x3DE7 ; + .dw 0x3DEF ; + // cycles = EMUDAT; is valid + .dw 0x3DF7 ; + .dw 0x3DFF ; + // USP = EMUDAT; is valid + .dw 0x3FC7 ; + // SEQSTAT = EMUDAT; is valid + .dw 0x3FCF ; + // SYSCFG = EMUDAT; is valid + .dw 0x3FD7 ; + // RET[IXNE] = EMUDAT; is valid + .dw 0x3FDF ; + .dw 0x3FE7 ; + .dw 0x3FEF ; + .dw 0x3FF7 ; + // EMUDAT = EMUDAT; is valid + .dw 0x3FFF ; +#endif + .dw 0x3D80 ; + .dw 0x3D81 ; + .dw 0x3D82 ; + .dw 0x3D83 ; + .dw 0x3D84 ; + .dw 0x3D85 ; + .dw 0x3D86 ; + .dw 0x3D87 ; + .dw 0x3D88 ; + .dw 0x3D89 ; + .dw 0x3D8A ; + .dw 0x3D8B ; + .dw 0x3D8C ; + .dw 0x3D8D ; + .dw 0x3D8E ; + .dw 0x3D8F ; + .dw 0x3D90 ; + .dw 0x3D91 ; + .dw 0x3D92 ; + .dw 0x3D93 ; + .dw 0x3D94 ; + .dw 0x3D95 ; + .dw 0x3D96 ; + .dw 0x3D97 ; + .dw 0x3D98 ; + .dw 0x3D99 ; + .dw 0x3D9A ; + .dw 0x3D9B ; + .dw 0x3D9C ; + .dw 0x3D9D ; + .dw 0x3D9E ; + .dw 0x3D9F ; + .dw 0x3DA0 ; + .dw 0x3DA1 ; + .dw 0x3DA2 ; + .dw 0x3DA3 ; + .dw 0x3DA4 ; + .dw 0x3DA5 ; + .dw 0x3DA6 ; + .dw 0x3DA7 ; + .dw 0x3DA8 ; + .dw 0x3DA9 ; + .dw 0x3DAA ; + .dw 0x3DAB ; + .dw 0x3DAC ; + .dw 0x3DAD ; + .dw 0x3DAE ; + .dw 0x3DAF ; + .dw 0x3DB0 ; + .dw 0x3DB1 ; + .dw 0x3DB2 ; + .dw 0x3DB3 ; + .dw 0x3DB4 ; + .dw 0x3DB5 ; + .dw 0x3DB6 ; + .dw 0x3DB7 ; + .dw 0x3DB8 ; + .dw 0x3DB9 ; + .dw 0x3DBA ; + .dw 0x3DBB ; + .dw 0x3DBC ; + .dw 0x3DBD ; + .dw 0x3DBE ; + .dw 0x3DBF ; + .dw 0x3DC1 ; + .dw 0x3DC2 ; + .dw 0x3DC3 ; + .dw 0x3DC4 ; + .dw 0x3DC5 ; + .dw 0x3DC6 ; +#if 0 + // loopregs = EMUDAT; is valid + .dw 0x3DC7 ; +#endif + .dw 0x3DC9 ; + .dw 0x3DCA ; + .dw 0x3DCB ; + .dw 0x3DCC ; + .dw 0x3DCD ; + .dw 0x3DCE ; +#if 0 + // loopregs = EMUDAT; is valid + .dw 0x3DCF ; +#endif + .dw 0x3DD1 ; + .dw 0x3DD2 ; + .dw 0x3DD3 ; + .dw 0x3DD4 ; + .dw 0x3DD5 ; + .dw 0x3DD6 ; +#if 0 + // loopregs = EMUDAT; is valid + .dw 0x3DD7 ; +#endif + .dw 0x3DD9 ; + .dw 0x3DDA ; + .dw 0x3DDB ; + .dw 0x3DDC ; + .dw 0x3DDD ; + .dw 0x3DDE ; +#if 0 + // loopregs = EMUDAT; is valid + .dw 0x3DDF ; +#endif + .dw 0x3DE1 ; + .dw 0x3DE2 ; + .dw 0x3DE3 ; + .dw 0x3DE4 ; + .dw 0x3DE5 ; + .dw 0x3DE6 ; +#if 0 + // loopregs = EMUDAT; is valid + .dw 0x3DE7 ; +#endif + .dw 0x3DE9 ; + .dw 0x3DEA ; + .dw 0x3DEB ; + .dw 0x3DEC ; + .dw 0x3DED ; + .dw 0x3DEE ; +#if 0 + // loopregs = EMUDAT; is valid + .dw 0x3DEF ; +#endif + .dw 0x3DF1 ; + .dw 0x3DF2 ; + .dw 0x3DF3 ; + .dw 0x3DF4 ; + .dw 0x3DF5 ; + .dw 0x3DF6 ; +#if 0 + // cycles = EMUDAT; is valid + .dw 0x3DF7 ; +#endif + .dw 0x3DF9 ; + .dw 0x3DFA ; + .dw 0x3DFB ; + .dw 0x3DFC ; + .dw 0x3DFD ; + .dw 0x3DFE ; +#if 0 + // cycles = EMUDAT; is valid + .dw 0x3DFF ; +#endif + .dw 0x3F88 ; + .dw 0x3F89 ; + .dw 0x3F8A ; + .dw 0x3F8B ; + .dw 0x3F8C ; + .dw 0x3F8D ; + .dw 0x3F8E ; + .dw 0x3F8F ; + .dw 0x3F90 ; + .dw 0x3F91 ; + .dw 0x3F92 ; + .dw 0x3F93 ; + .dw 0x3F94 ; + .dw 0x3F95 ; + .dw 0x3F96 ; + .dw 0x3F97 ; + .dw 0x3F98 ; + .dw 0x3F99 ; + .dw 0x3F9A ; + .dw 0x3F9B ; + .dw 0x3F9C ; + .dw 0x3F9D ; + .dw 0x3F9E ; + .dw 0x3F9F ; + .dw 0x3FA0 ; + .dw 0x3FA1 ; + .dw 0x3FA2 ; + .dw 0x3FA3 ; + .dw 0x3FA4 ; + .dw 0x3FA5 ; + .dw 0x3FA6 ; + .dw 0x3FA7 ; + .dw 0x3FA8 ; + .dw 0x3FA9 ; + .dw 0x3FAA ; + .dw 0x3FAB ; + .dw 0x3FAC ; + .dw 0x3FAD ; + .dw 0x3FAE ; + .dw 0x3FAF ; + .dw 0x3FB0 ; + .dw 0x3FB1 ; + .dw 0x3FB2 ; + .dw 0x3FB3 ; + .dw 0x3FB4 ; + .dw 0x3FB5 ; + .dw 0x3FB6 ; + .dw 0x3FB7 ; +#if 0 + // EMUDAT = loopregs; is valid + .dw 0x3FB8 ; + .dw 0x3FB9 ; + .dw 0x3FBA ; + .dw 0x3FBB ; + .dw 0x3FBC ; + .dw 0x3FBD ; + // EMUDAT = cycles; is valid + .dw 0x3FBE ; + .dw 0x3FBF ; +#endif + .dw 0x3FC9 ; + .dw 0x3FCA ; + .dw 0x3FCB ; + .dw 0x3FCC ; + .dw 0x3FCD ; + .dw 0x3FCE ; +#if 0 + // SEQSTAT = EMUDAT; is valid + .dw 0x3FCF ; +#endif + .dw 0x3FD1 ; + .dw 0x3FD2 ; + .dw 0x3FD3 ; + .dw 0x3FD4 ; + .dw 0x3FD5 ; + .dw 0x3FD6 ; +#if 0 + // SYSCFG = EMUDAT; is valid + .dw 0x3FD7 ; +#endif + .dw 0x3FD9 ; + .dw 0x3FDA ; + .dw 0x3FDB ; + .dw 0x3FDC ; + .dw 0x3FDD ; + .dw 0x3FDE ; +#if 0 + // RET[IXNE] = EMUDAT; is valid + .dw 0x3FDF ; +#endif + .dw 0x3FE1 ; + .dw 0x3FE2 ; + .dw 0x3FE3 ; + .dw 0x3FE4 ; + .dw 0x3FE5 ; + .dw 0x3FE6 ; +#if 0 + // RET[IXNE] = EMUDAT; is valid + .dw 0x3FE7 ; +#endif + .dw 0x3FE9 ; + .dw 0x3FEA ; + .dw 0x3FEB ; + .dw 0x3FEC ; + .dw 0x3FED ; + .dw 0x3FEE ; +#if 0 + // RET[IXNE] = EMUDAT; is valid + .dw 0x3FEF ; +#endif + .dw 0x3FF1 ; + .dw 0x3FF2 ; + .dw 0x3FF3 ; + .dw 0x3FF4 ; + .dw 0x3FF5 ; + .dw 0x3FF6 ; +#if 0 + // RET[IXNE] = EMUDAT; is valid + .dw 0x3FF7 ; + // EMUDAT = SEQSTAT; is valid + .dw 0x3FF9 ; + // EMUDAT = SYSCFG; is valid + .dw 0x3FFA ; + // EMDUAT = RET[IXNE]; is valid + .dw 0x3FFB ; + .dw 0x3FFC ; + .dw 0x3FFD ; + .dw 0x3FFE ; + // EMUDAT = EMUDAT; is valid + .dw 0x3FFF ; +#endif + .dw 0x39B0 ; + .dw 0x39B1 ; + .dw 0x39B2 ; + .dw 0x39B3 ; + .dw 0x39B4 ; + .dw 0x39B5 ; + .dw 0x39B6 ; + .dw 0x39B7 ; + .dw 0x39B8 ; + .dw 0x39B9 ; + .dw 0x39BA ; + .dw 0x39BB ; + .dw 0x39BC ; + .dw 0x39BD ; + .dw 0x39BE ; + .dw 0x39BF ; + .dw 0x39F1 ; + .dw 0x39F2 ; + .dw 0x39F3 ; + .dw 0x39F4 ; + .dw 0x39F5 ; + .dw 0x39F6 ; +#if 0 + // ASTAT = EMUDAT; is valid + .dw 0x39F7 ; +#endif + .dw 0x39F9 ; + .dw 0x39FA ; + .dw 0x39FB ; + .dw 0x39FC ; + .dw 0x39FD ; + .dw 0x39FE ; +#if 0 + // RETS = EMUDAT; is valid + .dw 0x39FF ; +#endif + .dw 0x3D06 ; + .dw 0x3D07 ; + .dw 0x3D0E ; + .dw 0x3D0F ; + .dw 0x3D16 ; + .dw 0x3D17 ; + .dw 0x3D1E ; + .dw 0x3D1F ; + .dw 0x3D26 ; + .dw 0x3D27 ; + .dw 0x3D2E ; + .dw 0x3D2F ; + .dw 0x3D36 ; + .dw 0x3D37 ; + .dw 0x3D3E ; + .dw 0x3D3F ; + .dw 0x3F0E ; + .dw 0x3F0F ; + .dw 0x3F16 ; + .dw 0x3F17 ; + .dw 0x3F1E ; + .dw 0x3F1F ; + .dw 0x3F26 ; + .dw 0x3F27 ; + .dw 0x3F2E ; + .dw 0x3F2F ; + .dw 0x3F36 ; + .dw 0x3F37 ; +#if 0 + // EMUDAT = ASTAT; is valid + .dw 0x3F3E ; + // EMUDAT = RETS; is valid + .dw 0x3F3F ; +#endif + .dw 0x3936 ; + .dw 0x3937 ; + .dw 0x393E ; + .dw 0x393F ; + .dw 0x3C80 ; + .dw 0x3C81 ; + .dw 0x3C82 ; + .dw 0x3C83 ; + .dw 0x3C84 ; + .dw 0x3C85 ; + .dw 0x3C86 ; + .dw 0x3C87 ; + .dw 0x3C88 ; + .dw 0x3C89 ; + .dw 0x3C8A ; + .dw 0x3C8B ; + .dw 0x3C8C ; + .dw 0x3C8D ; + .dw 0x3C8E ; + .dw 0x3C8F ; + .dw 0x3C90 ; + .dw 0x3C91 ; + .dw 0x3C92 ; + .dw 0x3C93 ; + .dw 0x3C94 ; + .dw 0x3C95 ; + .dw 0x3C96 ; + .dw 0x3C97 ; + .dw 0x3C98 ; + .dw 0x3C99 ; + .dw 0x3C9A ; + .dw 0x3C9B ; + .dw 0x3C9C ; + .dw 0x3C9D ; + .dw 0x3C9E ; + .dw 0x3C9F ; + .dw 0x3CA0 ; + .dw 0x3CA1 ; + .dw 0x3CA2 ; + .dw 0x3CA3 ; + .dw 0x3CA4 ; + .dw 0x3CA5 ; + .dw 0x3CA6 ; + .dw 0x3CA7 ; + .dw 0x3CA8 ; + .dw 0x3CA9 ; + .dw 0x3CAA ; + .dw 0x3CAB ; + .dw 0x3CAC ; + .dw 0x3CAD ; + .dw 0x3CAE ; + .dw 0x3CAF ; + .dw 0x3CB0 ; + .dw 0x3CB1 ; + .dw 0x3CB2 ; + .dw 0x3CB3 ; + .dw 0x3CB4 ; + .dw 0x3CB5 ; + .dw 0x3CB6 ; + .dw 0x3CB7 ; + .dw 0x3CB8 ; + .dw 0x3CB9 ; + .dw 0x3CBA ; + .dw 0x3CBB ; + .dw 0x3CBC ; + .dw 0x3CBD ; + .dw 0x3CBE ; + .dw 0x3CBF ; + .dw 0x3CC0 ; + .dw 0x3CC1 ; + .dw 0x3CC2 ; + .dw 0x3CC3 ; + .dw 0x3CC4 ; + .dw 0x3CC5 ; + .dw 0x3CC6 ; + .dw 0x3CC7 ; + .dw 0x3CC8 ; + .dw 0x3CC9 ; + .dw 0x3CCA ; + .dw 0x3CCB ; + .dw 0x3CCC ; + .dw 0x3CCD ; + .dw 0x3CCE ; + .dw 0x3CCF ; + .dw 0x3CD0 ; + .dw 0x3CD1 ; + .dw 0x3CD2 ; + .dw 0x3CD3 ; + .dw 0x3CD4 ; + .dw 0x3CD5 ; + .dw 0x3CD6 ; + .dw 0x3CD7 ; + .dw 0x3CD8 ; + .dw 0x3CD9 ; + .dw 0x3CDA ; + .dw 0x3CDB ; + .dw 0x3CDC ; + .dw 0x3CDD ; + .dw 0x3CDE ; + .dw 0x3CDF ; + .dw 0x3CE0 ; + .dw 0x3CE1 ; + .dw 0x3CE2 ; + .dw 0x3CE3 ; + .dw 0x3CE4 ; + .dw 0x3CE5 ; + .dw 0x3CE6 ; + .dw 0x3CE7 ; + .dw 0x3CE8 ; + .dw 0x3CE9 ; + .dw 0x3CEA ; + .dw 0x3CEB ; + .dw 0x3CEC ; + .dw 0x3CED ; + .dw 0x3CEE ; + .dw 0x3CEF ; + .dw 0x3CF0 ; + .dw 0x3CF1 ; + .dw 0x3CF2 ; + .dw 0x3CF3 ; + .dw 0x3CF4 ; + .dw 0x3CF5 ; + .dw 0x3CF6 ; + .dw 0x3CF7 ; + .dw 0x3CF8 ; + .dw 0x3CF9 ; + .dw 0x3CFA ; + .dw 0x3CFB ; + .dw 0x3CFC ; + .dw 0x3CFD ; + .dw 0x3CFE ; + .dw 0x3CFF ; + .dw 0x3E88 ; + .dw 0x3E89 ; + .dw 0x3E8A ; + .dw 0x3E8B ; + .dw 0x3E8C ; + .dw 0x3E8D ; + .dw 0x3E8E ; + .dw 0x3E8F ; + .dw 0x3E90 ; + .dw 0x3E91 ; + .dw 0x3E92 ; + .dw 0x3E93 ; + .dw 0x3E94 ; + .dw 0x3E95 ; + .dw 0x3E96 ; + .dw 0x3E97 ; + .dw 0x3E98 ; + .dw 0x3E99 ; + .dw 0x3E9A ; + .dw 0x3E9B ; + .dw 0x3E9C ; + .dw 0x3E9D ; + .dw 0x3E9E ; + .dw 0x3E9F ; + .dw 0x3EA0 ; + .dw 0x3EA1 ; + .dw 0x3EA2 ; + .dw 0x3EA3 ; + .dw 0x3EA4 ; + .dw 0x3EA5 ; + .dw 0x3EA6 ; + .dw 0x3EA7 ; + .dw 0x3EA8 ; + .dw 0x3EA9 ; + .dw 0x3EAA ; + .dw 0x3EAB ; + .dw 0x3EAC ; + .dw 0x3EAD ; + .dw 0x3EAE ; + .dw 0x3EAF ; + .dw 0x3EB0 ; + .dw 0x3EB1 ; + .dw 0x3EB2 ; + .dw 0x3EB3 ; + .dw 0x3EB4 ; + .dw 0x3EB5 ; + .dw 0x3EB6 ; + .dw 0x3EB7 ; +#if 0 + // EMUDAT = Ireg; is valid + .dw 0x3EB8 ; + .dw 0x3EB9 ; + .dw 0x3EBA ; + .dw 0x3EBB ; + // EMUDAT = Mreg; is valid + .dw 0x3EBC ; + .dw 0x3EBD ; + .dw 0x3EBE ; + .dw 0x3EBF ; +#endif + .dw 0x3EC8 ; + .dw 0x3EC9 ; + .dw 0x3ECA ; + .dw 0x3ECB ; + .dw 0x3ECC ; + .dw 0x3ECD ; + .dw 0x3ECE ; + .dw 0x3ECF ; + .dw 0x3ED0 ; + .dw 0x3ED1 ; + .dw 0x3ED2 ; + .dw 0x3ED3 ; + .dw 0x3ED4 ; + .dw 0x3ED5 ; + .dw 0x3ED6 ; + .dw 0x3ED7 ; + .dw 0x3ED8 ; + .dw 0x3ED9 ; + .dw 0x3EDA ; + .dw 0x3EDB ; + .dw 0x3EDC ; + .dw 0x3EDD ; + .dw 0x3EDE ; + .dw 0x3EDF ; + .dw 0x3EE0 ; + .dw 0x3EE1 ; + .dw 0x3EE2 ; + .dw 0x3EE3 ; + .dw 0x3EE4 ; + .dw 0x3EE5 ; + .dw 0x3EE6 ; + .dw 0x3EE7 ; + .dw 0x3EE8 ; + .dw 0x3EE9 ; + .dw 0x3EEA ; + .dw 0x3EEB ; + .dw 0x3EEC ; + .dw 0x3EED ; + .dw 0x3EEE ; + .dw 0x3EEF ; + .dw 0x3EF0 ; + .dw 0x3EF1 ; + .dw 0x3EF2 ; + .dw 0x3EF3 ; + .dw 0x3EF4 ; + .dw 0x3EF5 ; + .dw 0x3EF6 ; + .dw 0x3EF7 ; +#if 0 + // EMUDAT = Breg; is valid + .dw 0x3EF8 ; + .dw 0x3EF9 ; + .dw 0x3EFA ; + .dw 0x3EFB ; + // EMUDAT = Lreg; is valid + .dw 0x3EFC ; + .dw 0x3EFD ; + .dw 0x3EFE ; + .dw 0x3EFF ; +#endif + .dw 0x38B0 ; + .dw 0x38B1 ; + .dw 0x38B2 ; + .dw 0x38B3 ; + .dw 0x38B4 ; + .dw 0x38B5 ; + .dw 0x38B6 ; + .dw 0x38B7 ; + .dw 0x38B8 ; + .dw 0x38B9 ; + .dw 0x38BA ; + .dw 0x38BB ; + .dw 0x38BC ; + .dw 0x38BD ; + .dw 0x38BE ; + .dw 0x38BF ; + .dw 0x38F0 ; + .dw 0x38F1 ; + .dw 0x38F2 ; + .dw 0x38F3 ; + .dw 0x38F4 ; + .dw 0x38F5 ; + .dw 0x38F6 ; + .dw 0x38F7 ; + .dw 0x38F8 ; + .dw 0x38F9 ; + .dw 0x38FA ; + .dw 0x38FB ; + .dw 0x38FC ; + .dw 0x38FD ; + .dw 0x38FE ; + .dw 0x38FF ; +#if 0 + // Preg = sysreg; is valid + .dw 0x3380 ; + .dw 0x3381 ; + .dw 0x3382 ; + .dw 0x3383 ; + .dw 0x3384 ; + .dw 0x3385 ; + .dw 0x3386 ; + .dw 0x3387 ; + .dw 0x3388 ; + .dw 0x3389 ; + .dw 0x338A ; + .dw 0x338B ; + .dw 0x338C ; + .dw 0x338D ; + .dw 0x338E ; + .dw 0x338F ; + .dw 0x3390 ; + .dw 0x3391 ; + .dw 0x3392 ; + .dw 0x3393 ; + .dw 0x3394 ; + .dw 0x3395 ; + .dw 0x3396 ; + .dw 0x3397 ; + .dw 0x3398 ; + .dw 0x3399 ; + .dw 0x339A ; + .dw 0x339B ; + .dw 0x339C ; + .dw 0x339D ; + .dw 0x339E ; + .dw 0x339F ; + .dw 0x33A0 ; + .dw 0x33A1 ; + .dw 0x33A2 ; + .dw 0x33A3 ; + .dw 0x33A4 ; + .dw 0x33A5 ; + .dw 0x33A6 ; + .dw 0x33A7 ; + .dw 0x33A8 ; + .dw 0x33A9 ; + .dw 0x33AA ; + .dw 0x33AB ; + .dw 0x33AC ; + .dw 0x33AD ; + .dw 0x33AE ; + .dw 0x33AF ; + .dw 0x33B0 ; + .dw 0x33B1 ; + .dw 0x33B2 ; + .dw 0x33B3 ; + .dw 0x33B4 ; + .dw 0x33B5 ; + .dw 0x33B6 ; + .dw 0x33B7 ; + .dw 0x33B8 ; + .dw 0x33B9 ; + .dw 0x33BA ; + .dw 0x33BB ; + .dw 0x33BC ; + .dw 0x33BD ; + .dw 0x33BE ; + .dw 0x33BF ; + .dw 0x33C1 ; + .dw 0x33C2 ; + .dw 0x33C3 ; + .dw 0x33C4 ; + .dw 0x33C5 ; + .dw 0x33C6 ; + .dw 0x33C7 ; + .dw 0x33C9 ; + .dw 0x33CA ; + .dw 0x33CB ; + .dw 0x33CC ; + .dw 0x33CD ; + .dw 0x33CE ; + .dw 0x33CF ; + .dw 0x33D1 ; + .dw 0x33D2 ; + .dw 0x33D3 ; + .dw 0x33D4 ; + .dw 0x33D5 ; + .dw 0x33D6 ; + .dw 0x33D7 ; + .dw 0x33D9 ; + .dw 0x33DA ; + .dw 0x33DB ; + .dw 0x33DC ; + .dw 0x33DD ; + .dw 0x33DE ; + .dw 0x33DF ; + .dw 0x33E1 ; + .dw 0x33E2 ; + .dw 0x33E3 ; + .dw 0x33E4 ; + .dw 0x33E5 ; + .dw 0x33E6 ; + .dw 0x33E7 ; + .dw 0x33E9 ; + .dw 0x33EA ; + .dw 0x33EB ; + .dw 0x33EC ; + .dw 0x33ED ; + .dw 0x33EE ; + .dw 0x33EF ; + .dw 0x33F1 ; + .dw 0x33F2 ; + .dw 0x33F3 ; + .dw 0x33F4 ; + .dw 0x33F5 ; + .dw 0x33F6 ; + .dw 0x33F7 ; + .dw 0x33F9 ; + .dw 0x33FA ; + .dw 0x33FB ; + .dw 0x33FC ; + .dw 0x33FD ; + .dw 0x33FE ; + .dw 0x33FF ; + .dw 0x3306 ; + .dw 0x3307 ; + .dw 0x330E ; + .dw 0x330F ; + .dw 0x3316 ; + .dw 0x3317 ; + .dw 0x331E ; + .dw 0x331F ; + .dw 0x3326 ; + .dw 0x3327 ; + .dw 0x332E ; + .dw 0x332F ; + .dw 0x3336 ; + .dw 0x3337 ; + .dw 0x333E ; + .dw 0x333F ; +#endif + .dw 0x3580 ; + .dw 0x3581 ; + .dw 0x3582 ; + .dw 0x3583 ; + .dw 0x3584 ; + .dw 0x3585 ; + .dw 0x3586 ; + .dw 0x3587 ; + .dw 0x3588 ; + .dw 0x3589 ; + .dw 0x358A ; + .dw 0x358B ; + .dw 0x358C ; + .dw 0x358D ; + .dw 0x358E ; + .dw 0x358F ; + .dw 0x3590 ; + .dw 0x3591 ; + .dw 0x3592 ; + .dw 0x3593 ; + .dw 0x3594 ; + .dw 0x3595 ; + .dw 0x3596 ; + .dw 0x3597 ; + .dw 0x3598 ; + .dw 0x3599 ; + .dw 0x359A ; + .dw 0x359B ; + .dw 0x359C ; + .dw 0x359D ; + .dw 0x359E ; + .dw 0x359F ; + .dw 0x35A0 ; + .dw 0x35A1 ; + .dw 0x35A2 ; + .dw 0x35A3 ; + .dw 0x35A4 ; + .dw 0x35A5 ; + .dw 0x35A6 ; + .dw 0x35A7 ; + .dw 0x35A8 ; + .dw 0x35A9 ; + .dw 0x35AA ; + .dw 0x35AB ; + .dw 0x35AC ; + .dw 0x35AD ; + .dw 0x35AE ; + .dw 0x35AF ; + .dw 0x35B0 ; + .dw 0x35B1 ; + .dw 0x35B2 ; + .dw 0x35B3 ; + .dw 0x35B4 ; + .dw 0x35B5 ; + .dw 0x35B6 ; + .dw 0x35B7 ; + .dw 0x35B8 ; + .dw 0x35B9 ; + .dw 0x35BA ; + .dw 0x35BB ; + .dw 0x35BC ; + .dw 0x35BD ; + .dw 0x35BE ; + .dw 0x35BF ; + .dw 0x35C1 ; + .dw 0x35C2 ; + .dw 0x35C3 ; + .dw 0x35C4 ; + .dw 0x35C5 ; + .dw 0x35C6 ; +#if 0 + // Ireg = EMUDAT; is valid + .dw 0x35C7 ; +#endif + .dw 0x35C9 ; + .dw 0x35CA ; + .dw 0x35CB ; + .dw 0x35CC ; + .dw 0x35CD ; + .dw 0x35CE ; +#if 0 + // Ireg = EMUDAT; is valid + .dw 0x35CF ; +#endif + .dw 0x35D1 ; + .dw 0x35D2 ; + .dw 0x35D3 ; + .dw 0x35D4 ; + .dw 0x35D5 ; + .dw 0x35D6 ; +#if 0 + // Ireg = EMUDAT; is valid + .dw 0x35D7 ; +#endif + .dw 0x35D9 ; + .dw 0x35DA ; + .dw 0x35DB ; + .dw 0x35DC ; + .dw 0x35DD ; + .dw 0x35DE ; +#if 0 + // Ireg = EMUDAT; is valid + .dw 0x35DF ; +#endif + .dw 0x35E1 ; + .dw 0x35E2 ; + .dw 0x35E3 ; + .dw 0x35E4 ; + .dw 0x35E5 ; + .dw 0x35E6 ; +#if 0 + // Mreg = EMUDAT; is valid + .dw 0x35E7 ; +#endif + .dw 0x35E9 ; + .dw 0x35EA ; + .dw 0x35EB ; + .dw 0x35EC ; + .dw 0x35ED ; + .dw 0x35EE ; +#if 0 + // Mreg = EMUDAT; is valid + .dw 0x35EF ; +#endif + .dw 0x35F1 ; + .dw 0x35F2 ; + .dw 0x35F3 ; + .dw 0x35F4 ; + .dw 0x35F5 ; + .dw 0x35F6 ; +#if 0 + // Mreg = EMUDAT; is valid + .dw 0x35F7 ; +#endif + .dw 0x35F9 ; + .dw 0x35FA ; + .dw 0x35FB ; + .dw 0x35FC ; + .dw 0x35FD ; + .dw 0x35FE ; +#if 0 + // Mreg = EMUDAT; is valid + .dw 0x35FF ; +#endif + .dw 0x3780 ; + .dw 0x3781 ; + .dw 0x3782 ; + .dw 0x3783 ; + .dw 0x3784 ; + .dw 0x3785 ; + .dw 0x3786 ; + .dw 0x3787 ; + .dw 0x3788 ; + .dw 0x3789 ; + .dw 0x378A ; + .dw 0x378B ; + .dw 0x378C ; + .dw 0x378D ; + .dw 0x378E ; + .dw 0x378F ; + .dw 0x3790 ; + .dw 0x3791 ; + .dw 0x3792 ; + .dw 0x3793 ; + .dw 0x3794 ; + .dw 0x3795 ; + .dw 0x3796 ; + .dw 0x3797 ; + .dw 0x3798 ; + .dw 0x3799 ; + .dw 0x379A ; + .dw 0x379B ; + .dw 0x379C ; + .dw 0x379D ; + .dw 0x379E ; + .dw 0x379F ; + .dw 0x37A0 ; + .dw 0x37A1 ; + .dw 0x37A2 ; + .dw 0x37A3 ; + .dw 0x37A4 ; + .dw 0x37A5 ; + .dw 0x37A6 ; + .dw 0x37A7 ; + .dw 0x37A8 ; + .dw 0x37A9 ; + .dw 0x37AA ; + .dw 0x37AB ; + .dw 0x37AC ; + .dw 0x37AD ; + .dw 0x37AE ; + .dw 0x37AF ; + .dw 0x37B0 ; + .dw 0x37B1 ; + .dw 0x37B2 ; + .dw 0x37B3 ; + .dw 0x37B4 ; + .dw 0x37B5 ; + .dw 0x37B6 ; + .dw 0x37B7 ; + .dw 0x37B8 ; + .dw 0x37B9 ; + .dw 0x37BA ; + .dw 0x37BB ; + .dw 0x37BC ; + .dw 0x37BD ; + .dw 0x37BE ; + .dw 0x37BF ; + .dw 0x37C1 ; + .dw 0x37C2 ; + .dw 0x37C3 ; + .dw 0x37C4 ; + .dw 0x37C5 ; + .dw 0x37C6 ; +#if 0 + // EMUDAT = Breg; is valid + .dw 0x37C7 ; +#endif + .dw 0x37C9 ; + .dw 0x37CA ; + .dw 0x37CB ; + .dw 0x37CC ; + .dw 0x37CD ; + .dw 0x37CE ; +#if 0 + // EMUDAT = Breg; is valid + .dw 0x37CF ; +#endif + .dw 0x37D1 ; + .dw 0x37D2 ; + .dw 0x37D3 ; + .dw 0x37D4 ; + .dw 0x37D5 ; + .dw 0x37D6 ; +#if 0 + // EMUDAT = Breg; is valid + .dw 0x37D7 ; +#endif + .dw 0x37D9 ; + .dw 0x37DA ; + .dw 0x37DB ; + .dw 0x37DC ; + .dw 0x37DD ; + .dw 0x37DE ; +#if 0 + // EMUDAT = Breg; is valid + .dw 0x37DF ; +#endif + .dw 0x37E1 ; + .dw 0x37E2 ; + .dw 0x37E3 ; + .dw 0x37E4 ; + .dw 0x37E5 ; + .dw 0x37E6 ; +#if 0 + // EMUDAT = Lreg; is valid + .dw 0x37E7 ; +#endif + .dw 0x37E9 ; + .dw 0x37EA ; + .dw 0x37EB ; + .dw 0x37EC ; + .dw 0x37ED ; + .dw 0x37EE ; +#if 0 + // EMUDAT = Lreg; is valid + .dw 0x37EF ; +#endif + .dw 0x37F1 ; + .dw 0x37F2 ; + .dw 0x37F3 ; + .dw 0x37F4 ; + .dw 0x37F5 ; + .dw 0x37F6 ; +#if 0 + // EMUDAT = Lreg; is valid + .dw 0x37F7 ; +#endif + .dw 0x37F9 ; + .dw 0x37FA ; + .dw 0x37FB ; + .dw 0x37FC ; + .dw 0x37FD ; + .dw 0x37FE ; +#if 0 + // EMUDAT = Lreg; is valid + .dw 0x37FF ; +#endif + .dw 0x3506 ; + .dw 0x3507 ; + .dw 0x350E ; + .dw 0x350F ; + .dw 0x3516 ; + .dw 0x3517 ; + .dw 0x351E ; + .dw 0x351F ; + .dw 0x3526 ; + .dw 0x3527 ; + .dw 0x352E ; + .dw 0x352F ; + .dw 0x3536 ; + .dw 0x3537 ; + .dw 0x353E ; + .dw 0x353F ; + .dw 0x3706 ; + .dw 0x3707 ; + .dw 0x370E ; + .dw 0x370F ; + .dw 0x3716 ; + .dw 0x3717 ; + .dw 0x371E ; + .dw 0x371F ; + .dw 0x3726 ; + .dw 0x3727 ; + .dw 0x372E ; + .dw 0x372F ; + .dw 0x3736 ; + .dw 0x3737 ; + .dw 0x373E ; + .dw 0x373F ; + .dw 0x4180 ; + .dw 0x4181 ; + .dw 0x4182 ; + .dw 0x4183 ; + .dw 0x4184 ; + .dw 0x4185 ; + .dw 0x4186 ; + .dw 0x4187 ; + .dw 0x4188 ; + .dw 0x4189 ; + .dw 0x418A ; + .dw 0x418B ; + .dw 0x418C ; + .dw 0x418D ; + .dw 0x418E ; + .dw 0x418F ; + .dw 0x4190 ; + .dw 0x4191 ; + .dw 0x4192 ; + .dw 0x4193 ; + .dw 0x4194 ; + .dw 0x4195 ; + .dw 0x4196 ; + .dw 0x4197 ; + .dw 0x4198 ; + .dw 0x4199 ; + .dw 0x419A ; + .dw 0x419B ; + .dw 0x419C ; + .dw 0x419D ; + .dw 0x419E ; + .dw 0x419F ; + .dw 0x41A0 ; + .dw 0x41A1 ; + .dw 0x41A2 ; + .dw 0x41A3 ; + .dw 0x41A4 ; + .dw 0x41A5 ; + .dw 0x41A6 ; + .dw 0x41A7 ; + .dw 0x41A8 ; + .dw 0x41A9 ; + .dw 0x41AA ; + .dw 0x41AB ; + .dw 0x41AC ; + .dw 0x41AD ; + .dw 0x41AE ; + .dw 0x41AF ; + .dw 0x41B0 ; + .dw 0x41B1 ; + .dw 0x41B2 ; + .dw 0x41B3 ; + .dw 0x41B4 ; + .dw 0x41B5 ; + .dw 0x41B6 ; + .dw 0x41B7 ; + .dw 0x41B8 ; + .dw 0x41B9 ; + .dw 0x41BA ; + .dw 0x41BB ; + .dw 0x41BC ; + .dw 0x41BD ; + .dw 0x41BE ; + .dw 0x41BF ; + .dw 0x41C0 ; + .dw 0x41C1 ; + .dw 0x41C2 ; + .dw 0x41C3 ; + .dw 0x41C4 ; + .dw 0x41C5 ; + .dw 0x41C6 ; + .dw 0x41C7 ; + .dw 0x41C8 ; + .dw 0x41C9 ; + .dw 0x41CA ; + .dw 0x41CB ; + .dw 0x41CC ; + .dw 0x41CD ; + .dw 0x41CE ; + .dw 0x41CF ; + .dw 0x41D0 ; + .dw 0x41D1 ; + .dw 0x41D2 ; + .dw 0x41D3 ; + .dw 0x41D4 ; + .dw 0x41D5 ; + .dw 0x41D6 ; + .dw 0x41D7 ; + .dw 0x41D8 ; + .dw 0x41D9 ; + .dw 0x41DA ; + .dw 0x41DB ; + .dw 0x41DC ; + .dw 0x41DD ; + .dw 0x41DE ; + .dw 0x41DF ; + .dw 0x41E0 ; + .dw 0x41E1 ; + .dw 0x41E2 ; + .dw 0x41E3 ; + .dw 0x41E4 ; + .dw 0x41E5 ; + .dw 0x41E6 ; + .dw 0x41E7 ; + .dw 0x41E8 ; + .dw 0x41E9 ; + .dw 0x41EA ; + .dw 0x41EB ; + .dw 0x41EC ; + .dw 0x41ED ; + .dw 0x41EE ; + .dw 0x41EF ; + .dw 0x41F0 ; + .dw 0x41F1 ; + .dw 0x41F2 ; + .dw 0x41F3 ; + .dw 0x41F4 ; + .dw 0x41F5 ; + .dw 0x41F6 ; + .dw 0x41F7 ; + .dw 0x41F8 ; + .dw 0x41F9 ; + .dw 0x41FA ; + .dw 0x41FB ; + .dw 0x41FC ; + .dw 0x41FD ; + .dw 0x41FE ; + .dw 0x41FF ; +.ifndef BFIN_HW + // XXX: These cause double fault on hardware when run in IVG15 !? + .dw 0x9040 ; + .dw 0x9049 ; + .dw 0x9052 ; + .dw 0x905B ; + .dw 0x9064 ; + .dw 0x906D ; + .dw 0x9076 ; + .dw 0x907F ; + .dw 0x90C0 ; + .dw 0x90C9 ; + .dw 0x90D2 ; + .dw 0x90DB ; + .dw 0x90E4 ; + .dw 0x90ED ; + .dw 0x90F6 ; + .dw 0x90FF ; +.endif + .dw 0x9180 ; +// Starting 32bit s section COUNT = 3481 + +CHECK_INIT_DEF(p0); //CHECK_INIT(p0, 0xFF7FFFFC); + // Xhandler counts all EXCAUSE = 0x21; +.ifndef BFIN_HW +CHECKREG(r5, 2651 - 507); // count of all 16 bit UI's. +.else +CHECKREG(r5, 2651 - 524); // count of all 16 bit UI's. +.endif + +END: +dbg_pass; // End the test + +//********************************************************************* + +// +// Handlers for Events +// + +NHANDLE: // NMI Handler 2 +RTN; + +XHANDLE: // Exception Handler 3 + // 16 bit illegal opcode handler - skips bad instruction + + // handler MADE LEAN and destructive so test runs more quckly + // se_undefinedinstruction1.dsp tests using a "nice" handler + +// [--sp] = ASTAT; // save what we damage +// [--sp] = (r7 - r6); + R7 = SEQSTAT; + R7 <<= 26; + R7 >>= 26; // only want EXCAUSE + R6 = 0x21; // EXCAUSE 0x21 means I-Fetch Undefined Instruction +CC = r7 == r6; +IF CC JUMP UNDEFINEDINSTRUCTION; // If EXCAUSE != 0x21 then leave + + R6 = 0x22; // Also accept illegal insn combo +CC = r7 == r6; +IF CC JUMP UNDEFINEDINSTRUCTION; // If EXCAUSE != 0x21 then leave + +dbg_fail; + +UNDEFINEDINSTRUCTION: + R7 = RETX; // Fix up return address + + r4 += 2; + CC = r4 == r7; + if !CC jump fail; + + R7 += 2; // skip offending 16 bit instruction + +RETX = r7; // and put back in RETX + + R5 += 1; // Increment global counter + +OUT: +// (r7 - r6) = [sp++]; +// ASTAT = [sp++]; + +RTX; +fail: +dbg_fail; + +HWHANDLE: // HW Error Handler 5 +RTI; + +THANDLE: // Timer Handler 6 +RTI; + +I7HANDLE: // IVG 7 Handler +RTI; + +I8HANDLE: // IVG 8 Handler +RTI; + +I9HANDLE: // IVG 9 Handler +RTI; + +I10HANDLE: // IVG 10 Handler +RTI; + +I11HANDLE: // IVG 11 Handler +RTI; + +I12HANDLE: // IVG 12 Handler +RTI; + +I13HANDLE: // IVG 13 Handler +RTI; + +I14HANDLE: // IVG 14 Handler +RTI; + +I15HANDLE: // IVG 15 Handler +RTI; + + + // padding for the icache + +EXCPT 0; EXCPT 0; EXCPT 0; EXCPT 0; EXCPT 0; EXCPT 0; EXCPT 0; + +// +// Data Segment +// + +.data +DATA: + .space (0x10); + +// Stack Segments (Both Kernel and User) + + .space (STACKSIZE); +KSTACK: + + .space (STACKSIZE); +USTACK: |