Previous 199869 Revisions Next

r24590 Wednesday 31st July, 2013 at 03:41:19 UTC by David Haywood
incorporate extra 104 findings from Charles, will clean up as next step (nw)
[src/mame/machine]deco104.c deco146.h

trunk/src/mame/machine/deco104.c
r24589r24590
33    Data East 104 based protection/IO chips
44    (a variation on the Deco 146 protection, see deco146.c for notes)
55
6    original protection simulations by Bryan McPhail, mish@tendril.co.uk
6    Emulation by David Haywood
7    based on findings by Charles MacDonald
78
9    previous protection simulations by Bryan McPhail
10
11
812***************************************************************************/
913
1014#include "emu.h"
r24589r24590
1418// the same way some 146 games require an address XOR of 0x44a at some point during the read chain
1519// there are 104 games requiring a xor of 0x2a4
1620
21 
1722
18#define DECO_PORT(p) (prot_ram[p/2])
19#define DECO_NEW_PORT(p) (prot_ram[p/2])
2023
2124
2225
26
2327deco146port_xx port104_table[] = {
2428
2529 /* 0x000 */ { 0x04, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
r24589r24590
3539 /* 0x014 */ { 0x24, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
3640 /* 0x016 */ { 0xfc, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
3741 /* 0x018 */ { 0x08, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
38 /* 0x01a */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
42 /* 0x01a */ { INPUT_PORT_C , {NIB1__,    NIB0__,NIB2__,NIB3__  } , 0, 0 }, // dc.w    $001A ; 0x0010
3943 /* 0x01c */ { 0x72, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
4044 /* 0x01e */ { 0xc4, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
4145 /* 0x020 */ { 0xd0, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
r24589r24590
4852 /* 0x02e */ { 0x6a, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
4953 /* 0x030 */ { 0x00, { 0x0f, 0x0c, 0x0d, 0x0e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
5054 /* 0x032 */ { 0x60, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
51 /* 0x034 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
55 /* 0x034 */ { INPUT_PORT_B , { 0x03, 0x00, 0x01, 0x02, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
5256 /* 0x036 */ { 0xae, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
5357 /* 0x038 */ { 0x12, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
5458 /* 0x03a */ { 0x42, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
r24589r24590
8084 /* 0x06e */ { 0x96, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
8185 /* 0x070 */ { 0x5c, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
8286 /* 0x072 */ { 0x0a, { 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
83 /* 0x074 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
84 /* 0x076 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
87 /* 0x074 */ { INPUT_PORT_B , { 0x01, 0x02, 0x03, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
88 /* 0x076 */ { INPUT_PORT_C , { NIB3__,    BLANK_,BLANK_,BLANK_ } , 0, 1 }, // dc.w    $0076 ; 0x1000  dc.w    $0076 ; 0x1000 ; nand
8589 /* 0x078 */ { 0x5a, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
8690 /* 0x07a */ { 0x74, { 0x0f, 0x0c, 0x0d, 0x0e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
8791 /* 0x07c */ { 0xb4, { 0x0e, 0x0f, 0x0c, 0x0d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
r24589r24590
9094 /* 0x082 */ { 0x28, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
9195 /* 0x084 */ { 0x50, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
9296 /* 0x086 */ { 0x66, { 0x0d, 0x0e, 0x0f, 0x0c, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
93 /* 0x088 */ { INPUT_PORT_A , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 }, // { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 }, // most common input port case
97 /* 0x088 */ { INPUT_PORT_A , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, } , 0, 0 }, // dc.w    $0088
9498 /* 0x08a */ { 0x1c, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
9599 /* 0x08c */ { 0x48, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
96100 /* 0x08e */ { 0xc2, { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
r24589r24590
112116 /* 0x0ae */ { 0x3e, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
113117 /* 0x0b0 */ { 0xb6, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
114118 /* 0x0b2 */ { 0xd8, { 0x05, 0x06, 0x07, 0x04, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 1 },
115 /* 0x0b4 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
119 /* 0x0b4 */ { INPUT_PORT_C , { NIB3__,    NIB0__,NIB1__,NIB2__ } , 0, 0 }, // dc.w    $00B4 ; 0x1000
116120 /* 0x0b6 */ { 0xc0, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
117121 /* 0x0b8 */ { 0xa2, { 0x09, 0x0a, 0x0b, 0x08, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
118122 /* 0x0ba */ { 0xe6, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
r24589r24590
122126 /* 0x0c2 */ { 0x56, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
123127 /* 0x0c4 */ { 0xee, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
124128 /* 0x0c6 */ { 0xd4, { 0x0e, 0x0f, 0x0c, 0x0d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 0 },
125 /* 0x0c8 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
129 /* 0x0c8 */ { INPUT_PORT_A , { 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 0 }, // dc.w    $00C8 ; xor
126130 /* 0x0ca */ { 0xda, { 0x03, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
127131 /* 0x0cc */ { 0xce, { 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b } , 1, 0 },
128132 /* 0x0ce */ { 0xf2, { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
r24589r24590
138142 /* 0x0e2 */ { 0x92, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
139143 /* 0x0e4 */ { 0x52, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
140144 /* 0x0e6 */ { 0xf4, { 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
141 /* 0x0e8 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
145 /* 0x0e8 */ { INPUT_PORT_B , { 0x0C, 0x0D, 0x0E, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
142146 /* 0x0ea */ { 0xc6, { 0x03, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
143147 /* 0x0ec */ { 0xea, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
144148 /* 0x0ee */ { 0xfe, { 0x0e, 0x0f, 0x0c, 0x0d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
r24589r24590
192196 /* 0x14e */ { 0xd6, { 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
193197 /* 0x150 */ { 0x7e, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
194198 /* 0x152 */ { 0x92, { 0x0b, 0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
195 /* 0x154 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
199 /* 0x154 */ { INPUT_PORT_A , { 0x0C, 0x0D, 0x0E, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
196200 /* 0x156 */ { 0xde, { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
197201 /* 0x158 */ { 0x1a, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
198202 /* 0x15a */ { 0x9c, { 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
r24589r24590
212216 /* 0x176 */ { 0x62, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
213217 /* 0x178 */ { 0x88, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
214218 /* 0x17a */ { 0xe0, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
215 /* 0x17c */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
219 /* 0x17c */ { INPUT_PORT_A , { 0x0D, 0x0E, 0x0F, 0x0C, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B } , 1, 1 }, // dc.w    $017C ; xor,nand
216220 /* 0x17e */ { 0xcc, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
217 /* 0x180 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
221 /* 0x180 */ { INPUT_PORT_A , { 0x03, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F } , 0, 0 },
218222 /* 0x182 */ { 0x46, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
219223 /* 0x184 */ { 0x90, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
220224 /* 0x186 */ { 0x72, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
r24589r24590
246250 /* 0x1ba */ { 0x18, { 0x0b, 0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
247251 /* 0x1bc */ { 0x0e, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
248252 /* 0x1be */ { 0xc2, { 0x06, 0x07, 0x04, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
249 /* 0x1c0 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
253 /* 0x1c0 */ { INPUT_PORT_C , { NIB3__,    NIB1__,NIB2__,NIB0__  } , 0, 0 }, // dc.w    $01C0 ; 0x1000
250254 /* 0x1c2 */ { 0x0c, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
251 /* 0x1c4 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
255 /* 0x1c4 */ { INPUT_PORT_A , { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F } , 0, 0 },
252256 /* 0x1c6 */ { 0x70, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
253 /* 0x1c8 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
257 /* 0x1c8 */ { INPUT_PORT_A , { 0x02, 0x03, 0x00, 0x01, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F } , 0, 0 },
254258 /* 0x1ca */ { 0x5c, { 0xff, 0xff, 0xff, 0xff, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
255259 /* 0x1cc */ { 0xac, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
256260 /* 0x1ce */ { 0x48, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
r24589r24590
267271 /* 0x1e4 */ { 0x5e, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
268272 /* 0x1e6 */ { 0xe6, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
269273 /* 0x1e8 */ { 0x66, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
270 /* 0x1ea */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
271 /* 0x1ec */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
274 /* 0x1ea */ { INPUT_PORT_B , { 0x04, 0x05, 0x06, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
275 /* 0x1ec */ { INPUT_PORT_B , { 0x06, 0x07, 0x04, 0x05, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 1 }, // dc.w    $01EC ; nand
272276 /* 0x1ee */ { 0xc8, { 0x0f, 0x0c, 0x0d, 0x0e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
273277 /* 0x1f0 */ { 0xa2, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 1, 1 },
274278 /* 0x1f2 */ { 0x60, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
r24589r24590
281285 /* 0x200 */ { 0xa0, { 0x0d, 0x0e, 0x0f, 0x0c, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
282286 /* 0x202 */ { 0x34, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
283287 /* 0x204 */ { 0xf6, { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
284 /* 0x206 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
288 /* 0x206 */ { INPUT_PORT_A , { 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
285289 /* 0x208 */ { 0xae, { 0x02, 0x03, 0x00, 0x01, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
286290 /* 0x20a */ { 0xf4, { 0xff, 0xff, 0xff, 0xff, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
287 /* 0x20c */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
291 /* 0x20c */ { INPUT_PORT_C , {BLANK_,    BLANK_,BLANK_,NIB3__  } , 1, 1 }, // dc.w    $020C ; Bit not present  dc.w    $020C ; Bit not present ; xor,nand
288292 /* 0x20e */ { 0x4e, { 0x0b, 0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
289293 /* 0x210 */ { 0x0e, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
290294 /* 0x212 */ { 0x6e, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 0 },
r24589r24590
334338 /* 0x26a */ { 0xe6, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
335339 /* 0x26c */ { 0xc2, { 0x09, 0x0a, 0x0b, 0x08, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
336340 /* 0x26e */ { 0xa8, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
337 /* 0x270 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
341 /* 0x270 */ { INPUT_PORT_C , { NIB1__,    NIB2__,NIB3__,NIB0__ } , 0, 0 }, // dc.w    $0270 ; 0x0010
338342 /* 0x272 */ { 0x3c, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
339343 /* 0x274 */ { 0x68, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
340344 /* 0x276 */ { 0x2e, { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
r24589r24590
351355 /* 0x28c */ { 0xa6, { 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
352356 /* 0x28e */ { 0x36, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
353357 /* 0x290 */ { 0xee, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
354 /* 0x292 */ { INPUT_PORT_C , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 }, //{ INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },   // double wings uses this, NOT verified (but should be right, common use)
358 /* 0x292 */ { INPUT_PORT_C , { NIB0__,    NIB1__,NIB2__,NIB3__  } , 0, 0 }, // dc.w    $0292 ; 0x0001
355359 /* 0x294 */ { 0x66, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
356360 /* 0x296 */ { 0x5a, { 0x0e, 0x0f, 0x0c, 0x0d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
357361 /* 0x298 */ { 0x64, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
r24589r24590
360364 /* 0x29e */ { 0x80, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
361365 /* 0x2a0 */ { 0xd0, { 0x06, 0x07, 0x04, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 1 },
362366 /* 0x2a2 */ { 0x44, { 0x0b, 0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
363 /* 0x2a4 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
367 /* 0x2a4 */ { INPUT_PORT_C , { NIB0__,    NIB1__,NIB3__,NIB2__  } , 0, 0 }, // dc.w    $02A4 ; 0x0001
364368 /* 0x2a6 */ { 0xbc, { 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
365369 /* 0x2a8 */ { 0x22, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
366370 /* 0x2aa */ { 0xb2, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
r24589r24590
380384 /* 0x2c6 */ { 0x50, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
381385 /* 0x2c8 */ { 0x1c, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
382386 /* 0x2ca */ { 0x1a, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
383 /* 0x2cc */  { INPUT_PORT_B , { 0x00, 0x01, 0x02, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 }, // { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // bit order not verified, old sim says wizard fire uses it
387 /* 0x2cc */  { INPUT_PORT_B , { 0x00, 0x01, 0x02, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 }, // { INPUT_PORT_B , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // bit order not verified, old sim says wizard fire uses it
384388 /* 0x2ce */ { 0x92, { 0x09, 0x0a, 0x0b, 0x08, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
385389 /* 0x2d0 */ { 0x66, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x08, 0x09, 0x0a, 0x0b } , 1, 0 },
386390 /* 0x2d2 */ { 0x28, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
r24589r24590
400404 /* 0x2ee */ { 0xaa, { 0x0d, 0x0e, 0x0f, 0x0c, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
401405 /* 0x2f0 */ { 0xb4, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
402406 /* 0x2f2 */ { 0xf2, { 0x05, 0x06, 0x07, 0x04, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
403 /* 0x2f4 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
407 /* 0x2f4 */ { INPUT_PORT_C , { NIB0__,    NIB1__,NIB2__,NIB3__  } , 0, 1 }, // dc.w    $02F4 ; 0x0001 dc.w    $02F4 ; 0x0001 ; nand
404408 /* 0x2f6 */ { 0x84, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
405409 /* 0x2f8 */ { 0xa4, { 0xff, 0xff, 0xff, 0xff, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
406 /* 0x2fa */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
410 /* 0x2fa */ { INPUT_PORT_C , { NIB0R3,    NIB1__,NIB2__,NIB3__ } , 0, 0 }, // dc.w    $02FA ; 0x0008
407411 /* 0x2fc */ { 0xfc, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
408412 /* 0x2fe */ { 0x10, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
409413 /* 0x300 */ { 0xa4, { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
r24589r24590
458462 /* 0x362 */ { 0x02, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
459463 /* 0x364 */ { 0x6c, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
460464 /* 0x366 */ { 0xec, { 0x03, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
461 /* 0x368 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
462 /* 0x36a */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
463 /* 0x36c */  { INPUT_PORT_B , { 0x00, 0x01, 0x02, 0x03,  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff  } , 0, 0 },  // { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // Double Wing - not verified but standard case for most games
465 /* 0x368 */ { INPUT_PORT_C , { NIB3__,    BLANK_,BLANK_,BLANK_  } , 0, 0 }, // dc.w    $0368 ; 0x1000
466 /* 0x36a */ { INPUT_PORT_A , { 0x0C, 0x0D, 0x0E, 0x0F, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B } , 0, 0 },
467 /* 0x36c */  { INPUT_PORT_B , { 0x00, 0x01, 0x02, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF  } , 0, 0 },  // { INPUT_PORT_B , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // Double Wing - not verified but standard case for most games
464468 /* 0x36e */ { 0x0c, { 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
465469 /* 0x370 */ { 0x80, { 0x05, 0x06, 0x07, 0x04, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 0 },
466470 /* 0x372 */ { 0x82, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
r24589r24590
474478 /* 0x382 */ { 0xf2, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
475479 /* 0x384 */ { 0xdc, { 0x06, 0x07, 0x04, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
476480 /* 0x386 */ { 0x9c, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
477 /* 0x388 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
478 /* 0x38a */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
481 /* 0x388 */ { INPUT_PORT_A , { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
482 /* 0x38a */ { INPUT_PORT_B , { 0x04, 0x05, 0x06, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
479483 /* 0x38c */ { 0x28, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
480484 /* 0x38e */ { 0xb6, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
481485 /* 0x390 */ { 0x2c, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
r24589r24590
494498 /* 0x3aa */ { 0x56, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 1, 0 },
495499 /* 0x3ac */ { 0x54, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
496500 /* 0x3ae */ { 0x58, { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
497 /* 0x3b0 */  { INPUT_PORT_B , {  NIB1__, BLANK_, BLANK_, BLANK_ } , 0, 0 }, // { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // not verified, old sim says wizdfire uses it
501 /* 0x3b0 */  { INPUT_PORT_B , {  0x04, 0x05, 0x06, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 }, // { INPUT_PORT_B , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // not verified, old sim says wizdfire uses it
498502 /* 0x3b2 */ { 0x14, { 0x05, 0x06, 0x07, 0x04, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
499503 /* 0x3b4 */ { 0x38, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
500504 /* 0x3b6 */ { 0xf8, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
r24589r24590
512516 /* 0x3ce */ { 0xea, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
513517 /* 0x3d0 */ { 0xe8, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
514518 /* 0x3d2 */ { 0x88, { 0x06, 0x07, 0x04, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
515 /* 0x3d4 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
519 /* 0x3d4 */ { INPUT_PORT_C , { NIB1__,    NIB0__,NIB3__,NIB2__ } , 0, 0 }, // dc.w    $03D4 ; 0x0010
516520 /* 0x3d6 */ { 0x66, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
517 /* 0x3d8 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
521 /* 0x3d8 */ { INPUT_PORT_B , { 0x0C, 0x0D, 0x0E, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
518522 /* 0x3da */ { 0xfa, { 0x0f, 0x0c, 0x0d, 0x0e, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 0 },
519523 /* 0x3dc */ { 0x4c, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
520524 /* 0x3de */ { 0x36, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
r24589r24590
564568 /* 0x436 */ { 0x66, { 0x06, 0x07, 0x04, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 0 },
565569 /* 0x438 */ { 0xec, { 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
566570 /* 0x43a */ { 0xfe, { 0x03, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
567 /* 0x43c */ { INPUT_NOT_FOUND , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // this address always seems to return 0, is it a port with all bits masked out?
571 /* 0x43c */ { INPUT_PORT_B , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // this address always seems to return 0, is it a port with all bits masked out? I'm going to assume it's a 'B' port (4-bit) with mask applied to those 4 bits so they always return 0 due to a design flaw, that would make 21 of each port type.
568572 /* 0x43e */ { 0x7a, { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
569573 /* 0x440 */ { 0xfc, { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
570574 /* 0x442 */ { 0x10, { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
r24589r24590
572576 /* 0x446 */ { 0x16, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
573577 /* 0x448 */ { 0x90, { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
574578 /* 0x44a */ { 0xb4, { 0x0f, 0x0c, 0x0d, 0x0e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
575 /* 0x44c */ { INPUT_PORT_B,    {  NIB2R1, BLANK_, BLANK_, BLANK_ },  0, 0 }, // { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 }, // not verified, rohga, based on old sim
579 /* 0x44c */ { INPUT_PORT_B,    {  0x0D, 0x0E, 0x0F, 0x0C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF }, 0, 1 }, //dc.w    $044C ; nand
576580 /* 0x44e */ { 0x44, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
577 /* 0x450 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
581 /* 0x450 */ { INPUT_PORT_C , { NIB2__,    NIB3__,BLANK_,BLANK_ } , 1, 0 }, // dc.w    $0450 ; 0x0100  dc.w    $0450 ; 0x0100 ; xor
578582 /* 0x452 */ { 0x30, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
579583 /* 0x454 */ { 0x82, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
580584 /* 0x456 */ { 0x26, { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
r24589r24590
597601 /* 0x478 */ { 0xb6, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
598602 /* 0x47a */ { 0xc2, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
599603 /* 0x47c */ { 0x7e, { 0x0f, 0x0c, 0x0d, 0x0e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
600 /* 0x47e */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
604 /* 0x47e */ { INPUT_PORT_B , { 0x0C, 0x0D, 0x0E, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
601605 /* 0x480 */ { 0x5a, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
602606 /* 0x482 */ { 0x5c, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
603607 /* 0x484 */ { 0x5a, { 0x0d, 0x0e, 0x0f, 0x0c, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
r24589r24590
620624 /* 0x4a6 */ { 0x8c, { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
621625 /* 0x4a8 */ { 0xb0, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
622626 /* 0x4aa */ { 0x48, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 0 },
623 /* 0x4ac */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
627 /* 0x4ac */ { INPUT_PORT_A , { 0x0C, 0x0D, 0x0E, 0x0F, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
624628 /* 0x4ae */ { 0x92, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
625629 /* 0x4b0 */ { 0x10, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
626630 /* 0x4b2 */ { 0x74, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
r24589r24590
634638 /* 0x4c2 */ { 0x80, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
635639 /* 0x4c4 */ { 0x3c, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
636640 /* 0x4c6 */ { 0x94, { 0x0e, 0x0f, 0x0c, 0x0d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
637 /* 0x4c8 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
641 /* 0x4c8 */ { INPUT_PORT_A , { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F } , 0, 0 },
638642 /* 0x4ca */ { 0x20, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
639643 /* 0x4cc */ { 0xf6, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
640644 /* 0x4ce */ { 0x66, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 1, 1 },
641645 /* 0x4d0 */ { 0xe2, { 0x09, 0x0a, 0x0b, 0x08, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
642 /* 0x4d2 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
646 /* 0x4d2 */ { INPUT_PORT_B , { 0x02, 0x03, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
643647 /* 0x4d4 */ { 0xd4, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
644648 /* 0x4d6 */ { 0xa0, { 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
645649 /* 0x4d8 */ { 0x48, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
r24589r24590
655659 /* 0x4ec */ { 0x7c, { 0x0b, 0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
656660 /* 0x4ee */ { 0xcc, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
657661 /* 0x4f0 */ { 0x34, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
658 /* 0x4f2 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
662 /* 0x4f2 */ { INPUT_PORT_A , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F, 0x08, 0x09, 0x0A, 0x0B } , 0, 0 }, // dc.w    $04F2
659663 /* 0x4f4 */ { 0x28, { 0x09, 0x0a, 0x0b, 0x08, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
660664 /* 0x4f6 */ { 0xe6, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
661665 /* 0x4f8 */ { 0x6a, { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
r24589r24590
665669 /* 0x500 */ { 0xf0, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
666670 /* 0x502 */ { 0x88, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
667671 /* 0x504 */ { 0x5c, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
668 /* 0x506 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
669 /* 0x508 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
672 /* 0x506 */ { INPUT_PORT_C , { NIB0R2,    NIB1__,NIB2__,NIB3__ } , 0, 0 }, // dc.w    $0506 ; 0x0004
673 /* 0x508 */ { INPUT_PORT_A , { 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
670674 /* 0x50a */ { 0xc0, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
671675 /* 0x50c */ { 0x26, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 1 },
672676 /* 0x50e */ { 0x72, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 1, 1 },
r24589r24590
682686 /* 0x522 */ { 0xca, { 0x07, 0x04, 0x05, 0x06, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
683687 /* 0x524 */ { 0x54, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
684688 /* 0x526 */ { 0x08, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
685 /* 0x528 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
689 /* 0x528 */ { INPUT_PORT_B , { 0x08, 0x09, 0x0A, 0x0B, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
686690 /* 0x52a */ { 0x8e, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
687691 /* 0x52c */ { 0xe0, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
688692 /* 0x52e */ { 0xba, { 0x07, 0x04, 0x05, 0x06, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 0 },
r24589r24590
711715 /* 0x55c */ { 0x66, { 0x05, 0x06, 0x07, 0x04, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
712716 /* 0x55e */ { 0xea, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
713717 /* 0x560 */ { 0x82, { 0x0f, 0x0c, 0x0d, 0x0e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
714 /* 0x562 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
718 /* 0x562 */ { INPUT_PORT_B , { 0x00, 0x01, 0x02, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 1, 0 }, // dc.w    $0562 ; xor
715719 /* 0x564 */ { 0x80, { 0x06, 0x07, 0x04, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
716720 /* 0x566 */ { 0xf8, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
717721 /* 0x568 */ { 0x6c, { 0x0f, 0x0c, 0x0d, 0x0e, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
718722 /* 0x56a */ { 0x7c, { 0x0f, 0x0c, 0x0d, 0x0e, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
719 /* 0x56c */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
723 /* 0x56c */ { INPUT_PORT_A , { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
720724 /* 0x56e */ { 0x98, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
721725 /* 0x570 */ { 0x24, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
722726 /* 0x572 */ { 0xc2, { 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
r24589r24590
751755 /* 0x5ac */ { 0x6e, { 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
752756 /* 0x5ae */ { 0xdc, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
753757 /* 0x5b0 */ { 0xc4, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
754 /* 0x5b2 */  { INPUT_PORT_B , { 0x00, 0x01, 0x02, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 }, // { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // double wings - NOT verified
758 /* 0x5b2 */  { INPUT_PORT_B , { 0x00, 0x01, 0x02, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 }, // { INPUT_PORT_B , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },  // double wings - NOT verified
755759 /* 0x5b4 */ { 0xe0, { 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
756760 /* 0x5b6 */ { 0x92, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
757761 /* 0x5b8 */ { 0x4e, { 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
r24589r24590
780784 /* 0x5e6 */ { 0x34, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
781785 /* 0x5e8 */ { 0xe4, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
782786 /* 0x5ea */ { 0x58, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
783 /* 0x5ec */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
787 /* 0x5ec */ { INPUT_PORT_B , { 0x08, 0x09, 0x0A, 0x0B, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
784788 /* 0x5ee */ { 0x42, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
785789 /* 0x5f0 */ { 0x8c, { 0x02, 0x03, 0x00, 0x01, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
786790 /* 0x5f2 */ { 0x10, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
787 /* 0x5f4 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
791 /* 0x5f4 */ { INPUT_PORT_C , {NIB2__,    NIB3__,BLANK_,BLANK_  } , 0, 0 }, // dc.w    $05F4 ; 0x0100
788792 /* 0x5f6 */ { 0x04, { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 1, 0 },
789793 /* 0x5f8 */ { 0x4e, { 0x07, 0x04, 0x05, 0x06, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
790794 /* 0x5fa */ { 0xd2, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
r24589r24590
796800 /* 0x606 */ { 0xfc, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
797801 /* 0x608 */ { 0x1c, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
798802 /* 0x60a */ { 0xca, { 0x03, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
799 /* 0x60c */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
803 /* 0x60c */ { INPUT_PORT_A , { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x0C, 0x0D, 0x0E, 0x0F, 0x08, 0x09, 0x0A, 0x0B } , 0, 0 },
800804 /* 0x60e */ { 0xa0, { 0xff, 0xff, 0xff, 0xff, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
801805 /* 0x610 */ { 0xa4, { 0x06, 0x07, 0x04, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 1 },
802806 /* 0x612 */ { 0x64, { 0x09, 0x0a, 0x0b, 0x08, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 0 },
r24589r24590
812816 /* 0x626 */ { 0x4e, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
813817 /* 0x628 */ { 0x5a, { 0x02, 0x03, 0x00, 0x01, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
814818 /* 0x62a */ { 0x8a, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
815 /* 0x62c */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
819 /* 0x62c */ { INPUT_PORT_A , { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0xFF, 0xFF, 0xFF, 0xFF, 0x0C, 0x0D, 0x0E, 0x0F } , 0, 1 }, // dc.w    $062C ; nand
816820 /* 0x62e */ { 0x58, { 0x06, 0x07, 0x04, 0x05, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 1, 0 },
817 /* 0x630 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
821 /* 0x630 */ { INPUT_PORT_B , { 0x00, 0x01, 0x02, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 1 }, //   dc.w    $0630 ; nand
818822 /* 0x632 */ { 0x6a, { 0x07, 0x04, 0x05, 0x06, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
819823 /* 0x634 */ { 0xc2, { 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
820824 /* 0x636 */ { 0xc4, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
r24589r24590
848852 /* 0x66e */ { 0xec, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 0 },
849853 /* 0x670 */ { 0xf4, { 0x05, 0x06, 0x07, 0x04, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
850854 /* 0x672 */ { 0x6c, { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
851 /* 0x674 */  { INPUT_PORT_C , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 }, //{ INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },   // double wings uses this, NOT verified
855 /* 0x674 */  { INPUT_PORT_C , { NIB1__,    NIB2__,NIB3__,BLANK_ } , 0, 0 }, // dc.w    $0674 ; 0x0010
852856 /* 0x676 */ { 0xd2, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
853857 /* 0x678 */ { 0x72, { 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
854858 /* 0x67a */ { 0x28, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
855859 /* 0x67c */ { 0x1e, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
856 /* 0x67e */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
860 /* 0x67e */ { INPUT_PORT_B , { 0x0D, 0x0E, 0x0F, 0x0C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
857861 /* 0x680 */ { 0x7a, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
858862 /* 0x682 */ { 0xba, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
859863 /* 0x684 */ { 0xd8, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
r24589r24590
885889 /* 0x6b8 */ { 0xea, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
886890 /* 0x6ba */ { 0xf6, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
887891 /* 0x6bc */ { 0x42, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
888 /* 0x6be */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
892 /* 0x6be */ { INPUT_PORT_A , { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0xFF, 0xFF, 0xFF, 0xFF, 0x0C, 0x0D, 0x0E, 0x0F } , 1, 0 }, // dc.w    $06BE ; xor
889893 /* 0x6c0 */ { 0x08, { 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
890894 /* 0x6c2 */ { 0x54, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
891895 /* 0x6c4 */ { 0x66, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
892896 /* 0x6c6 */ { 0xcc, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
893897 /* 0x6c8 */ { 0x52, { 0x07, 0x04, 0x05, 0x06, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
894898 /* 0x6ca */ { 0xd4, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
895 /* 0x6cc */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
899 /* 0x6cc */ { INPUT_PORT_C , { NIB0R1,    NIB1__,NIB2__,NIB3__  } , 0, 0 }, // dc.w    $06CC ; 0x0002
896900 /* 0x6ce */ { 0x0e, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 1 },
897901 /* 0x6d0 */ { 0xb2, { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
898902 /* 0x6d2 */ { 0xa2, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 0 },
899903 /* 0x6d4 */ { 0xb4, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
900 /* 0x6d6 */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
904 /* 0x6d6 */ { INPUT_PORT_A , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, } , 1, 0 }, // dc.w    $06D6 ; xor
901905 /* 0x6d8 */ { 0xac, { 0x09, 0x0a, 0x0b, 0x08, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
902906 /* 0x6da */ { 0x24, { 0xff, 0xff, 0xff, 0xff, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
903907 /* 0x6dc */ { 0xbe, { 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 1, 0 },
r24589r24590
937941 /* 0x720 */ { 0x66, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
938942 /* 0x722 */ { 0xdc, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
939943 /* 0x724 */ { 0xb2, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
940 /* 0x726 */  { INPUT_PORT_C , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 }, //{ INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },   // double wings uses this, NOT verified
944 /* 0x726 */  { INPUT_PORT_C , { NIB0__,    NIB1__,NIB2__,NIB3__  } , 0, 0 }, // dc.w    $0726 ; 0x0001
941945 /* 0x728 */ { 0xd4, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 0, 1 },
942946 /* 0x72a */ { 0x86, { 0x0e, 0x0f, 0x0c, 0x0d, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
943947 /* 0x72c */ { 0x78, { 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
r24589r24590
948952 /* 0x736 */ { 0x68, { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
949953 /* 0x738 */ { 0x54, { 0x0d, 0x0e, 0x0f, 0x0c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
950954 /* 0x73a */ { 0x00, { 0x0b, 0x08, 0x09, 0x0a, 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
951 /* 0x73c */ { INPUT_PORT_A , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 }, // { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },   // double wings uses this, NOT verified (standard inputs?)
955 /* 0x73c */ { INPUT_PORT_A , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, } , 0, 0 }, // dc.w    $073C
952956 /* 0x73e */ { 0xae, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
953957 /* 0x740 */ { 0x6a, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 0 },
954958 /* 0x742 */ { 0x2e, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07 } , 0, 0 },
955959 /* 0x744 */ { 0xf6, { 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 1 },
956 /* 0x746 */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
960 /* 0x746 */ { INPUT_PORT_C , { NIB0__,    NIB1__,NIB2__,NIB3__ } , 1, 0 }, // dc.w    $0746 ; 0x0001  dc.w    $0746 ; 0x0001 ; xor
957961 /* 0x748 */ { 0x44, { 0x03, 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
958962 /* 0x74a */ { 0x14, { 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
959963 /* 0x74c */ { 0xd2, { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
960 /* 0x74e */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
964 /* 0x74e */ { INPUT_PORT_C , { NIB2__,    NIB3__,NIB0__,NIB1__  } , 0, 0 }, // dc.w    $074E ; 0x0100
961965 /* 0x750 */ { 0xaa, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
962966 /* 0x752 */ { 0xbe, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
963967 /* 0x754 */ { 0x76, { 0x0c, 0x0d, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
r24589r24590
974978 /* 0x76a */ { 0xfa, { 0x0f, 0x0c, 0x0d, 0x0e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
975979 /* 0x76c */ { 0x52, { 0x01, 0x02, 0x03, 0x00, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
976980 /* 0x76e */ { 0xd6, { 0x00, 0x01, 0x02, 0x03, 0x0c, 0x0d, 0x0e, 0x0f, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 0, 1 },
977 /* 0x770 */ { INPUT_PORT_B_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
981 /* 0x770 */ { INPUT_PORT_B , { 0x04, 0x05, 0x06, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } , 0, 0 },
978982 /* 0x772 */ { 0xc4, { 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0a, 0x0b } , 1, 0 },
979983 /* 0x774 */ { 0x38, { 0x07, 0x04, 0x05, 0x06, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
980984 /* 0x776 */ { 0x6c, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 1 },
r24589r24590
10281032 /* 0x7d6 */ { 0x28, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
10291033 /* 0x7d8 */ { 0xee, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
10301034 /* 0x7da */ { 0x56, { 0x08, 0x09, 0x0a, 0x0b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 1 },
1031 /* 0x7dc */ { INPUT_PORT_A_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
1035 /* 0x7dc */ { INPUT_PORT_A , { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, } , 0, 1 }, // dc.w    $07DC ; nand
10321036 /* 0x7de */ { 0x2a, { 0x0c, 0x0d, 0x0e, 0x0f, 0x08, 0x09, 0x0a, 0x0b, 0x04, 0x05, 0x06, 0x07, 0x00, 0x01, 0x02, 0x03 } , 1, 1 },
10331037 /* 0x7e0 */ { 0xf8, { 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b } , 1, 1 },
10341038 /* 0x7e2 */ { 0x96, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x0d, 0x0e, 0x0f } , 1, 0 },
r24589r24590
10441048 /* 0x7f6 */ { 0xac, { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } , 0, 0 },
10451049 /* 0x7f8 */ { 0x98, { 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03 } , 0, 1 },
10461050 /* 0x7fa */ { 0x80, { 0x0e, 0x0f, 0x0c, 0x0d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 1, 1 },
1047 /* 0x7fc */ { INPUT_PORT_C_NV , { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } , 0, 0 },
1051 /* 0x7fc */ { INPUT_PORT_C , { BLANK_,    NIB3__,BLANK_,BLANK_ } , 0, 0 }, // dc.w    $07FC ; Bit not present
10481052 /* 0x7fe */ { 0xd8, { 0x0a, 0x0b, 0x08, 0x09, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 } , 1, 1 }
10491053
10501054 };
trunk/src/mame/machine/deco146.h
r24589r24590
4040#define INPUT_PORT_B (-2)
4141#define INPUT_PORT_C (-3)
4242
43#define INPUT_PORT_A_NV (-4)
44#define INPUT_PORT_B_NV (-5)
45#define INPUT_PORT_C_NV (-6)
4643
47#define INPUT_NOT_FOUND (-7)
48
4944#define NIB3__ 0xc, 0xd, 0xe, 0xf
5045#define NIB3R1 0xd, 0xe, 0xf, 0xc
5146#define NIB3R2 0xe, 0xf, 0xc, 0xd

Previous 199869 Revisions Next


© 1997-2024 The MAME Team