1 /***************************************************************************
2 
3 Taito F2 System
4 
5 driver by David Graves, Bryan McPhail, Brad Oliver, Andrew Prime, Brian
6 Troha, Nicola Salmoria with some initial help from Richard Bush
7 
8 The Taito F2 system is a fairly flexible hardware platform. The main board
9 supports three 64x64 tiled scrolling background planes of 8x8 tiles, and a
10 powerful sprite engine capable of handling all the video chores by itself
11 (used in e.g. Super Space Invaders). The front tilemap has characters which
12 are generated in RAM for maximum versatility (fading effects etc.).
13 The expansion board can have additional gfx chip e.g. for a zooming/rotating
14 tilemap, or additional tilemap planes.
15 
16 Sound is handled by a Z80 with a YM2610 connected to it.
17 
18 The memory map for each of the games is similar but shuffled around.
19 
20 Notes:
21 - Metal Black has secret command to select stage.
22   Start the machine with holding service switch.
23   Then push 1p start, 1p start, 1p start, service SW, 1p start
24   while error message is displayed.
25 
26 (This also works in many of the other games. Use in Don Doko Don to play
27  an extra set of fifty levels.)
28 
29 
30 Custom chips
31 ------------
32 The old version of the F2 main board (larger) has
33 TC0100SCN (tilemaps)
34 TC0200OBJ+TC0210FBC (sprites)
35 TC0140SYT (sound communication & other stuff)
36 
37 The new version has
38 TC0100SCN (tilemaps)
39 TC0540OBN+TC0520TBC (sprites)
40 TC0530SYC (sound communication & other stuff)
41 
42             I/O    Priority / Palette      Additional gfx                 Other
43          --------- ------------------- ----------------------- ----------------------------
44 finalb   TC0220IOC TC0110PCR TC0070RGB
45 dondokod TC0220IOC TC0360PRI TC0260DAR TC0280GRD(x2)(zoom/rot)
46 megab    TC0220IOC TC0360PRI TC0260DAR                         TC0030CMD(C-Chip protection)
47 thundfox TC0220IOC TC0360PRI TC0260DAR TC0100SCN (so it has two)
48 cameltry TC0220IOC TC0360PRI TC0260DAR TC0280GRD(x2)(zoom/rot)
49 qtorimon TC0220IOC TC0110PCR TC0070RGB
50 liquidk  TC0220IOC TC0360PRI TC0260DAR
51 quizhq   TMP82C265 TC0110PCR TC0070RGB
52 ssi      TC0510NIO 			 TC0260DAR
53 gunfront TC0510NIO TC0360PRI TC0260DAR
54 growl    TMP82C265 TC0360PRI TC0260DAR                         TC0190FMC(4 players input?sprite banking?)
55 mjnquest           TC0110PCR TC0070RGB
56 footchmp TE7750    TC0360PRI TC0260DAR TC0480SCP(tilemaps)     TC0190FMC(4 players input?sprite banking?)
57 koshien  TC0510NIO TC0360PRI TC0260DAR
58 yuyugogo TC0510NIO 			 TC0260DAR
59 ninjak   TE7750    TC0360PRI TC0260DAR                         TC0190FMC(4 players input?sprite banking?)
60 solfigtr ?         TC0360PRI TC0260DAR ?
61 qzquest  TC0510NIO 			 TC0260DAR
62 pulirula TC0510NIO TC0360PRI TC0260DAR TC0430GRW(zoom/rot)
63 metalb   TC0510NIO TC0360PRI TC0260DAR TC0480SCP(tilemaps)
64 qzchikyu TC0510NIO 			 TC0260DAR
65 yesnoj   TMP82C265           TC0260DAR                         TC8521AP(RTC?)
66 deadconx           TC0360PRI TC0260DAR TC0480SCP(tilemaps)     TC0190FMC(4 players input?sprite banking?)
67 dinorex  TC0510NIO TC0360PRI TC0260DAR
68 qjinsei  TC0510NIO TC0360PRI TC0260DAR
69 qcrayon  TC0510NIO TC0360PRI TC0260DAR
70 qcrayon2 TC0510NIO TC0360PRI TC0260DAR
71 driftout TC0510NIO TC0360PRI TC0260DAR TC0430GRW(zoom/rot)
72 
73 
74 
75 F2 Game List
76 ------------
77 . Final Blow                                                                       (1)
78 . Don Doko Don                                                                     (2)
79 . Mega Blast               http://www.taito.co.jp/game-history/80b/megabla.html    (3)
80 . Quiz Torimonochou        http://www.taito.co.jp/game-history/90a/qui_tori.html   (4)
81 . Quiz HQ                  http://www.taito.co.jp/game-history/90a/quiz_hq.html
82 . Thunder Fox              http://www.taito.co.jp/game-history/90a/thu_fox.html
83 . Liquid Kids              http://www.taito.co.jp/game-history/90a/miz_bak.html    (7)
84 . SSI / Majestic 12        http://www.taito.co.jp/game-history/90a/mj12.html       (8)
85 . Gun Frontier             http://www.taito.co.jp/game-history/90a/gunfro.html     (9)
86 . Growl / Runark           http://www.taito.co.jp/game-history/90a/runark.html    (10)
87 . Hat Trick Hero           http://www.taito.co.jp/game-history/90a/hthero.html    (11)
88 . Mahjong Quest            http://www.taito.co.jp/game-history/90a/mahque.html    (12)
89 . Yuu-yu no Quiz de Go!Go! http://www.taito.co.jp/game-history/90a/youyu.html     (13)
90 . Ah Eikou no Koshien      http://www.taito.co.jp/game-history/90a/koshien.html   (14)
91 . Ninja Kids               http://www.taito.co.jp/game-history/90a/ninjakids.html (15)
92 . Quiz Quest               http://www.taito.co.jp/game-history/90a/q_quest.html
93 . Metal Black              http://www.taito.co.jp/game-history/90a/metabla.html
94 . Quiz Chikyu Boueigun     http://www.taito.co.jp/game-history/90a/qui_tik.html
95 . Dinorex                  http://www.taito.co.jp/game-history/90a/dinorex.html
96 . Pulirula
97 . Dead Connection          http://www.taito.co.jp/game-history/90a/deadconn.html
98 . Quiz Jinsei Gekijou      http://www.taito.co.jp/game-history/90a/qui_jin.html
99 . Quiz Crayon Shinchan     http://www.taito.co.jp/game-history/90a/qcrashin.html
100 . Crayon Shinchan Orato Asobo
101 
102 
103 This list is translated version of
104 http://www.aianet.or.jp/~eisetu/rom/rom_tait.html
105 This page also contains info for other Taito boards.
106 
107 F2 Motherboard ( Big ) K1100432A, J1100183A
108                (Small) K1100608A, J1100242A
109 
110 Apr.1989 Final Blow (B82, M4300123A, K1100433A)
111 Jul.1989 Don Doko Don (B95, M4300131A, K1100454A, J1100195A)
112 Oct.1989 Mega Blast (C11)
113 Feb.1990 Quiz Torimonochou (C41, K1100554A)
114 Apr.1990 Cameltry (C38, M4300167A, K1100556A)
115 Jul.1990 Quiz H.Q. (C53, K1100594A)
116 Aug.1990 Thunder Fox (C28, M4300181A, K1100580A) (exists in F1 version too)
117 Sep.1990 Liquid Kids/Mizubaku Daibouken (C49, K1100593A)
118 Nov.1990 MJ-12/Super Space Invaders (C64, M4300195A, K1100616A, J1100248A)
119 Jan.1991 Gun Frontier (C71, M4300199A, K1100625A, K1100629A(overseas))
120 Feb.1991 Growl/Runark (C74, M4300210A, K1100639A)
121 Mar.1991 Hat Trick Hero/Euro Football Championship (C80, K11J0646A)
122 Mar.1991 Yuu-yu no Quiz de Go!Go! (C83, K11J0652A)
123 Apr.1991 Ah Eikou no Koshien (C81, M43J0214A, K11J654A)
124 Apr.1991 Ninja Kids (C85, M43J0217A, K11J0659A)
125 May.1991 Mahjong Quest (C77, K1100637A, K1100637B)
126 Jul.1991 Quiz Quest (C92, K11J0678A)
127 Sep.1991 Metal Black (D12)
128 Oct.1991 Drift Out (Visco) (M43X0241A, K11X0695A)
129 Nov.1991 PuLiRuLa (C98, M43J0225A, K11J0672A)
130 Feb.1992 Quiz Chikyu Boueigun (D19, K11J0705A)
131 Jul.1992 Dead Connection (D28, K11J0715A)
132 Nov.1992 Dinorex (D39, K11J0254A)
133 Mar.1993 Quiz Jinsei Gekijou (D48, M43J0262A, K11J0742A)
134 Aug.1993 Quiz Crayon Shinchan (D55, K11J0758A)
135 Dec.1993 Crayon Shinchan Orato Asobo (D63, M43J0276A, K11J0779A)
136 
137 Mar.1992 Yes.No. Shinri Tokimeki Chart (Fortune teller machine) (D20, K11J0706B)
138 
139 Thunder Fox, Drift Out, "Quiz Crayon Shinchan", and "Crayon Shinchan
140 Orato Asobo" has "Not F2" version PCB.
141 Foreign version of Cameltry uses different hardware (B89's PLD,
142 K1100573A, K1100574A).
143 
144 
145 
146 
147 Sprite extension area types
148 ===========================
149 
150 These games need a special value for f2_spriteext:
151 
152 Yuyugogo = 1
153 Pulirula = 2
154 Dinorex = 3
155 Quiz Crayon 1&2 = 3
156 Quiz Jinsei = 3
157 (all other games need it to be zero)
158 
159 TODO Lists
160 ==========
161 
162 - The sprite system is still partly a mystery, and not an accurate emulation.
163   A lot of sprite glitches are caused by data in sprite ram not being correct,
164   part from one frame and part from the previous one. There has to be some
165   buffering inside the chip but it's not clear how. See below the irq section
166   for a long list of observations on sprite glitches.
167 
168   Other limitations include: misplaced tile of the zooming title in Qcrayon
169   (the one on the yellow background in attract); sprites when you get a home
170   run in Koshien are often out on x axis by 1 pixel.
171 
172 - TC0480SCP emulation (footchmp, metalb, deadconx) has slight inaccuracies.
173   Zoomed layers and zoomed pixel rows are not precisely positioned.
174 
175 - DIPS, still many unknown
176 
177 - Restored save states on some games tend to hang.
178 
179 - All non-quiz games except Solfigtr have 2 country sets dumped: if 1 byte diff
180   then create the third set.
181 
182 
183 Don Doko Don
184 ------------
185 
186 Roz layer is one pixel out vertically when screen flipped.
187 
188 
189 Cameltry (camltrua)
190 --------
191 
192 Alt version with YM2203 sound missing ADPCM chip? Also sound tempo
193 may be fractionally too slow.
194 
195 
196 Gun Frontier
197 ------------
198 
199 There are mask sprites used on the waterfall in the first round
200 of attract demo, however it's not clear what they should mask since
201 there don't seem to be sprites below them. Shadow maybe?
202 (BM161104 - Fixed)
203 
204 Pulirula
205 --------
206 
207 In level 3, the mask sprites used for the door are misaligned by one pixel to
208 the left.
209 (BM100705 - Not a bug - various alignment problems seem to be confirmed from a real pcb).
210 Shadows appear to have some kind of flicker effect on real pcb - not emulated/understood.
211 
212 Metal Black
213 -----------
214 
215 Tilemap screenflip support has an issue: blue planet early in attract
216 should be 1 pixel left.
217 
218 Sprite emulation issues may be responsible for minor glitches on the
219 "bolts" on round 4 boss ship: some sprite/tilemap lag creeps in.
220 
221 Missing two blend effects: there's a sun sprite underneath tilemaps
222 in round 1; and the boss sprite crosses under the tilemaps at start
223 of round 5 finale.
224 (BM161104 - Fixed)
225 
226 Yesnoj
227 ------
228 
229 Input mapping incomplete. There's a 0x01 one which only seems to be
230 used in printer [printer test?] mode. It seems to be a printer status
231 input. With the value currently returned, it sounds an alarm and says
232 [Japanese trans.] "Error detected on the printer. Call machine operator."
233 
234 The timer stays at 00:00. Missing RTC emulation?
235 
236 [Coin lockout/ctr?]
237 
238 
239 Quiz Crayon 2
240 -------------
241 
242 There should be a highlight circle around the player while it moves on the
243 map. This is done by a sprite which doesn't have priority over the
244 background. This is probably the same thing as the waterfall in Gun Frontier.
245 (BM161104 - Fixed)
246 
247 Driftout
248 --------
249 
250 Sprites are 1 pixel too far right in screenflip.
251 Roz layer is around 4 pixels too far down in screenflip.
252 
253 
254 Driveout
255 --------
256 
257 Sound
258 
259 ***************************************************************************/
260 
261 #include "driver.h"
262 #include "state.h"
263 #include "cpu/m68000/m68000.h"
264 #include "vidhrdw/generic.h"
265 #include "vidhrdw/taitoic.h"
266 #include "sndhrdw/taitosnd.h"
267 #include "taito_f2.h"
268 
269 
270 static int banknum = 0;
271 static int mjnquest_input;
272 static int yesnoj_dsw = 0;
273 
274 
275 /**********************************************************
276                         GAME INPUTS
277 **********************************************************/
278 
WRITE16_HANDLER(taitof2_watchdog_w)279 static WRITE16_HANDLER( taitof2_watchdog_w )
280 {
281 	watchdog_reset_w(0,data);
282 }
283 
WRITE16_HANDLER(growl_coin_word_w)284 static WRITE16_HANDLER( growl_coin_word_w )	/* what about coins 3&4 ?? */
285 {
286 	if (ACCESSING_LSB)
287 	{
288 		coin_lockout_w(0, ~data & 0x01);
289 		coin_lockout_w(1, ~data & 0x02);
290 		coin_counter_w(0,  data & 0x04);
291 		coin_counter_w(1,  data & 0x08);
292 	}
293 }
294 
WRITE16_HANDLER(taitof2_4p_coin_word_w)295 static WRITE16_HANDLER( taitof2_4p_coin_word_w )
296 {
297 	if (ACCESSING_LSB)
298 	{
299 		coin_lockout_w(0, ~data & 0x01);
300 		coin_lockout_w(1, ~data & 0x02);
301 		coin_lockout_w(2, ~data & 0x04);
302 		coin_lockout_w(3, ~data & 0x08);
303 		coin_counter_w(0,  data & 0x10);
304 		coin_counter_w(1,  data & 0x20);
305 		coin_counter_w(2,  data & 0x40);
306 		coin_counter_w(3,  data & 0x80);
307 	}
308 }
309 
WRITE16_HANDLER(ninjak_coin_word_w)310 static WRITE16_HANDLER( ninjak_coin_word_w )
311 {
312 	if (ACCESSING_MSB)
313 	{
314 		coin_lockout_w(0, ~data & 0x0100);
315 		coin_lockout_w(1, ~data & 0x0200);
316 		coin_lockout_w(2, ~data & 0x0400);
317 		coin_lockout_w(3, ~data & 0x0800);
318 		coin_counter_w(0,  data & 0x1000);
319 		coin_counter_w(1,  data & 0x2000);
320 		coin_counter_w(2,  data & 0x4000);
321 		coin_counter_w(3,  data & 0x8000);
322 	}
323 }
324 
READ16_HANDLER(growl_dsw_r)325 static READ16_HANDLER( growl_dsw_r )
326 {
327     switch (offset)
328     {
329          case 0x00:
330               return input_port_3_word_r(0,mem_mask); /* DSW A */
331 
332          case 0x01:
333               return input_port_4_word_r(0,mem_mask); /* DSW B */
334     }
335 
336 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped dsw_r offset %06x\n",activecpu_get_pc(),offset);
337 
338 	return 0xff;
339 }
340 
READ16_HANDLER(growl_input_r)341 static READ16_HANDLER( growl_input_r )
342 {
343     switch (offset)
344     {
345          case 0x00:
346               return input_port_0_word_r(0,mem_mask); /* IN0 */
347 
348          case 0x01:
349               return input_port_1_word_r(0,mem_mask); /* IN1 */
350 
351          case 0x02:
352               return input_port_2_word_r(0,mem_mask); /* IN2 */
353 
354     }
355 
356 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped input_r offset %06x\n",activecpu_get_pc(),offset);
357 
358 	return 0xff;
359 }
360 
READ16_HANDLER(footchmp_input_r)361 static READ16_HANDLER( footchmp_input_r )
362 {
363 	switch (offset)
364 	{
365 		case 0x00:
366 			return input_port_3_word_r(0,mem_mask); /* DSW A */
367 
368 		case 0x01:
369 			return input_port_4_word_r(0,mem_mask); /* DSW B */
370 
371 		case 0x02:
372 			return input_port_2_word_r(0,mem_mask); /* IN2 */
373 
374 /*		case 0x03:*/
375 /*			return (coin_word & ~mem_mask);*/
376 
377 		case 0x05:
378 			return input_port_0_word_r(0,mem_mask); /* IN0 */
379 
380 		case 0x06:
381 			return input_port_1_word_r(0,mem_mask); /* IN1 */
382 
383 		case 0x07:
384 			return input_port_5_word_r(0,mem_mask); /* IN3 */
385 
386 		case 0x08:
387 			return input_port_6_word_r(0,mem_mask); /* IN4 */
388     }
389 
390 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped input offset %06x\n",activecpu_get_pc(),offset);
391 
392 	return 0xff;
393 }
394 
READ16_HANDLER(ninjak_input_r)395 static READ16_HANDLER( ninjak_input_r )
396 {
397 	switch (offset)
398 	{
399 		case 0x00:
400 			return (input_port_3_word_r(0,0) << 8); /* DSW A */
401 
402 		case 0x01:
403 			return (input_port_4_word_r(0,0) << 8); /* DSW B */
404 
405 		case 0x02:
406 			return (input_port_0_word_r(0,0) << 8); /* IN 0 */
407 
408 		case 0x03:
409 			return (input_port_1_word_r(0,0) << 8); /* IN 1 */
410 
411 		case 0x04:
412 			return (input_port_5_word_r(0,0) << 8); /* IN 3 */
413 
414 		case 0x05:
415 			return (input_port_6_word_r(0,0) << 8); /* IN 4 */
416 
417 		case 0x06:
418 			return (input_port_2_word_r(0,0) << 8); /* IN 2 */
419 
420 /*		case 0x07:*/
421 /*			return (coin_word & ~mem_mask);*/
422 	}
423 
424 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped input offset %06x\n",activecpu_get_pc(),offset);
425 
426 	return 0xff;
427 }
428 
READ16_HANDLER(cameltry_paddle_r)429 static READ16_HANDLER( cameltry_paddle_r )
430 {
431 	static int last[2];
432 	int curr,res = 0xff;
433 
434 	switch (offset)
435 	{
436 		case 0x00:
437 			curr = input_port_5_word_r(0,0); /* Paddle A */
438 			res = curr - last[0];
439 			last[0] = curr;
440 			return res;
441 
442 		case 0x02:
443 			curr = input_port_6_word_r(0,0); /* Paddle B */
444 			res = curr - last[1];
445 			last[1] = curr;
446 			return res;
447 	}
448 
449 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped paddle offset %06x\n",activecpu_get_pc(),offset);
450 
451 	return 0;
452 }
453 
READ16_HANDLER(driftout_paddle_r)454 static READ16_HANDLER( driftout_paddle_r )
455 {
456     switch (offset)
457     {
458          case 0x00:
459               return input_port_5_word_r(0,mem_mask); /* Paddle A */
460 
461          case 0x01:
462               return input_port_6_word_r(0,mem_mask); /* Paddle B */
463     }
464 
465 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped paddle offset %06x\n",activecpu_get_pc(),offset);
466 
467         return 0xff;
468 }
469 
READ16_HANDLER(deadconx_input_r)470 static READ16_HANDLER( deadconx_input_r )
471 {
472 	switch (offset)
473 	{
474 		case 0x00:
475 			return input_port_3_word_r(0,mem_mask); /* DSW A */
476 
477 		case 0x01:
478 			return input_port_4_word_r(0,mem_mask); /* DSW B */
479 
480 		case 0x02:
481 			return input_port_2_word_r(0,mem_mask); /* IN2 */
482 
483 /*		case 0x03:*/
484 /*			return (coin_word & ~mem_mask);*/
485 
486 		case 0x05:
487 			return input_port_0_word_r(0,mem_mask); /* IN0 */
488 
489 		case 0x06:
490 			return input_port_1_word_r(0,mem_mask); /* IN1 */
491 
492 		case 0x07:
493 			return input_port_5_word_r(0,mem_mask); /* IN3 */
494 
495 		case 0x08:
496 			return input_port_6_word_r(0,mem_mask); /* IN4 */
497     }
498 
499 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped input offset %06x\n",activecpu_get_pc(),offset);
500 
501 	return 0xff;
502 }
503 
READ16_HANDLER(mjnquest_dsw_r)504 static READ16_HANDLER( mjnquest_dsw_r )
505 {
506     switch (offset)
507     {
508         case 0x00:
509         {
510 			return (input_port_5_word_r(0,0) << 8) + input_port_7_word_r(0,0); /* DSW A + coin */
511         }
512 
513         case 0x01:
514         {
515 			return (input_port_6_word_r(0,0) << 8) + input_port_8_word_r(0,0); /* DSW B + coin */
516         }
517     }
518 
519     log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped dsw_r offset %06x\n",activecpu_get_pc(),offset);
520 
521     return 0xff;
522 }
523 
READ16_HANDLER(mjnquest_input_r)524 static READ16_HANDLER( mjnquest_input_r )
525 {
526     switch (mjnquest_input)
527     {
528          case 0x01:
529               return input_port_0_word_r(0,mem_mask); /* IN0 */
530 
531          case 0x02:
532               return input_port_1_word_r(0,mem_mask); /* IN1 */
533 
534          case 0x04:
535               return input_port_2_word_r(0,mem_mask); /* IN2 */
536 
537          case 0x08:
538               return input_port_3_word_r(0,mem_mask); /* IN3 */
539 
540          case 0x10:
541               return input_port_4_word_r(0,mem_mask); /* IN4 */
542 
543     }
544 
545 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 mjnquest_input %06x: warning - read unknown input %06x\n",activecpu_get_pc(),mjnquest_input);
546 
547 	return 0xff;
548 }
549 
WRITE16_HANDLER(mjnquest_inputselect_w)550 static WRITE16_HANDLER( mjnquest_inputselect_w )
551 {
552     mjnquest_input = (data >> 6);
553 }
554 
READ16_HANDLER(quizhq_input1_r)555 static READ16_HANDLER( quizhq_input1_r )
556 {
557     switch (offset)
558     {
559          case 0x00:
560               return input_port_4_word_r(0,mem_mask); /* DSW B */
561 
562          case 0x01:
563               return input_port_0_word_r(0,mem_mask); /* IN0 */
564     }
565 
566 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped input_r offset %06x\n",activecpu_get_pc(),offset);
567 
568 	return 0xff;
569 }
570 
READ16_HANDLER(quizhq_input2_r)571 static READ16_HANDLER( quizhq_input2_r )
572 {
573     switch (offset)
574     {
575          case 0x00:
576               return input_port_3_word_r(0,mem_mask); /* DSW A */
577 
578          case 0x01:
579               return input_port_1_word_r(0,mem_mask); /* IN1 */
580 
581          case 0x02:
582               return input_port_2_word_r(0,mem_mask); /* IN2 */
583     }
584 
585 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped input_r offset %06x\n",activecpu_get_pc(),offset);
586 
587 	return 0xff;
588 }
589 
READ16_HANDLER(yesnoj_input_r)590 static READ16_HANDLER( yesnoj_input_r )
591 {
592     switch (offset)
593     {
594          case 0x00:
595               return input_port_0_word_r(0,mem_mask);	/* IN0 */
596 
597 /* case 0x01 only used if "printer" DSW is on, and appears to
598    be printer status byte */
599 
600          case 0x02:
601               return input_port_1_word_r(0,mem_mask); /* IN1 */
602     }
603 
604 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06x: warning - read unmapped input_r offset %06x\n",activecpu_get_pc(),offset);
605 
606 	return 0x0;
607 }
608 
READ16_HANDLER(yesnoj_dsw_r)609 static READ16_HANDLER( yesnoj_dsw_r )
610 {
611 #ifdef MAME_DEBUG
612 	log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC = %06x: read yesnoj DSW %01x\n",activecpu_get_pc(),yesnoj_dsw);
613 #endif
614 
615 	yesnoj_dsw = 1 - yesnoj_dsw;   /* game reads same word twice to get DSW A then B so we toggle */
616 
617 	if (yesnoj_dsw)
618 	{
619 		return input_port_2_word_r(0,mem_mask);
620 	}
621 	else
622 	{
623 		return input_port_3_word_r(0,mem_mask);
624 	}
625 }
626 
627 /******************************************************************
628                        INTERRUPTS (still a WIP)
629 
630 The are two interrupt request signals: VBL and DMA. DMA comes
631 from the sprite generator (maybe when it has copied the data to
632 a private buffer, or rendered the current frame, or who knows what
633 else).
634 The requests are mapped through a PAL so no hardwiring, but the PAL
635 could be the same across all the games. All the games have just two
636 valid vectors, IRQ5 and IRQ6.
637 
638 It seems that usually VBL maps to IRQ5 and DMA to IRQ6. However
639 there are jumpers on the board allowing to swap the two interrupt
640 request signals, so this could explain a need for certain games to
641 have them in the opposite order.
642 
643 There are lots of sprite glitches in many games because the sprite ram
644 is often updated in two out-of-sync chunks. I am almost sure there is
645 some partial buffering going on in the sprite chip, and DMA has to
646 play a part in it.
647 
648 
649              sprite ctrl regs   	  interrupts & sprites
650           0006 000a    8006 800a
651           ----------------------	-----------------------------------------------
652 finalb    8000 0300    0000 0000	Needs partial buffering like dondokod to avoid glitches
653 dondokod  8000 0000/8  0000 0000	IRQ6 just sets a flag. IRQ5 waits for that flag,
654                                 	toggles ctrl register 0000<->0008, and copies bytes
655 									0 and 8 *ONLY* of sprite data (code, color, flip,
656 									ctrl). The other bytes of sprite data (coordinates
657 									and zoom) are updated by the main program.
658 									Caching sprite data and using bytes 0 and 8 from
659 									previous frame and the others from *TWO* frames
660 									before is enough to get glitch-free sprites that seem
661 									to be perfectly in sync with scrolling (check the tree
662 									mouths during level change).
663 thundfox  8000 0000    0000 0000	IRQ6 copies bytes 0 and 8 *ONLY* of sprite data (code,
664 									color, flip, ctrl). The other bytes of sprite data
665 									(coordinates and zoom) are updated (I think) by the
666 									main program.
667 									The same sprite data caching that works for dondokod
668 									improves sprites, but there are still glitches related
669 									to zoom (check third round of attract mode). Those
670 									glitches can be fixed by buffering also the zoom ctrl
671 									byte.
672 									Moreover, sprites are not in perfect sync with the
673 									background (sometimes they are one frame behind, but
674 									not always).
675 qtorimon  8000 0000    0000 0000    IRQ6 does some stuff but doesn't seem to deal with
676 									sprites. IRQ5 copies bytes 0, 8 *AND ALSO 2* of sprite
677 									data in one routine, and immediately after that the
678 									remaining bytes 4 and 6 in another routine, without
679 									doing, it seems, any waiting inbetween.
680 									Nevertheless, separated sprite data caching like in
681 									dondokod is still required to avoid glitches.
682 liquidk   8000 0000/8  0000 0000	Same as dondokod. An important difference is that
683 									the sprite ctrl register doesn't toggle every frame
684 									(because the handler can't complete the frame in
685 									time?). This can be seen easily in the attract mode,
686 									where sprite glitches appear.
687 									Correctly handling the ctrl register and sprite data
688 									caching seems to be vital to avoid sprite glitches.
689 quizhq    8000 0000    0000 0000	Both IRQ5 and IRQ6 do stuff, I haven't investigated.
690 									There is a very subtle sprite glitch if sprite data
691 									buffering is not used: the blinking INSERT COIN in
692 									the right window will get moved as garbage chars on
693 									the left window score and STOCK for one frame when
694 									INSERT COINS disappears from the right. This happens
695 									because bytes 0 and 8 of the sprite data are one
696 									frame behind and haven't been cleared yet.
697 ssi       8000 0000    0000 0000	IRQ6 does nothing. IRQ5 copies bytes 0 and 8 *ONLY*
698 									of sprite data (code, color, flip, ctrl). The other
699 									bytes of sprite data (coordinates and zoom) are
700 									updated by the main program.
701 									The same sprite data caching that works for dondokod
702 									avoids major glitches, but I'm not sure it's working
703 									right when the big butterfly (time bonus) is on
704 									screen (it flickers on and off every frame).
705 gunfront  8000 1000/1  8001 1000/1	The toggling bit in the control register selects the
706 									sprite bank used. It normally toggles every frame but
707 									sticks for two frame when lots of action is going on
708 									(see smart bombs in attract mode) and glitches will
709 									appear if it is not respected.
710 									IRQ6 writes the sprite ctrl registers, and also writes
711 									related data to the sprites at 9033e0/90b3e0. The
712 									active one gets 8000/8001 in byte 6 and 1001/1000 in
713 									byte 10, while the other gets 0. Note that the value
714 									in byte 10 is inverted from the active bank, as if it
715 									were a way to tell the sprite hardware "after this, go
716 									to the other bank".
717 									Note also that IRQ6 isn't the only one writing to the
718 									sprite ctrl registers, this is done also in the parts
719 									that actually change the sprite data (I think it's
720 									main program, not interrupt), so it's not clear who's
721 									"in charge". Actually it seems that what IRQ6 writes
722 									is soon overwritten so that what I outlined above
723 									regarding 9033e0/90b3e0 is no longer true, and they
724 									are no longer in sync with the ctrl registers, messing
725 									up smart bombs.
726 									There don't seem to be other glitches even without
727 									sprite data buffering.
728 growl     8000 0000    8001 0001	IRQ6 just sets a flag. I haven't investigated who
729 									updates the sprite ram.
730 									This game uses sprite banks like gunfront, but unlike
731 									gunfront it doesn't change the ctrl registers. What it
732 									does is change the sprites at 903210/90b210; 8000/8001
733 									is always written in byte 6, while byte 10 receives
734 									the active bank (1000 or 1001). There are also end of
735 									list markers placed before that though, and those seem
736 									to always match what's stored in the ctrl registers
737 									(8000 1000 for the first bank and 8001 1001 for the
738 									second).
739 									There don't seem to be sprite glitches even without
740 									sprite data buffering, but sprites are not in sync with
741 									the background.
742 mjnquest  8000 0800/8  0000 0000
743 footchmp  8000 0000    8001 0001	IRQ6 just sets a flag (and writes to an unknown memory
744 									location).
745 									This games uses sprite banks as well, this time it
746 									writes markers at 2033e0/20b3e0, it always writes
747 									1000/1001 to byte 10, while it writes 8000 or 8001 to
748 									byte 6 depending on the active bank. This is the exact
749 									opposite of growl...
750 hthero
751 koshien   8000 0000    8001 0001	Another game using banks.The markers are again at
752 									9033e0/90b3e0 but this time byte 6 receives 9000/9001.
753 									Byte 10 is 1000 or 1001 depending on the active bank.
754 yuyugogo  8000 0800/8  0000 0000
755 ninjak    8000 0000    8001 0001	uses banks
756 solfigtr  8000 0000    8001 0001	uses banks
757 qzquest   8000 0000    0000 0000	Separated sprite data caching like in dondokod is
758 									required to avoid glitches.
759 pulirula  8000 0000    8001 0001	uses banks
760 qzchikyu  8000 0000    0000 0000	With this game there are glitches and the sprite data
761 									caching done in dondokod does NOT fix them.
762 deadconx 8/9000 0000/1 8/9001 0000/1 I guess it's not a surprise that this game uses banks
763 									in yet another different way.
764 dinorex   8000 0000    8001 0001	uses banks
765 driftout  8000 0000/8  0000 0000	The first control changes from 8000 to 0000 at the end
766 									of the attract demo and seems to stay that way.
767 
768 
769 ******************************************************************/
770 
taitof2_interrupt6(int x)771 void taitof2_interrupt6(int x)
772 {
773 	cpu_set_irq_line(0,6,HOLD_LINE);
774 }
775 
INTERRUPT_GEN(taitof2_interrupt)776 static INTERRUPT_GEN( taitof2_interrupt )
777 {
778 	timer_set(TIME_IN_CYCLES(500,0),0, taitof2_interrupt6);
779 	cpu_set_irq_line(0, 5, HOLD_LINE);
780 }
781 
782 
783 /****************************************************************
784                             SOUND
785 ****************************************************************/
786 
reset_sound_region(void)787 static void reset_sound_region(void)
788 {
789 	cpu_setbank( 2, memory_region(REGION_CPU2) + (banknum * 0x4000) + 0x10000 );
790 }
791 
WRITE_HANDLER(sound_bankswitch_w)792 static WRITE_HANDLER( sound_bankswitch_w )
793 {
794 	banknum = (data - 1) & 7;
795 	reset_sound_region();
796 
797 #ifdef MAME_DEBUG
798 	if (banknum>2) log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #1 switch to ROM bank %06x: should only happen if Z80 prg rom is 128K!\n",banknum);
799 #endif
800 }
801 
802 
READ16_HANDLER(taitof2_sound_r)803 READ16_HANDLER( taitof2_sound_r )
804 {
805 	if (offset == 1)
806 		return (taitosound_comm16_lsb_r(0,mem_mask));
807 	else return 0;
808 }
809 
READ16_HANDLER(taitof2_msb_sound_r)810 READ16_HANDLER( taitof2_msb_sound_r )
811 {
812 	if (offset == 1)
813 		return (taitosound_comm16_msb_r(0,mem_mask));
814 	else return 0;
815 }
816 
817 
818 static int driveout_sound_latch = 0;
819 
820 
READ_HANDLER(driveout_sound_command_r)821 static READ_HANDLER( driveout_sound_command_r)
822 {
823 	cpu_set_irq_line(1,0,CLEAR_LINE);
824 /*	log_cb(RETRO_LOG_DEBUG, LOGPRE "sound IRQ OFF (sound command=%02x)\n",driveout_sound_latch);*/
825 	return driveout_sound_latch;
826 }
827 
828 static int oki_bank = 0;
829 
reset_driveout_sound_region(void)830 static void reset_driveout_sound_region(void)
831 {
832 	OKIM6295_set_bank_base(0, oki_bank*0x40000);
833 }
834 
WRITE_HANDLER(oki_bank_w)835 static WRITE_HANDLER (oki_bank_w)
836 {
837 	if ((data&4) && (oki_bank!=(data&3)) )
838 	{
839 		oki_bank = (data&3);
840 	}
841 	reset_driveout_sound_region();
842 }
843 
WRITE16_HANDLER(driveout_sound_command_w)844 static WRITE16_HANDLER ( driveout_sound_command_w )
845 {
846 	static int nibble = 0;
847 
848 	if (ACCESSING_MSB)
849 	{
850 		data >>= 8;
851 		if (offset==0)
852 		{
853 			nibble = data & 1;
854 		}
855 		else
856 		{
857 			if (nibble==0)
858 			{
859 				driveout_sound_latch = (data & 0x0f) | (driveout_sound_latch & 0xf0);
860 			}
861 			else
862 			{
863 				driveout_sound_latch = ((data<<4) & 0xf0) | (driveout_sound_latch & 0x0f);
864 				cpu_set_irq_line (1, 0, ASSERT_LINE);
865 			}
866 		}
867 	}
868 }
869 
870 
871 /***********************************************************
872                      MEMORY STRUCTURES
873 ***********************************************************/
874 
MEMORY_READ16_START(finalb_readmem)875 static MEMORY_READ16_START( finalb_readmem )
876 	{ 0x000000, 0x03ffff, MRA16_ROM },
877 	{ 0x100000, 0x10ffff, MRA16_RAM },
878 	{ 0x200000, 0x200007, TC0110PCR_word_r },	/* palette */
879 	{ 0x300000, 0x30000f, TC0220IOC_halfword_r },	/* I/O */
880 	{ 0x320000, 0x320003, taitof2_sound_r },
881 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
882 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
883 	{ 0x900000, 0x90ffff, MRA16_RAM },
884 MEMORY_END
885 
886 static MEMORY_WRITE16_START( finalb_writemem )
887 	{ 0x000000, 0x03ffff, MWA16_ROM },
888 	{ 0x100000, 0x10ffff, MWA16_RAM },
889 	{ 0x200000, 0x200007, TC0110PCR_word_w },	/* palette */
890 	{ 0x300000, 0x30000f, TC0220IOC_halfword_w },	/* I/O */
891 	{ 0x320000, 0x320001, taitosound_port16_lsb_w },
892 	{ 0x320002, 0x320003, taitosound_comm16_lsb_w },
893 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
894 	{ 0x810000, 0x81ffff, MWA16_NOP },   /* error in game init code ? */
895 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
896 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
897 	{ 0xb00002, 0xb00003, MWA16_NOP },   /* ?? */
898 MEMORY_END
899 
900 static MEMORY_READ16_START( dondokod_readmem )
901 	{ 0x000000, 0x07ffff, MRA16_ROM },
902 	{ 0x100000, 0x10ffff, MRA16_RAM },
903 	{ 0x200000, 0x201fff, MRA16_RAM },
904 	{ 0x300000, 0x30000f, TC0220IOC_halfword_r },	/* I/O */
905 	{ 0x320000, 0x320003, taitof2_msb_sound_r },
906 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
907 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
908 	{ 0x900000, 0x90ffff, MRA16_RAM },
909 	{ 0xa00000, 0xa01fff, TC0280GRD_word_r },
910 MEMORY_END
911 
912 static MEMORY_WRITE16_START( dondokod_writemem )
913 	{ 0x000000, 0x07ffff, MWA16_ROM },
914 	{ 0x100000, 0x10ffff, MWA16_RAM },
915 	{ 0x200000, 0x201fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
916 	{ 0x300000, 0x30000f, TC0220IOC_halfword_w },	/* I/O */
917 	{ 0x320000, 0x320001, taitosound_port16_msb_w },
918 	{ 0x320002, 0x320003, taitosound_comm16_msb_w },
919 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
920 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
921 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
922 	{ 0xa00000, 0xa01fff, TC0280GRD_word_w },	/* ROZ tilemap */
923 	{ 0xa02000, 0xa0200f, TC0280GRD_ctrl_word_w },
924 	{ 0xb00000, 0xb0001f, TC0360PRI_halfword_w },	/* ?? */
925 MEMORY_END
926 
927 static MEMORY_READ16_START( megab_readmem )
928 	{ 0x000000, 0x07ffff, MRA16_ROM },
929 	{ 0x100000, 0x100003, taitof2_msb_sound_r },
930 	{ 0x120000, 0x12000f, TC0220IOC_halfword_r },	/* I/O */
931 	{ 0x180000, 0x180fff, cchip2_word_r },
932 	{ 0x200000, 0x20ffff, MRA16_RAM },
933 	{ 0x300000, 0x301fff, MRA16_RAM },
934 	{ 0x600000, 0x60ffff, TC0100SCN_word_0_r },	/* tilemaps */
935 	{ 0x610000, 0x61ffff, MRA16_RAM }, /* unused? */
936 	{ 0x620000, 0x62000f, TC0100SCN_ctrl_word_0_r },
937 	{ 0x800000, 0x80ffff, MRA16_RAM },
938 MEMORY_END
939 
940 static MEMORY_WRITE16_START( megab_writemem )
941 	{ 0x000000, 0x07ffff, MWA16_ROM },
942 	{ 0x100000, 0x100001, taitosound_port16_msb_w },
943 	{ 0x100002, 0x100003, taitosound_comm16_msb_w },
944 	{ 0x120000, 0x12000f, TC0220IOC_halfword_w },	/* I/O */
945 	{ 0x180000, 0x180fff, cchip2_word_w, &cchip_ram },
946 	{ 0x200000, 0x20ffff, MWA16_RAM },
947 	{ 0x300000, 0x301fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
948 	{ 0x400000, 0x40001f, TC0360PRI_halfword_w },	/* ?? */
949 	{ 0x600000, 0x60ffff, TC0100SCN_word_0_w },	/* tilemaps */
950 	{ 0x610000, 0x61ffff, MWA16_RAM },   /* unused? */
951 	{ 0x620000, 0x62000f, TC0100SCN_ctrl_word_0_w },
952 	{ 0x800000, 0x80ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
953 MEMORY_END
954 
955 static MEMORY_READ16_START( thundfox_readmem )
956 	{ 0x000000, 0x07ffff, MRA16_ROM },
957 	{ 0x100000, 0x101fff, MRA16_RAM },
958 	{ 0x200000, 0x20000f, TC0220IOC_halfword_r },	/* I/O */
959 	{ 0x220000, 0x220003, taitof2_msb_sound_r },
960 	{ 0x300000, 0x30ffff, MRA16_RAM },
961 	{ 0x400000, 0x40ffff, TC0100SCN_word_0_r },	/* tilemaps */
962 	{ 0x420000, 0x42000f, TC0100SCN_ctrl_word_0_r },
963 	{ 0x500000, 0x50ffff, TC0100SCN_word_1_r },	/* tilemaps */
964 	{ 0x520000, 0x52000f, TC0100SCN_ctrl_word_1_r },
965 	{ 0x600000, 0x60ffff, MRA16_RAM },
966 MEMORY_END
967 
968 static MEMORY_WRITE16_START( thundfox_writemem )
969 	{ 0x000000, 0x07ffff, MWA16_ROM },
970 	{ 0x100000, 0x101fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
971 	{ 0x200000, 0x20000f, TC0220IOC_halfword_w },	/* I/O */
972 	{ 0x220000, 0x220001, taitosound_port16_msb_w },
973 	{ 0x220002, 0x220003, taitosound_comm16_msb_w },
974 	{ 0x300000, 0x30ffff, MWA16_RAM },
975 	{ 0x400000, 0x40ffff, TC0100SCN_word_0_w },	/* tilemaps */
976 	{ 0x420000, 0x42000f, TC0100SCN_ctrl_word_0_w },
977 	{ 0x500000, 0x50ffff, TC0100SCN_word_1_w },	/* tilemaps */
978 	{ 0x520000, 0x52000f, TC0100SCN_ctrl_word_1_w },
979 	{ 0x600000, 0x60ffff, MWA16_RAM, &spriteram16, &spriteram_size },
980 	{ 0x800000, 0x80001f, TC0360PRI_halfword_swap_w },
981 MEMORY_END
982 
983 static MEMORY_READ16_START( cameltry_readmem )
984 	{ 0x000000, 0x03ffff, MRA16_ROM },
985 	{ 0x100000, 0x10ffff, MRA16_RAM },
986 	{ 0x200000, 0x201fff, MRA16_RAM },
987 	{ 0x300000, 0x30000f, TC0220IOC_halfword_r },	/* I/O */
988 	{ 0x300018, 0x30001f, cameltry_paddle_r },
989 	{ 0x320000, 0x320003, taitof2_msb_sound_r },
990 	{ 0x800000, 0x813fff, TC0100SCN_word_0_r },	/* tilemaps */
991 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
992 	{ 0x900000, 0x90ffff, MRA16_RAM },
993 	{ 0xa00000, 0xa01fff, TC0280GRD_word_r },
994 MEMORY_END
995 
996 static MEMORY_WRITE16_START( cameltry_writemem )
997 	{ 0x000000, 0x03ffff, MWA16_ROM },
998 	{ 0x100000, 0x10ffff, MWA16_RAM },
999 	{ 0x200000, 0x201fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1000 	{ 0x300000, 0x30000f, TC0220IOC_halfword_w },	/* I/O */
1001 	{ 0x320000, 0x320001, taitosound_port16_msb_w },
1002 	{ 0x320002, 0x320003, taitosound_comm16_msb_w },
1003 	{ 0x800000, 0x813fff, TC0100SCN_word_0_w },	/* tilemaps */
1004 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1005 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1006 	{ 0xa00000, 0xa01fff, TC0280GRD_word_w },	/* ROZ tilemap */
1007 	{ 0xa02000, 0xa0200f, TC0280GRD_ctrl_word_w },
1008 	{ 0xd00000, 0xd0001f, TC0360PRI_halfword_w },	/* ?? */
1009 MEMORY_END
1010 
1011 static MEMORY_READ16_START( qtorimon_readmem )
1012 	{ 0x000000, 0x07ffff, MRA16_ROM },
1013 	{ 0x100000, 0x10ffff, MRA16_RAM },
1014 	{ 0x200000, 0x200007, TC0110PCR_word_r },	/* palette */
1015 	{ 0x500000, 0x50000f, TC0220IOC_halfword_r },	/* I/O */
1016 	{ 0x600000, 0x600003, taitof2_msb_sound_r },
1017 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1018 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1019 	{ 0x900000, 0x90ffff, MRA16_RAM },
1020 MEMORY_END
1021 
1022 static MEMORY_WRITE16_START( qtorimon_writemem )
1023 	{ 0x000000, 0x03ffff, MWA16_ROM },
1024 	{ 0x100000, 0x10ffff, MWA16_RAM },
1025 	{ 0x200000, 0x200007, TC0110PCR_word_w },	/* palette */
1026 	{ 0x500000, 0x50000f, TC0220IOC_halfword_w },	/* I/O */
1027 	{ 0x600000, 0x600001, taitosound_port16_msb_w },
1028 	{ 0x600002, 0x600003, taitosound_comm16_msb_w },
1029 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1030 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1031 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1032 	{ 0x910000, 0x9120ff, MWA16_NOP },   /* error in init code ? */
1033 MEMORY_END
1034 
1035 static MEMORY_READ16_START( liquidk_readmem )
1036 	{ 0x000000, 0x07ffff, MRA16_ROM },
1037 	{ 0x100000, 0x10ffff, MRA16_RAM },
1038 	{ 0x200000, 0x201fff, MRA16_RAM },
1039 	{ 0x300000, 0x30000f, TC0220IOC_halfword_r },	/* I/O */
1040 	{ 0x320000, 0x320003, taitof2_sound_r },
1041 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1042 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1043 	{ 0x900000, 0x90ffff, MRA16_RAM },
1044 MEMORY_END
1045 
1046 static MEMORY_WRITE16_START( liquidk_writemem )
1047 	{ 0x000000, 0x07ffff, MWA16_ROM },
1048 	{ 0x100000, 0x10ffff, MWA16_RAM },
1049 	{ 0x200000, 0x201fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1050 	{ 0x300000, 0x30000f, TC0220IOC_halfword_w },	/* I/O */
1051 	{ 0x320000, 0x320001, taitosound_port16_lsb_w },
1052 	{ 0x320002, 0x320003, taitosound_comm16_lsb_w },
1053 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1054 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1055 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1056 	{ 0xb00000, 0xb0001f, TC0360PRI_halfword_w },	/* ?? */
1057 MEMORY_END
1058 
1059 static MEMORY_READ16_START( quizhq_readmem )
1060 	{ 0x000000, 0x0bffff, MRA16_ROM },
1061 	{ 0x100000, 0x10ffff, MRA16_RAM },
1062 	{ 0x200000, 0x200007, TC0110PCR_word_r },	/* palette */
1063 	{ 0x500000, 0x50000f, quizhq_input1_r },
1064 	{ 0x580000, 0x58000f, quizhq_input2_r },
1065 	{ 0x600000, 0x600003, taitof2_sound_r },
1066 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1067 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1068 	{ 0x900000, 0x90ffff, MRA16_RAM },
1069 MEMORY_END
1070 
1071 static MEMORY_WRITE16_START( quizhq_writemem )
1072 	{ 0x000000, 0x03ffff, MWA16_ROM },
1073 	{ 0x100000, 0x10ffff, MWA16_RAM },
1074 	{ 0x200000, 0x200007, TC0110PCR_word_w },	/* palette */
1075 	{ 0x500004, 0x500005, growl_coin_word_w },
1076 	{ 0x580000, 0x580001, taitof2_watchdog_w },	/* ??? */
1077 	{ 0x580006, 0x580007, MWA16_NOP },   /* ??? */
1078 	{ 0x600000, 0x600001, taitosound_port16_lsb_w },
1079 	{ 0x600002, 0x600003, taitosound_comm16_lsb_w },
1080 	{ 0x680000, 0x680001, MWA16_NOP },   /* ??? */
1081 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1082 	{ 0x810000, 0x81ffff, MWA16_NOP },   /* error in init code ? */
1083 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1084 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1085 MEMORY_END
1086 
1087 static MEMORY_READ16_START( ssi_readmem )
1088 	{ 0x000000, 0x07ffff, MRA16_ROM },
1089 	{ 0x100000, 0x10000f, TC0510NIO_halfword_r },
1090 	{ 0x200000, 0x20ffff, MRA16_RAM },
1091 	{ 0x300000, 0x301fff, MRA16_RAM },
1092 	{ 0x400000, 0x400003, taitof2_msb_sound_r },
1093 	{ 0x600000, 0x60ffff, TC0100SCN_word_0_r },	/* tilemaps */
1094 	{ 0x620000, 0x62000f, TC0100SCN_ctrl_word_0_r },
1095 	{ 0x800000, 0x80ffff, MRA16_RAM },
1096 MEMORY_END
1097 
1098 static MEMORY_WRITE16_START( ssi_writemem )
1099 	{ 0x000000, 0x07ffff, MWA16_ROM },
1100 	{ 0x100000, 0x10000f, TC0510NIO_halfword_w },
1101 	{ 0x200000, 0x20ffff, MWA16_RAM },
1102 	{ 0x300000, 0x301fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1103 	{ 0x400000, 0x400001, taitosound_port16_msb_w },
1104 	{ 0x400002, 0x400003, taitosound_comm16_msb_w },
1105 /*	{ 0x500000, 0x500001, MWA16_NOP },    // ?? /*/
1106 	{ 0x600000, 0x60ffff, TC0100SCN_word_0_w },	/* tilemaps (not used) */
1107 	{ 0x620000, 0x62000f, TC0100SCN_ctrl_word_0_w },
1108 	{ 0x800000, 0x80ffff, MWA16_RAM, &spriteram16, &spriteram_size },   /* sprite ram */
1109 MEMORY_END
1110 
1111 static MEMORY_READ16_START( gunfront_readmem )
1112 	{ 0x000000, 0x0bffff, MRA16_ROM },
1113 	{ 0x100000, 0x10ffff, MRA16_RAM },
1114 	{ 0x200000, 0x201fff, MRA16_RAM },
1115 	{ 0x300000, 0x30000f, TC0510NIO_halfword_wordswap_r },
1116 	{ 0x320000, 0x320003, taitof2_msb_sound_r },
1117 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1118 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1119 	{ 0x900000, 0x90ffff, MRA16_RAM },
1120 MEMORY_END
1121 
1122 static MEMORY_WRITE16_START( gunfront_writemem )
1123 	{ 0x000000, 0x0bffff, MWA16_ROM },
1124 	{ 0x100000, 0x10ffff, MWA16_RAM },
1125 	{ 0x200000, 0x201fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1126 	{ 0x300000, 0x30000f, TC0510NIO_halfword_wordswap_w },
1127 	{ 0x320000, 0x320001, taitosound_port16_msb_w },
1128 	{ 0x320002, 0x320003, taitosound_comm16_msb_w },
1129 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1130 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1131 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1132 /*	{ 0xa00000, 0xa00001, MWA16_NOP },    // ?? /*/
1133 	{ 0xb00000, 0xb0001f, TC0360PRI_halfword_w },	/* ?? */
1134 MEMORY_END
1135 
1136 static MEMORY_READ16_START( growl_readmem )
1137 	{ 0x000000, 0x0fffff, MRA16_ROM },
1138 	{ 0x100000, 0x10ffff, MRA16_RAM },
1139 	{ 0x200000, 0x201fff, MRA16_RAM },
1140 	{ 0x300000, 0x30000f, growl_dsw_r },
1141 	{ 0x320000, 0x32000f, growl_input_r },
1142 	{ 0x400000, 0x400003, taitof2_msb_sound_r },
1143 	{ 0x508000, 0x50800f, input_port_5_word_r },   /* IN3 */
1144 	{ 0x50c000, 0x50c00f, input_port_6_word_r },   /* IN4 */
1145 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1146 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1147 	{ 0x900000, 0x90ffff, MRA16_RAM },
1148 MEMORY_END
1149 
1150 static MEMORY_WRITE16_START( growl_writemem )
1151 	{ 0x000000, 0x0fffff, MWA16_ROM },
1152 	{ 0x100000, 0x10ffff, MWA16_RAM },
1153 	{ 0x200000, 0x201fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1154 	{ 0x300004, 0x300005, growl_coin_word_w },
1155 	{ 0x340000, 0x340001, taitof2_watchdog_w },
1156 	{ 0x400000, 0x400001, taitosound_port16_msb_w },
1157 	{ 0x400002, 0x400003, taitosound_comm16_msb_w },
1158 	{ 0x500000, 0x50000f, taitof2_spritebank_w },
1159 	{ 0x504000, 0x504001, MWA16_NOP },	/* unknown... various values */
1160 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1161 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1162 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1163 	{ 0xb00000, 0xb0001f, TC0360PRI_halfword_w },	/* ?? */
1164 MEMORY_END
1165 
1166 static MEMORY_READ16_START( mjnquest_readmem )
1167 	{ 0x000000, 0x0fffff, MRA16_ROM },
1168 	{ 0x110000, 0x11ffff, MRA16_RAM },   /* "sram" */
1169 	{ 0x120000, 0x12ffff, MRA16_RAM },
1170 	{ 0x200000, 0x200007, TC0110PCR_word_r },	/* palette */
1171 	{ 0x300000, 0x30000f, mjnquest_dsw_r },
1172 	{ 0x310000, 0x310001, mjnquest_input_r },
1173 	{ 0x360000, 0x360003, taitof2_msb_sound_r },
1174 	{ 0x400000, 0x40ffff, TC0100SCN_word_0_r },	/* tilemaps */
1175 	{ 0x420000, 0x42000f, TC0100SCN_ctrl_word_0_r },
1176 	{ 0x500000, 0x50ffff, MRA16_RAM },
1177 MEMORY_END
1178 
1179 static MEMORY_WRITE16_START( mjnquest_writemem )
1180 	{ 0x000000, 0x03ffff, MWA16_ROM },
1181 	{ 0x110000, 0x11ffff, MWA16_RAM },   /* "sram" */
1182 	{ 0x120000, 0x12ffff, MWA16_RAM },
1183 	{ 0x200000, 0x200007, TC0110PCR_word_w },	/* palette */
1184 	{ 0x320000, 0x320001, mjnquest_inputselect_w },
1185 	{ 0x330000, 0x330001, MWA16_NOP },   /* watchdog ? */
1186 	{ 0x350000, 0x350001, MWA16_NOP },   /* watchdog ? */
1187 	{ 0x360000, 0x360001, taitosound_port16_msb_w },
1188 	{ 0x360002, 0x360003, taitosound_comm16_msb_w },
1189 	{ 0x380000, 0x380001, TC0100SCN_gfxbank_w },	/* scr gfx bank select */
1190 	{ 0x400000, 0x40ffff, TC0100SCN_word_0_w },	/* tilemaps */
1191 	{ 0x420000, 0x42000f, TC0100SCN_ctrl_word_0_w },
1192 	{ 0x500000, 0x50ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1193 MEMORY_END
1194 
1195 static MEMORY_READ16_START( footchmp_readmem )
1196 	{ 0x000000, 0x07ffff, MRA16_ROM },
1197 	{ 0x100000, 0x10ffff, MRA16_RAM },
1198 	{ 0x200000, 0x20ffff, MRA16_RAM },
1199 	{ 0x400000, 0x40ffff, TC0480SCP_word_r },   /* tilemaps */
1200 	{ 0x430000, 0x43002f, TC0480SCP_ctrl_word_r },
1201 	{ 0x600000, 0x601fff, MRA16_RAM },
1202 	{ 0x700000, 0x70001f, footchmp_input_r },
1203 	{ 0xa00000, 0xa00003, taitof2_sound_r },
1204 MEMORY_END
1205 
1206 static MEMORY_WRITE16_START( footchmp_writemem )
1207 	{ 0x000000, 0x07ffff, MWA16_ROM },
1208 	{ 0x100000, 0x10ffff, MWA16_RAM },
1209 	{ 0x200000, 0x20ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1210 	{ 0x300000, 0x30000f, taitof2_spritebank_w },	/* updated at $a6e, off irq5 */
1211 	{ 0x400000, 0x40ffff, TC0480SCP_word_w },	  /* tilemaps */
1212 	{ 0x430000, 0x43002f, TC0480SCP_ctrl_word_w },
1213 	{ 0x500000, 0x50001f, TC0360PRI_halfword_w },	/* 500002 written like a watchdog?! */
1214 	{ 0x600000, 0x601fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1215 	{ 0x700006, 0x700007, taitof2_4p_coin_word_w },
1216 	{ 0x800000, 0x800001, taitof2_watchdog_w },   /* ??? */
1217 	{ 0xa00000, 0xa00001, taitosound_port16_lsb_w },
1218 	{ 0xa00002, 0xa00003, taitosound_comm16_lsb_w },
1219 MEMORY_END
1220 
1221 static MEMORY_READ16_START( koshien_readmem )
1222 	{ 0x000000, 0x0fffff, MRA16_ROM },
1223 	{ 0x100000, 0x10ffff, MRA16_RAM },
1224 	{ 0x200000, 0x201fff, MRA16_RAM },
1225 	{ 0x300000, 0x30000f, TC0510NIO_halfword_r },
1226 	{ 0x320000, 0x320003, taitof2_msb_sound_r },
1227 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1228 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1229 	{ 0x900000, 0x90ffff, MRA16_RAM },
1230 /*	{ 0xa20000, 0xa20001, koshien_spritebank_r },    // for debugging spritebank /*/
1231 MEMORY_END
1232 
1233 static MEMORY_WRITE16_START( koshien_writemem )
1234 	{ 0x000000, 0x03ffff, MWA16_ROM },
1235 	{ 0x100000, 0x10ffff, MWA16_RAM },
1236 	{ 0x200000, 0x201fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1237 	{ 0x300000, 0x30000f, TC0510NIO_halfword_w },
1238 	{ 0x320000, 0x320001, taitosound_port16_msb_w },
1239 	{ 0x320002, 0x320003, taitosound_comm16_msb_w },
1240 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1241 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1242 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1243 	{ 0xa20000, 0xa20001, koshien_spritebank_w },
1244 	{ 0xb00000, 0xb0001f, TC0360PRI_halfword_swap_w },
1245 MEMORY_END
1246 
1247 static MEMORY_READ16_START( yuyugogo_readmem )
1248 	{ 0x000000, 0x03ffff, MRA16_ROM },
1249 	{ 0x200000, 0x20000f, TC0510NIO_halfword_r },
1250 	{ 0x400000, 0x400003, taitof2_msb_sound_r },
1251 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1252 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1253 	{ 0x900000, 0x90ffff, MRA16_RAM },
1254 	{ 0xa00000, 0xa01fff, MRA16_RAM },
1255 	{ 0xb00000, 0xb10fff, MRA16_RAM },
1256 	{ 0xd00000, 0xdfffff, MRA16_BANK1 },   /* extra data rom */
1257 MEMORY_END
1258 
1259 static MEMORY_WRITE16_START( yuyugogo_writemem )
1260 	{ 0x000000, 0x03ffff, MWA16_ROM },
1261 	{ 0x200000, 0x20000f, TC0510NIO_halfword_w },
1262 	{ 0x400000, 0x400001, taitosound_port16_msb_w },
1263 	{ 0x400002, 0x400003, taitosound_comm16_msb_w },
1264 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1265 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1266 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1267 	{ 0xa00000, 0xa01fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1268 	{ 0xb00000, 0xb10fff, MWA16_RAM },   /* deliberate writes to $b10xxx, I think */
1269 	{ 0xc00000, 0xc01fff, taitof2_sprite_extension_w, &f2_sprite_extension, &f2_spriteext_size },
1270 	{ 0xd00000, 0xdfffff, MWA16_ROM },
1271 MEMORY_END
1272 
1273 static MEMORY_READ16_START( ninjak_readmem )
1274 	{ 0x000000, 0x07ffff, MRA16_ROM },
1275 	{ 0x100000, 0x10ffff, MRA16_RAM },
1276 	{ 0x200000, 0x201fff, MRA16_RAM },
1277 	{ 0x300000, 0x30000f, ninjak_input_r },
1278 	{ 0x400000, 0x400003, taitof2_msb_sound_r },
1279 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1280 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1281 	{ 0x900000, 0x90ffff, MRA16_RAM },
1282 MEMORY_END
1283 
1284 static MEMORY_WRITE16_START( ninjak_writemem )
1285 	{ 0x000000, 0x07ffff, MWA16_ROM },
1286 	{ 0x100000, 0x10ffff, MWA16_RAM },
1287 	{ 0x200000, 0x201fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1288 	{ 0x30000e, 0x30000f, ninjak_coin_word_w },
1289 	{ 0x380000, 0x380001, taitof2_watchdog_w },	/* ??? */
1290 	{ 0x400000, 0x400001, taitosound_port16_msb_w },
1291 	{ 0x400002, 0x400003, taitosound_comm16_msb_w },
1292 	{ 0x600000, 0x60000f, taitof2_spritebank_w },
1293 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1294 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1295 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1296 	{ 0xb00000, 0xb0001f, TC0360PRI_halfword_w },	/* b00002 written like a watchdog?! */
1297 MEMORY_END
1298 
1299 static MEMORY_READ16_START( solfigtr_readmem )
1300 	{ 0x000000, 0x07ffff, MRA16_ROM },
1301 	{ 0x100000, 0x10ffff, MRA16_RAM },
1302 	{ 0x200000, 0x201fff, MRA16_RAM },
1303 	{ 0x300000, 0x30000f, growl_dsw_r },
1304 	{ 0x320000, 0x32000f, growl_input_r },
1305 	{ 0x400000, 0x400003, taitof2_msb_sound_r },
1306 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1307 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1308 	{ 0x900000, 0x90ffff, MRA16_RAM },
1309 MEMORY_END
1310 
1311 static MEMORY_WRITE16_START( solfigtr_writemem )
1312 	{ 0x000000, 0x07ffff, MWA16_ROM },
1313 	{ 0x100000, 0x10ffff, MWA16_RAM },
1314 	{ 0x200000, 0x201fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1315 	{ 0x300004, 0x300005, growl_coin_word_w },	/* NOT VERIFIED */
1316 	{ 0x340000, 0x340001, taitof2_watchdog_w },	/* NOT VERIFIED */
1317 	{ 0x400000, 0x400001, taitosound_port16_msb_w },
1318 	{ 0x400002, 0x400003, taitosound_comm16_msb_w },
1319 	{ 0x500000, 0x50000f, taitof2_spritebank_w },
1320 	{ 0x504000, 0x504001, MWA16_NOP },	/* unknown... various values */
1321 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1322 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1323 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1324 	{ 0xb00000, 0xb0001f, TC0360PRI_halfword_w },	/* ?? */
1325 MEMORY_END
1326 
1327 static MEMORY_READ16_START( qzquest_readmem )
1328 	{ 0x000000, 0x17ffff, MRA16_ROM },
1329 	{ 0x200000, 0x20000f, TC0510NIO_halfword_r },
1330 	{ 0x300000, 0x300003, taitof2_sound_r },
1331 	{ 0x400000, 0x401fff, MRA16_RAM },
1332 	{ 0x500000, 0x50ffff, MRA16_RAM },
1333 	{ 0x600000, 0x60ffff, MRA16_RAM },
1334 	{ 0x700000, 0x70ffff, TC0100SCN_word_0_r },	/* tilemaps */
1335 	{ 0x720000, 0x72000f, TC0100SCN_ctrl_word_0_r },
1336 MEMORY_END
1337 
1338 static MEMORY_WRITE16_START( qzquest_writemem )
1339 	{ 0x000000, 0x03ffff, MWA16_ROM },
1340 	{ 0x200000, 0x20000f, TC0510NIO_halfword_w },
1341 	{ 0x300000, 0x300001, taitosound_port16_lsb_w },
1342 	{ 0x300002, 0x300003, taitosound_comm16_lsb_w },
1343 	{ 0x400000, 0x401fff, paletteram16_xRRRRRGGGGGBBBBB_word_w, &paletteram16 },
1344 	{ 0x500000, 0x50ffff, MWA16_RAM },
1345 	{ 0x600000, 0x60ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1346 	{ 0x700000, 0x70ffff, TC0100SCN_word_0_w },	/* tilemaps */
1347 	{ 0x720000, 0x72000f, TC0100SCN_ctrl_word_0_w },
1348 MEMORY_END
1349 
1350 static MEMORY_READ16_START( pulirula_readmem )
1351 	{ 0x000000, 0x0bffff, MRA16_ROM },
1352 	{ 0x200000, 0x200003, taitof2_msb_sound_r },
1353 	{ 0x300000, 0x30ffff, MRA16_RAM },
1354 	{ 0x400000, 0x401fff, TC0430GRW_word_r },
1355 	{ 0x700000, 0x701fff, MRA16_RAM },
1356 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1357 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1358 	{ 0x900000, 0x90ffff, MRA16_RAM },
1359 	{ 0xb00000, 0xb0000f, TC0510NIO_halfword_r },
1360 MEMORY_END
1361 
1362 static MEMORY_WRITE16_START( pulirula_writemem )
1363 	{ 0x000000, 0x0bffff, MWA16_ROM },
1364 	{ 0x200000, 0x200001, taitosound_port16_msb_w },
1365 	{ 0x200002, 0x200003, taitosound_comm16_msb_w },
1366 	{ 0x300000, 0x30ffff, MWA16_RAM },
1367 	{ 0x400000, 0x401fff, TC0430GRW_word_w },	/* ROZ tilemap */
1368 	{ 0x402000, 0x40200f, TC0430GRW_ctrl_word_w },
1369 /*	{ 0x500000, 0x500001, MWA16_NOP },    // ??? /*/
1370 	{ 0x600000, 0x603fff, taitof2_sprite_extension_w, &f2_sprite_extension, &f2_spriteext_size },
1371 	{ 0x700000, 0x701fff, paletteram16_xRRRRRGGGGGBBBBB_word_w, &paletteram16 },
1372 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1373 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1374 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1375 	{ 0xa00000, 0xa0001f, TC0360PRI_halfword_swap_w },
1376 	{ 0xb00000, 0xb0000f, TC0510NIO_halfword_w },
1377 MEMORY_END
1378 
1379 static MEMORY_READ16_START( metalb_readmem )
1380 	{ 0x000000, 0x0bffff, MRA16_ROM },
1381 	{ 0x100000, 0x10ffff, MRA16_RAM },
1382 	{ 0x300000, 0x30ffff, MRA16_RAM },
1383 	{ 0x500000, 0x50ffff, TC0480SCP_word_r },   /* tilemaps */
1384 	{ 0x530000, 0x53002f, TC0480SCP_ctrl_word_r },
1385 	{ 0x700000, 0x703fff, MRA16_RAM },
1386 	{ 0x800000, 0x80000f, TC0510NIO_halfword_wordswap_r },
1387 	{ 0x900000, 0x900003, taitof2_msb_sound_r },
1388 MEMORY_END
1389 
1390 static MEMORY_WRITE16_START( metalb_writemem )
1391 	{ 0x000000, 0x0bffff, MWA16_ROM },
1392 	{ 0x100000, 0x10ffff, MWA16_RAM },
1393 	{ 0x300000, 0x30ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1394 /*	{ 0x42000c, 0x42000f, MWA16_NOP },    // zeroed /*/
1395 	{ 0x500000, 0x50ffff, TC0480SCP_word_w },	  /* tilemaps */
1396 	{ 0x530000, 0x53002f, TC0480SCP_ctrl_word_w },
1397 	{ 0x600000, 0x60001f, TC0360PRI_halfword_w },
1398 	{ 0x700000, 0x703fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1399 	{ 0x800000, 0x80000f, TC0510NIO_halfword_wordswap_w },
1400 	{ 0x900000, 0x900001, taitosound_port16_msb_w },
1401 	{ 0x900002, 0x900003, taitosound_comm16_msb_w },
1402 /*	{ 0xa00000, 0xa00001, MWA16_NOP },    // ??? /*/
1403 MEMORY_END
1404 
1405 static MEMORY_READ16_START( qzchikyu_readmem )
1406 	{ 0x000000, 0x17ffff, MRA16_ROM },
1407 	{ 0x200000, 0x20000f, TC0510NIO_halfword_r },
1408 	{ 0x300000, 0x300003, taitof2_sound_r },
1409 	{ 0x400000, 0x401fff, MRA16_RAM },
1410 	{ 0x500000, 0x50ffff, MRA16_RAM },
1411 	{ 0x600000, 0x60ffff, MRA16_RAM },
1412 	{ 0x700000, 0x70ffff, TC0100SCN_word_0_r },	/* tilemaps */
1413 	{ 0x720000, 0x72000f, TC0100SCN_ctrl_word_0_r },
1414 MEMORY_END
1415 
1416 static MEMORY_WRITE16_START( qzchikyu_writemem )
1417 	{ 0x000000, 0x03ffff, MWA16_ROM },
1418 	{ 0x200000, 0x20000f, TC0510NIO_halfword_w },
1419 	{ 0x300000, 0x300001, taitosound_port16_lsb_w },
1420 	{ 0x300002, 0x300003, taitosound_comm16_lsb_w },
1421 	{ 0x400000, 0x401fff, paletteram16_xRRRRRGGGGGBBBBB_word_w, &paletteram16 },
1422 	{ 0x500000, 0x50ffff, MWA16_RAM },
1423 	{ 0x600000, 0x60ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1424 	{ 0x700000, 0x70ffff, TC0100SCN_word_0_w },	/* tilemaps */
1425 	{ 0x720000, 0x72000f, TC0100SCN_ctrl_word_0_w },
1426 MEMORY_END
1427 
1428 static MEMORY_READ16_START( yesnoj_readmem )
1429 	{ 0x000000, 0x07ffff, MRA16_ROM },
1430 	{ 0x200000, 0x20ffff, MRA16_RAM },
1431 	{ 0x400000, 0x40ffff, MRA16_RAM },
1432 	{ 0x500000, 0x50ffff, TC0100SCN_word_0_r },	/* tilemaps */
1433 	{ 0x520000, 0x52000f, TC0100SCN_ctrl_word_0_r },
1434 	{ 0x600000, 0x601fff, MRA16_RAM },
1435 /*	{ 0x700000, 0x70000b, yesnoj_unknown_r },    // what's this? /*/
1436 	{ 0x800000, 0x800003, taitof2_msb_sound_r },
1437 	{ 0xa00000, 0xa0000f, yesnoj_input_r },
1438 	{ 0xb00000, 0xb00001, yesnoj_dsw_r },   /* ?? (reads this twice in init) */
1439 MEMORY_END
1440 
1441 static MEMORY_WRITE16_START( yesnoj_writemem )
1442 	{ 0x000000, 0x07ffff, MWA16_ROM },
1443 	{ 0x200000, 0x20ffff, MWA16_RAM },
1444 	{ 0x400000, 0x40ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1445 	{ 0x500000, 0x50ffff, TC0100SCN_word_0_w },	/* tilemaps */
1446 	{ 0x520000, 0x52000f, TC0100SCN_ctrl_word_0_w },
1447 	{ 0x600000, 0x601fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1448 	{ 0x800000, 0x800001, taitosound_port16_msb_w },
1449 	{ 0x800002, 0x800003, taitosound_comm16_msb_w },
1450 	{ 0x900002, 0x900003, MWA16_NOP },   /* lots of similar writes */
1451 	{ 0xc00000, 0xc00001, MWA16_NOP },   /* watchdog ?? */
1452 	{ 0xd00000, 0xd00001, MWA16_NOP },   /* lots of similar writes */
1453 MEMORY_END
1454 
1455 static MEMORY_READ16_START( deadconx_readmem )
1456 	{ 0x000000, 0x0fffff, MRA16_ROM },
1457 	{ 0x100000, 0x10ffff, MRA16_RAM },
1458 	{ 0x200000, 0x20ffff, MRA16_RAM },
1459 	{ 0x400000, 0x40ffff, TC0480SCP_word_r },   /* tilemaps */
1460 	{ 0x430000, 0x43002f, TC0480SCP_ctrl_word_r },
1461 	{ 0x600000, 0x601fff, MRA16_RAM },
1462 	{ 0x700000, 0x70001f, deadconx_input_r },
1463 	{ 0xa00000, 0xa00003, taitof2_msb_sound_r },
1464 MEMORY_END
1465 
1466 static MEMORY_WRITE16_START( deadconx_writemem )
1467 	{ 0x000000, 0x0fffff, MWA16_ROM },
1468 	{ 0x100000, 0x10ffff, MWA16_RAM },
1469 	{ 0x200000, 0x20ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1470 	{ 0x300000, 0x30000f, taitof2_spritebank_w },
1471 	{ 0x400000, 0x40ffff, TC0480SCP_word_w },	  /* tilemaps */
1472 /*	{ 0x42000c, 0x42000f, MWA16_NOP },    // zeroed /*/
1473 	{ 0x430000, 0x43002f, TC0480SCP_ctrl_word_w },
1474 	{ 0x500000, 0x50001f, TC0360PRI_halfword_w },	/* uses 500002 like a watchdog !? */
1475 	{ 0x600000, 0x601fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1476 	{ 0x700006, 0x700007, taitof2_4p_coin_word_w },
1477 	{ 0x800000, 0x800001, taitof2_watchdog_w },   /* ??? */
1478 	{ 0xa00000, 0xa00001, taitosound_port16_msb_w },
1479 	{ 0xa00002, 0xa00003, taitosound_comm16_msb_w },
1480 MEMORY_END
1481 
1482 static MEMORY_READ16_START( dinorex_readmem )
1483 	{ 0x000000, 0x2fffff, MRA16_ROM },
1484 	{ 0x300000, 0x30000f, TC0510NIO_halfword_r },
1485 	{ 0x500000, 0x501fff, MRA16_RAM },
1486 	{ 0x600000, 0x60ffff, MRA16_RAM },
1487 	{ 0x800000, 0x80ffff, MRA16_RAM },
1488 	{ 0x900000, 0x90ffff, TC0100SCN_word_0_r },	/* tilemaps */
1489 	{ 0x920000, 0x92000f, TC0100SCN_ctrl_word_0_r },
1490 	{ 0xa00000, 0xa00003, taitof2_msb_sound_r },
1491 MEMORY_END
1492 
1493 static MEMORY_WRITE16_START( dinorex_writemem )
1494 	{ 0x000000, 0x2fffff, MWA16_ROM },
1495 	{ 0x300000, 0x30000f, TC0510NIO_halfword_w },
1496 	{ 0x400000, 0x400fff, taitof2_sprite_extension_w, &f2_sprite_extension, &f2_spriteext_size },
1497 	{ 0x500000, 0x501fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1498 	{ 0x600000, 0x60ffff, MWA16_RAM },
1499 	{ 0x700000, 0x70001f, TC0360PRI_halfword_w },	/* ?? */
1500 	{ 0x800000, 0x80ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1501 	{ 0x900000, 0x90ffff, TC0100SCN_word_0_w },	/* tilemaps */
1502 	{ 0x920000, 0x92000f, TC0100SCN_ctrl_word_0_w },
1503 	{ 0xa00000, 0xa00001, taitosound_port16_msb_w },
1504 	{ 0xa00002, 0xa00003, taitosound_comm16_msb_w },
1505 	{ 0xb00000, 0xb00001, MWA16_NOP },   /* watchdog? */
1506 MEMORY_END
1507 
1508 static MEMORY_READ16_START( qjinsei_readmem )
1509 	{ 0x000000, 0x1fffff, MRA16_ROM },
1510 	{ 0x200000, 0x200003, taitof2_msb_sound_r },
1511 	{ 0x300000, 0x30ffff, MRA16_RAM },
1512 	{ 0x700000, 0x701fff, MRA16_RAM },
1513 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1514 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1515 	{ 0x900000, 0x90ffff, MRA16_RAM },
1516 	{ 0xb00000, 0xb0000f, TC0510NIO_halfword_r },
1517 MEMORY_END
1518 
1519 static MEMORY_WRITE16_START( qjinsei_writemem )
1520 	{ 0x000000, 0x07ffff, MWA16_ROM },
1521 	{ 0x200000, 0x200001, taitosound_port16_msb_w },
1522 	{ 0x200002, 0x200003, taitosound_comm16_msb_w },
1523 	{ 0x300000, 0x30ffff, MWA16_RAM },
1524 	{ 0x500000, 0x500001, MWA16_NOP },   /* watchdog ? */
1525 	{ 0x600000, 0x603fff, taitof2_sprite_extension_w, &f2_sprite_extension, &f2_spriteext_size },
1526 	{ 0x700000, 0x701fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1527 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1528 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1529 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1530 	{ 0xa00000, 0xa0001f, TC0360PRI_halfword_w },	/* ?? */
1531 	{ 0xb00000, 0xb0000f, TC0510NIO_halfword_w },
1532 MEMORY_END
1533 
1534 static MEMORY_READ16_START( qcrayon_readmem )
1535 	{ 0x000000, 0x07ffff, MRA16_ROM },
1536 	{ 0x100000, 0x10ffff, MRA16_RAM },
1537 	{ 0x300000, 0x3fffff, MRA16_BANK1 },   /* extra data rom */
1538 	{ 0x500000, 0x500003, taitof2_msb_sound_r },
1539 	{ 0x700000, 0x701fff, MRA16_RAM },
1540 	{ 0x800000, 0x80ffff, MRA16_RAM },
1541 	{ 0x900000, 0x90ffff, TC0100SCN_word_0_r },	/* tilemaps */
1542 	{ 0x920000, 0x92000f, TC0100SCN_ctrl_word_0_r },
1543 	{ 0xa00000, 0xa0000f, TC0510NIO_halfword_r },
1544 MEMORY_END
1545 
1546 static MEMORY_WRITE16_START( qcrayon_writemem )
1547 	{ 0x000000, 0x07ffff, MWA16_ROM },
1548 	{ 0x100000, 0x10ffff, MWA16_RAM },
1549 /*	{ 0x200000, 0x200001, MWA16_NOP },    // unknown /*/
1550 	{ 0x300000, 0x3fffff, MWA16_ROM },
1551 	{ 0x500000, 0x500001, taitosound_port16_msb_w },
1552 	{ 0x500002, 0x500003, taitosound_comm16_msb_w },
1553 	{ 0x600000, 0x603fff, taitof2_sprite_extension_w, &f2_sprite_extension, &f2_spriteext_size },
1554 	{ 0x700000, 0x701fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1555 	{ 0x800000, 0x80ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1556 	{ 0x900000, 0x90ffff, TC0100SCN_word_0_w },	/* tilemaps */
1557 	{ 0x920000, 0x92000f, TC0100SCN_ctrl_word_0_w },
1558 	{ 0xa00000, 0xa0000f, TC0510NIO_halfword_w },
1559 	{ 0xb00000, 0xb0001f, TC0360PRI_halfword_w },	/* ?? */
1560 MEMORY_END
1561 
1562 static MEMORY_READ16_START( qcrayon2_readmem )
1563 	{ 0x000000, 0x07ffff, MRA16_ROM },
1564 	{ 0x200000, 0x20ffff, MRA16_RAM },
1565 	{ 0x300000, 0x301fff, MRA16_RAM },
1566 	{ 0x400000, 0x40ffff, MRA16_RAM },
1567 	{ 0x500000, 0x50ffff, TC0100SCN_word_0_r },	/* tilemaps */
1568 	{ 0x520000, 0x52000f, TC0100SCN_ctrl_word_0_r },
1569 	{ 0x600000, 0x67ffff, MRA16_BANK1 },   /* extra data rom */
1570 	{ 0x700000, 0x70000f, TC0510NIO_halfword_r },
1571 	{ 0xa00000, 0xa00003, taitof2_msb_sound_r },
1572 MEMORY_END
1573 
1574 static MEMORY_WRITE16_START( qcrayon2_writemem )
1575 	{ 0x000000, 0x07ffff, MWA16_ROM },
1576 	{ 0x200000, 0x20ffff, MWA16_RAM },
1577 	{ 0x300000, 0x301fff, paletteram16_RRRRGGGGBBBBxxxx_word_w, &paletteram16 },
1578 	{ 0x400000, 0x40ffff, MWA16_RAM, &spriteram16, &spriteram_size  },
1579 	{ 0x500000, 0x50ffff, TC0100SCN_word_0_w },	/* tilemaps */
1580 	{ 0x520000, 0x52000f, TC0100SCN_ctrl_word_0_w },
1581 	{ 0x600000, 0x67ffff, MWA16_ROM },
1582 	{ 0x700000, 0x70000f, TC0510NIO_halfword_w },
1583 	{ 0x900000, 0x90001f, TC0360PRI_halfword_w },	/* ?? */
1584 	{ 0xa00000, 0xa00001, taitosound_port16_msb_w },
1585 	{ 0xa00002, 0xa00003, taitosound_comm16_msb_w },
1586 	{ 0xb00000, 0xb017ff, taitof2_sprite_extension_w, &f2_sprite_extension, &f2_spriteext_size },
1587 MEMORY_END
1588 
1589 static MEMORY_READ16_START( driftout_readmem )
1590 	{ 0x000000, 0x0fffff, MRA16_ROM },
1591 	{ 0x200000, 0x200003, taitof2_msb_sound_r },
1592 	{ 0x300000, 0x30ffff, MRA16_RAM },
1593 	{ 0x400000, 0x401fff, TC0430GRW_word_r },
1594 	{ 0x700000, 0x701fff, MRA16_RAM },
1595 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1596 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1597 	{ 0x900000, 0x90ffff, MRA16_RAM },
1598 	{ 0xb00000, 0xb0000f, TC0510NIO_halfword_r },
1599 	{ 0xb00018, 0xb0001f, driftout_paddle_r },
1600 MEMORY_END
1601 
1602 static MEMORY_WRITE16_START( driftout_writemem )
1603 	{ 0x000000, 0x0fffff, MWA16_ROM },
1604 	{ 0x200000, 0x200001, taitosound_port16_msb_w },
1605 	{ 0x200002, 0x200003, taitosound_comm16_msb_w },
1606 	{ 0x300000, 0x30ffff, MWA16_RAM },
1607 	{ 0x400000, 0x401fff, TC0430GRW_word_w },	/* ROZ tilemap */
1608 	{ 0x402000, 0x40200f, TC0430GRW_ctrl_word_w },
1609 	{ 0x700000, 0x701fff, paletteram16_xRRRRRGGGGGBBBBB_word_w, &paletteram16 },
1610 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1611 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1612 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1613 	{ 0xa00000, 0xa0001f, TC0360PRI_halfword_swap_w },
1614 	{ 0xb00000, 0xb0000f, TC0510NIO_halfword_w },
1615 MEMORY_END
1616 
1617 /* same as driftout, except for sound address 0x200000 */
1618 static MEMORY_READ16_START( driveout_readmem )
1619 	{ 0x000000, 0x0fffff, MRA16_ROM },
1620 	{ 0x200000, 0x200003, MRA16_NOP },
1621 	{ 0x300000, 0x30ffff, MRA16_RAM },
1622 	{ 0x400000, 0x401fff, TC0430GRW_word_r },
1623 	{ 0x700000, 0x701fff, MRA16_RAM },
1624 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_r },	/* tilemaps */
1625 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_r },
1626 	{ 0x900000, 0x90ffff, MRA16_RAM },
1627 	{ 0xb00000, 0xb0000f, TC0510NIO_halfword_r },
1628 	{ 0xb00018, 0xb0001f, driftout_paddle_r },
1629 MEMORY_END
1630 
1631 static MEMORY_WRITE16_START( driveout_writemem )
1632 	{ 0x000000, 0x0fffff, MWA16_ROM },
1633 	{ 0x200000, 0x200003, driveout_sound_command_w },
1634 	{ 0x300000, 0x30ffff, MWA16_RAM },
1635 	{ 0x400000, 0x401fff, TC0430GRW_word_w },	/* ROZ tilemap */
1636 	{ 0x402000, 0x40200f, TC0430GRW_ctrl_word_w },
1637 	{ 0x700000, 0x701fff, paletteram16_xRRRRRGGGGGBBBBB_word_w, &paletteram16 },
1638 	{ 0x800000, 0x80ffff, TC0100SCN_word_0_w },	/* tilemaps */
1639 	{ 0x820000, 0x82000f, TC0100SCN_ctrl_word_0_w },
1640 	{ 0x900000, 0x90ffff, MWA16_RAM, &spriteram16, &spriteram_size },
1641 	{ 0xa00000, 0xa0001f, TC0360PRI_halfword_swap_w },
1642 	{ 0xb00000, 0xb0000f, TC0510NIO_halfword_w },
1643 MEMORY_END
1644 
1645 
1646 /***************************************************************************/
1647 
1648 static MEMORY_READ_START( sound_readmem )
1649 	{ 0x0000, 0x3fff, MRA_ROM },
1650 	{ 0x4000, 0x7fff, MRA_BANK2 },
1651 	{ 0xc000, 0xdfff, MRA_RAM },
1652 	{ 0xe000, 0xe000, YM2610_status_port_0_A_r },
1653 	{ 0xe001, 0xe001, YM2610_read_port_0_r },
1654 	{ 0xe002, 0xe002, YM2610_status_port_0_B_r },
1655 	{ 0xe200, 0xe200, MRA_NOP },
1656 	{ 0xe201, 0xe201, taitosound_slave_comm_r },
1657 	{ 0xea00, 0xea00, MRA_NOP },
1658 MEMORY_END
1659 
1660 static MEMORY_WRITE_START( sound_writemem )
1661 	{ 0x0000, 0x7fff, MWA_ROM },
1662 	{ 0xc000, 0xdfff, MWA_RAM },
1663 	{ 0xe000, 0xe000, YM2610_control_port_0_A_w },
1664 	{ 0xe001, 0xe001, YM2610_data_port_0_A_w },
1665 	{ 0xe002, 0xe002, YM2610_control_port_0_B_w },
1666 	{ 0xe003, 0xe003, YM2610_data_port_0_B_w },
1667 	{ 0xe200, 0xe200, taitosound_slave_port_w },
1668 	{ 0xe201, 0xe201, taitosound_slave_comm_w },
1669 	{ 0xe400, 0xe403, MWA_NOP }, /* pan */
1670 	{ 0xee00, 0xee00, MWA_NOP }, /* ? */
1671 	{ 0xf000, 0xf000, MWA_NOP }, /* ? */
1672 	{ 0xf200, 0xf200, sound_bankswitch_w },	/* ?? */
1673 MEMORY_END
1674 
1675 
1676 /* Alt US version of Cameltry, YM2203 sound, missing ADPCM ? */
1677 
1678 static MEMORY_READ_START( camltrua_sound_readmem )
1679 	{ 0x0000, 0x7fff, MRA_ROM },	/* I can't see a bank control, but there ARE some bytes past 0x8000*/
1680 /*	{ 0x4000, 0x7fff, MRA_BANK1 },*/
1681 	{ 0x8000, 0x8fff, MRA_RAM },
1682 	{ 0x9000, 0x9000, YM2203_status_port_0_r },
1683 	{ 0xa001, 0xa001, taitosound_slave_comm_r },
1684 MEMORY_END
1685 
1686 static MEMORY_WRITE_START( camltrua_sound_writemem )
1687 	{ 0x0000, 0x7fff, MWA_ROM },
1688 	{ 0x8000, 0x8fff, MWA_RAM },
1689 	{ 0x9000, 0x9000, YM2203_control_port_0_w },
1690 	{ 0x9001, 0x9001, YM2203_write_port_0_w },
1691 	{ 0xa000, 0xa000, taitosound_slave_port_w },
1692 	{ 0xa001, 0xa001, taitosound_slave_comm_w },
1693 /*	{ 0xb000, 0xb000, unknown_w },	*/ /* probably controlling sample player?*/
1694 MEMORY_END
1695 
1696 
1697 static MEMORY_READ_START( driveout_sound_readmem )
1698 	{ 0x0000, 0x7fff, MRA_ROM },
1699 	{ 0x8000, 0x87ff, MRA_RAM },
1700 	{ 0x9800, 0x9800, OKIM6295_status_0_r },
1701 	{ 0xa000, 0xa000, driveout_sound_command_r },
1702 MEMORY_END
1703 
1704 static MEMORY_WRITE_START( driveout_sound_writemem )
1705 	{ 0x0000, 0x7fff, MWA_ROM },
1706 	{ 0x8000, 0x87ff, MWA_RAM },
1707 	{ 0x9000, 0x9000, oki_bank_w },
1708 	{ 0x9800, 0x9800, OKIM6295_data_0_w },
1709 MEMORY_END
1710 
1711 /***********************************************************
1712                      INPUT PORTS, DIPs
1713 ***********************************************************/
1714 
1715 #define TAITO_COINAGE_WORLD_8 \
1716 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) ) \
1717 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) ) \
1718 	PORT_DIPSETTING(    0x10, DEF_STR( 3C_1C ) ) \
1719 	PORT_DIPSETTING(    0x20, DEF_STR( 2C_1C ) ) \
1720 	PORT_DIPSETTING(    0x30, DEF_STR( 1C_1C ) ) \
1721 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Coin_B ) ) \
1722 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_2C ) ) \
1723 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) ) \
1724 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_4C ) ) \
1725 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_6C ) )
1726 
1727 #define TAITO_COINAGE_JAPAN_8 \
1728 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) ) \
1729 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) ) \
1730 	PORT_DIPSETTING(    0x30, DEF_STR( 1C_1C ) ) \
1731 	PORT_DIPSETTING(    0x00, DEF_STR( 2C_3C ) ) \
1732 	PORT_DIPSETTING(    0x20, DEF_STR( 1C_2C ) ) \
1733 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Coin_B ) ) \
1734 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_1C ) ) \
1735 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_1C ) ) \
1736 	PORT_DIPSETTING(    0x00, DEF_STR( 2C_3C ) ) \
1737 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_2C ) )
1738 
1739 /* This is a new Japanese coinage used in later TAITO games */
1740 #define TAITO_COINAGE_JAPAN_NEW_8 \
1741 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) ) \
1742 	PORT_DIPSETTING(    0x00, DEF_STR( 3C_1C ) ) \
1743 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) ) \
1744 	PORT_DIPSETTING(    0x30, DEF_STR( 1C_1C ) ) \
1745 	PORT_DIPSETTING(    0x20, DEF_STR( 1C_2C ) ) \
1746 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Coin_B ) ) \
1747 	PORT_DIPSETTING(    0x00, DEF_STR( 3C_1C ) ) \
1748 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_1C ) ) \
1749 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_1C ) ) \
1750 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_2C ) )
1751 
1752 #define TAITO_COINAGE_US_8 \
1753 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coinage ) ) \
1754 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) ) \
1755 	PORT_DIPSETTING(    0x10, DEF_STR( 3C_1C ) ) \
1756 	PORT_DIPSETTING(    0x20, DEF_STR( 2C_1C ) ) \
1757 	PORT_DIPSETTING(    0x30, DEF_STR( 1C_1C ) ) \
1758 	PORT_DIPNAME( 0xc0, 0xc0, "Price to Continue" ) \
1759 	PORT_DIPSETTING(    0x00, DEF_STR( 3C_1C ) ) \
1760 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_1C ) ) \
1761 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_1C ) ) \
1762 	PORT_DIPSETTING(    0xc0, "Same as Start" )
1763 
1764 #define TAITO_DIFFICULTY_8 \
1765 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) \
1766 	PORT_DIPSETTING(    0x02, "Easy" ) \
1767 	PORT_DIPSETTING(    0x03, "Medium" ) \
1768 	PORT_DIPSETTING(    0x01, "Hard" ) \
1769 	PORT_DIPSETTING(    0x00, "Hardest" )
1770 
1771 #define TAITO_F2_PLAYERS_INPUT( player ) \
1772 	PORT_START \
1773 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | player ) \
1774 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | player ) \
1775 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | player ) \
1776 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | player ) \
1777 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | player ) \
1778 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | player )
1779 /* 0x40 and 0x80 are not always the same in all games, so they are not included here */
1780 
1781 #define TAITO_F2_SYSTEM_INPUT \
1782 	PORT_START \
1783 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT ) \
1784 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 ) \
1785 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) \
1786 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
1787 /* The other bits vary from one game to another, so they are not included here */
1788 
1789 
1790 INPUT_PORTS_START( finalb )
1791 	PORT_START /* DSW A */
1792 	/* Not sure how to handle alternate controls */
1793 	PORT_DIPNAME( 0x01, 0x01, "Alternate Controls" )
1794 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
1795 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1796 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
1797 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
1798 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1799 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
1800 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
1801 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
1802 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
1803 	TAITO_COINAGE_WORLD_8
1804 
1805 	PORT_START /* DSW B */
1806 	TAITO_DIFFICULTY_8
1807 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
1808 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
1809 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1810 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
1811 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
1812 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1813 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
1814 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
1815 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1816 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
1817 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
1818 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1819 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
1820 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
1821 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1822 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
1823 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
1824 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1825 
1826 	/* IN0 */
1827 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
1828 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
1829 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
1830 
1831 	/* IN1 */
1832 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
1833 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
1834 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
1835 
1836 	/* IN2 */
1837 	TAITO_F2_SYSTEM_INPUT	/* controls below are DIP selectable */
1838 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )	/* 1P sen.sw.? */
1839 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )	/* 1P ducking? */
1840 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )	/* 2P sen.sw.? */
1841 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )	/* 2P ducking? */
1842 INPUT_PORTS_END
1843 
1844 INPUT_PORTS_START( finalbj )
1845 	PORT_START /* DSW A */
1846 	/* Not sure how to handle alternate controls */
1847 	PORT_DIPNAME( 0x01, 0x01, "Alternate Controls" )
1848 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
1849 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1850 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
1851 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
1852 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1853 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
1854 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
1855 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
1856 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
1857 	TAITO_COINAGE_JAPAN_8
1858 
1859 	PORT_START /* DSW B */
1860 	TAITO_DIFFICULTY_8
1861 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
1862 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
1863 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1864 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
1865 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
1866 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1867 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
1868 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
1869 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1870 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
1871 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
1872 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1873 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
1874 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
1875 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1876 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
1877 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
1878 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1879 
1880 	/* IN0 */
1881 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
1882 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
1883 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
1884 
1885 	/* IN1 */
1886 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
1887 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
1888 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
1889 
1890 	/* IN2 */
1891 	TAITO_F2_SYSTEM_INPUT	/* controls below are DIP selectable */
1892 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )	/* 1P sen.sw.? */
1893 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )	/* 1P ducking? */
1894 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )	/* 2P sen.sw.? */
1895 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )	/* 2P ducking? */
1896 INPUT_PORTS_END
1897 
1898 INPUT_PORTS_START( dondokod )
1899 	PORT_START /* DSW A */
1900 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
1901 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
1902 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1903 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
1904 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
1905 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1906 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
1907 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
1908 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
1909 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
1910 	TAITO_COINAGE_WORLD_8
1911 
1912 	PORT_START /* DSW B */
1913 	TAITO_DIFFICULTY_8
1914 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
1915 	PORT_DIPSETTING(    0x0c, "10k and 100k" )
1916 	PORT_DIPSETTING(    0x08, "10k and 150k" )
1917 	PORT_DIPSETTING(    0x04, "10k and 250k" )
1918 	PORT_DIPSETTING(    0x00, "10k and 350k" )
1919 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
1920 	PORT_DIPSETTING(    0x20, "2" )
1921 	PORT_DIPSETTING(    0x30, "3" )
1922 	PORT_DIPSETTING(    0x00, "4" )
1923 	PORT_DIPSETTING(    0x10, "5" )
1924 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
1925 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
1926 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1927 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
1928 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
1929 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1930 
1931 	/* IN0 */
1932 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
1933 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
1934 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
1935 
1936 	/* IN1 */
1937 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
1938 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
1939 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
1940 
1941 	/* IN2 */
1942 	TAITO_F2_SYSTEM_INPUT
1943 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
1944 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
1945 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
1946 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
1947 INPUT_PORTS_END
1948 
1949 INPUT_PORTS_START( dondokdu )
1950 	PORT_START /* DSW A */
1951 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
1952 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
1953 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1954 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
1955 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
1956 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1957 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
1958 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
1959 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
1960 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
1961 	TAITO_COINAGE_US_8
1962 
1963 	PORT_START /* DSW B */
1964 	TAITO_DIFFICULTY_8
1965 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
1966 	PORT_DIPSETTING(    0x0c, "10k and 100k" )
1967 	PORT_DIPSETTING(    0x08, "10k and 150k" )
1968 	PORT_DIPSETTING(    0x04, "10k and 250k" )
1969 	PORT_DIPSETTING(    0x00, "10k and 350k" )
1970 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
1971 	PORT_DIPSETTING(    0x20, "2" )
1972 	PORT_DIPSETTING(    0x30, "3" )
1973 	PORT_DIPSETTING(    0x00, "4" )
1974 	PORT_DIPSETTING(    0x10, "5" )
1975 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
1976 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
1977 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1978 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
1979 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
1980 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1981 
1982 	/* IN0 */
1983 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
1984 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
1985 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
1986 
1987 	/* IN1 */
1988 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
1989 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
1990 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
1991 
1992 	/* IN2 */
1993 	TAITO_F2_SYSTEM_INPUT
1994 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
1995 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
1996 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
1997 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
1998 INPUT_PORTS_END
1999 
2000 INPUT_PORTS_START( dondokdj )
2001 	PORT_START /* DSW A */
2002 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
2003 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2004 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2005 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2006 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2007 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2008 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2009 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2010 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2011 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2012 	TAITO_COINAGE_JAPAN_8
2013 
2014 	PORT_START /* DSW B */
2015 	TAITO_DIFFICULTY_8
2016 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
2017 	PORT_DIPSETTING(    0x0c, "10k and 100k" )
2018 	PORT_DIPSETTING(    0x08, "10k and 150k" )
2019 	PORT_DIPSETTING(    0x04, "10k and 250k" )
2020 	PORT_DIPSETTING(    0x00, "10k and 350k" )
2021 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2022 	PORT_DIPSETTING(    0x20, "2" )
2023 	PORT_DIPSETTING(    0x30, "3" )
2024 	PORT_DIPSETTING(    0x00, "4" )
2025 	PORT_DIPSETTING(    0x10, "5" )
2026 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
2027 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
2028 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2029 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
2030 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
2031 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2032 
2033 	/* IN0 */
2034 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2035 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2036 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2037 
2038 	/* IN1 */
2039 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2040 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2041 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2042 
2043 	/* IN2 */
2044 	TAITO_F2_SYSTEM_INPUT
2045 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2046 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2047 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2048 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2049 INPUT_PORTS_END
2050 
2051 INPUT_PORTS_START( megab )
2052 	PORT_START /* DSW A */
2053 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2054 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2055 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2056 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2057 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2058 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2059 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2060 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2061 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2062 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2063 	TAITO_COINAGE_WORLD_8
2064 
2065 	PORT_START /* DSW B */
2066 	TAITO_DIFFICULTY_8
2067 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
2068 	PORT_DIPSETTING(    0x0c, "100k only" )
2069 	PORT_DIPSETTING(    0x04, "150k only" )
2070 	PORT_DIPSETTING(    0x08, "200k only" )
2071 	PORT_DIPSETTING(    0x00, "None" )
2072 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2073 	PORT_DIPSETTING(    0x10, "1" )
2074 	PORT_DIPSETTING(    0x00, "2" )
2075 	PORT_DIPSETTING(    0x30, "3" )
2076 	PORT_DIPSETTING(    0x20, "4" )
2077 	PORT_DIPNAME( 0x40, 0x40, "Upright Controls" ) /* ie single or two players at once */
2078 	PORT_DIPSETTING(    0x00, "Single" )
2079 	PORT_DIPSETTING(    0x40, "Dual" )
2080 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
2081 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
2082 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2083 
2084 	/* IN0 */
2085 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2086 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2087 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2088 
2089 	/* IN1 */
2090 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2091 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2092 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2093 
2094 	/* IN2 */
2095 	TAITO_F2_SYSTEM_INPUT
2096 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
2097 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
2098 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2099 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2100 INPUT_PORTS_END
2101 
2102 INPUT_PORTS_START( megabj )
2103 	PORT_START /* DSW A */
2104 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2105 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2106 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2107 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2108 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2109 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2110 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2111 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2112 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2113 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2114 	TAITO_COINAGE_JAPAN_8
2115 
2116 	PORT_START /* DSW B */
2117 	TAITO_DIFFICULTY_8
2118 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
2119 	PORT_DIPSETTING(    0x0c, "100k only" )
2120 	PORT_DIPSETTING(    0x04, "150k only" )
2121 	PORT_DIPSETTING(    0x08, "200k only" )
2122 	PORT_DIPSETTING(    0x00, "None" )
2123 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2124 	PORT_DIPSETTING(    0x10, "1" )
2125 	PORT_DIPSETTING(    0x00, "2" )
2126 	PORT_DIPSETTING(    0x30, "3" )
2127 	PORT_DIPSETTING(    0x20, "4" )
2128 	PORT_DIPNAME( 0x40, 0x40, "Upright Controls" ) /* ie single or two players at once */
2129 	PORT_DIPSETTING(    0x00, "Single" )
2130 	PORT_DIPSETTING(    0x40, "Dual" )
2131 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
2132 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
2133 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2134 
2135 	/* IN0 */
2136 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2137 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2138 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2139 
2140 	/* IN1 */
2141 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2142 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2143 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2144 
2145 	/* IN2 */
2146 	TAITO_F2_SYSTEM_INPUT
2147 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
2148 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
2149 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2150 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2151 INPUT_PORTS_END
2152 
2153 INPUT_PORTS_START( thundfox )
2154 	PORT_START /* DSW A */
2155 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /* all 2 in manual*/
2156 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2157 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2158 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2159 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2160 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2161 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2162 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2163 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2164 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2165 	TAITO_COINAGE_WORLD_8
2166 
2167 	PORT_START /* DSW B */
2168 	TAITO_DIFFICULTY_8
2169 	PORT_DIPNAME( 0x04, 0x04, "Timer" )
2170 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2171 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
2172 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
2173 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
2174 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2175 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2176 	PORT_DIPSETTING(    0x20, "2" )
2177 	PORT_DIPSETTING(    0x30, "3" )
2178 	PORT_DIPSETTING(    0x10, "4" )
2179 	PORT_DIPSETTING(    0x00, "5" )
2180 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2181 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2182 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2183 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
2184 	PORT_DIPSETTING(    0x00, "Single" )
2185 	PORT_DIPSETTING(    0x80, "Dual" )
2186 
2187 	/* IN0 */
2188 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2189 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2190 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2191 
2192 	/* IN0 */
2193 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2194 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2195 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2196 
2197 	/* IN2 */
2198 	TAITO_F2_SYSTEM_INPUT
2199 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2200 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2201 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2202 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2203 INPUT_PORTS_END
2204 
2205 INPUT_PORTS_START( thndfoxu )
2206 	PORT_START /* DSW A */
2207 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /* all 2 in manual*/
2208 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2209 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2210 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2211 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2212 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2213 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2214 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2215 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2216 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2217 	TAITO_COINAGE_US_8
2218 
2219 	PORT_START /* DSW B */
2220 	TAITO_DIFFICULTY_8
2221 	PORT_DIPNAME( 0x04, 0x04, "Timer" )
2222 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2223 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
2224 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
2225 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
2226 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2227 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2228 	PORT_DIPSETTING(    0x20, "2" )
2229 	PORT_DIPSETTING(    0x30, "3" )
2230 	PORT_DIPSETTING(    0x10, "4" )
2231 	PORT_DIPSETTING(    0x00, "5" )
2232 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2233 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2234 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2235 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
2236 	PORT_DIPSETTING(    0x00, "Single" )
2237 	PORT_DIPSETTING(    0x80, "Dual" )
2238 
2239 	/* IN0 */
2240 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2241 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2242 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2243 
2244 	/* IN0 */
2245 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2246 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2247 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2248 
2249 	/* IN2 */
2250 	TAITO_F2_SYSTEM_INPUT
2251 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2252 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2253 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2254 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2255 INPUT_PORTS_END
2256 
2257 INPUT_PORTS_START( thndfoxj )
2258 	PORT_START /* DSW A */
2259 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /* all 2 in manual*/
2260 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2261 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2262 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2263 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2264 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2265 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2266 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2267 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2268 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2269 	TAITO_COINAGE_JAPAN_NEW_8
2270 
2271 	PORT_START /* DSW B */
2272 	TAITO_DIFFICULTY_8
2273 	PORT_DIPNAME( 0x04, 0x04, "Timer" )
2274 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2275 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
2276 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
2277 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
2278 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2279 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2280 	PORT_DIPSETTING(    0x20, "2" )
2281 	PORT_DIPSETTING(    0x30, "3" )
2282 	PORT_DIPSETTING(    0x10, "4" )
2283 	PORT_DIPSETTING(    0x00, "5" )
2284 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2285 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2286 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2287 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
2288 	PORT_DIPSETTING(    0x00, "Single" )
2289 	PORT_DIPSETTING(    0x80, "Dual" )
2290 
2291 	/* IN0 */
2292 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2293 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2294 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2295 
2296 	/* IN0 */
2297 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2298 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2299 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2300 
2301 	/* IN2 */
2302 	TAITO_F2_SYSTEM_INPUT
2303 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2304 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2305 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2306 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2307 INPUT_PORTS_END
2308 
2309 INPUT_PORTS_START( cameltry )
2310 	PORT_START /* DSW A */
2311 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2312 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2313 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2314 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2315 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2316 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2317 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2318 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2319 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2320 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2321 	TAITO_COINAGE_US_8
2322 
2323 	PORT_START /* DSW B */
2324 	TAITO_DIFFICULTY_8
2325 	PORT_DIPNAME( 0x0c, 0x0c, "Start remain time" )
2326 	PORT_DIPSETTING(    0x00, "35" )
2327 	PORT_DIPSETTING(    0x04, "40" )
2328 	PORT_DIPSETTING(    0x0c, "50" )
2329 	PORT_DIPSETTING(    0x08, "60" )
2330 	PORT_DIPNAME( 0x30, 0x30, "Continue play time" )
2331 	PORT_DIPSETTING(    0x00, "+20" )
2332 	PORT_DIPSETTING(    0x10, "+25" )
2333 	PORT_DIPSETTING(    0x30, "+30" )
2334 	PORT_DIPSETTING(    0x20, "+40" )
2335 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2336 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2337 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2338 	PORT_DIPNAME( 0x80, 0x00, "Upright Controls" ) /* ie single or two players at once */
2339 	PORT_DIPSETTING(    0x80, "Single" )
2340 	PORT_DIPSETTING(    0x00, "Dual" )
2341 
2342 	PORT_START      /* IN0 */
2343 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
2344 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
2345 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2346 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2347 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2348 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2349 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2350 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2351 
2352 	PORT_START      /* IN1 */
2353 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
2354 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
2355 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2356 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2357 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2358 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2359 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2360 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2361 
2362 	/* IN2 */
2363 	TAITO_F2_SYSTEM_INPUT
2364 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2365 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2366 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2367 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2368 
2369 	PORT_START  /* Paddle A */
2370 	PORT_ANALOG( 0xff, 0x00, IPT_DIAL | IPF_PLAYER1, 100, 20, 0, 0 )
2371 
2372 	PORT_START  /* Paddle B */
2373 	PORT_ANALOG( 0xff, 0x00, IPT_DIAL | IPF_PLAYER2, 100, 20, 0, 0 )
2374 INPUT_PORTS_END
2375 
2376 INPUT_PORTS_START( cameltrj )
2377 	PORT_START /* DSW A */
2378 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2379 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2380 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2381 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2382 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2383 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2384 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2385 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2386 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2387 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2388 	TAITO_COINAGE_JAPAN_8
2389 
2390 	PORT_START /* DSW B */
2391 	TAITO_DIFFICULTY_8
2392 	PORT_DIPNAME( 0x0c, 0x0c, "Start remain time" )
2393 	PORT_DIPSETTING(    0x00, "35" )
2394 	PORT_DIPSETTING(    0x04, "40" )
2395 	PORT_DIPSETTING(    0x0c, "50" )
2396 	PORT_DIPSETTING(    0x08, "60" )
2397 	PORT_DIPNAME( 0x30, 0x30, "Continue play time" )
2398 	PORT_DIPSETTING(    0x00, "+20" )
2399 	PORT_DIPSETTING(    0x10, "+25" )
2400 	PORT_DIPSETTING(    0x30, "+30" )
2401 	PORT_DIPSETTING(    0x20, "+40" )
2402 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2403 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2404 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2405 	PORT_DIPNAME( 0x80, 0x00, "Upright Controls" ) /* ie single or two players at once */
2406 	PORT_DIPSETTING(    0x80, "Single" )
2407 	PORT_DIPSETTING(    0x00, "Dual" )
2408 
2409 	PORT_START      /* IN0 */
2410 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
2411 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
2412 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2413 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2414 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2415 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2416 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2417 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2418 
2419 	PORT_START      /* IN1 */
2420 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
2421 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
2422 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2423 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2424 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2425 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2426 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2427 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2428 
2429 	/* IN2 */
2430 	TAITO_F2_SYSTEM_INPUT
2431 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2432 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2433 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2434 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2435 
2436 	PORT_START  /* Paddle A */
2437 	PORT_ANALOG( 0xff, 0x00, IPT_DIAL | IPF_PLAYER1, 100, 20, 0, 0 )
2438 
2439 	PORT_START  /* Paddle B */
2440 	PORT_ANALOG( 0xff, 0x00, IPT_DIAL | IPF_PLAYER2, 100, 20, 0, 0 )
2441 INPUT_PORTS_END
2442 
2443 INPUT_PORTS_START( qtorimon )
2444 	PORT_START /* DSW A */
2445 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) /* all 5 in manual*/
2446 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2447 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2448 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2449 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2450 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2451 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2452 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
2453 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
2454 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2455 	TAITO_COINAGE_JAPAN_8
2456 
2457 	PORT_START /* DSW B */
2458 	TAITO_DIFFICULTY_8
2459 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) )
2460 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
2461 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2462 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
2463 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
2464 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2465 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2466 	PORT_DIPSETTING(    0x10, "1" )
2467 	PORT_DIPSETTING(    0x30, "3" )
2468 	PORT_DIPSETTING(    0x20, "2" )
2469 	PORT_DIPSETTING(    0x00, "4" )
2470 	PORT_DIPNAME( 0x40, 0x40, "Show Correct Answer" )
2471 	PORT_DIPSETTING(    0x40, DEF_STR( No ) )
2472 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
2473 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) )
2474 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
2475 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2476 
2477 	PORT_START      /* IN0 */
2478 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2479 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2480 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
2481 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2482 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2483 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2484 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2485 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2486 
2487 	PORT_START      /* IN1 */
2488 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2489 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2490 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
2491 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2492 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2493 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2494 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2495 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2496 
2497 	/* IN2 */
2498 	TAITO_F2_SYSTEM_INPUT
2499 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2500 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2501 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2502 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2503 INPUT_PORTS_END
2504 
2505 INPUT_PORTS_START( liquidk )
2506 	PORT_START /* DSW A */
2507 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2508 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2509 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2510 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2511 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2512 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2513 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2514 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2515 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2516 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2517 	TAITO_COINAGE_WORLD_8
2518 
2519 	PORT_START /* DSW B */
2520 	TAITO_DIFFICULTY_8
2521 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
2522 	PORT_DIPSETTING(    0x0c, "30k and 100k" )
2523 	PORT_DIPSETTING(    0x08, "30k and 150k" )
2524 	PORT_DIPSETTING(    0x04, "50k and 250k" )
2525 	PORT_DIPSETTING(    0x00, "50k and 350k" )
2526 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2527 	PORT_DIPSETTING(    0x20, "2" )
2528 	PORT_DIPSETTING(    0x30, "3" )
2529 	PORT_DIPSETTING(    0x00, "4" )
2530 	PORT_DIPSETTING(    0x10, "5" )
2531 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2532 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2533 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2534 	PORT_DIPNAME( 0x80, 0x00, "Upright Controls" ) /* ie single or two players at once */
2535 	PORT_DIPSETTING(    0x80, "Single" )
2536 	PORT_DIPSETTING(    0x00, "Dual" )
2537 
2538 	/* IN0 */
2539 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2540 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2541 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2542 
2543 	/* IN1 */
2544 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2545 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2546 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2547 
2548 	/* IN2 */
2549 	TAITO_F2_SYSTEM_INPUT
2550 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2551 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2552 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2553 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2554 INPUT_PORTS_END
2555 
2556 INPUT_PORTS_START( liquidku )
2557 	PORT_START /* DSW A */
2558 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2559 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2560 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2561 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2562 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2563 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2564 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2565 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2566 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2567 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2568 	TAITO_COINAGE_US_8
2569 
2570 	PORT_START /* DSW B */
2571 	TAITO_DIFFICULTY_8
2572 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
2573 	PORT_DIPSETTING(    0x0c, "30k and 100k" )
2574 	PORT_DIPSETTING(    0x08, "30k and 150k" )
2575 	PORT_DIPSETTING(    0x04, "50k and 250k" )
2576 	PORT_DIPSETTING(    0x00, "50k and 350k" )
2577 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2578 	PORT_DIPSETTING(    0x20, "2" )
2579 	PORT_DIPSETTING(    0x30, "3" )
2580 	PORT_DIPSETTING(    0x00, "4" )
2581 	PORT_DIPSETTING(    0x10, "5" )
2582 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2583 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2584 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2585 	PORT_DIPNAME( 0x80, 0x00, "Upright Controls" ) /* ie single or two players at once */
2586 	PORT_DIPSETTING(    0x80, "Single" )
2587 	PORT_DIPSETTING(    0x00, "Dual" )
2588 
2589 	/* IN0 */
2590 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2591 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2592 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2593 
2594 	/* IN1 */
2595 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2596 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2597 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2598 
2599 	/* IN2 */
2600 	TAITO_F2_SYSTEM_INPUT
2601 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2602 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2603 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2604 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2605 INPUT_PORTS_END
2606 
2607 INPUT_PORTS_START( mizubaku )
2608 	PORT_START /* DSW A */
2609 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2610 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2611 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2612 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2613 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2614 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2615 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2616 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2617 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2618 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2619 	TAITO_COINAGE_JAPAN_NEW_8
2620 
2621 	PORT_START /* DSW B */
2622 	TAITO_DIFFICULTY_8
2623 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
2624 	PORT_DIPSETTING(    0x0c, "30k and 100k" )
2625 	PORT_DIPSETTING(    0x08, "30k and 150k" )
2626 	PORT_DIPSETTING(    0x04, "50k and 250k" )
2627 	PORT_DIPSETTING(    0x00, "50k and 350k" )
2628 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
2629 	PORT_DIPSETTING(    0x20, "2" )
2630 	PORT_DIPSETTING(    0x30, "3" )
2631 	PORT_DIPSETTING(    0x00, "4" )
2632 	PORT_DIPSETTING(    0x10, "5" )
2633 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2634 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2635 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2636 	PORT_DIPNAME( 0x80, 0x00, "Upright Controls" ) /* ie single or two players at once */
2637 	PORT_DIPSETTING(    0x80, "Single" )
2638 	PORT_DIPSETTING(    0x00, "Dual" )
2639 
2640 	/* IN0 */
2641 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2642 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2643 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2644 
2645 	/* IN1 */
2646 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2647 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2648 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2649 
2650 	/* IN2 */
2651 	TAITO_F2_SYSTEM_INPUT
2652 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2653 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2654 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2655 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2656 INPUT_PORTS_END
2657 
2658 INPUT_PORTS_START( ssi )
2659 	PORT_START /* DSW A */
2660 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2661 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2662 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2663 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2664 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2665 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2666 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2667 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2668 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2669 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2670 	TAITO_COINAGE_WORLD_8
2671 
2672 	PORT_START /* DSW B */
2673 	TAITO_DIFFICULTY_8
2674 	PORT_DIPNAME( 0x0c, 0x0c, "Shields" )
2675 	PORT_DIPSETTING(    0x00, "None")
2676 	PORT_DIPSETTING(    0x0c, "1")
2677 	PORT_DIPSETTING(    0x04, "2")
2678 	PORT_DIPSETTING(    0x08, "3")
2679 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Lives ) )
2680 	PORT_DIPSETTING(    0x00, "2")
2681 	PORT_DIPSETTING(    0x10, "3")
2682 	PORT_DIPNAME( 0xa0, 0xa0, "2 Players Mode" )
2683 	PORT_DIPSETTING(    0xa0, "Simultaneous")
2684 	PORT_DIPSETTING(    0x80, "Alternate, Single")
2685 	PORT_DIPSETTING(    0x00, "Alternate, Dual")
2686 	PORT_DIPSETTING(    0x20, "Not Allowed")
2687 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2688 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2689 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2690 
2691 	/* IN0 */
2692 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2693 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2694 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2695 
2696 	/* IN1 */
2697 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2698 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2699 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2700 
2701 	/* IN2 */
2702 	TAITO_F2_SYSTEM_INPUT
2703 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2704 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2705 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2706 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2707 INPUT_PORTS_END
2708 
2709 INPUT_PORTS_START( majest12 )
2710 	PORT_START /* DSW A */
2711 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
2712 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
2713 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
2714 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2715 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2716 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2717 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2718 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2719 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2720 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2721 	TAITO_COINAGE_JAPAN_NEW_8
2722 
2723 	PORT_START /* DSW B */
2724 	TAITO_DIFFICULTY_8
2725 	PORT_DIPNAME( 0x0c, 0x0c, "Shields" )
2726 	PORT_DIPSETTING(    0x00, "None")
2727 	PORT_DIPSETTING(    0x0c, "1")
2728 	PORT_DIPSETTING(    0x04, "2")
2729 	PORT_DIPSETTING(    0x08, "3")
2730 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Lives ) )
2731 	PORT_DIPSETTING(    0x00, "2")
2732 	PORT_DIPSETTING(    0x10, "3")
2733 	PORT_DIPNAME( 0xa0, 0xa0, "2 Players Mode" )
2734 	PORT_DIPSETTING(    0xa0, "Simultaneous")
2735 	PORT_DIPSETTING(    0x80, "Alternate, Single Controls")
2736 	PORT_DIPSETTING(    0x00, "Alternate, Dual Controls")
2737 	PORT_DIPSETTING(    0x20, "Not Allowed")
2738 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
2739 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2740 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
2741 
2742 	/* IN0 */
2743 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2744 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2745 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2746 
2747 	/* IN1 */
2748 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2749 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2750 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2751 
2752 	/* IN2 */
2753 	TAITO_F2_SYSTEM_INPUT
2754 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2755 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2756 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2757 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2758 INPUT_PORTS_END
2759 
2760 INPUT_PORTS_START( growl )
2761 	/* IN0 */
2762 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2763 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2764 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2765 
2766 	/* IN1 */
2767 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2768 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2769 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2770 
2771 	/* IN2 */
2772 	TAITO_F2_SYSTEM_INPUT
2773 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2774 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2775 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2776 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2777 
2778 	PORT_START /* DSW A */
2779 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /*are "unused" verified from manual?*/
2780 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2781 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2782 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2783 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2784 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2785 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2786 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2787 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2788 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2789 	TAITO_COINAGE_WORLD_8
2790 
2791 	PORT_START /* DSW B */
2792 	TAITO_DIFFICULTY_8
2793 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) )
2794 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
2795 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2796 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
2797 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
2798 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2799 	PORT_DIPNAME( 0x30, 0x30, "Cabinet Type" )
2800 	PORT_DIPSETTING(    0x30, "2 Players" )
2801 	PORT_DIPSETTING(    0x20, "4 Players / 4 Coin Slots" )	/* Push Player button A to start*/
2802 	PORT_DIPSETTING(    0x10, "4 Players / 2 cabinets combined" )
2803 	PORT_DIPSETTING(    0x00, "4 Players / 2 Coin Slots" )
2804 	PORT_DIPNAME( 0x40, 0x40, "Final Boss Continue" )
2805 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
2806 	PORT_DIPSETTING(    0x40, DEF_STR( Yes ) )
2807 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) )
2808 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
2809 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2810 
2811 	PORT_START      /* IN3 */
2812 	PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER3 )
2813 	PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER3 )
2814 	PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER3 )
2815 	PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER3 )
2816 	PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER3 )
2817 	PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER3 )
2818 	PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER3 )
2819 	PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START3 )
2820 	PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER4 )
2821 	PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER4 )
2822 	PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER4 )
2823 	PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER4 )
2824 	PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER4 )
2825 	PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER4 )
2826 	PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER4 )
2827 	PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_START4 )
2828 
2829 	PORT_START      /* IN4 */
2830 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 )
2831 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN4 )
2832 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 )
2833 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2834 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2835 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2836 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2837 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2838 INPUT_PORTS_END
2839 
2840 INPUT_PORTS_START( growlu )
2841 	/* IN0 */
2842 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2843 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2844 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2845 
2846 	/* IN1 */
2847 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2848 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2849 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2850 
2851 	/* IN2 */
2852 	TAITO_F2_SYSTEM_INPUT
2853 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2854 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2855 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2856 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2857 
2858 	PORT_START /* DSW A */
2859 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /*are "unused" verified from manual?*/
2860 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2861 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2862 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2863 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2864 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2865 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2866 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2867 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2868 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2869 	TAITO_COINAGE_US_8
2870 
2871 	PORT_START /* DSW B */
2872 	TAITO_DIFFICULTY_8
2873 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) )
2874 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
2875 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2876 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
2877 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
2878 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2879 	PORT_DIPNAME( 0x30, 0x30, "Cabinet Type" )
2880 	PORT_DIPSETTING(    0x30, "2 Players" )
2881 	PORT_DIPSETTING(    0x20, "4 Players / 4 Coin Slots" )	/* Push Player button A to start*/
2882 	PORT_DIPSETTING(    0x10, "4 Players / 2 cabinets combined" )
2883 	PORT_DIPSETTING(    0x00, "4 Players / 2 Coin Slots" )
2884 	PORT_DIPNAME( 0x40, 0x40, "Final Boss Continue" )
2885 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
2886 	PORT_DIPSETTING(    0x40, DEF_STR( Yes ) )
2887 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) )
2888 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
2889 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2890 
2891 	PORT_START      /* IN3 */
2892 	PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER3 )
2893 	PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER3 )
2894 	PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER3 )
2895 	PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER3 )
2896 	PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER3 )
2897 	PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER3 )
2898 	PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER3 )
2899 	PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START3 )
2900 	PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER4 )
2901 	PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER4 )
2902 	PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER4 )
2903 	PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER4 )
2904 	PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER4 )
2905 	PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER4 )
2906 	PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER4 )
2907 	PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_START4 )
2908 
2909 	PORT_START      /* IN4 */
2910 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 )
2911 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN4 )
2912 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 )
2913 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2914 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2915 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2916 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2917 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2918 INPUT_PORTS_END
2919 
2920 INPUT_PORTS_START( runark )
2921 	/* IN0 */
2922 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
2923 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2924 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2925 
2926 	/* IN1 */
2927 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
2928 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2929 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
2930 
2931 	/* IN2 */
2932 	TAITO_F2_SYSTEM_INPUT
2933 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2934 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2935 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2936 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2937 
2938 	PORT_START /* DSW A */
2939 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /*are "unused" verified from manual?*/
2940 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
2941 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2942 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2943 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
2944 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2945 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
2946 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
2947 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2948 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
2949 	TAITO_COINAGE_JAPAN_NEW_8
2950 
2951 	PORT_START /* DSW B */
2952 	TAITO_DIFFICULTY_8
2953 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) )
2954 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
2955 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2956 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) )
2957 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
2958 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2959 	PORT_DIPNAME( 0x30, 0x30, "Cabinet Type" )
2960 	PORT_DIPSETTING(    0x30, "2 Players" )
2961 	PORT_DIPSETTING(    0x20, "4 Players / 4 Coin Slots" )	/* Push Player button A to start*/
2962 	PORT_DIPSETTING(    0x10, "4 Players / 2 cabinets combined" )
2963 	PORT_DIPSETTING(    0x00, "4 Players / 2 Coin Slots" )
2964 	PORT_DIPNAME( 0x40, 0x40, "Final Boss Continue" )
2965 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
2966 	PORT_DIPSETTING(    0x40, DEF_STR( Yes ) )
2967 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) )
2968 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
2969 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
2970 
2971 	PORT_START      /* IN3 */
2972 	PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER3 )
2973 	PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER3 )
2974 	PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER3 )
2975 	PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER3 )
2976 	PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER3 )
2977 	PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER3 )
2978 	PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER3 )
2979 	PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START3 )
2980 	PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER4 )
2981 	PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER4 )
2982 	PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER4 )
2983 	PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER4 )
2984 	PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER4 )
2985 	PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER4 )
2986 	PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER4 )
2987 	PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_START4 )
2988 
2989 	PORT_START      /* IN4 */
2990 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 )
2991 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN4 )
2992 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 )
2993 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2994 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
2995 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2996 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2997 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2998 INPUT_PORTS_END
2999 
3000 INPUT_PORTS_START( pulirula )
3001 	PORT_START /* DSW A */
3002 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
3003 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3004 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3005 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3006 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3007 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3008 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3009 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3010 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3011 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3012 	TAITO_COINAGE_WORLD_8
3013 
3014 	PORT_START /* DSW B */
3015 	TAITO_DIFFICULTY_8
3016 	PORT_DIPNAME( 0x0c, 0x0c, "Magic" )
3017 	PORT_DIPSETTING(    0x0c, "3" )
3018 	PORT_DIPSETTING(    0x08, "4" )
3019 	PORT_DIPSETTING(    0x04, "5" )
3020 /*	PORT_DIPSETTING(    0x00, "5" )*/
3021 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
3022 	PORT_DIPSETTING(    0x20, "2" )
3023 	PORT_DIPSETTING(    0x30, "3" )
3024 	PORT_DIPSETTING(    0x10, "4" )
3025 	PORT_DIPSETTING(    0x00, "5" )
3026 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
3027 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
3028 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3029 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
3030 	PORT_DIPSETTING(    0x00, "Single" )
3031 	PORT_DIPSETTING(    0x80, "Dual" )
3032 
3033 	/* IN0 */
3034 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3035 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
3036 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3037 
3038 	/* IN1 */
3039 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3040 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3041 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3042 
3043 	/* IN2 */
3044 	TAITO_F2_SYSTEM_INPUT
3045 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3046 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3047 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3048 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3049 INPUT_PORTS_END
3050 
3051 INPUT_PORTS_START( pulirulj )
3052 	PORT_START /* DSW A */
3053 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
3054 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3055 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3056 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3057 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3058 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3059 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3060 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3061 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3062 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3063 	TAITO_COINAGE_JAPAN_NEW_8
3064 
3065 	PORT_START /* DSW B */
3066 	TAITO_DIFFICULTY_8
3067 	PORT_DIPNAME( 0x0c, 0x0c, "Magic" )
3068 	PORT_DIPSETTING(    0x0c, "3" )
3069 	PORT_DIPSETTING(    0x08, "4" )
3070 	PORT_DIPSETTING(    0x04, "5" )
3071 /*	PORT_DIPSETTING(    0x00, "5" )*/
3072 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
3073 	PORT_DIPSETTING(    0x20, "2" )
3074 	PORT_DIPSETTING(    0x30, "3" )
3075 	PORT_DIPSETTING(    0x10, "4" )
3076 	PORT_DIPSETTING(    0x00, "5" )
3077 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
3078 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
3079 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3080 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
3081 	PORT_DIPSETTING(    0x00, "Single" )
3082 	PORT_DIPSETTING(    0x80, "Dual" )
3083 
3084 	/* IN0 */
3085 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3086 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
3087 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3088 
3089 	/* IN1 */
3090 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3091 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3092 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3093 
3094 	/* IN2 */
3095 	TAITO_F2_SYSTEM_INPUT
3096 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3097 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3098 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3099 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3100 INPUT_PORTS_END
3101 
3102 INPUT_PORTS_START( qzquest )
3103 	PORT_START /* DSW A */
3104 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
3105 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
3106 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
3107 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3108 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3109 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3110 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3111 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3112 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3113 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3114 	TAITO_COINAGE_JAPAN_NEW_8
3115 
3116 	PORT_START /* DSW B */
3117 	TAITO_DIFFICULTY_8  /*??*/
3118 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
3119 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
3120 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3121 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
3122 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
3123 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3124 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
3125 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
3126 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3127 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
3128 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
3129 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3130 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
3131 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
3132 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3133 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
3134 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
3135 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3136 
3137 	PORT_START      /* IN0 */
3138 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
3139 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
3140 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
3141 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
3142 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )
3143 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )
3144 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3145 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3146 
3147 	PORT_START      /* IN1 */
3148 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
3149 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
3150 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
3151 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3152 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3153 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3154 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3155 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3156 
3157 	/* IN2 */
3158 	TAITO_F2_SYSTEM_INPUT
3159 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3160 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3161 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3162 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3163 INPUT_PORTS_END
3164 
3165 INPUT_PORTS_START( qzchikyu )
3166 	PORT_START /* DSW A */
3167 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
3168 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
3169 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
3170 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3171 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3172 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3173 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3174 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3175 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3176 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3177 	TAITO_COINAGE_JAPAN_NEW_8
3178 
3179 	PORT_START /* DSW B */
3180 	TAITO_DIFFICULTY_8  /*??*/
3181 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
3182 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
3183 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3184 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
3185 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
3186 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3187 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
3188 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
3189 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3190 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
3191 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
3192 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3193 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
3194 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
3195 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3196 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
3197 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
3198 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3199 
3200 	PORT_START      /* IN0 */
3201 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
3202 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
3203 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
3204 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
3205 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )
3206 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )
3207 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3208 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3209 
3210 	PORT_START      /* IN1 */
3211 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
3212 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
3213 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
3214 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3215 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3216 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3217 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3218 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3219 
3220 	/* IN2 */
3221 	TAITO_F2_SYSTEM_INPUT
3222 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3223 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3224 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3225 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3226 INPUT_PORTS_END
3227 
3228 INPUT_PORTS_START( footchmp )
3229 	/* IN0 */
3230 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3231 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3232 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3233 
3234 	/* IN1 */
3235 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3236 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3237 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3238 
3239 	PORT_START      /* IN2 */
3240 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
3241 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
3242 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
3243 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN4 )
3244 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
3245 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE2 )
3246 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE3 )
3247 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_TILT )
3248 
3249 	PORT_START /* DSW A */
3250 	PORT_DIPNAME( 0x01, 0x00, "Game Over Type" )	/* 2p simultaneous play*/
3251 	PORT_DIPSETTING(    0x01, "Both Teams' Games Over" )
3252 	PORT_DIPSETTING(    0x00, "Losing Team's Game is Over" )
3253 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3254 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3255 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3256 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3257 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3258 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3259 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3260 	TAITO_COINAGE_WORLD_8
3261 
3262 	PORT_START /* DSW B */
3263 	TAITO_DIFFICULTY_8
3264 	PORT_DIPNAME( 0x0c, 0x0c, "Game Time" )
3265 	PORT_DIPSETTING(    0x00, "1.5 Minutes" )
3266 	PORT_DIPSETTING(    0x0c, " 2  Minutes" )
3267 	PORT_DIPSETTING(    0x04, "2.5 Minutes" )
3268 	PORT_DIPSETTING(    0x08, " 3  Minutes" )
3269 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Cabinet ) )
3270 	PORT_DIPSETTING(    0x30, "2 Players" )
3271 	PORT_DIPSETTING(    0x20, "4 Players / 4 Coin Slots" )	/* Push Player button A to start*/
3272 	PORT_DIPSETTING(    0x10, "4 Players / 2 cabinets combined" )
3273 	PORT_DIPSETTING(    0x00, "4 Players / 2 Coin Slots" )
3274 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
3275 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3276 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
3277 	PORT_DIPNAME( 0x80, 0x00, "Game Version" )	/* Not used for Hat Trick Hero / Euro Champ '92*/
3278 	PORT_DIPSETTING(    0x00, "Normal" )
3279 	PORT_DIPSETTING(    0x80, "European" )
3280 
3281 	/* IN3 */
3282 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER3 )
3283 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3284 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 )
3285 
3286 	/* IN4 */
3287 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER4 )
3288 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3289 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
3290 INPUT_PORTS_END
3291 
3292 INPUT_PORTS_START( hthero )
3293 	/* IN0 */
3294 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3295 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3296 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3297 
3298 	/* IN1 */
3299 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3300 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3301 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3302 
3303 	PORT_START      /* IN2 */
3304 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
3305 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
3306 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
3307 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN4 )
3308 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
3309 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE2 )
3310 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE3 )
3311 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_TILT )
3312 
3313 	PORT_START /* DSW A */
3314 	PORT_DIPNAME( 0x80, 0x00, "Game Over Type" )	/* 2p simultaneous play*/
3315 	PORT_DIPSETTING(    0x80, "Both Teams' Games Over" )
3316 	PORT_DIPSETTING(    0x00, "Losing Team's Game is Over" )
3317 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) )
3318 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
3319 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3320 	PORT_SERVICE( 0x20, IP_ACTIVE_LOW )
3321 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Demo_Sounds ) )
3322 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3323 	PORT_DIPSETTING(    0x10, DEF_STR( On ) )
3324 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_A ) )
3325 	PORT_DIPSETTING(    0x00, DEF_STR( 3C_1C ) )
3326 	PORT_DIPSETTING(    0x08, DEF_STR( 2C_1C ) )
3327 	PORT_DIPSETTING(    0x0c, DEF_STR( 1C_1C ) )
3328 	PORT_DIPSETTING(    0x04, DEF_STR( 1C_2C ) )
3329 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_B ) )
3330 	PORT_DIPSETTING(    0x00, DEF_STR( 3C_1C ) )
3331 	PORT_DIPSETTING(    0x02, DEF_STR( 2C_1C ) )
3332 	PORT_DIPSETTING(    0x03, DEF_STR( 1C_1C ) )
3333 	PORT_DIPSETTING(    0x01, DEF_STR( 1C_2C ) )
3334 
3335 	PORT_START /* DSW B */
3336 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) )
3337 	PORT_DIPSETTING(    0x40, "Easy" )
3338 	PORT_DIPSETTING(    0xc0, "Medium" )
3339 	PORT_DIPSETTING(    0x80, "Hard" )
3340 	PORT_DIPSETTING(    0x00, "Hardest" )
3341 	PORT_DIPNAME( 0x30, 0x30, "Game Time" )
3342 	PORT_DIPSETTING(    0x00, "1.5 Minutes" )
3343 	PORT_DIPSETTING(    0x30, " 2  Minutes" )
3344 	PORT_DIPSETTING(    0x20, "2.5 Minutes" )
3345 	PORT_DIPSETTING(    0x10, " 3  Minutes" )
3346 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Cabinet ) )
3347 	PORT_DIPSETTING(    0x0c, "2 Players" )
3348 	PORT_DIPSETTING(    0x04, "4 Players / 4 Coin Slots" )	/* Push Player button A to start*/
3349 	PORT_DIPSETTING(    0x08, "4 Players / 2 cabinets combined" )
3350 	PORT_DIPSETTING(    0x00, "4 Players / 2 Coin Slots" )
3351 	PORT_DIPNAME( 0x02, 0x02, "Allow Continue" )
3352 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3353 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
3354 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )
3355 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3356 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3357 
3358 	/* IN3 */
3359 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER3 )
3360 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3361 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 )
3362 
3363 	/* IN4 */
3364 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER4 )
3365 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3366 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
3367 INPUT_PORTS_END
3368 
3369 INPUT_PORTS_START( ninjak )
3370 	/* IN0 */
3371 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3372 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3373 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3374 
3375 	/* IN1 */
3376 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3377 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3378 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3379 
3380 	PORT_START      /* IN2 */
3381 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT )
3382 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
3383 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 )
3384 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
3385 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
3386 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 )
3387 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 )
3388 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 )
3389 
3390 	PORT_START /* DSW A */
3391 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /*is this verified from manual?*/
3392 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3393 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3394 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3395 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3396 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3397 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3398 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3399 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3400 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3401 	TAITO_COINAGE_WORLD_8
3402 
3403 	PORT_START /* DSW B */
3404 	TAITO_DIFFICULTY_8
3405 	PORT_DIPNAME( 0x0c, 0x0c, "Cabinet Type" )
3406 	PORT_DIPSETTING(    0x0c, "2 players" )
3407 	PORT_DIPSETTING(    0x08, "TROG (4 players / 2 coin slots)" )
3408 	PORT_DIPSETTING(    0x04, "MTX2 (4 players / 2 cabinets combined)" )
3409 	PORT_DIPSETTING(    0x00, "TMNT (4 players / 4 coin slots)" )
3410 	PORT_DIPNAME( 0x30, 0x10, DEF_STR( Lives ) )
3411 	PORT_DIPSETTING(    0x20, "2" )
3412 	PORT_DIPSETTING(    0x30, "3" )
3413 	PORT_DIPSETTING(    0x10, "4" )
3414 	PORT_DIPSETTING(    0x00, "5" )
3415 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
3416 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3417 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
3418 	PORT_DIPNAME( 0x80, 0x80, "Game Type" )
3419 	PORT_DIPSETTING(    0x00, "1 Player only" )
3420 	PORT_DIPSETTING(    0x80, "Multiplayer" )
3421 
3422 	/* IN3 */
3423 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER3 )
3424 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3425 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 )
3426 
3427 	/* IN4 */
3428 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER4 )
3429 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3430 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
3431 INPUT_PORTS_END
3432 
3433 INPUT_PORTS_START( ninjakj )
3434 	/* IN0 */
3435 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3436 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3437 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3438 
3439 	/* IN1 */
3440 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3441 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3442 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3443 
3444 	PORT_START      /* IN2 */
3445 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT )
3446 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
3447 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 )
3448 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
3449 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
3450 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 )
3451 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 )
3452 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 )
3453 
3454 	PORT_START /* DSW A */
3455 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /*is this verified from manual?*/
3456 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3457 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3458 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3459 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3460 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3461 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3462 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3463 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3464 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3465 	TAITO_COINAGE_JAPAN_NEW_8
3466 
3467 	PORT_START /* DSW B */
3468 	TAITO_DIFFICULTY_8
3469 	PORT_DIPNAME( 0x0c, 0x0c, "Cabinet Type" )
3470 	PORT_DIPSETTING(    0x0c, "2 players" )
3471 	PORT_DIPSETTING(    0x08, "TROG (4 players / 2 coin slots)" )
3472 	PORT_DIPSETTING(    0x04, "MTX2 (4 players / 2 cabinets combined)" )
3473 	PORT_DIPSETTING(    0x00, "TMNT (4 players / 4 coin slots)" )
3474 	PORT_DIPNAME( 0x30, 0x10, DEF_STR( Lives ) )
3475 	PORT_DIPSETTING(    0x20, "2" )
3476 	PORT_DIPSETTING(    0x30, "3" )
3477 	PORT_DIPSETTING(    0x10, "4" )
3478 	PORT_DIPSETTING(    0x00, "5" )
3479 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
3480 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3481 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
3482 	PORT_DIPNAME( 0x80, 0x80, "Game Type" )
3483 	PORT_DIPSETTING(    0x00, "1 Player only" )
3484 	PORT_DIPSETTING(    0x80, "Multiplayer" )
3485 
3486 	/* IN3 */
3487 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER3 )
3488 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3489 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 )
3490 
3491 	/* IN4 */
3492 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER4 )
3493 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3494 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
3495 INPUT_PORTS_END
3496 
3497 INPUT_PORTS_START( driftout )
3498 	PORT_START /* DSW A */
3499 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /* all 5 in Service Mode*/
3500 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3501 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3502 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3503 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3504 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3505 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3506 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3507 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3508 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3509 	TAITO_COINAGE_JAPAN_8
3510 
3511 	PORT_START /* DSW B */
3512 	TAITO_DIFFICULTY_8
3513 	PORT_DIPNAME( 0x0c, 0x0c, "Control" )   /* correct acc. to service mode */
3514 	PORT_DIPSETTING(    0x0c, "Joystick" )
3515 	PORT_DIPSETTING(    0x08, "Paddle" )
3516 	PORT_DIPSETTING(    0x04, "Joystick" )
3517 	PORT_DIPSETTING(    0x00, "Steering wheel" )
3518 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) )
3519 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
3520 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3521 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) )
3522 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
3523 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3524 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) )
3525 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
3526 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3527 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) )
3528 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
3529 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3530 
3531 	/* IN0 */
3532 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3533 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3534 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3535 
3536 	PORT_START      /* IN1 */
3537 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )	/* 2P not used? */
3538 
3539 	/* IN2 */
3540 	TAITO_F2_SYSTEM_INPUT
3541 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3542 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3543 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3544 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3545 
3546 	PORT_START  /* Paddle A */
3547 	PORT_ANALOG( 0xff, 0x00, IPT_DIAL | IPF_PLAYER1, 50, 10, 0, 0 )
3548 
3549 	PORT_START  /* Paddle B */
3550 	PORT_ANALOG( 0xff, 0x00, IPT_DIAL | IPF_PLAYER2, 50, 10, 0, 0 )
3551 INPUT_PORTS_END
3552 
3553 INPUT_PORTS_START( gunfront )
3554 	PORT_START /* DSW A */
3555 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
3556 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3557 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3558 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3559 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3560 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3561 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3562 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3563 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3564 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3565 	TAITO_COINAGE_WORLD_8
3566 
3567 	PORT_START /* DSW B */
3568 	TAITO_DIFFICULTY_8
3569 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
3570 	PORT_DIPSETTING(    0x08, "10k and every 80k" )
3571 	PORT_DIPSETTING(    0x0c, "20k and every 80k" )
3572 	PORT_DIPSETTING(    0x04, "30k and every 80k" )
3573 	PORT_DIPSETTING(    0x00, "60k and every 80k" )
3574 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
3575 	PORT_DIPSETTING(    0x20, "1" )
3576 	PORT_DIPSETTING(    0x10, "2" )
3577 	PORT_DIPSETTING(    0x30, "3" )
3578 	PORT_DIPSETTING(    0x00, "5" )
3579 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
3580 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3581 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
3582 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
3583 	PORT_DIPSETTING(    0x00, "Single" )
3584 	PORT_DIPSETTING(    0x80, "Dual" )
3585 
3586 	/* IN0 */
3587 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3588 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3589 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3590 
3591 	/* IN1 */
3592 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3593 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3594 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3595 
3596 	/* IN2 */
3597 	TAITO_F2_SYSTEM_INPUT
3598 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3599 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3600 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3601 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3602 INPUT_PORTS_END
3603 
3604 INPUT_PORTS_START( gunfronj )
3605 	PORT_START /* DSW A */
3606 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
3607 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3608 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3609 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3610 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3611 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3612 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3613 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3614 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3615 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3616 	TAITO_COINAGE_JAPAN_NEW_8
3617 
3618 	PORT_START /* DSW B */
3619 	TAITO_DIFFICULTY_8
3620 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
3621 	PORT_DIPSETTING(    0x08, "10k and every 80k" )
3622 	PORT_DIPSETTING(    0x0c, "20k and every 80k" )
3623 	PORT_DIPSETTING(    0x04, "30k and every 80k" )
3624 	PORT_DIPSETTING(    0x00, "60k and every 80k" )
3625 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
3626 	PORT_DIPSETTING(    0x20, "1" )
3627 	PORT_DIPSETTING(    0x10, "2" )
3628 	PORT_DIPSETTING(    0x30, "3" )
3629 	PORT_DIPSETTING(    0x00, "5" )
3630 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
3631 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3632 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
3633 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
3634 	PORT_DIPSETTING(    0x00, "Single" )
3635 	PORT_DIPSETTING(    0x80, "Dual" )
3636 
3637 	/* IN0 */
3638 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3639 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3640 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3641 
3642 	/* IN1 */
3643 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3644 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3645 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3646 
3647 	/* IN2 */
3648 	TAITO_F2_SYSTEM_INPUT
3649 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3650 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3651 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3652 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3653 INPUT_PORTS_END
3654 
3655 INPUT_PORTS_START( metalb )
3656 	PORT_START /* DSW A */
3657 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
3658 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3659 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3660 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3661 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3662 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3663 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3664 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3665 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3666 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3667 	TAITO_COINAGE_WORLD_8
3668 
3669 	PORT_START /* DSW B */
3670 	TAITO_DIFFICULTY_8
3671 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
3672 	PORT_DIPSETTING(    0x04, "80k and every 160k" )
3673 	PORT_DIPSETTING(    0x0c, "70k and every 150k" )
3674 	PORT_DIPSETTING(    0x00, "100k and every 200k" )
3675 	PORT_DIPSETTING(    0x08, "50k and every 120k" )
3676 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
3677 	PORT_DIPSETTING(    0x00, "1" )
3678 	PORT_DIPSETTING(    0x10, "2" )
3679 	PORT_DIPSETTING(    0x30, "3" )
3680 	PORT_DIPSETTING(    0x20, "5" )
3681 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
3682 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3683 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
3684 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
3685 	PORT_DIPSETTING(    0x00, "Single" )
3686 	PORT_DIPSETTING(    0x80, "Dual" )
3687 
3688 	/* IN0 */
3689 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3690 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
3691 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3692 
3693 	/* IN1 */
3694 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3695 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3696 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3697 
3698 	/* IN2 */
3699 	TAITO_F2_SYSTEM_INPUT
3700 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3701 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3702 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3703 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3704 INPUT_PORTS_END
3705 
3706 INPUT_PORTS_START( metalbj )
3707 	PORT_START /* DSW A */
3708 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
3709 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3710 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3711 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3712 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3713 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3714 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3715 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3716 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3717 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3718 	TAITO_COINAGE_JAPAN_NEW_8
3719 
3720 	PORT_START /* DSW B */
3721 	TAITO_DIFFICULTY_8
3722 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Bonus_Life ) )
3723 	PORT_DIPSETTING(    0x04, "80k and every 160k" )
3724 	PORT_DIPSETTING(    0x0c, "70k and every 150k" )
3725 	PORT_DIPSETTING(    0x00, "100k and every 200k" )
3726 	PORT_DIPSETTING(    0x08, "50k and every 120k" )
3727 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
3728 	PORT_DIPSETTING(    0x00, "1" )
3729 	PORT_DIPSETTING(    0x10, "2" )
3730 	PORT_DIPSETTING(    0x30, "3" )
3731 	PORT_DIPSETTING(    0x20, "5" )
3732 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
3733 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3734 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
3735 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
3736 	PORT_DIPSETTING(    0x00, "Single" )
3737 	PORT_DIPSETTING(    0x80, "Dual" )
3738 
3739 	/* IN0 */
3740 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3741 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
3742 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3743 
3744 	/* IN1 */
3745 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3746 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3747 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3748 
3749 	/* IN2 */
3750 	TAITO_F2_SYSTEM_INPUT
3751 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3752 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3753 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3754 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3755 INPUT_PORTS_END
3756 
3757 INPUT_PORTS_START( deadconx )
3758 	/* IN0 */
3759 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3760 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3761 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3762 
3763 	/* IN1 */
3764 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3765 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3766 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3767 
3768 	PORT_START      /* IN2 */
3769 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
3770 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
3771 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
3772 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN4 )
3773 	PORT_BITX(0x10, IP_ACTIVE_LOW, IPT_SERVICE, "Service A", KEYCODE_9, IP_JOY_NONE )
3774 	PORT_BITX(0x20, IP_ACTIVE_LOW, IPT_SERVICE, "Service B", KEYCODE_0, IP_JOY_NONE )
3775 	PORT_BITX(0x40, IP_ACTIVE_LOW, IPT_SERVICE, "Service C", KEYCODE_MINUS, IP_JOY_NONE )
3776 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_TILT )
3777 
3778 	PORT_START /* DSW A */
3779 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) )
3780 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
3781 	PORT_DIPSETTING(    0x01, DEF_STR( Cocktail ) )
3782 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3783 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3784 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3785 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3786 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3787 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3788 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3789 	TAITO_COINAGE_WORLD_8
3790 
3791 	PORT_START /* DSW B, missing a timer speed maybe? */
3792 	TAITO_DIFFICULTY_8
3793 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
3794 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
3795 	PORT_DIPSETTING(    0x00, DEF_STR( On) )
3796 	PORT_DIPNAME( 0x18, 0x18, "Damage" )
3797 	PORT_DIPSETTING(    0x10, "Small" )		/* Hero can take 12 gun shots */
3798 	PORT_DIPSETTING(    0x18, "Normal" )	/* Hero can take 10 gun shots */
3799 	PORT_DIPSETTING(    0x08, "Big" )		/* Hero can take 8 gun shots */
3800 	PORT_DIPSETTING(    0x00, "Biggest" )	/* Hero can take 5 gun shots */
3801 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
3802 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
3803 	PORT_DIPSETTING(    0x00, DEF_STR( On) )
3804 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
3805 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
3806 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3807 	PORT_DIPNAME( 0x80, 0x80, "Game Type" )
3808 	PORT_DIPSETTING(    0x00, "1 Player only" )
3809 	PORT_DIPSETTING(    0x80, "Multiplayer" )
3810 
3811 	/* IN3 */
3812 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER3 )
3813 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3814 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 )
3815 
3816 	/* IN4 */
3817 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER4 )
3818 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3819 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
3820 INPUT_PORTS_END
3821 
3822 INPUT_PORTS_START( deadconj )
3823 	/* IN0 */
3824 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3825 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3826 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3827 
3828 	/* IN1 */
3829 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3830 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3831 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3832 
3833 	PORT_START      /* IN2 */
3834 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
3835 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
3836 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
3837 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN4 )
3838 	PORT_BITX(0x10, IP_ACTIVE_LOW, IPT_SERVICE, "Service A", KEYCODE_9, IP_JOY_NONE )
3839 	PORT_BITX(0x20, IP_ACTIVE_LOW, IPT_SERVICE, "Service B", KEYCODE_0, IP_JOY_NONE )
3840 	PORT_BITX(0x40, IP_ACTIVE_LOW, IPT_SERVICE, "Service C", KEYCODE_MINUS, IP_JOY_NONE )
3841 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_TILT )
3842 
3843 	/* hthero and deadconj have the dips in inverted order */
3844 	PORT_START /* DSW A */
3845 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) )
3846 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
3847 	PORT_DIPSETTING(    0x80, DEF_STR( Cocktail ) )
3848 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) )
3849 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
3850 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3851 	PORT_SERVICE( 0x20, IP_ACTIVE_LOW )
3852 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Demo_Sounds ) )
3853 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3854 	PORT_DIPSETTING(    0x10, DEF_STR( On ) )
3855 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_A ) )
3856 	PORT_DIPSETTING(    0x00, DEF_STR( 3C_1C ) )
3857 	PORT_DIPSETTING(    0x08, DEF_STR( 2C_1C ) )
3858 	PORT_DIPSETTING(    0x0c, DEF_STR( 1C_1C ) )
3859 	PORT_DIPSETTING(    0x04, DEF_STR( 1C_2C ) )
3860 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_B ) )
3861 	PORT_DIPSETTING(    0x00, DEF_STR( 3C_1C ) )
3862 	PORT_DIPSETTING(    0x02, DEF_STR( 2C_1C ) )
3863 	PORT_DIPSETTING(    0x03, DEF_STR( 1C_1C ) )
3864 	PORT_DIPSETTING(    0x01, DEF_STR( 1C_2C ) )
3865 
3866 	PORT_START /* DSW B */
3867 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) )
3868 	PORT_DIPSETTING(    0x40, "Easy" )
3869 	PORT_DIPSETTING(    0xc0, "Medium" )
3870 	PORT_DIPSETTING(    0x80, "Hard" )
3871 	PORT_DIPSETTING(    0x00, "Hardest" )
3872 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
3873 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
3874 	PORT_DIPSETTING(    0x00, DEF_STR( On) )
3875 	PORT_DIPNAME( 0x18, 0x18, "Damage" )
3876 	PORT_DIPSETTING(    0x08, "Small" )		/* Hero can take 12 gun shots */
3877 	PORT_DIPSETTING(    0x18, "Normal" )	/* Hero can take 10 gun shots */
3878 	PORT_DIPSETTING(    0x10, "Big" )		/* Hero can take 8 gun shots */
3879 	PORT_DIPSETTING(    0x00, "Biggest" )	/* Hero can take 5 gun shots */
3880 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
3881 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
3882 	PORT_DIPSETTING(    0x00, DEF_STR( On) )
3883 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
3884 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3885 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3886 	PORT_DIPNAME( 0x01, 0x01, "Game Type" )
3887 	PORT_DIPSETTING(    0x00, "1 Player only" )
3888 	PORT_DIPSETTING(    0x01, "Multiplayer" )
3889 
3890 	/* IN3 */
3891 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER3 )
3892 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3893 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 )
3894 
3895 	/* IN4 */
3896 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER4 )
3897 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3898 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
3899 INPUT_PORTS_END
3900 
3901 INPUT_PORTS_START( dinorex )
3902 	PORT_START /* DSW A */
3903 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /*are "unused" verified from manual?*/
3904 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3905 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3906 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3907 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3908 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3909 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3910 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3911 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3912 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3913 	TAITO_COINAGE_WORLD_8
3914 
3915 	PORT_START /* DSW B */
3916 	TAITO_DIFFICULTY_8
3917 	PORT_DIPNAME( 0x0c, 0x0c, "Damage" )
3918 	PORT_DIPSETTING(    0x08, "Small" )
3919 	PORT_DIPSETTING(    0x0c, "Normal" )
3920 	PORT_DIPSETTING(    0x04, "Big" )
3921 	PORT_DIPSETTING(    0x00, "Biggest" )
3922 	PORT_DIPNAME( 0x10, 0x10, "Timer Speed" )	 /* Appears to make little difference*/
3923 	PORT_DIPSETTING(    0x10, "Normal" )
3924 	PORT_DIPSETTING(    0x00, "Fast" )
3925 	PORT_DIPNAME( 0x20, 0x20, "Match Type" )
3926 	PORT_DIPSETTING(    0x20, "Best of 3" )
3927 	PORT_DIPSETTING(    0x00, "Single" )
3928 	PORT_DIPNAME( 0x40, 0x40, "2 Player Mode" )	/* actually this seems to be unknown*/
3929 	PORT_DIPSETTING(    0x40, DEF_STR( Upright ) )
3930 	PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
3931 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" )	/* ie single or two players at once */
3932 	PORT_DIPSETTING(    0x00, "Single" )
3933 	PORT_DIPSETTING(    0x80, "Dual" )
3934 
3935 	/* IN0 */
3936 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3937 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
3938 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3939 
3940 	/* IN1 */
3941 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3942 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3943 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3944 
3945 	/* IN2 */
3946 	TAITO_F2_SYSTEM_INPUT
3947 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
3948 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
3949 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3950 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3951 INPUT_PORTS_END
3952 
3953 INPUT_PORTS_START( dinorexj )
3954 	PORT_START /* DSW A */
3955 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )  /*are "unused" verified from manual?*/
3956 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
3957 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3958 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3959 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
3960 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
3961 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
3962 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
3963 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
3964 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
3965 	TAITO_COINAGE_JAPAN_NEW_8
3966 
3967 	PORT_START /* DSW B */
3968 	TAITO_DIFFICULTY_8
3969 	PORT_DIPNAME( 0x0c, 0x0c, "Damage" )
3970 	PORT_DIPSETTING(    0x08, "Small" )
3971 	PORT_DIPSETTING(    0x0c, "Normal" )
3972 	PORT_DIPSETTING(    0x04, "Big" )
3973 	PORT_DIPSETTING(    0x00, "Biggest" )
3974 	PORT_DIPNAME( 0x10, 0x10, "Timer Speed" )	 /* Appears to make little difference*/
3975 	PORT_DIPSETTING(    0x10, "Normal" )
3976 	PORT_DIPSETTING(    0x00, "Fast" )
3977 	PORT_DIPNAME( 0x20, 0x20, "Match Type" )
3978 	PORT_DIPSETTING(    0x20, "Best of 3" )
3979 	PORT_DIPSETTING(    0x00, "Single" )
3980 	PORT_DIPNAME( 0x40, 0x40, "2 Player Mode" )	/* actually this seems to be unknown*/
3981 	PORT_DIPSETTING(    0x40, DEF_STR( Upright ) )
3982 	PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
3983 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" )	/* ie single or two players at once */
3984 	PORT_DIPSETTING(    0x00, "Single" )
3985 	PORT_DIPSETTING(    0x80, "Dual" )
3986 
3987 	/* IN0 */
3988 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
3989 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
3990 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3991 
3992 	/* IN1 */
3993 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
3994 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3995 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3996 
3997 	/* IN2 */
3998 	TAITO_F2_SYSTEM_INPUT
3999 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
4000 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4001 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4002 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
4003 INPUT_PORTS_END
4004 
4005 INPUT_PORTS_START( solfigtr )
4006 	/* IN0 */
4007 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER1 )
4008 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
4009 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
4010 
4011 	/* IN1 */
4012 	TAITO_F2_PLAYERS_INPUT( IPF_PLAYER2 )
4013 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
4014 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
4015 
4016 	/* IN2 */
4017 	TAITO_F2_SYSTEM_INPUT
4018 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
4019 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4020 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4021 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
4022 
4023 	PORT_START /* DSW A */
4024 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
4025 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4026 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4027 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
4028 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4029 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4030 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
4031 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
4032 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4033 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
4034 	TAITO_COINAGE_WORLD_8
4035 
4036 	PORT_START /* DSW B */
4037 	TAITO_DIFFICULTY_8
4038 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
4039 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
4040 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4041 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
4042 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
4043 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4044 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
4045 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
4046 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4047 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
4048 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
4049 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4050 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
4051 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
4052 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4053 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
4054 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
4055 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4056 INPUT_PORTS_END
4057 
4058 INPUT_PORTS_START( koshien )
4059 	PORT_START /* DSW A, one lets you control fielders ? */
4060 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
4061 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4062 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4063 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
4064 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4065 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4066 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
4067 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
4068 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4069 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
4070 	TAITO_COINAGE_JAPAN_NEW_8
4071 
4072 	PORT_START /* DSW B */
4073 	TAITO_DIFFICULTY_8
4074 	PORT_DIPNAME( 0x04, 0x04, "Timer" )
4075 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4076 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
4077 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
4078 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
4079 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4080 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
4081 	PORT_DIPSETTING(    0x20, "2" )
4082 	PORT_DIPSETTING(    0x30, "3" )
4083 	PORT_DIPSETTING(    0x10, "4" )
4084 	PORT_DIPSETTING(    0x00, "5" )
4085 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
4086 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4087 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
4088 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
4089 	PORT_DIPSETTING(    0x00, "Single" )
4090 	PORT_DIPSETTING(    0x80, "Dual" )
4091 
4092 	PORT_START      /* IN1 */
4093 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
4094 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
4095 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
4096 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 )
4097 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
4098 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
4099 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
4100 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
4101 
4102 	/* IN2 */
4103 	TAITO_F2_SYSTEM_INPUT
4104 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
4105 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4106 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4107 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
4108 
4109 	PORT_START      /* IN0 */
4110 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER1 )
4111 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER1 )
4112 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER1 )
4113 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER1 )
4114 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER2 )
4115 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER2 )
4116 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER2 )
4117 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER2 )
4118 INPUT_PORTS_END
4119 
4120 INPUT_PORTS_START( quizhq )
4121 	PORT_START      /* IN0 */
4122 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
4123 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
4124 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
4125 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
4126 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )	/* ??*/
4127 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4128 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4129 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
4130 
4131 	PORT_START      /* IN1 */
4132 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
4133 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
4134 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
4135 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
4136 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )	/* ??*/
4137 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4138 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4139 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
4140 
4141 	/* IN2 */
4142 	TAITO_F2_SYSTEM_INPUT
4143 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
4144 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4145 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4146 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
4147 
4148 	PORT_START /* DSW A */
4149 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )
4150 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4151 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4152 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
4153 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4154 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4155 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
4156 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
4157 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4158 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
4159 	TAITO_COINAGE_JAPAN_NEW_8
4160 
4161 	PORT_START /* DSW B */
4162 	TAITO_DIFFICULTY_8
4163 	PORT_DIPNAME( 0x0c, 0x0c, "Time" )
4164 	PORT_DIPSETTING(    0x0c, "5 seconds" )
4165 	PORT_DIPSETTING(    0x08, "10 seconds" )
4166 	PORT_DIPSETTING(    0x04, "15 seconds" )
4167 	PORT_DIPSETTING(    0x00, "20 seconds" )
4168 	PORT_DIPNAME( 0x30, 0x30, "Stock" )  /* Lives*/
4169 	PORT_DIPSETTING(    0x20, "1" )
4170 	PORT_DIPSETTING(    0x30, "2" )
4171 	PORT_DIPSETTING(    0x10, "3" )
4172 	PORT_DIPSETTING(    0x00, "4" )
4173 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
4174 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4175 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
4176 	PORT_DIPNAME( 0x80, 0x80, "Upright Controls" ) /* ie single or two players at once */
4177 	PORT_DIPSETTING(    0x00, "Single" )
4178 	PORT_DIPSETTING(    0x80, "Dual" )
4179 INPUT_PORTS_END
4180 
4181 INPUT_PORTS_START( qjinsei )
4182 	PORT_START /* DSW A */
4183 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
4184 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4185 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4186 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
4187 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4188 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4189 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
4190 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
4191 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4192 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
4193 	TAITO_COINAGE_JAPAN_NEW_8
4194 
4195 	PORT_START /* DSW B */
4196 	TAITO_DIFFICULTY_8
4197 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
4198 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
4199 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4200 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
4201 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
4202 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4203 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
4204 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
4205 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4206 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
4207 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
4208 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4209 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
4210 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
4211 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4212 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
4213 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
4214 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4215 
4216 	PORT_START      /* IN0 */
4217 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
4218 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
4219 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
4220 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
4221 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )	/* ??*/
4222 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4223 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4224 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
4225 
4226 	PORT_START      /* IN1 */
4227 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
4228 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
4229 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
4230 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
4231 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )	/* ??*/
4232 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4233 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4234 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
4235 
4236 	/* IN2 */
4237 	TAITO_F2_SYSTEM_INPUT
4238 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
4239 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4240 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4241 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
4242 INPUT_PORTS_END
4243 
4244 INPUT_PORTS_START( qcrayon )
4245 	PORT_START /* DSW A */
4246 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
4247 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4248 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4249 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
4250 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4251 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4252 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
4253 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
4254 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4255 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
4256 	TAITO_COINAGE_JAPAN_NEW_8
4257 
4258 	PORT_START /* DSW B */
4259 	TAITO_DIFFICULTY_8
4260 	PORT_DIPNAME( 0x0c, 0x0c, "Time" )
4261 	PORT_DIPSETTING(    0x00, "6 seconds" )
4262 	PORT_DIPSETTING(    0x04, "7 seconds" )
4263 	PORT_DIPSETTING(    0x08, "8 seconds" )
4264 	PORT_DIPSETTING(    0x0c, "10 seconds" )
4265 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
4266 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
4267 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4268 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
4269 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
4270 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4271 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
4272 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
4273 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4274 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
4275 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
4276 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4277 
4278 	PORT_START      /* IN0 */
4279 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
4280 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
4281 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
4282 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
4283 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )	/* ??*/
4284 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4285 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4286 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
4287 
4288 	PORT_START      /* IN1 */
4289 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
4290 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
4291 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
4292 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
4293 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )	/* ??*/
4294 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4295 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4296 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
4297 
4298 	/* IN2 */
4299 	TAITO_F2_SYSTEM_INPUT
4300 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
4301 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4302 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4303 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
4304 INPUT_PORTS_END
4305 
4306 INPUT_PORTS_START( qcrayon2 )
4307 	PORT_START /* DSW A */
4308 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
4309 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4310 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4311 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
4312 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4313 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4314 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
4315 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
4316 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4317 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
4318 	TAITO_COINAGE_JAPAN_NEW_8
4319 
4320 	PORT_START /* DSW B */
4321 	TAITO_DIFFICULTY_8
4322 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
4323 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
4324 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4325 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
4326 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
4327 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4328 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
4329 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
4330 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4331 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
4332 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
4333 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4334 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
4335 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
4336 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4337 	PORT_DIPNAME( 0x80, 0x80, "Game Control" )
4338 	PORT_DIPSETTING(    0x80, "Joystick" )
4339 	PORT_DIPSETTING(    0x00, "4 Buttons" )
4340 
4341 	PORT_START      /* IN0 */
4342 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER1 )
4343 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER1 )
4344 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER1 )
4345 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER1 )
4346 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
4347 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4348 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4349 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
4350 
4351 	PORT_START      /* IN1 */
4352 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_PLAYER2 )
4353 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_PLAYER2 )
4354 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_PLAYER2 )
4355 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER2 )
4356 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
4357 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4358 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4359 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
4360 
4361 	/* IN2 */
4362 	TAITO_F2_SYSTEM_INPUT
4363 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
4364 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4365 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4366 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
4367 INPUT_PORTS_END
4368 
4369 INPUT_PORTS_START( yuyugogo )
4370 	PORT_START /* DSW A */
4371 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
4372 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4373 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4374 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
4375 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4376 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4377 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
4378 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
4379 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4380 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
4381 	TAITO_COINAGE_JAPAN_NEW_8
4382 
4383 	PORT_START /* DSW B */
4384 	TAITO_DIFFICULTY_8
4385 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
4386 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
4387 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4388 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
4389 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
4390 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4391 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
4392 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
4393 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4394 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
4395 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
4396 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4397 	PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
4398 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4399 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
4400 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
4401 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
4402 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4403 
4404 	PORT_START      /* IN0 */
4405 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
4406 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
4407 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
4408 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
4409 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )	/* ??*/
4410 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4411 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4412 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
4413 
4414 	PORT_START      /* IN1 */
4415 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
4416 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
4417 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
4418 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
4419 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )	/* ??*/
4420 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4421 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4422 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
4423 
4424 	/* IN2 */
4425 	TAITO_F2_SYSTEM_INPUT
4426 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
4427 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
4428 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
4429 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
4430 INPUT_PORTS_END
4431 
4432 INPUT_PORTS_START( mjnquest )
4433 	PORT_START      /* IN0 */
4434 	PORT_BITX(0x01, IP_ACTIVE_LOW, 0, "P1 A", KEYCODE_A, IP_JOY_NONE )
4435 	PORT_BITX(0x02, IP_ACTIVE_LOW, 0, "P1 E", KEYCODE_E, IP_JOY_NONE )
4436 	PORT_BITX(0x04, IP_ACTIVE_LOW, 0, "P1 I", KEYCODE_I, IP_JOY_NONE )
4437 	PORT_BITX(0x08, IP_ACTIVE_LOW, 0, "P1 M", KEYCODE_M, IP_JOY_NONE )
4438 	PORT_BITX(0x10, IP_ACTIVE_LOW, 0, "P1 Kan", KEYCODE_LCONTROL, IP_JOY_NONE )
4439 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
4440 	PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
4441 
4442 	PORT_START      /* IN1 */
4443 	PORT_BITX(0x01, IP_ACTIVE_LOW, 0, "P1 B", KEYCODE_B, IP_JOY_NONE )
4444 	PORT_BITX(0x02, IP_ACTIVE_LOW, 0, "P1 F", KEYCODE_F, IP_JOY_NONE )
4445 	PORT_BITX(0x04, IP_ACTIVE_LOW, 0, "P1 J", KEYCODE_J, IP_JOY_NONE )
4446 	PORT_BITX(0x08, IP_ACTIVE_LOW, 0, "P1 N", KEYCODE_N, IP_JOY_NONE )
4447 	PORT_BITX(0x10, IP_ACTIVE_LOW, 0, "P1 Reach", KEYCODE_LSHIFT, IP_JOY_NONE )
4448 	PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
4449 
4450 	PORT_START      /* IN2 */
4451 	PORT_BITX(0x01, IP_ACTIVE_LOW, 0, "P1 C", KEYCODE_C, IP_JOY_NONE )
4452 	PORT_BITX(0x02, IP_ACTIVE_LOW, 0, "P1 G", KEYCODE_G, IP_JOY_NONE )
4453 	PORT_BITX(0x04, IP_ACTIVE_LOW, 0, "P1 K", KEYCODE_K, IP_JOY_NONE )
4454 	PORT_BITX(0x08, IP_ACTIVE_LOW, 0, "P1 Chi", KEYCODE_SPACE, IP_JOY_NONE )
4455 	PORT_BITX(0x10, IP_ACTIVE_LOW, 0, "P1 Ron", KEYCODE_Z, IP_JOY_NONE )
4456 	PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
4457 
4458 	PORT_START      /* IN3 */
4459 	PORT_BITX(0x01, IP_ACTIVE_LOW, 0, "P1 D", KEYCODE_D, IP_JOY_NONE )
4460 	PORT_BITX(0x02, IP_ACTIVE_LOW, 0, "P1 H", KEYCODE_H, IP_JOY_NONE )
4461 	PORT_BITX(0x04, IP_ACTIVE_LOW, 0, "P1 L", KEYCODE_L, IP_JOY_NONE )
4462 	PORT_BITX(0x08, IP_ACTIVE_LOW, 0, "P1 Pon", KEYCODE_LALT, IP_JOY_NONE )
4463 	PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
4464 
4465 	PORT_START      /* IN4 */
4466 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
4467 
4468 	PORT_START      /* IN5 */
4469 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT )
4470 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )		/* ?*/
4471 	PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED )
4472 
4473 	PORT_START      /* IN6 */
4474 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 )
4475 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 )
4476 	PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED )
4477 
4478 	PORT_START      /* IN7:DSW A */
4479 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
4480 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4481 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4482 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
4483 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4484 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4485 	PORT_SERVICE( 0x04, IP_ACTIVE_LOW )
4486 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
4487 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4488 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
4489 	TAITO_COINAGE_JAPAN_NEW_8
4490 
4491 	PORT_START      /* IN8:DSW B */
4492 	TAITO_DIFFICULTY_8
4493 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
4494 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
4495 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4496 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
4497 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
4498 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4499 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
4500 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
4501 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4502 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
4503 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
4504 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4505 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
4506 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
4507 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4508 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
4509 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
4510 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4511 INPUT_PORTS_END
4512 
4513 INPUT_PORTS_START( yesnoj )   /* apparently no test mode, though text in rom suggests printer test*/
4514 	PORT_START      /* IN0 */
4515 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
4516 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
4517 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
4518 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
4519 	PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
4520 
4521 	/* IN1 */
4522 	TAITO_F2_SYSTEM_INPUT
4523 	PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
4524 
4525 	PORT_START /* DSW A ??? */
4526 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
4527 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
4528 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4529 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
4530 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
4531 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4532 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
4533 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
4534 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4535 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
4536 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
4537 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4538 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
4539 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
4540 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4541 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
4542 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
4543 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4544 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
4545 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
4546 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4547 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
4548 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
4549 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4550 
4551 	PORT_START /* DSW B ? */
4552 	PORT_DIPNAME( 0x01, 0x00, "Results Printer" )
4553 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4554 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
4555 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) )
4556 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
4557 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
4558 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
4559 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
4560 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4561 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
4562 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
4563 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4564 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coinage ) )   /* same for both slots*/
4565 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) )
4566 	PORT_DIPSETTING(    0x10, DEF_STR( 3C_1C ) )
4567 	PORT_DIPSETTING(    0x20, DEF_STR( 2C_1C ) )
4568 	PORT_DIPSETTING(    0x30, DEF_STR( 1C_1C ) )
4569 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
4570 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
4571 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4572 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
4573 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
4574 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
4575 INPUT_PORTS_END
4576 
4577 
4578 /***********************************************************
4579                         GFX DECODING
4580 ***********************************************************/
4581 
4582 static struct GfxLayout finalb_tilelayout =
4583 {
4584 	16,16,	/* 16*16 sprites */
4585 	RGN_FRAC(1,2),
4586 	6,	/* 6 bits per pixel */
4587 	{ RGN_FRAC(1,2)+0, RGN_FRAC(1,2)+1, 0, 1, 2, 3 },
4588 	{ 3*4, 2*4, 1*4, 0*4, 7*4, 6*4, 5*4, 4*4,
4589 			11*4, 10*4, 9*4, 8*4, 15*4, 14*4, 13*4, 12*4 },
4590 	{ 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64,
4591 			8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
4592 	128*8	/* every sprite takes 128 consecutive bytes */
4593 };
4594 
4595 static struct GfxLayout tilelayout =
4596 {
4597 	16,16,	/* 16*16 sprites */
4598 	RGN_FRAC(1,1),
4599 	4,	/* 4 bits per pixel */
4600 	{ 0, 1, 2, 3 },
4601 	{ 1*4, 0*4, 3*4, 2*4, 5*4, 4*4, 7*4, 6*4, 9*4, 8*4, 11*4, 10*4, 13*4, 12*4, 15*4, 14*4 },
4602 	{ 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64, 8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
4603 	128*8	/* every sprite takes 128 consecutive bytes */
4604 };
4605 
4606 static struct GfxLayout charlayout =
4607 {
4608 	8,8,	/* 8*8 characters */
4609 	RGN_FRAC(1,1),
4610 	4,	/* 4 bits per pixel */
4611 	{ 0, 1, 2, 3 },
4612 	{ 2*4, 3*4, 0*4, 1*4, 6*4, 7*4, 4*4, 5*4 },
4613 	{ 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32 },
4614 	32*8	/* every sprite takes 32 consecutive bytes */
4615 };
4616 
4617 static struct GfxLayout yuyugogo_charlayout =
4618 {
4619 	8,8,	/* 8*8 characters */
4620 	RGN_FRAC(1,1),
4621 	1,	/* 1 bit per pixel */
4622 	{ 0 },
4623 	{ 0, 1, 2, 3, 4, 5, 6, 7 },
4624 	{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
4625 	8*8	/* every sprite takes 8 consecutive bytes */
4626 };
4627 
4628 static struct GfxLayout pivotlayout =
4629 {
4630 	8,8,	/* 8*8 characters */
4631 	RGN_FRAC(1,1),
4632 	4,	/* 4 bits per pixel */
4633 	{ 0, 1, 2, 3 },
4634 	{ 0*4, 1*4, 2*4, 3*4, 4*4, 5*4, 6*4, 7*4 },
4635 	{ 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32 },
4636 	32*8	/* every sprite takes 32 consecutive bytes */
4637 };
4638 
4639 static struct GfxDecodeInfo finalb_gfxdecodeinfo[] =
4640 {
4641 	{ REGION_GFX2, 0, &finalb_tilelayout,  0, 64 },	/* sprites & playfield, 6-bit deep */
4642 	{ REGION_GFX1, 0, &charlayout,  0, 256 },	/* sprites & playfield */
4643 	{ -1 } /* end of array */
4644 };
4645 
4646 static struct GfxDecodeInfo taitof2_gfxdecodeinfo[] =
4647 {
4648 	{ REGION_GFX2, 0, &tilelayout,  0, 256 },	/* sprites & playfield */
4649 	{ REGION_GFX1, 0, &charlayout,  0, 256 },	/* sprites & playfield */
4650 	{ -1 } /* end of array */
4651 };
4652 
4653 static struct GfxDecodeInfo pivot_gfxdecodeinfo[] =
4654 {
4655 	{ REGION_GFX2, 0, &tilelayout,  0, 256 },	/* sprites & playfield */
4656 	{ REGION_GFX1, 0, &charlayout,  0, 256 },	/* sprites & playfield */
4657 	{ REGION_GFX3, 0, &pivotlayout, 0, 256 },	/* sprites & playfield */
4658 	{ -1 } /* end of array */
4659 };
4660 
4661 static struct GfxDecodeInfo yuyugogo_gfxdecodeinfo[] =
4662 {
4663 	{ REGION_GFX2, 0, &tilelayout,  0, 256 },	/* sprites & playfield */
4664 	{ REGION_GFX1, 0, &yuyugogo_charlayout,  0, 256 },	/* sprites & playfield */
4665 	{ -1 } /* end of array */
4666 };
4667 
4668 static struct GfxDecodeInfo thundfox_gfxdecodeinfo[] =
4669 {
4670 	{ REGION_GFX2, 0, &tilelayout,  0, 256 },	/* sprites & playfield */
4671 	{ REGION_GFX1, 0, &charlayout,  0, 256 },	/* TC0100SCN #1 */
4672 	{ REGION_GFX3, 0, &charlayout,  0, 256 },	/* TC0100SCN #2 */
4673 	{ -1 } /* end of array */
4674 };
4675 
4676 static struct GfxLayout deadconx_charlayout =
4677 {
4678 	16,16,    /* 16*16 characters */
4679 	RGN_FRAC(1,1),
4680 	4,        /* 4 bits per pixel */
4681 	{ 0, 1, 2, 3 },
4682 	{ 1*4, 0*4, 5*4, 4*4, 3*4, 2*4, 7*4, 6*4, 9*4, 8*4, 13*4, 12*4, 11*4, 10*4, 15*4, 14*4 },
4683 	{ 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64, 8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
4684 	128*8     /* every sprite takes 128 consecutive bytes */
4685 };
4686 
4687 static struct GfxDecodeInfo deadconx_gfxdecodeinfo[] =
4688 {
4689 	{ REGION_GFX2, 0, &tilelayout,  0, 256 },	/* sprites & playfield */
4690 	{ REGION_GFX1, 0, &deadconx_charlayout,  0, 256 },	/* sprites & playfield */
4691 	{ -1 } /* end of array */
4692 };
4693 
4694 
4695 /* handler called by the YM2610 emulator when the internal timers cause an IRQ */
irq_handler(int irq)4696 static void irq_handler(int irq)
4697 {
4698 	cpu_set_irq_line(1,0,irq ? ASSERT_LINE : CLEAR_LINE);
4699 }
4700 
4701 static struct YM2610interface ym2610_interface =
4702 {
4703 	1,	/* 1 chip */
4704 	16000000/2,	/* 8 MHz */
4705 	{ 25 },
4706 	{ 0 },
4707 	{ 0 },
4708 	{ 0 },
4709 	{ 0 },
4710 	{ irq_handler },
4711 	{ REGION_SOUND2 },	/* Delta-T */
4712 	{ REGION_SOUND1 },	/* ADPCM */
4713 	{ YM3012_VOL(100,MIXER_PAN_LEFT,100,MIXER_PAN_RIGHT) }
4714 };
4715 
4716 
WRITE_HANDLER(camltrua_porta_w)4717 static WRITE_HANDLER( camltrua_porta_w )
4718 {
4719 	/* Implement */ /**/
4720 }
4721 
4722 static struct YM2203interface ym2203_interface =
4723 {
4724 	1,		/* 1 chip ??? */
4725 	3000000,	/* 3 MHz ??? (tempo much too fast @4) */
4726 	{ YM2203_VOL(60,20) },
4727 	{ 0 },	/* portA read */
4728 	{ 0 },
4729 	{ camltrua_porta_w },	/* portA write - not implemented */
4730 	{ 0 },	/* portB write */
4731 	{ irq_handler }
4732 };
4733 
4734 
4735 static struct OKIM6295interface okim6295_interface =
4736 {
4737 	1,
4738 	{ 8000 },			/* Hz ?? */
4739 	{ REGION_SOUND1 },	/* memory region */
4740 	{ 100 }			/* volume ?? */
4741 };
4742 
4743 
4744 /***********************************************************
4745                       MACHINE DRIVERS
4746 ***********************************************************/
4747 
MACHINE_INIT(qcrayon)4748 MACHINE_INIT( qcrayon )
4749 {
4750 	/* point to the extra ROM */
4751 	cpu_setbank(1,memory_region(REGION_USER1));
4752 }
4753 
4754 
4755 static MACHINE_DRIVER_START( taito_f2 )
4756 
4757 	/* basic machine hardware */
4758 	MDRV_CPU_ADD_TAG("main", M68000, 24000000/2)	/* 12 MHz */
4759 	MDRV_CPU_VBLANK_INT(taitof2_interrupt,1)
4760 
4761 	MDRV_CPU_ADD(Z80, 16000000/4)	/* 4 MHz */
MDRV_CPU_FLAGS(CPU_AUDIO_CPU)4762 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)
4763 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
4764 
4765 	MDRV_FRAMES_PER_SECOND(60)
4766 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)	/* frames per second, vblank duration */
4767 
4768 	/* video hardware */
4769 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
4770 	MDRV_SCREEN_SIZE(40*8, 32*8)
4771 	MDRV_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
4772 	MDRV_GFXDECODE(taitof2_gfxdecodeinfo)
4773 	MDRV_PALETTE_LENGTH(4096)
4774 
4775 	MDRV_VIDEO_START(taitof2_default)
4776 	MDRV_VIDEO_EOF(taitof2_no_buffer)
4777 	MDRV_VIDEO_UPDATE(taitof2)
4778 
4779 	/* sound hardware */
4780 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
4781 	MDRV_SOUND_ADD(YM2610, ym2610_interface)
4782 MACHINE_DRIVER_END
4783 
4784 
4785 static MACHINE_DRIVER_START( finalb )
4786 
4787 	/* basic machine hardware */
4788 	MDRV_IMPORT_FROM(taito_f2)
4789 	MDRV_CPU_MODIFY("main")
4790 	MDRV_CPU_MEMORY(finalb_readmem,finalb_writemem)
4791 
4792 	/* video hardware */
4793 	MDRV_GFXDECODE(finalb_gfxdecodeinfo)
4794 	MDRV_VIDEO_START(taitof2_finalb)
4795 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed)
4796 MACHINE_DRIVER_END
4797 
4798 
4799 static MACHINE_DRIVER_START( dondokod )
4800 
4801 	/* basic machine hardware */
4802 	MDRV_IMPORT_FROM(taito_f2)
4803 	MDRV_CPU_MODIFY("main")
4804 	MDRV_CPU_MEMORY(dondokod_readmem,dondokod_writemem)
4805 
4806 	/* video hardware */
4807 	MDRV_GFXDECODE(pivot_gfxdecodeinfo)
4808 	MDRV_VIDEO_START(taitof2_dondokod)
4809 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed)
4810 	MDRV_VIDEO_UPDATE(taitof2_pri_roz)
4811 MACHINE_DRIVER_END
4812 
4813 
4814 static MACHINE_DRIVER_START( megab )
4815 
4816 	/* basic machine hardware */
4817 	MDRV_IMPORT_FROM(taito_f2)
4818 	MDRV_CPU_MODIFY("main")
4819 	MDRV_CPU_MEMORY(megab_readmem,megab_writemem)
4820 
4821 	/* video hardware */
4822 	MDRV_VIDEO_START(taitof2_megab)
4823 	MDRV_VIDEO_UPDATE(taitof2_pri)
4824 MACHINE_DRIVER_END
4825 
4826 
4827 static MACHINE_DRIVER_START( thundfox )
4828 
4829 	/* basic machine hardware */
4830 	MDRV_IMPORT_FROM(taito_f2)
4831 	MDRV_CPU_MODIFY("main")
4832 	MDRV_CPU_MEMORY(thundfox_readmem,thundfox_writemem)
4833 
4834 	/* video hardware */
4835 	MDRV_GFXDECODE(thundfox_gfxdecodeinfo)
4836 	MDRV_VIDEO_START(taitof2_thundfox)
4837 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed_thundfox)
4838 	MDRV_VIDEO_UPDATE(thundfox)
4839 MACHINE_DRIVER_END
4840 
4841 
4842 static MACHINE_DRIVER_START( cameltry )
4843 
4844 	/* basic machine hardware */
4845 	MDRV_IMPORT_FROM(taito_f2)
4846 	MDRV_CPU_MODIFY("main")
4847 	MDRV_CPU_MEMORY(cameltry_readmem,cameltry_writemem)
4848 
4849 	/* video hardware */
4850 	MDRV_GFXDECODE(pivot_gfxdecodeinfo)
4851 	MDRV_VIDEO_START(taitof2_dondokod)
4852 	MDRV_VIDEO_UPDATE(taitof2_pri_roz)
4853 MACHINE_DRIVER_END
4854 
4855 
4856 static MACHINE_DRIVER_START( qtorimon )
4857 
4858 	/* basic machine hardware */
4859 	MDRV_IMPORT_FROM(taito_f2)
4860 	MDRV_CPU_MODIFY("main")
4861 	MDRV_CPU_MEMORY(qtorimon_readmem,qtorimon_writemem)
4862 
4863 	/* video hardware */
4864 	MDRV_GFXDECODE(yuyugogo_gfxdecodeinfo)
4865 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed)
4866 MACHINE_DRIVER_END
4867 
4868 
4869 static MACHINE_DRIVER_START( liquidk )
4870 
4871 	/* basic machine hardware */
4872 	MDRV_IMPORT_FROM(taito_f2)
4873 	MDRV_CPU_MODIFY("main")
4874 	MDRV_CPU_MEMORY(liquidk_readmem,liquidk_writemem)
4875 
4876 	/* video hardware */
4877 	MDRV_VIDEO_START(taitof2_megab)
4878 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed)
4879 	MDRV_VIDEO_UPDATE(taitof2_pri)
4880 MACHINE_DRIVER_END
4881 
4882 
4883 static MACHINE_DRIVER_START( quizhq )
4884 
4885 	/* basic machine hardware */
4886 	MDRV_IMPORT_FROM(taito_f2)
4887 	MDRV_CPU_MODIFY("main")
4888 	MDRV_CPU_MEMORY(quizhq_readmem,quizhq_writemem)
4889 
4890 	/* video hardware */
4891 	MDRV_GFXDECODE(yuyugogo_gfxdecodeinfo)
4892 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed)
4893 MACHINE_DRIVER_END
4894 
4895 
4896 static MACHINE_DRIVER_START( ssi )
4897 
4898 	/* basic machine hardware */
4899 	MDRV_IMPORT_FROM(taito_f2)
4900 	MDRV_CPU_MODIFY("main")
4901 	MDRV_CPU_MEMORY(ssi_readmem,ssi_writemem)
4902 
4903 	/* video hardware */
4904 	MDRV_VIDEO_START(taitof2_ssi)
4905 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed_thundfox)	/* buffer_delayed_thundfox instead of buffer_delayed fixes the butterfly powerup */
4906 	MDRV_VIDEO_UPDATE(ssi)
4907 MACHINE_DRIVER_END
4908 
4909 
4910 static MACHINE_DRIVER_START( gunfront )
4911 
4912 	/* basic machine hardware */
4913 	MDRV_IMPORT_FROM(taito_f2)
4914 	MDRV_CPU_MODIFY("main")
4915 	MDRV_CPU_MEMORY(gunfront_readmem,gunfront_writemem)
4916 
4917 	/* video hardware */
4918 	MDRV_VIDEO_START(taitof2_gunfront)
4919 	MDRV_VIDEO_UPDATE(taitof2_pri)
4920 MACHINE_DRIVER_END
4921 
4922 
4923 static MACHINE_DRIVER_START( growl )
4924 
4925 	/* basic machine hardware */
4926 	MDRV_IMPORT_FROM(taito_f2)
4927 	MDRV_CPU_MODIFY("main")
4928 	MDRV_CPU_MEMORY(growl_readmem,growl_writemem)
4929 
4930 	/* video hardware */
4931 	MDRV_VIDEO_START(taitof2_growl)
4932 	MDRV_VIDEO_UPDATE(taitof2_pri)
4933 MACHINE_DRIVER_END
4934 
4935 
4936 static MACHINE_DRIVER_START( mjnquest )
4937 
4938 	/* basic machine hardware */
4939 	MDRV_IMPORT_FROM(taito_f2)
4940 	MDRV_CPU_MODIFY("main")
4941 	MDRV_CPU_MEMORY(mjnquest_readmem,mjnquest_writemem)
4942 
4943 	/* video hardware */
4944 	MDRV_VIDEO_START(taitof2_mjnquest)
4945 MACHINE_DRIVER_END
4946 
4947 
4948 static MACHINE_DRIVER_START( footchmp )
4949 
4950 	/* basic machine hardware */
4951 	MDRV_IMPORT_FROM(taito_f2)
4952 	MDRV_CPU_MODIFY("main")
4953 	MDRV_CPU_MEMORY(footchmp_readmem,footchmp_writemem)
4954 
4955 	/* video hardware */
4956 	MDRV_GFXDECODE(deadconx_gfxdecodeinfo)
4957 	MDRV_VIDEO_START(taitof2_footchmp)
4958 	MDRV_VIDEO_EOF(taitof2_full_buffer_delayed)
4959 	MDRV_VIDEO_UPDATE(deadconx)
4960 MACHINE_DRIVER_END
4961 
4962 
4963 static MACHINE_DRIVER_START( hthero )
4964 
4965 	/* basic machine hardware */
4966 	MDRV_IMPORT_FROM(taito_f2)
4967 	MDRV_CPU_MODIFY("main")
4968 	MDRV_CPU_MEMORY(footchmp_readmem,footchmp_writemem)
4969 
4970 	/* video hardware */
4971 	MDRV_GFXDECODE(deadconx_gfxdecodeinfo)
4972 	MDRV_VIDEO_START(taitof2_hthero)
4973 	MDRV_VIDEO_EOF(taitof2_full_buffer_delayed)
4974 	MDRV_VIDEO_UPDATE(deadconx)
4975 MACHINE_DRIVER_END
4976 
4977 
4978 static MACHINE_DRIVER_START( koshien )
4979 
4980 	/* basic machine hardware */
4981 	MDRV_IMPORT_FROM(taito_f2)
4982 	MDRV_CPU_MODIFY("main")
4983 	MDRV_CPU_MEMORY(koshien_readmem,koshien_writemem)
4984 
4985 	/* video hardware */
4986 	MDRV_VIDEO_START(taitof2_koshien)
4987 	MDRV_VIDEO_UPDATE(taitof2_pri)
4988 MACHINE_DRIVER_END
4989 
4990 
4991 static MACHINE_DRIVER_START( yuyugogo )
4992 
4993 	/* basic machine hardware */
4994 	MDRV_IMPORT_FROM(taito_f2)
4995 	MDRV_CPU_MODIFY("main")
4996 	MDRV_CPU_MEMORY(yuyugogo_readmem,yuyugogo_writemem)
4997 
4998 	MDRV_MACHINE_INIT(qcrayon)
4999 
5000 	/* video hardware */
5001 	MDRV_GFXDECODE(yuyugogo_gfxdecodeinfo)
5002 	MDRV_VIDEO_START(taitof2_yuyugogo)
5003 	MDRV_VIDEO_UPDATE(yesnoj)
5004 MACHINE_DRIVER_END
5005 
5006 
5007 static MACHINE_DRIVER_START( ninjak )
5008 
5009 	/* basic machine hardware */
5010 	MDRV_IMPORT_FROM(taito_f2)
5011 	MDRV_CPU_MODIFY("main")
5012 	MDRV_CPU_MEMORY(ninjak_readmem,ninjak_writemem)
5013 
5014 	/* video hardware */
5015 	MDRV_VIDEO_START(taitof2_ninjak)
5016 	MDRV_VIDEO_UPDATE(taitof2_pri)
5017 MACHINE_DRIVER_END
5018 
5019 
5020 static MACHINE_DRIVER_START( solfigtr )
5021 
5022 	/* basic machine hardware */
5023 	MDRV_IMPORT_FROM(taito_f2)
5024 	MDRV_CPU_MODIFY("main")
5025 	MDRV_CPU_MEMORY(solfigtr_readmem,solfigtr_writemem)
5026 
5027 	/* video hardware */
5028 	MDRV_VIDEO_START(taitof2_solfigtr)
5029 	MDRV_VIDEO_UPDATE(taitof2_pri)
5030 MACHINE_DRIVER_END
5031 
5032 
5033 static MACHINE_DRIVER_START( qzquest )
5034 
5035 	/* basic machine hardware */
5036 	MDRV_IMPORT_FROM(taito_f2)
5037 	MDRV_CPU_MODIFY("main")
5038 	MDRV_CPU_MEMORY(qzquest_readmem,qzquest_writemem)
5039 
5040 	/* video hardware */
5041 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed)
5042 MACHINE_DRIVER_END
5043 
5044 
5045 static MACHINE_DRIVER_START( pulirula )
5046 
5047 	/* basic machine hardware */
5048 	MDRV_IMPORT_FROM(taito_f2)
5049 	MDRV_CPU_MODIFY("main")
5050 	MDRV_CPU_MEMORY(pulirula_readmem,pulirula_writemem)
5051 
5052 	/* video hardware */
5053 	MDRV_GFXDECODE(pivot_gfxdecodeinfo)
5054 	MDRV_VIDEO_START(taitof2_pulirula)
5055 	MDRV_VIDEO_UPDATE(taitof2_pri_roz)
5056 MACHINE_DRIVER_END
5057 
5058 
5059 static MACHINE_DRIVER_START( metalb )
5060 
5061 	/* basic machine hardware */
5062 	MDRV_IMPORT_FROM(taito_f2)
5063 	MDRV_CPU_MODIFY("main")
5064 	MDRV_CPU_MEMORY(metalb_readmem,metalb_writemem)
5065 
5066 	/* video hardware */
5067 	MDRV_GFXDECODE(deadconx_gfxdecodeinfo)
5068 	MDRV_PALETTE_LENGTH(8192)
5069 	MDRV_VIDEO_START(taitof2_metalb)
5070 	MDRV_VIDEO_UPDATE(metalb)
5071 MACHINE_DRIVER_END
5072 
5073 
5074 static MACHINE_DRIVER_START( qzchikyu )
5075 
5076 	/* basic machine hardware */
5077 	MDRV_IMPORT_FROM(taito_f2)
5078 	MDRV_CPU_MODIFY("main")
5079 	MDRV_CPU_MEMORY(qzchikyu_readmem,qzchikyu_writemem)
5080 
5081 	/* video hardware */
5082 	MDRV_VIDEO_START(taitof2_qzchikyu)
5083 	MDRV_VIDEO_EOF(taitof2_partial_buffer_delayed_qzchikyu)
5084 MACHINE_DRIVER_END
5085 
5086 
5087 static MACHINE_DRIVER_START( yesnoj )
5088 
5089 	/* basic machine hardware */
5090 	MDRV_IMPORT_FROM(taito_f2)
5091 	MDRV_CPU_MODIFY("main")
5092 	MDRV_CPU_MEMORY(yesnoj_readmem,yesnoj_writemem)
5093 
5094 	/* video hardware */
5095 	MDRV_GFXDECODE(yuyugogo_gfxdecodeinfo)
5096 	MDRV_VIDEO_START(taitof2_yesnoj)
5097 	MDRV_VIDEO_UPDATE(yesnoj)
5098 MACHINE_DRIVER_END
5099 
5100 
5101 static MACHINE_DRIVER_START( deadconx )
5102 
5103 	/* basic machine hardware */
5104 	MDRV_IMPORT_FROM(taito_f2)
5105 	MDRV_CPU_MODIFY("main")
5106 	MDRV_CPU_MEMORY(deadconx_readmem,deadconx_writemem)
5107 
5108 	/* video hardware */
5109 	MDRV_GFXDECODE(deadconx_gfxdecodeinfo)
5110 	MDRV_VIDEO_START(taitof2_deadconx)
5111 	MDRV_VIDEO_UPDATE(deadconx)
5112 MACHINE_DRIVER_END
5113 
5114 
5115 static MACHINE_DRIVER_START( deadconj )
5116 
5117 	/* basic machine hardware */
5118 	MDRV_IMPORT_FROM(taito_f2)
5119 	MDRV_CPU_MODIFY("main")
5120 	MDRV_CPU_MEMORY(deadconx_readmem,deadconx_writemem)
5121 
5122 	/* video hardware */
5123 	MDRV_GFXDECODE(deadconx_gfxdecodeinfo)
5124 	MDRV_VIDEO_START(taitof2_deadconj)
5125 	MDRV_VIDEO_UPDATE(deadconx)
5126 MACHINE_DRIVER_END
5127 
5128 
5129 static MACHINE_DRIVER_START( dinorex )
5130 
5131 	/* basic machine hardware */
5132 	MDRV_IMPORT_FROM(taito_f2)
5133 	MDRV_CPU_MODIFY("main")
5134 	MDRV_CPU_MEMORY(dinorex_readmem,dinorex_writemem)
5135 
5136 	/* video hardware */
5137 	MDRV_VIDEO_START(taitof2_dinorex)
5138 	MDRV_VIDEO_UPDATE(taitof2_pri)
5139 MACHINE_DRIVER_END
5140 
5141 
5142 static MACHINE_DRIVER_START( qjinsei )
5143 
5144 	/* basic machine hardware */
5145 	MDRV_IMPORT_FROM(taito_f2)
5146 	MDRV_CPU_MODIFY("main")
5147 	MDRV_CPU_MEMORY(qjinsei_readmem,qjinsei_writemem)
5148 
5149 	/* video hardware */
5150 	MDRV_VIDEO_START(taitof2_quiz)
5151 	MDRV_VIDEO_UPDATE(taitof2_pri)
5152 MACHINE_DRIVER_END
5153 
5154 
5155 static MACHINE_DRIVER_START( qcrayon )
5156 
5157 	/* basic machine hardware */
5158 	MDRV_IMPORT_FROM(taito_f2)
5159 	MDRV_CPU_MODIFY("main")
5160 	MDRV_CPU_MEMORY(qcrayon_readmem,qcrayon_writemem)
5161 
5162 	MDRV_MACHINE_INIT(qcrayon)
5163 
5164 	/* video hardware */
5165 	MDRV_VIDEO_START(taitof2_quiz)
5166 	MDRV_VIDEO_UPDATE(taitof2_pri)
5167 MACHINE_DRIVER_END
5168 
5169 
5170 static MACHINE_DRIVER_START( qcrayon2 )
5171 
5172 	/* basic machine hardware */
5173 	MDRV_IMPORT_FROM(taito_f2)
5174 	MDRV_CPU_MODIFY("main")
5175 	MDRV_CPU_MEMORY(qcrayon2_readmem,qcrayon2_writemem)
5176 
5177 	MDRV_MACHINE_INIT(qcrayon)
5178 
5179 	/* video hardware */
5180 	MDRV_VIDEO_START(taitof2_quiz)
5181 	MDRV_VIDEO_UPDATE(taitof2_pri)
5182 MACHINE_DRIVER_END
5183 
5184 
5185 static MACHINE_DRIVER_START( driftout )
5186 
5187 	/* basic machine hardware */
5188 	MDRV_IMPORT_FROM(taito_f2)
5189 	MDRV_CPU_MODIFY("main")
5190 	MDRV_CPU_MEMORY(driftout_readmem,driftout_writemem)
5191 
5192 	/* video hardware */
5193 	MDRV_GFXDECODE(pivot_gfxdecodeinfo)
5194 	MDRV_VIDEO_START(taitof2_driftout)
5195 	MDRV_VIDEO_UPDATE(taitof2_pri_roz)
5196 MACHINE_DRIVER_END
5197 
5198 
5199 static MACHINE_DRIVER_START( camltrua )
5200 
5201 	/* basic machine hardware */
5202 	MDRV_CPU_ADD(M68000,24000000/2)	/* 12 MHz */
5203 	MDRV_CPU_MEMORY(cameltry_readmem,cameltry_writemem)
5204 	MDRV_CPU_VBLANK_INT(taitof2_interrupt,1)
5205 
5206 	MDRV_CPU_ADD(Z80,16000000/4)
5207 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 4 MHz ??? */
5208 	MDRV_CPU_MEMORY(camltrua_sound_readmem,camltrua_sound_writemem)
5209 
5210 	MDRV_FRAMES_PER_SECOND(60)
5211 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
5212 
5213 	/* video hardware */
5214 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
5215 	MDRV_SCREEN_SIZE(40*8, 32*8)
5216 	MDRV_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
5217 	MDRV_GFXDECODE(pivot_gfxdecodeinfo)
5218 	MDRV_PALETTE_LENGTH(4096)
5219 
5220 	MDRV_VIDEO_START(taitof2_dondokod)
5221 	MDRV_VIDEO_EOF(taitof2_no_buffer)
5222 	MDRV_VIDEO_UPDATE(taitof2_pri_roz)
5223 
5224 	/* sound hardware */
5225 	MDRV_SOUND_ADD(YM2203, ym2203_interface)
5226 MACHINE_DRIVER_END
5227 
5228 
5229 static MACHINE_DRIVER_START( driveout )
5230 
5231 	/* basic machine hardware */
5232 	MDRV_CPU_ADD(M68000,24000000/2)	/* 12 MHz */
5233 	MDRV_CPU_MEMORY(driveout_readmem,driveout_writemem)
5234 	MDRV_CPU_VBLANK_INT(taitof2_interrupt,1)
5235 
5236 	MDRV_CPU_ADD(Z80,16000000/4)
5237 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 4 MHz */
5238 	MDRV_CPU_MEMORY(driveout_sound_readmem,driveout_sound_writemem)
5239 
5240 	MDRV_FRAMES_PER_SECOND(60)
5241 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
5242 
5243 	/* video hardware */
5244 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
5245 	MDRV_SCREEN_SIZE(40*8, 32*8)
5246 	MDRV_VISIBLE_AREA(0*8, 40*8-1, 2*8, 30*8-1)
5247 	MDRV_GFXDECODE(pivot_gfxdecodeinfo)
5248 	MDRV_PALETTE_LENGTH(4096)
5249 
5250 	MDRV_VIDEO_START(taitof2_driftout)
5251 	MDRV_VIDEO_EOF(taitof2_no_buffer)
5252 	MDRV_VIDEO_UPDATE(taitof2_pri_roz)
5253 
5254 	/* sound hardware */
5255 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)   /* does it ? */
5256 	MDRV_SOUND_ADD(OKIM6295, okim6295_interface)
5257 MACHINE_DRIVER_END
5258 
5259 
5260 /***************************************************************************
5261                                   DRIVERS
5262 ***************************************************************************/
5263 
5264 ROM_START( finalb )
5265 	ROM_REGION( 0x40000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5266 	ROM_LOAD16_BYTE( "b82_09.10",  0x00000, 0x20000, CRC(632f1ecd) SHA1(aa3d1c2059b0dd619d1f6e3e0705b65b4f4be74e) )
5267 	ROM_LOAD16_BYTE( "b82_17.11",  0x00001, 0x20000, CRC(e91b2ec9) SHA1(c854104b8d48d20ab9278ecd122c987c3d886a26) )
5268 
5269 	ROM_REGION( 0x040000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5270 	ROM_LOAD16_BYTE( "b82-06.19",  0x00000, 0x20000, CRC(fc450a25) SHA1(6929bd2d47549cab037e8807b778741b3c215788) )
5271 	ROM_LOAD16_BYTE( "b82-07.18",  0x00001, 0x20000, CRC(ec3df577) SHA1(37a0bb87a12f0332c8e67b22f91c24584f3d46ce) )
5272 
5273 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5274 	ROM_LOAD16_BYTE( "b82-04.4",   0x000000, 0x80000, CRC(6346f98e) SHA1(3fac5ea56b5ae280cd7ca0e0c6c308376056e1ba) ) /* sprites 4-bit format*/
5275 	ROM_LOAD16_BYTE( "b82-03.5",   0x000001, 0x80000, CRC(daa11561) SHA1(81dd596c1b36138904971c36466ec29d08d4fd84) ) /* sprites 4-bit format*/
5276 
5277 	/* Note: this is intentional to load at 0x180000, not at 0x100000
5278 	   because finalb_driver_init will move some bits around before data
5279 	   will be 'gfxdecoded'. The whole thing is because this data is 2bits-
5280 	   while above is 4bits-packed format, for a total of 6 bits per pixel. */
5281 
5282 	ROM_LOAD( "b82-05.3",    0x180000, 0x80000, CRC(aa90b93a) SHA1(06f41052659959c58d72c9f68f9f6069cb835672) ) /* sprites 2-bit format */
5283 
5284 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5285 	ROM_LOAD( "b82_10.16",   0x00000, 0x04000, CRC(a38aaaed) SHA1(d476ea516a797e71e0306da54c17ed1759fe1ccd) )
5286 	ROM_CONTINUE(            0x10000, 0x0c000 ) /* banked stuff */
5287 
5288 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5289 	ROM_LOAD( "b82-02.1",    0x00000, 0x80000, CRC(5dd06bdd) SHA1(6eeaec6743805ba429b0ef58a530bc0740646324) )
5290 
5291 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
5292 	ROM_LOAD( "b82-01.2",    0x00000, 0x80000, CRC(f0eb6846) SHA1(4697c3fd61ac0d55c0d2a4354ff74719947397c5) )
5293 ROM_END
5294 
5295 ROM_START( finalbj )
5296 	ROM_REGION( 0x40000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5297 	ROM_LOAD16_BYTE( "b82_09.10",  0x00000, 0x20000, CRC(632f1ecd) SHA1(aa3d1c2059b0dd619d1f6e3e0705b65b4f4be74e) )
5298 	ROM_LOAD16_BYTE( "b82_08.11",  0x00001, 0x20000, CRC(07154fe5) SHA1(4772362375c8c2984a305c3bb0320ea80a2e9a40) )
5299 
5300 	ROM_REGION( 0x040000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5301 	ROM_LOAD16_BYTE( "b82-06.19",  0x00000, 0x20000, CRC(fc450a25) SHA1(6929bd2d47549cab037e8807b778741b3c215788) )
5302 	ROM_LOAD16_BYTE( "b82-07.18",  0x00001, 0x20000, CRC(ec3df577) SHA1(37a0bb87a12f0332c8e67b22f91c24584f3d46ce) )
5303 
5304 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5305 	ROM_LOAD16_BYTE( "b82-04.4",   0x000000, 0x80000, CRC(6346f98e) SHA1(3fac5ea56b5ae280cd7ca0e0c6c308376056e1ba) ) /* sprites 4-bit format*/
5306 	ROM_LOAD16_BYTE( "b82-03.5",   0x000001, 0x80000, CRC(daa11561) SHA1(81dd596c1b36138904971c36466ec29d08d4fd84) ) /* sprites 4-bit format*/
5307 
5308 	/* Note: this is intentional to load at 0x180000, not at 0x100000
5309 	   because finalb_driver_init will move some bits around before data
5310 	   will be 'gfxdecoded'. The whole thing is because this data is 2bits-
5311 	   while above is 4bits-packed format, for a total of 6 bits per pixel. */
5312 
5313 	ROM_LOAD( "b82-05.3",    0x180000, 0x80000, CRC(aa90b93a) SHA1(06f41052659959c58d72c9f68f9f6069cb835672) ) /* sprites 2-bit format */
5314 
5315 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5316 	ROM_LOAD( "b82_10.16",   0x00000, 0x04000, CRC(a38aaaed) SHA1(d476ea516a797e71e0306da54c17ed1759fe1ccd) )
5317 	ROM_CONTINUE(            0x10000, 0x0c000 ) /* banked stuff */
5318 
5319 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5320 	ROM_LOAD( "b82-02.1",    0x00000, 0x80000, CRC(5dd06bdd) SHA1(6eeaec6743805ba429b0ef58a530bc0740646324) )
5321 
5322 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
5323 	ROM_LOAD( "b82-01.2",    0x00000, 0x80000, CRC(f0eb6846) SHA1(4697c3fd61ac0d55c0d2a4354ff74719947397c5) )
5324 ROM_END
5325 
5326 ROM_START( dondokod )
5327 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5328 	ROM_LOAD16_BYTE( "b95-12.bin",   0x00000, 0x20000, CRC(d0fce87a) SHA1(7b346d3b7cbaf0b5447d66a71e815202d796f140) )
5329 	ROM_LOAD16_BYTE( "b95-11-1.bin", 0x00001, 0x20000, CRC(dad40cd3) SHA1(6c07ed3dd609a8743f5851caa4d205bce8db595e) )
5330 	ROM_LOAD16_BYTE( "b95-10.bin",   0x40000, 0x20000, CRC(a46e1f0b) SHA1(4adfa7a788d31860e557c4059f77440fe12ac110) )
5331 	ROM_LOAD16_BYTE( "b95-wrld.7",   0x40001, 0x20000, CRC(6e4e1351) SHA1(207db5f08904d36c1d27cf326eb9260771a836c2) )	/* needs correct name*/
5332 
5333 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5334 	ROM_LOAD( "b95-02.bin", 0x00000, 0x80000, CRC(67b4e979) SHA1(e709cc24e001bccde1178f7e645fc7aec442540c) )
5335 
5336 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5337 	ROM_LOAD( "b95-01.bin", 0x00000, 0x80000, CRC(51c176ce) SHA1(2866e8bd57b301a0d4690f194be95784c53f9fcb) )
5338 
5339 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* pivot gfx */
5340 	ROM_LOAD( "b95-03.bin", 0x00000, 0x80000, CRC(543aa0d1) SHA1(38282ae36a94cc3a354d343cf7d5262e0e309d1f) )
5341 
5342 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5343 	ROM_LOAD( "b95-08.bin",  0x00000, 0x04000, CRC(b5aa49e1) SHA1(83b0a3434e0d0b9aa581c1acdd0c70308362b923) )
5344 	ROM_CONTINUE(            0x10000, 0x0c000 ) /* banked stuff */
5345 
5346 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5347 	ROM_LOAD( "b95-04.bin",  0x00000, 0x80000, CRC(ac4c1716) SHA1(06a9def7fa3bd739438f4a1d7b55f70eb904bf54) )
5348 
5349 	/* no Delta-T samples */
5350 ROM_END
5351 
5352 ROM_START( dondokdu )
5353 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5354 	ROM_LOAD16_BYTE( "b95-12.bin",   0x00000, 0x20000, CRC(d0fce87a) SHA1(7b346d3b7cbaf0b5447d66a71e815202d796f140) )
5355 	ROM_LOAD16_BYTE( "b95-11-1.bin", 0x00001, 0x20000, CRC(dad40cd3) SHA1(6c07ed3dd609a8743f5851caa4d205bce8db595e) )
5356 	ROM_LOAD16_BYTE( "b95-10.bin",   0x40000, 0x20000, CRC(a46e1f0b) SHA1(4adfa7a788d31860e557c4059f77440fe12ac110) )
5357 	ROM_LOAD16_BYTE( "b95-us.7",     0x40001, 0x20000, CRC(350d2c65) SHA1(60e8651256867648a24719e1bbd1367e89784e30) )	/* needs correct name*/
5358 
5359 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5360 	ROM_LOAD( "b95-02.bin", 0x00000, 0x80000, CRC(67b4e979) SHA1(e709cc24e001bccde1178f7e645fc7aec442540c) )
5361 
5362 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5363 	ROM_LOAD( "b95-01.bin", 0x00000, 0x80000, CRC(51c176ce) SHA1(2866e8bd57b301a0d4690f194be95784c53f9fcb) )
5364 
5365 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* pivot gfx */
5366 	ROM_LOAD( "b95-03.bin", 0x00000, 0x80000, CRC(543aa0d1) SHA1(38282ae36a94cc3a354d343cf7d5262e0e309d1f) )
5367 
5368 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5369 	ROM_LOAD( "b95-08.bin",  0x00000, 0x04000, CRC(b5aa49e1) SHA1(83b0a3434e0d0b9aa581c1acdd0c70308362b923) )
5370 	ROM_CONTINUE(            0x10000, 0x0c000 ) /* banked stuff */
5371 
5372 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5373 	ROM_LOAD( "b95-04.bin",  0x00000, 0x80000, CRC(ac4c1716) SHA1(06a9def7fa3bd739438f4a1d7b55f70eb904bf54) )
5374 
5375 	/* no Delta-T samples */
5376 ROM_END
5377 
5378 ROM_START( dondokdj )
5379 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5380 	ROM_LOAD16_BYTE( "b95-12.bin",   0x00000, 0x20000, CRC(d0fce87a) SHA1(7b346d3b7cbaf0b5447d66a71e815202d796f140) )
5381 	ROM_LOAD16_BYTE( "b95-11-1.bin", 0x00001, 0x20000, CRC(dad40cd3) SHA1(6c07ed3dd609a8743f5851caa4d205bce8db595e) )
5382 	ROM_LOAD16_BYTE( "b95-10.bin",   0x40000, 0x20000, CRC(a46e1f0b) SHA1(4adfa7a788d31860e557c4059f77440fe12ac110) )
5383 	ROM_LOAD16_BYTE( "b95-09.bin",   0x40001, 0x20000, CRC(d8c86d39) SHA1(43a6a9d545c953e72b6a10bc9d7b2aa2f0ab4764) )
5384 
5385 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5386 	ROM_LOAD( "b95-02.bin", 0x00000, 0x80000, CRC(67b4e979) SHA1(e709cc24e001bccde1178f7e645fc7aec442540c) )
5387 
5388 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5389 	ROM_LOAD( "b95-01.bin", 0x00000, 0x80000, CRC(51c176ce) SHA1(2866e8bd57b301a0d4690f194be95784c53f9fcb) )
5390 
5391 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* pivot gfx */
5392 	ROM_LOAD( "b95-03.bin", 0x00000, 0x80000, CRC(543aa0d1) SHA1(38282ae36a94cc3a354d343cf7d5262e0e309d1f) )
5393 
5394 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5395 	ROM_LOAD( "b95-08.bin",  0x00000, 0x04000, CRC(b5aa49e1) SHA1(83b0a3434e0d0b9aa581c1acdd0c70308362b923) )
5396 	ROM_CONTINUE(            0x10000, 0x0c000 ) /* banked stuff */
5397 
5398 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5399 	ROM_LOAD( "b95-04.bin",  0x00000, 0x80000, CRC(ac4c1716) SHA1(06a9def7fa3bd739438f4a1d7b55f70eb904bf54) )
5400 
5401 	/* no Delta-T samples */
5402 ROM_END
5403 
5404 ROM_START( megab )
5405 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5406 	ROM_LOAD16_BYTE( "c11-07.55",  0x00000, 0x20000, CRC(11d228b6) SHA1(5f658a4a0ece3ad4e02ccad6e2852e16dd338dfd) )
5407 	ROM_LOAD16_BYTE( "c11-08.39",  0x00001, 0x20000, CRC(a79d4dca) SHA1(72a97577981a303230374c5f5e201066f71d9cc5) )
5408 	ROM_LOAD16_BYTE( "c11-06.54",  0x40000, 0x20000, CRC(7c249894) SHA1(88dff86b446bcbc4e8ab14cfc3c57b40d25cfa97) )
5409 	ROM_LOAD16_BYTE( "c11-11.38",  0x40001, 0x20000, CRC(263ecbf9) SHA1(b49c59058d6d11ea0d9f9b041789e381e5742905) )
5410 
5411 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5412 	ROM_LOAD( "c11-05.58", 0x00000, 0x80000, CRC(733e6d8e) SHA1(47f3360f7c41b7e4a42e8198fc1bcce4e819181f) )
5413 
5414 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5415 	ROM_LOAD16_BYTE( "c11-03.32", 0x00000, 0x80000, CRC(46718c7a) SHA1(c10308a282bf0c618108e4afc7ce6f0f6cb8c6c0) )
5416 	ROM_LOAD16_BYTE( "c11-04.31", 0x00001, 0x80000, CRC(663f33cc) SHA1(5d3d3e77b7a84f6a3d4e744eef9b63bef91180e8) )
5417 
5418 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* sound cpu */
5419 	ROM_LOAD( "c11-12.3", 0x00000, 0x04000, CRC(b11094f1) SHA1(a01e9f7d1f616bb379eaa85ad81b94173b067782) )
5420 	ROM_CONTINUE(       0x10000, 0x0c000 )	/* banked stuff */
5421 
5422 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5423 	ROM_LOAD( "c11-01.29", 0x00000, 0x80000, CRC(fd1ea532) SHA1(481698b747a421a17bfb8cef96065712d4f3997f) )
5424 
5425 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
5426 	ROM_LOAD( "c11-02.30", 0x00000, 0x80000, CRC(451cc187) SHA1(a682f70bbe6cba2fe2c0a6791e8d33db34eb2cee) )
5427 
5428 /*Pals  b89-01.8  b89-02.28  b89-04.27  c11-13.13  c11-14.23*/
5429 ROM_END
5430 
5431 ROM_START( megabj )
5432 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5433 	ROM_LOAD16_BYTE( "c11-07.55",  0x00000, 0x20000, CRC(11d228b6) SHA1(5f658a4a0ece3ad4e02ccad6e2852e16dd338dfd) )	/* c11-07.17*/
5434 	ROM_LOAD16_BYTE( "c11-08.39",  0x00001, 0x20000, CRC(a79d4dca) SHA1(72a97577981a303230374c5f5e201066f71d9cc5) )	/* c11-08.19*/
5435 	ROM_LOAD16_BYTE( "c11-06.54",  0x40000, 0x20000, CRC(7c249894) SHA1(88dff86b446bcbc4e8ab14cfc3c57b40d25cfa97) )	/* c11-06.16*/
5436 	ROM_LOAD16_BYTE( "c11-09.18",  0x40001, 0x20000, CRC(c830aad5) SHA1(967ad3e052572300f5f49375e5f8348f2d595680) )	/* c11-09.18*/
5437 
5438 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5439 	ROM_LOAD( "c11-05.58", 0x00000, 0x80000, CRC(733e6d8e) SHA1(47f3360f7c41b7e4a42e8198fc1bcce4e819181f) )
5440 
5441 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5442 	ROM_LOAD16_BYTE( "c11-03.32", 0x00000, 0x80000, CRC(46718c7a) SHA1(c10308a282bf0c618108e4afc7ce6f0f6cb8c6c0) )
5443 	ROM_LOAD16_BYTE( "c11-04.31", 0x00001, 0x80000, CRC(663f33cc) SHA1(5d3d3e77b7a84f6a3d4e744eef9b63bef91180e8) )
5444 
5445 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* sound cpu */
5446 	ROM_LOAD( "c11-12.3", 0x00000, 0x04000, CRC(b11094f1) SHA1(a01e9f7d1f616bb379eaa85ad81b94173b067782) )
5447 	ROM_CONTINUE(       0x10000, 0x0c000 )	/* banked stuff */
5448 
5449 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5450 	ROM_LOAD( "c11-01.29", 0x00000, 0x80000, CRC(fd1ea532) SHA1(481698b747a421a17bfb8cef96065712d4f3997f) )
5451 
5452 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
5453 	ROM_LOAD( "c11-02.30", 0x00000, 0x80000, CRC(451cc187) SHA1(a682f70bbe6cba2fe2c0a6791e8d33db34eb2cee) )
5454 ROM_END
5455 
5456 ROM_START( thundfox )		/* Thunder Fox */
5457 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5458 	ROM_LOAD16_BYTE( "c28-13-1.51",  0x00000, 0x20000, CRC(acb07013) SHA1(5043d1859ae908c00f0c00c7b8e377362d908423) )
5459 	ROM_LOAD16_BYTE( "c28-16-1.40",  0x00001, 0x20000, CRC(1e43d55b) SHA1(e5a389926ee95f19fc9f5d5bde97436d6f52124a) )
5460 	ROM_LOAD16_BYTE( "c28-08.50",    0x40000, 0x20000, CRC(38e038f1) SHA1(4b8ed31e35927671ce313f4575e622ecab2c27cb) )
5461 	ROM_LOAD16_BYTE( "c28-07.39",    0x40001, 0x20000, CRC(24419abb) SHA1(7d3e70213ae04dd921fc1bce8abb385747c90a38) )
5462 
5463 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5464 	ROM_LOAD( "c28-02.61", 0x000000, 0x80000, CRC(6230a09d) SHA1(780aff5d4511c5e08cbf78784b163d60358f9283) )	/* TC0100SCN #1 */
5465 
5466 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5467 	ROM_LOAD16_BYTE( "c28-03.29", 0x00000, 0x80000, CRC(51bdc7af) SHA1(e36a063932fa5bd6609930c3708fee1e6feb5389) )
5468 	ROM_LOAD16_BYTE( "c28-04.28", 0x00001, 0x80000, CRC(ba7ed535) SHA1(be7e010f6788d1b82cebc932c793a0a976647832) )
5469 
5470 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* SCR */
5471 	ROM_LOAD( "c28-01.63", 0x000000, 0x80000, CRC(44552b25) SHA1(850c085e3dacd4867f6bcdfab641eb07934e620f) )	/* TC0100SCN #2 */
5472 
5473 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5474 	ROM_LOAD( "c28-14.3",  0x00000, 0x04000, CRC(45ef3616) SHA1(97bf1de7fd32a378839df1845f7522dae776d997) )
5475 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
5476 
5477 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5478 	ROM_LOAD( "c28-06.41", 0x00000, 0x80000, CRC(db6983db) SHA1(b72541aa35c48624478060e7453f01956ff1ceb2) )
5479 
5480 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
5481 	ROM_LOAD( "c28-05.42", 0x00000, 0x80000, CRC(d3b238fa) SHA1(b4a0cdd7174e60527e7a47018d6117adc5518da1) )
5482 
5483 /* Pals: c28-09.25  c28-10.26  c28-11.35  b89-01.19  b89-03.37  b89-04.33*/
5484 ROM_END
5485 
5486 ROM_START( thndfoxu )		/* Thunder Fox */
5487 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5488 	ROM_LOAD16_BYTE( "c28-13-1.51",  0x00000, 0x20000, CRC(acb07013) SHA1(5043d1859ae908c00f0c00c7b8e377362d908423) )
5489 	ROM_LOAD16_BYTE( "c28-15-1.40",  0x00001, 0x20000, CRC(874a84e1) SHA1(f2688030faf526bc64bbb06225d3938f423f0f8b) )
5490 	ROM_LOAD16_BYTE( "c28-08.50",    0x40000, 0x20000, CRC(38e038f1) SHA1(4b8ed31e35927671ce313f4575e622ecab2c27cb) )
5491 	ROM_LOAD16_BYTE( "c28-07.39",    0x40001, 0x20000, CRC(24419abb) SHA1(7d3e70213ae04dd921fc1bce8abb385747c90a38) )
5492 
5493 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5494 	ROM_LOAD( "c28-02.61", 0x000000, 0x80000, CRC(6230a09d) SHA1(780aff5d4511c5e08cbf78784b163d60358f9283) )	/* TC0100SCN #1 */
5495 
5496 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5497 	ROM_LOAD16_BYTE( "c28-03.29", 0x00000, 0x80000, CRC(51bdc7af) SHA1(e36a063932fa5bd6609930c3708fee1e6feb5389) )
5498 	ROM_LOAD16_BYTE( "c28-04.28", 0x00001, 0x80000, CRC(ba7ed535) SHA1(be7e010f6788d1b82cebc932c793a0a976647832) )
5499 
5500 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* SCR */
5501 	ROM_LOAD( "c28-01.63", 0x000000, 0x80000, CRC(44552b25) SHA1(850c085e3dacd4867f6bcdfab641eb07934e620f) )	/* TC0100SCN #2 */
5502 
5503 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5504 	ROM_LOAD( "c28-14.3",  0x00000, 0x04000, CRC(45ef3616) SHA1(97bf1de7fd32a378839df1845f7522dae776d997) )
5505 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
5506 
5507 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5508 	ROM_LOAD( "c28-06.41", 0x00000, 0x80000, CRC(db6983db) SHA1(b72541aa35c48624478060e7453f01956ff1ceb2) )
5509 
5510 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
5511 	ROM_LOAD( "c28-05.42", 0x00000, 0x80000, CRC(d3b238fa) SHA1(b4a0cdd7174e60527e7a47018d6117adc5518da1) )
5512 
5513 /* Pals: c28-09.25  c28-10.26  c28-11.35  b89-01.19  b89-03.37  b89-04.33*/
5514 ROM_END
5515 
5516 ROM_START( thndfoxj )		/* Thunder Fox */
5517 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5518 	ROM_LOAD16_BYTE( "c28-13-1.51",  0x00000, 0x20000, CRC(acb07013) SHA1(5043d1859ae908c00f0c00c7b8e377362d908423) )
5519 	ROM_LOAD16_BYTE( "c28-12-1.40",  0x00001, 0x20000, CRC(f04db477) SHA1(da66895b8cc79f1776f30d9c204c6907cab935db) )
5520 	ROM_LOAD16_BYTE( "c28-08.50",    0x40000, 0x20000, CRC(38e038f1) SHA1(4b8ed31e35927671ce313f4575e622ecab2c27cb) )
5521 	ROM_LOAD16_BYTE( "c28-07.39",    0x40001, 0x20000, CRC(24419abb) SHA1(7d3e70213ae04dd921fc1bce8abb385747c90a38) )
5522 
5523 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5524 	ROM_LOAD( "c28-02.61", 0x000000, 0x80000, CRC(6230a09d) SHA1(780aff5d4511c5e08cbf78784b163d60358f9283) )	/* TC0100SCN #1 */
5525 
5526 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5527 	ROM_LOAD16_BYTE( "c28-03.29", 0x00000, 0x80000, CRC(51bdc7af) SHA1(e36a063932fa5bd6609930c3708fee1e6feb5389) )
5528 	ROM_LOAD16_BYTE( "c28-04.28", 0x00001, 0x80000, CRC(ba7ed535) SHA1(be7e010f6788d1b82cebc932c793a0a976647832) )
5529 
5530 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* SCR */
5531 	ROM_LOAD( "c28-01.63", 0x000000, 0x80000, CRC(44552b25) SHA1(850c085e3dacd4867f6bcdfab641eb07934e620f) )	/* TC0100SCN #2 */
5532 
5533 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5534 	ROM_LOAD( "c28-14.3",  0x00000, 0x04000, CRC(45ef3616) SHA1(97bf1de7fd32a378839df1845f7522dae776d997) )
5535 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
5536 
5537 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5538 	ROM_LOAD( "c28-06.41", 0x00000, 0x80000, CRC(db6983db) SHA1(b72541aa35c48624478060e7453f01956ff1ceb2) )
5539 
5540 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
5541 	ROM_LOAD( "c28-05.42", 0x00000, 0x80000, CRC(d3b238fa) SHA1(b4a0cdd7174e60527e7a47018d6117adc5518da1) )
5542 ROM_END
5543 
5544 ROM_START( cameltry )
5545 	ROM_REGION( 0x40000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5546 	ROM_LOAD16_BYTE( "c38-11", 0x00000, 0x20000, CRC(be172da0) SHA1(e4915bf25832175591a014aa1abac5edae09380d) )
5547 	ROM_LOAD16_BYTE( "c38-14", 0x00001, 0x20000, CRC(ffa430de) SHA1(a3cdb35151a92ddfa2090c1f8710500925e7ad0c) )
5548 
5549 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
5550 	/* empty! */
5551 
5552 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5553 	ROM_LOAD( "c38-01.bin", 0x00000, 0x80000, CRC(c170ff36) SHA1(6a19cc99847ed35ac8a8e9ba0e2e91bfac662203) )
5554 
5555 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* pivot gfx */
5556 	ROM_LOAD( "c38-02.bin", 0x00000, 0x20000, CRC(1a11714b) SHA1(419f5ec37161fd6b4ca962768e720adf541271d5) )
5557 
5558 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5559 	ROM_LOAD( "c38-08.bin", 0x00000, 0x04000, CRC(7ff78873) SHA1(6574f1c707b8911fa957dd057e1cddc7a1cea99b) )
5560 	ROM_CONTINUE(           0x10000, 0x0c000 ) /* banked stuff */
5561 
5562 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
5563 	ROM_LOAD( "c38-03.bin", 0x000000, 0x020000, CRC(59fa59a7) SHA1(161f11b96a47c8431c33e300f6a509bf804309af) )
5564 
5565 	/* no Delta-T samples */
5566 ROM_END
5567 
5568 ROM_START( camltrua )
5569 	ROM_REGION( 0x40000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5570 	ROM_LOAD16_BYTE( "c38-11", 0x00000, 0x20000, CRC(be172da0) SHA1(e4915bf25832175591a014aa1abac5edae09380d) )
5571 	ROM_LOAD16_BYTE( "c38-14", 0x00001, 0x20000, CRC(ffa430de) SHA1(a3cdb35151a92ddfa2090c1f8710500925e7ad0c) )
5572 
5573 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
5574 	/* empty! */
5575 
5576 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5577 	ROM_LOAD( "c38-01.bin", 0x00000, 0x80000, CRC(c170ff36) SHA1(6a19cc99847ed35ac8a8e9ba0e2e91bfac662203) )
5578 
5579 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* pivot gfx */
5580 	ROM_LOAD( "c38-02.bin", 0x00000, 0x20000, CRC(1a11714b) SHA1(419f5ec37161fd6b4ca962768e720adf541271d5) )
5581 
5582 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu (revised prog!?) */
5583 	ROM_LOAD( "c38-us.15", 0x00000, 0x10000, CRC(0e60faac) SHA1(cd124efb5127e5184c412c48b94c0d4a0b2ade64) )
5584 
5585 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
5586 	ROM_LOAD( "c38-03.bin", 0x000000, 0x020000, CRC(59fa59a7) SHA1(161f11b96a47c8431c33e300f6a509bf804309af) )
5587 
5588 	/* no Delta-T samples */
5589 ROM_END
5590 
5591 ROM_START( cameltrj )
5592 	ROM_REGION( 0x40000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5593 	ROM_LOAD16_BYTE( "c38-09.bin", 0x00000, 0x20000, CRC(2ae01120) SHA1(6da4155fde0edd76976264f929c5da3c79db5017) )
5594 	ROM_LOAD16_BYTE( "c38-10.bin", 0x00001, 0x20000, CRC(48d8ff56) SHA1(73da47b0f9e67defcd0072b71a3661f2c3534f55) )
5595 
5596 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
5597 	/* empty! */
5598 
5599 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5600 	ROM_LOAD( "c38-01.bin", 0x00000, 0x80000, CRC(c170ff36) SHA1(6a19cc99847ed35ac8a8e9ba0e2e91bfac662203) )
5601 
5602 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* pivot gfx */
5603 	ROM_LOAD( "c38-02.bin", 0x00000, 0x20000, CRC(1a11714b) SHA1(419f5ec37161fd6b4ca962768e720adf541271d5) )
5604 
5605 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5606 	ROM_LOAD( "c38-08.bin", 0x00000, 0x04000, CRC(7ff78873) SHA1(6574f1c707b8911fa957dd057e1cddc7a1cea99b) )
5607 	ROM_CONTINUE(           0x10000, 0x0c000 ) /* banked stuff */
5608 
5609 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
5610 	ROM_LOAD( "c38-03.bin", 0x000000, 0x020000, CRC(59fa59a7) SHA1(161f11b96a47c8431c33e300f6a509bf804309af) )
5611 
5612 	/* no Delta-T samples */
5613 ROM_END
5614 
5615 ROM_START( qtorimon )	/* Quiz Torimonochou */
5616 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5617 	ROM_LOAD16_BYTE( "c41-04.bin",  0x00000, 0x20000, CRC(0fbf5223) SHA1(2aa8b3dd20ae922a3ff880db7b46e2bbb708698d) )
5618 	ROM_LOAD16_BYTE( "c41-05.bin",  0x00001, 0x20000, CRC(174bd5db) SHA1(f7a4b2ac91b3bcd886e2a1e1d0415a95f14c9de7) )
5619 	ROM_LOAD16_BYTE( "mask-51.bin", 0x40000, 0x20000, CRC(12e14aca) SHA1(8f7dc54f68984c82420abf96436743c0654a71ea) ) /* char defs, read by cpu */
5620 	ROM_LOAD16_BYTE( "mask-52.bin", 0x40001, 0X20000, CRC(b3ef66f3) SHA1(4766a1ed9b4adcc2f0d2857633ce95194eb80694) ) /* char defs, read by cpu */
5621 
5622 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
5623 	/* empty! */
5624 
5625 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5626 	ROM_LOAD16_BYTE( "c41-02.bin",  0x00000, 0x20000, CRC(05dcd36d) SHA1(f32c5b40e0adad7991bac29ecffcd5dff330e118) )
5627 	ROM_LOAD16_BYTE( "c41-01.bin",  0x00001, 0x20000, CRC(39ff043c) SHA1(a4b0c6763c43a7ad16e98a938ffbb8aef4882eac) )
5628 
5629 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5630 	ROM_LOAD( "c41-06.bin",    0x00000, 0x04000, CRC(753a98d8) SHA1(a832a4789194a67a2201da4e4484ab08210e5ccc) )
5631 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
5632 
5633 	ROM_REGION( 0x080000, REGION_SOUND1, 0 )	/* ADPCM samples */
5634 	ROM_LOAD( "c41-03.bin",  0x000000, 0x020000, CRC(b2c18e89) SHA1(32eca1721cd8f47e9a6dcb553208ddd0daa67f83) )
5635 
5636 	/* no Delta-T samples */
5637 ROM_END
5638 
5639 ROM_START( liquidk )
5640 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5641 	ROM_LOAD16_BYTE( "c49_09.12",  0x00000, 0x20000, CRC(6ae09eb9) SHA1(0f2527a1b231ecf8c6a937bf56d1245fdd270695) )
5642 	ROM_LOAD16_BYTE( "c49_11.14",  0x00001, 0x20000, CRC(42d2be6e) SHA1(c7953af2a561159d739d05dc06a4c905b6c40e64) )
5643 	ROM_LOAD16_BYTE( "c49_10.13",  0x40000, 0x20000, CRC(50bef2e0) SHA1(54afd46dde81ac0fc272417c53aba1e9e8c90606) )
5644 	ROM_LOAD16_BYTE( "c49_12.15",  0x40001, 0x20000, CRC(cb16bad5) SHA1(900c28761200f261cb217f09f492895753ef16f7) )
5645 
5646 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5647 	ROM_LOAD( "lk_scr.bin",  0x00000, 0x80000, CRC(c3364f9b) SHA1(3512a8c352df8b8f19590c859afb8fdec758eb91) )
5648 
5649 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5650 	ROM_LOAD( "lk_obj0.bin", 0x00000, 0x80000, CRC(67cc3163) SHA1(f898d52c136f07497ec6be214f016cbadc700055) )
5651 	ROM_LOAD( "lk_obj1.bin", 0x80000, 0x80000, CRC(d2400710) SHA1(082aa0336dbc066d8bb0dd6eb362340f49e87b67) )
5652 
5653 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		/* sound cpu */
5654 	ROM_LOAD( "c49_08.9",    0x00000, 0x04000, CRC(413c310c) SHA1(cecb1c0c9fe3c8b744f95ce29009650a289107ab) )
5655 	ROM_CONTINUE(            0x10000, 0x0c000 )	/* banked stuff */
5656 
5657 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5658 	ROM_LOAD( "lk_snd.bin",  0x00000, 0x80000, CRC(474d45a4) SHA1(20cb818d753a185973098007e645f1aa75c5528d) )
5659 
5660 	/* no Delta-T samples */
5661 ROM_END
5662 
5663 ROM_START( liquidku )
5664 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5665 	ROM_LOAD16_BYTE( "c49_09.12",  0x00000, 0x20000, CRC(6ae09eb9) SHA1(0f2527a1b231ecf8c6a937bf56d1245fdd270695) )
5666 	ROM_LOAD16_BYTE( "c49_11.14",  0x00001, 0x20000, CRC(42d2be6e) SHA1(c7953af2a561159d739d05dc06a4c905b6c40e64) )
5667 	ROM_LOAD16_BYTE( "c49_10.13",  0x40000, 0x20000, CRC(50bef2e0) SHA1(54afd46dde81ac0fc272417c53aba1e9e8c90606) )
5668 	ROM_LOAD16_BYTE( "c49_14.15",  0x40001, 0x20000, CRC(bc118a43) SHA1(eb306a753ab43e67eacb9d6eff1c14ec78de965f) )
5669 
5670 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5671 	ROM_LOAD( "lk_scr.bin",  0x00000, 0x80000, CRC(c3364f9b) SHA1(3512a8c352df8b8f19590c859afb8fdec758eb91) )
5672 
5673 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5674 	ROM_LOAD( "lk_obj0.bin", 0x00000, 0x80000, CRC(67cc3163) SHA1(f898d52c136f07497ec6be214f016cbadc700055) )
5675 	ROM_LOAD( "lk_obj1.bin", 0x80000, 0x80000, CRC(d2400710) SHA1(082aa0336dbc066d8bb0dd6eb362340f49e87b67) )
5676 
5677 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		/* sound cpu */
5678 	ROM_LOAD( "c49_08.9",    0x00000, 0x04000, CRC(413c310c) SHA1(cecb1c0c9fe3c8b744f95ce29009650a289107ab) )
5679 	ROM_CONTINUE(            0x10000, 0x0c000 )	/* banked stuff */
5680 
5681 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5682 	ROM_LOAD( "lk_snd.bin",  0x00000, 0x80000, CRC(474d45a4) SHA1(20cb818d753a185973098007e645f1aa75c5528d) )
5683 
5684 	/* no Delta-T samples */
5685 ROM_END
5686 
5687 ROM_START( mizubaku )
5688 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5689 	ROM_LOAD16_BYTE( "c49_09.12",  0x00000, 0x20000, CRC(6ae09eb9) SHA1(0f2527a1b231ecf8c6a937bf56d1245fdd270695) )
5690 	ROM_LOAD16_BYTE( "c49_11.14",  0x00001, 0x20000, CRC(42d2be6e) SHA1(c7953af2a561159d739d05dc06a4c905b6c40e64) )
5691 	ROM_LOAD16_BYTE( "c49_10.13",  0x40000, 0x20000, CRC(50bef2e0) SHA1(54afd46dde81ac0fc272417c53aba1e9e8c90606) )
5692 	ROM_LOAD16_BYTE( "c49_13.15",  0x40001, 0x20000, CRC(2518dbf9) SHA1(c5975d3bfbfbb34b37b5da1d1cd2adf3491f9196) )
5693 
5694 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5695 	ROM_LOAD( "lk_scr.bin",  0x00000, 0x80000, CRC(c3364f9b) SHA1(3512a8c352df8b8f19590c859afb8fdec758eb91) )
5696 
5697 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5698 	ROM_LOAD( "lk_obj0.bin", 0x00000, 0x80000, CRC(67cc3163) SHA1(f898d52c136f07497ec6be214f016cbadc700055) )
5699 	ROM_LOAD( "lk_obj1.bin", 0x80000, 0x80000, CRC(d2400710) SHA1(082aa0336dbc066d8bb0dd6eb362340f49e87b67) )
5700 
5701 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		/* sound cpu */
5702 	ROM_LOAD( "c49_08.9",    0x00000, 0x04000, CRC(413c310c) SHA1(cecb1c0c9fe3c8b744f95ce29009650a289107ab) )
5703 	ROM_CONTINUE(            0x10000, 0x0c000 )	/* banked stuff */
5704 
5705 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
5706 	ROM_LOAD( "lk_snd.bin",  0x00000, 0x80000, CRC(474d45a4) SHA1(20cb818d753a185973098007e645f1aa75c5528d) )
5707 
5708 	/* no Delta-T samples */
5709 ROM_END
5710 
5711 ROM_START( quizhq )	/* Quiz HQ */
5712 	ROM_REGION( 0xc0000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5713 	ROM_LOAD16_BYTE( "c53-05.bin",  0x00000, 0x20000, CRC(c798fc20) SHA1(4467dde3620102f87cffb2f81f71d856c0df12f8) )
5714 	ROM_LOAD16_BYTE( "c53-01.bin",  0x00001, 0x20000, CRC(bf44c93e) SHA1(6fd871f50da4a668767b3096660689905663f697) )
5715 	ROM_LOAD16_BYTE( "c53-52.bin",  0x80000, 0x20000, CRC(12e14aca) SHA1(8f7dc54f68984c82420abf96436743c0654a71ea) ) /* char defs, read by cpu */
5716 	ROM_LOAD16_BYTE( "c53-51.bin",  0x80001, 0X20000, CRC(b3ef66f3) SHA1(4766a1ed9b4adcc2f0d2857633ce95194eb80694) ) /* char defs, read by cpu */
5717 
5718 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
5719 	/* empty */
5720 
5721 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5722 	ROM_LOAD16_BYTE( "c53-03.bin",  0x00000, 0x20000, CRC(47596e70) SHA1(3a4612d9dd2e18a4f7f4c4ed38877071afc9c279) )
5723 	ROM_LOAD16_BYTE( "c53-07.bin",  0x00001, 0x20000, CRC(4f9fa82f) SHA1(ccd1ac17d38a51492b3716bad83e67b282da8bf9) )
5724 	ROM_LOAD16_BYTE( "c53-02.bin",  0x40000, 0x20000, CRC(d704c6f4) SHA1(9b1c47ec3abaff53d641488dece8c97438b2e809) )
5725 	ROM_LOAD16_BYTE( "c53-06.bin",  0x40001, 0x20000, CRC(f77f63fc) SHA1(28a509786817e88c0a5821dd68791ebd30d994c2) )
5726 
5727 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	 /* sound cpu */
5728 	ROM_LOAD( "c53-08.bin",    0x00000, 0x04000, CRC(25187e81) SHA1(c549fbfff6963be93aaf349b240f15b1d578d1f1) )
5729 	ROM_CONTINUE(          0x10000, 0x0c000 )	/* banked stuff */
5730 
5731 	ROM_REGION( 0x080000, REGION_SOUND1, 0 )	/* ADPCM samples */
5732 	ROM_LOAD( "c53-04.bin",  0x000000, 0x020000, CRC(99890ad4) SHA1(c9be9d21dc72059c39de81e1b73849cc77d6b95d) )
5733 
5734 	/* no Delta-T samples */
5735 ROM_END
5736 
5737 ROM_START( ssi )
5738 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5739 	ROM_LOAD16_BYTE( "c64_15-1.bin", 0x00000, 0x40000, CRC(ce9308a6) SHA1(02653218fe949803742e574eeed01dd421b0a671) )
5740 	ROM_LOAD16_BYTE( "c64_16-1.bin", 0x00001, 0x40000, CRC(470a483a) SHA1(880d43aec8c3bbae1d58e7d6d7719eb6fe67cc56) )
5741 
5742 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
5743 	/* empty! */
5744 
5745 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5746 	ROM_LOAD( "c64-01.1",     0x000000, 0x100000, CRC(a1b4f486) SHA1(bdd6bf144e50fe7b1d4cf4504471a689669415a4) )
5747 
5748 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		/* sound cpu */
5749 	ROM_LOAD( "c64_09.13",    0x00000, 0x04000, CRC(88d7f65c) SHA1(d6383bf8fd035772fa3c57b26b727eefe1aadd93) )
5750 	ROM_CONTINUE(             0x10000, 0x0c000 )	/* banked stuff */
5751 
5752 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* ADPCM samples */
5753 	ROM_LOAD( "c64-02.2",     0x00000, 0x20000, CRC(3cb0b907) SHA1(7cbe437fe584575a2f26a582095fd49665c7003e) )
5754 
5755 	/* no Delta-T samples */
5756 ROM_END
5757 
5758 ROM_START( majest12 )
5759 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5760 	ROM_LOAD16_BYTE( "c64_07.10", 0x00000, 0x20000, CRC(f29ed5c9) SHA1(62283af1c08457db54057ee59a95fb7a3797b897) )
5761 	ROM_LOAD16_BYTE( "c64_06.4",  0x40000, 0x20000, CRC(18dc71ac) SHA1(cb9c0b330ae98e20269f18cdb543feb294647245) )
5762 	ROM_LOAD16_BYTE( "c64_08.11", 0x00001, 0x20000, CRC(ddfd33d5) SHA1(33cc5a0aedf8228b42466cd2a1fe3e06fbfbf141) )
5763 	ROM_LOAD16_BYTE( "c64_05.5",  0x40001, 0x20000, CRC(b61866c0) SHA1(9c2096eae05782377a655c3607b65a2cd6a66272) )
5764 
5765 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
5766 	/* empty! */
5767 
5768 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5769 	ROM_LOAD( "c64-01.1",     0x000000, 0x100000, CRC(a1b4f486) SHA1(bdd6bf144e50fe7b1d4cf4504471a689669415a4) )
5770 
5771 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		/* sound cpu */
5772 	ROM_LOAD( "c64_09.13",    0x00000, 0x04000, CRC(88d7f65c) SHA1(d6383bf8fd035772fa3c57b26b727eefe1aadd93) )
5773 	ROM_CONTINUE(             0x10000, 0x0c000 )	/* banked stuff */
5774 
5775 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* ADPCM samples */
5776 	ROM_LOAD( "c64-02.2",     0x00000, 0x20000, CRC(3cb0b907) SHA1(7cbe437fe584575a2f26a582095fd49665c7003e) )
5777 
5778 	/* no Delta-T samples */
5779 ROM_END
5780 
5781 ROM_START( gunfront )
5782 	ROM_REGION( 0xc0000, REGION_CPU1, 0 )     /* 768k for 68000 code */
5783 	ROM_LOAD16_BYTE( "c71-09.42",  0x00000, 0x20000, CRC(10a544a2) SHA1(3b46bbd494b432d36aed3fd4b429cef074050c1d) )
5784 	ROM_LOAD16_BYTE( "c71-08.41",  0x00001, 0x20000, CRC(c17dc0a0) SHA1(f84e0d1afb403bb06480e8687558cd320d60099e) )
5785 	ROM_LOAD16_BYTE( "c71-10.40",  0x40000, 0x20000, CRC(f39c0a06) SHA1(8217f0dd855d6e15756349d47f327742ab50db15) )
5786 	ROM_LOAD16_BYTE( "c71-14.39",  0x40001, 0x20000, CRC(312da036) SHA1(44215c64ad9f8a4566cc9f407a7b38799a08d485) )
5787 	ROM_LOAD16_BYTE( "c71-16.38",  0x80000, 0x20000, CRC(1bbcc2d4) SHA1(fe664f8d2b6d902f034cf51f42378cc68c970b53) )
5788 	ROM_LOAD16_BYTE( "c71-15.37",  0x80001, 0x20000, CRC(df3e00bb) SHA1(9fe2ece7289945692099eba92f02e5a97a4d148c) )
5789 
5790 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5791 	ROM_LOAD( "c71-02.59", 0x000000, 0x100000, CRC(2a600c92) SHA1(38a08ade2c6fa005a402d04fabf87ff10236d4c6) )
5792 
5793 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5794 	ROM_LOAD( "c71-03.19", 0x000000, 0x100000, CRC(9133c605) SHA1(fa10c60cd4ca439a273c644bbf3810824a0ca523) )
5795 
5796 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	 /* sound cpu */
5797 	ROM_LOAD( "c71-12.49", 0x00000, 0x04000, CRC(0038c7f8) SHA1(405def36e67949219b6f9394333278ec60ad5783) )
5798 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
5799 
5800 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
5801 	ROM_LOAD( "c71-01.29", 0x000000, 0x100000, CRC(0e73105a) SHA1(c5c9743f68a43273e16f5e5179557f2392505a1e) )
5802 
5803 	/* no Delta-T samples */
5804 
5805 /* Pals c71-16.28  c71-07.27*/
5806 ROM_END
5807 
5808 ROM_START( gunfronj )
5809 	ROM_REGION( 0xc0000, REGION_CPU1, 0 )     /* 768k for 68000 code */
5810 	ROM_LOAD16_BYTE( "c71-09.42",  0x00000, 0x20000, CRC(10a544a2) SHA1(3b46bbd494b432d36aed3fd4b429cef074050c1d) )	/* c71-09.9*/
5811 	ROM_LOAD16_BYTE( "c71-08.41",  0x00001, 0x20000, CRC(c17dc0a0) SHA1(f84e0d1afb403bb06480e8687558cd320d60099e) )	/* c71-08.2*/
5812 	ROM_LOAD16_BYTE( "c71-10.40",  0x40000, 0x20000, CRC(f39c0a06) SHA1(8217f0dd855d6e15756349d47f327742ab50db15) )	/* c71-10.10*/
5813 	ROM_LOAD16_BYTE( "c71-11.3",   0x40001, 0x20000, CRC(df23c11a) SHA1(3bbe4715a022f2a78c23a7a5b8ca36ad43cdbca0) )
5814 	ROM_LOAD16_BYTE( "c71-16.38",  0x80000, 0x20000, CRC(1bbcc2d4) SHA1(fe664f8d2b6d902f034cf51f42378cc68c970b53) )	/* c71-05.11*/
5815 	ROM_LOAD16_BYTE( "c71-15.37",  0x80001, 0x20000, CRC(df3e00bb) SHA1(9fe2ece7289945692099eba92f02e5a97a4d148c) )	/* c71-04.4*/
5816 
5817 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5818 	ROM_LOAD( "c71-02.59", 0x000000, 0x100000, CRC(2a600c92) SHA1(38a08ade2c6fa005a402d04fabf87ff10236d4c6) )	/* c71-02.7*/
5819 
5820 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5821 	ROM_LOAD( "c71-03.19", 0x000000, 0x100000, CRC(9133c605) SHA1(fa10c60cd4ca439a273c644bbf3810824a0ca523) )	/* c71-03.8*/
5822 
5823 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	 /* sound cpu */
5824 	ROM_LOAD( "c71-12.49", 0x00000, 0x04000, CRC(0038c7f8) SHA1(405def36e67949219b6f9394333278ec60ad5783) )	/* c71-12.5*/
5825 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
5826 
5827 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
5828 	ROM_LOAD( "c71-01.29", 0x000000, 0x100000, CRC(0e73105a) SHA1(c5c9743f68a43273e16f5e5179557f2392505a1e) )	/* c71-01.1*/
5829 
5830 	/* no Delta-T samples */
5831 ROM_END
5832 
5833 ROM_START( growl )
5834 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 1024k for 68000 code */
5835 	ROM_LOAD16_BYTE( "c74-10.59",  0x00000, 0x40000, CRC(ca81a20b) SHA1(75d665f3e3cf1ab389f5390d4a4d2c9e49543c56) )
5836 	ROM_LOAD16_BYTE( "c74-08.61",  0x00001, 0x40000, CRC(aa35dd9e) SHA1(97229746f70c486bcf172ec09f7f9c9eede16006) )
5837 	ROM_LOAD16_BYTE( "c74-11.58",  0x80000, 0x40000, CRC(ee3bd6d5) SHA1(71f961b4e3b3156bc52e489eb0a408a1fe537a61) )
5838 	ROM_LOAD16_BYTE( "c74-14.60",  0x80001, 0x40000, CRC(b6c24ec7) SHA1(da8ac05d12c12a58bf5185d723358a0d1a0fe71e) )
5839 
5840 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5841 	ROM_LOAD( "c74-01.34",   0x000000, 0x100000, CRC(3434ce80) SHA1(ef363107fba6f5088ef9c85dd692b5c98be67f75) )
5842 
5843 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5844 	ROM_LOAD( "c74-03.12",   0x000000, 0x100000, CRC(1a0d8951) SHA1(62af40f7ca651273d93fed5d55af24cf91331ec7) )
5845 	ROM_LOAD( "c74-02.11",   0x100000, 0x100000, CRC(15a21506) SHA1(3d8f066e1226e030ce549959d5a8dd4506a0e0a2) )
5846 
5847 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5848 	ROM_LOAD( "c74-12.62",   0x00000, 0x04000, CRC(bb6ed668) SHA1(e8c3a15ccbc788ac57d42bd2cabcdb2db6305489) )
5849 	ROM_CONTINUE(            0x10000, 0x0c000 ) /* banked stuff */
5850 
5851 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
5852 	ROM_LOAD( "c74-04.28",   0x000000, 0x100000, CRC(2d97edf2) SHA1(d3a995303facdad4f8e1fdda04eaaec4440ff371) )
5853 
5854 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )	/* Delta-T samples */
5855 	ROM_LOAD( "c74-05.29",   0x000000, 0x080000, CRC(e29c0828) SHA1(f541d724f118130bb7a8f9e790582c68779cc6b6) )
5856 
5857 /*Pals c74-06.48  c74-07.47*/
5858 ROM_END
5859 
5860 ROM_START( growlu )
5861 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 1024k for 68000 code */
5862 	ROM_LOAD16_BYTE( "c74-10.59",  0x00000, 0x40000, CRC(ca81a20b) SHA1(75d665f3e3cf1ab389f5390d4a4d2c9e49543c56) )
5863 	ROM_LOAD16_BYTE( "c74-08.61",  0x00001, 0x40000, CRC(aa35dd9e) SHA1(97229746f70c486bcf172ec09f7f9c9eede16006) )
5864 	ROM_LOAD16_BYTE( "c74-11.58",  0x80000, 0x40000, CRC(ee3bd6d5) SHA1(71f961b4e3b3156bc52e489eb0a408a1fe537a61) )
5865 	ROM_LOAD16_BYTE( "c74-13.60",  0x80001, 0x40000, CRC(c1c57e51) SHA1(f6ffc1acf3e5ff75e64facd7e28fd675eb065c7b) )
5866 
5867 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5868 	ROM_LOAD( "c74-01.34",   0x000000, 0x100000, CRC(3434ce80) SHA1(ef363107fba6f5088ef9c85dd692b5c98be67f75) )
5869 
5870 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5871 	ROM_LOAD( "c74-03.12",   0x000000, 0x100000, CRC(1a0d8951) SHA1(62af40f7ca651273d93fed5d55af24cf91331ec7) )
5872 	ROM_LOAD( "c74-02.11",   0x100000, 0x100000, CRC(15a21506) SHA1(3d8f066e1226e030ce549959d5a8dd4506a0e0a2) )
5873 
5874 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
5875 	ROM_LOAD( "c74-12.62",   0x00000, 0x04000, CRC(bb6ed668) SHA1(e8c3a15ccbc788ac57d42bd2cabcdb2db6305489) )
5876 	ROM_CONTINUE(            0x10000, 0x0c000 ) /* banked stuff */
5877 
5878 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
5879 	ROM_LOAD( "c74-04.28",   0x000000, 0x100000, CRC(2d97edf2) SHA1(d3a995303facdad4f8e1fdda04eaaec4440ff371) )
5880 
5881 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )	/* Delta-T samples */
5882 	ROM_LOAD( "c74-05.29",   0x000000, 0x080000, CRC(e29c0828) SHA1(f541d724f118130bb7a8f9e790582c68779cc6b6) )
5883 ROM_END
5884 
5885 ROM_START( runark )
5886 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 1024k for 68000 code */
5887 	ROM_LOAD16_BYTE( "c74-10.59",  0x00000, 0x40000, CRC(ca81a20b) SHA1(75d665f3e3cf1ab389f5390d4a4d2c9e49543c56) )	/* c74-10.15*/
5888 	ROM_LOAD16_BYTE( "c74-08.61",  0x00001, 0x40000, CRC(aa35dd9e) SHA1(97229746f70c486bcf172ec09f7f9c9eede16006) )	/* c74-08.13*/
5889 	ROM_LOAD16_BYTE( "c74-11.58",  0x80000, 0x40000, CRC(ee3bd6d5) SHA1(71f961b4e3b3156bc52e489eb0a408a1fe537a61) )	/* c74-11.16*/
5890 	ROM_LOAD16_BYTE( "c74-09.14",  0x80001, 0x40000, CRC(58cc2feb) SHA1(7dc314a56345be116731dbb65dfa9e508c156513) )
5891 
5892 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5893 	ROM_LOAD( "c74-01.34",   0x000000, 0x100000, CRC(3434ce80) SHA1(ef363107fba6f5088ef9c85dd692b5c98be67f75) )	/* c74-01.1*/
5894 
5895 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5896 	ROM_LOAD( "c74-03.12",   0x000000, 0x100000, CRC(1a0d8951) SHA1(62af40f7ca651273d93fed5d55af24cf91331ec7) )	/* c74-03.9*/
5897 	ROM_LOAD( "c74-02.11",   0x100000, 0x100000, CRC(15a21506) SHA1(3d8f066e1226e030ce549959d5a8dd4506a0e0a2) )	/* c74-02.8*/
5898 
5899 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* sound cpu */
5900 	ROM_LOAD( "c74-12.62",   0x00000, 0x04000, CRC(bb6ed668) SHA1(e8c3a15ccbc788ac57d42bd2cabcdb2db6305489) )	/* c74-12.3*/
5901 	ROM_CONTINUE(            0x10000, 0x0c000 ) /* banked stuff */
5902 
5903 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
5904 	ROM_LOAD( "c74-04.28",   0x000000, 0x100000, CRC(2d97edf2) SHA1(d3a995303facdad4f8e1fdda04eaaec4440ff371) )	/* c74-04.10*/
5905 
5906 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )	/* Delta-T samples */
5907 	ROM_LOAD( "c74-05.29",   0x000000, 0x080000, CRC(e29c0828) SHA1(f541d724f118130bb7a8f9e790582c68779cc6b6) )	/* c74-05.2*/
5908 ROM_END
5909 
5910 ROM_START( mjnquest )	/* Mahjong Quest */
5911 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5912 	ROM_LOAD16_BYTE( "c77-09",  0x000000, 0x020000, CRC(0a005d01) SHA1(caf44fcdeca9f7f1bfdb0c29503bb82ce17f945c) )
5913 	ROM_LOAD16_BYTE( "c77-08",  0x000001, 0x020000, CRC(4244f775) SHA1(801045d7433684195876e172676b2345827de7cc) )
5914 	ROM_LOAD16_WORD_SWAP( "c77-04",  0x080000, 0x080000, CRC(c2e7e038) SHA1(6cf23bab587b34cbc1f78b8b82cbab5634b074dc) )	/* data rom */
5915 
5916 	ROM_REGION( 0x200000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5917 	ROM_LOAD( "c77-01", 0x000000, 0x100000, CRC(5ba51205) SHA1(da0b6f56e7d2437ad75ada1ba07e35843d2b4704) )
5918 	ROM_LOAD( "c77-02", 0x100000, 0x100000, CRC(6a6f3040) SHA1(61c3ce51fa935f52572affa899bb81b3a616df3a) )
5919 
5920 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5921 	ROM_LOAD( "c77-05", 0x00000, 0x80000, CRC(c5a54678) SHA1(d0954acbdfdf9a5f14f554635c015eee23d52e0c) )
5922 
5923 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* sound cpu */
5924 	ROM_LOAD( "c77-10",    0x00000, 0x04000, CRC(f16b2c1e) SHA1(f6f13429a0b4e0e4c64991f1acc4ecf85dc64364) )
5925 	ROM_CONTINUE(          0x10000, 0x0c000 )	/* banked stuff */
5926 
5927 	ROM_REGION( 0x080000, REGION_SOUND1, 0 )	/* ADPCM samples */
5928 	ROM_LOAD( "c77-03",  0x000000, 0x080000, CRC(312f17b1) SHA1(3b45eeb6c6721c532451cb113e6a38da4d8a8cbf) )
5929 
5930 	/* no Delta-T samples */
5931 ROM_END
5932 
5933 ROM_START( mjnquesb )	/* Mahjong Quest (No Nudity) */
5934 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 256k for 68000 code */
5935 	ROM_LOAD16_BYTE( "c77-09a", 0x000000, 0x020000, CRC(fc17f1c2) SHA1(438b0a780560940b2d3dab42b34dc2bc94a15f80) )
5936 	ROM_LOAD16_BYTE( "c77-08",  0x000001, 0x020000, CRC(4244f775) SHA1(801045d7433684195876e172676b2345827de7cc) )
5937 	ROM_LOAD16_WORD_SWAP( "c77-04",  0x080000, 0x080000, CRC(c2e7e038) SHA1(6cf23bab587b34cbc1f78b8b82cbab5634b074dc) )	/* data rom */
5938 
5939 	ROM_REGION( 0x200000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5940 	ROM_LOAD( "c77-01", 0x000000, 0x100000, CRC(5ba51205) SHA1(da0b6f56e7d2437ad75ada1ba07e35843d2b4704) )
5941 	ROM_LOAD( "c77-02", 0x100000, 0x100000, CRC(6a6f3040) SHA1(61c3ce51fa935f52572affa899bb81b3a616df3a) )
5942 
5943 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5944 	ROM_LOAD( "c77-05", 0x00000, 0x80000, CRC(c5a54678) SHA1(d0954acbdfdf9a5f14f554635c015eee23d52e0c) )
5945 
5946 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* sound cpu */
5947 	ROM_LOAD( "c77-10",    0x00000, 0x04000, CRC(f16b2c1e) SHA1(f6f13429a0b4e0e4c64991f1acc4ecf85dc64364) )
5948 	ROM_CONTINUE(          0x10000, 0x0c000 )	/* banked stuff */
5949 
5950 	ROM_REGION( 0x080000, REGION_SOUND1, 0 )	/* ADPCM samples */
5951 	ROM_LOAD( "c77-03",  0x000000, 0x080000, CRC(312f17b1) SHA1(3b45eeb6c6721c532451cb113e6a38da4d8a8cbf) )
5952 
5953 	/* no Delta-T samples */
5954 ROM_END
5955 
5956 ROM_START( footchmp )
5957 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5958 	ROM_LOAD16_BYTE( "c80-11.6",     0x00000, 0x20000, CRC(f78630fb) SHA1(37da34401f664caaf5113a9abad78e447f4f4651) )
5959 	ROM_LOAD16_BYTE( "c80-10.4",     0x00001, 0x20000, CRC(32c109cb) SHA1(46a116127bcea18cc15ddf297e5e0d5cdcac9842) )
5960 	ROM_LOAD16_BYTE( "c80-12.7",     0x40000, 0x20000, CRC(80d46fef) SHA1(cc81c8ba19321e8bae9054021bfb61cb11c2aba5) )
5961 	ROM_LOAD16_BYTE( "c80-14.5",     0x40001, 0x20000, CRC(40ac4828) SHA1(9a2112b0ccd573a3e94d9817b78bb02909b972e1) )
5962 
5963 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5964 	ROM_LOAD16_BYTE( "c80-04.1", 0x00000, 0x80000, CRC(9a17fe8c) SHA1(d2ea72743151f0f7bf78f33dba526214afb07389) )
5965 	ROM_LOAD16_BYTE( "c80-05.2", 0x00001, 0x80000, CRC(acde7071) SHA1(23637238d122b13edb6025418bf482cc210ef6a9) )
5966 
5967 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5968 	ROM_LOAD( "c80-01.9",  0x000000, 0x100000, CRC(f43782e6) SHA1(53ff6cc433673f307a91e8db74428aa6172ffad4) )
5969 	ROM_LOAD( "c80-02.10", 0x100000, 0x100000, CRC(060a8b61) SHA1(b1888d8bce4c4624dc5bb64168c604ec64537c0e) )
5970 
5971 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* 64k for Z80 code */
5972 	ROM_LOAD( "c80-15.70", 0x00000, 0x04000, CRC(05aa7fd7) SHA1(7eb10964ea9f43abcda8444f13733a0753a04580) )
5973 	ROM_CONTINUE(          0x10000, 0x0c000 )	/* banked stuff */
5974 
5975 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )     /* YM2610 samples */
5976 	ROM_LOAD( "c80-03.57", 0x000000, 0x100000, CRC(609938d5) SHA1(54c7a7265dee5cb031fd402f4c74858d73bec652) )
5977 
5978 	/* no Delta-T samples */
5979 
5980 /* Pals c80-08.45  c80-09.46*/
5981 ROM_END
5982 
5983 ROM_START( hthero )
5984 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
5985 	ROM_LOAD16_BYTE( "c80-16.6",  0x00000, 0x20000, CRC(4e795b52) SHA1(90a32133a68de4d0410935e5039d4dec37836a13) )
5986 	ROM_LOAD16_BYTE( "c80-17.4",  0x00001, 0x20000, CRC(42c0a838) SHA1(4ba96a7248715562668994a4bf974e8ce4c44fd3) )
5987 	ROM_LOAD16_BYTE( "c80-12.7",  0x40000, 0x20000, CRC(80d46fef) SHA1(cc81c8ba19321e8bae9054021bfb61cb11c2aba5) )
5988 	ROM_LOAD16_BYTE( "c80-18.5",  0x40001, 0x20000, CRC(aea22904) SHA1(907889f141fced8cada793f02244e80cf0f89c81) )
5989 
5990 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
5991 	ROM_LOAD16_BYTE( "c80-04.1", 0x00000, 0x80000, CRC(9a17fe8c) SHA1(d2ea72743151f0f7bf78f33dba526214afb07389) )
5992 	ROM_LOAD16_BYTE( "c80-05.2", 0x00001, 0x80000, CRC(acde7071) SHA1(23637238d122b13edb6025418bf482cc210ef6a9) )
5993 
5994 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
5995 	ROM_LOAD( "c80-01.9",  0x000000, 0x100000, CRC(f43782e6) SHA1(53ff6cc433673f307a91e8db74428aa6172ffad4) )
5996 	ROM_LOAD( "c80-02.10", 0x100000, 0x100000, CRC(060a8b61) SHA1(b1888d8bce4c4624dc5bb64168c604ec64537c0e) )
5997 
5998 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* sound cpu */
5999 	ROM_LOAD( "c80-15.70", 0x00000, 0x04000, CRC(05aa7fd7) SHA1(7eb10964ea9f43abcda8444f13733a0753a04580) )
6000 	ROM_CONTINUE(          0x10000, 0x0c000 )	/* banked stuff */
6001 
6002 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6003 	ROM_LOAD( "c80-03.57", 0x000000, 0x100000, CRC(609938d5) SHA1(54c7a7265dee5cb031fd402f4c74858d73bec652) )
6004 
6005 	/* no Delta-T samples */
6006 ROM_END
6007 
6008 ROM_START( euroch92 )
6009 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
6010 	ROM_LOAD16_BYTE( "ec92_25.rom", 0x00000, 0x20000, CRC(98482202) SHA1(4fc03fb2a2c21f302d95047535f66d26421dcda2) )
6011 	ROM_LOAD16_BYTE( "ec92_23.rom", 0x00001, 0x20000, CRC(ae5e75e9) SHA1(82d935684182bfb42367232a3b71d4664b170ffe) )
6012 	ROM_LOAD16_BYTE( "ec92_26.rom", 0x40000, 0x20000, CRC(b986ccb2) SHA1(862a5da1bd4e8743d55f2e5bab2ade6c3dec682c) )
6013 	ROM_LOAD16_BYTE( "ec92_24.rom", 0x40001, 0x20000, CRC(b31d94ac) SHA1(8a3328b7e061b584992dd27b0dda9826b4b6ed91) )
6014 
6015 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6016 	ROM_LOAD16_BYTE( "ec92_21.rom", 0x00000, 0x80000, CRC(5759ed37) SHA1(2a661ea40735afbda3d0141ce3f706c64281097b) )
6017 	ROM_LOAD16_BYTE( "ec92_22.rom", 0x00001, 0x80000, CRC(d9a0d38e) SHA1(192f0303f4f64df46dc20701ed4362a4e14e40e7) )
6018 
6019 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6020 	ROM_LOAD( "ec92_19.rom", 0x000000, 0x100000, CRC(219141a5) SHA1(b549e91049dcb796d4104b4426674dd87589efde) )
6021 	ROM_LOAD( "c80-02.10",   0x100000, 0x100000, CRC(060a8b61) SHA1(b1888d8bce4c4624dc5bb64168c604ec64537c0e) )	/* ec92_20.rom*/
6022 
6023 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	/* 64k for Z80 code */
6024 	ROM_LOAD( "ec92_27.rom", 0x00000, 0x04000, CRC(2db48e65) SHA1(43a47ebc91c043a996e966cf808d71256e158494) )
6025 	ROM_CONTINUE(            0x10000, 0x0c000 )
6026 
6027 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* YM2610 samples */
6028 	ROM_LOAD( "c80-03.57", 0x000000, 0x100000, CRC(609938d5) SHA1(54c7a7265dee5cb031fd402f4c74858d73bec652) )	/* ec92_03.rom*/
6029 
6030 	/* no Delta-T samples */
6031 ROM_END
6032 
6033 ROM_START( koshien )	/* Ah Eikou no Koshien */
6034 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 256k for 68000 code */
6035 	ROM_LOAD16_BYTE( "c81-11.bin", 0x000000, 0x020000, CRC(b44ea8c9) SHA1(f1d19f531b7a653f1c4244d612a339d95ce8cc7c) )
6036 	ROM_LOAD16_BYTE( "c81-10.bin", 0x000001, 0x020000, CRC(8f98c40a) SHA1(f9471306c47ced10a56c09794954e55fdb6f6b85) )
6037 	ROM_LOAD16_WORD_SWAP( "c81-04.bin", 0x080000, 0x080000, CRC(1592b460) SHA1(d42514b4d588d0376914832f0e07ce626d1cdee0) )	/* data rom */
6038 
6039 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6040 	ROM_LOAD( "c81-03.bin", 0x000000, 0x100000, CRC(29bbf492) SHA1(bd370b1de256a432821b443a6653aab8507fb3a7) )
6041 
6042 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6043 	ROM_LOAD( "c81-01.bin", 0x000000, 0x100000, CRC(64b15d2a) SHA1(18b3b405f77ad80781e3fce4ef021ba49f707ed6) )
6044 	ROM_LOAD( "c81-02.bin", 0x100000, 0x100000, CRC(962461e8) SHA1(cb0313b00681c36110eed50eae41ad98eb22205d) )
6045 
6046 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6047 	ROM_LOAD( "c81-12.bin", 0x00000, 0x04000, CRC(6e8625b6) SHA1(212d384aa6ed43f5389739863afecbf0ad68af14) )
6048 	ROM_CONTINUE(           0x10000, 0x0c000 ) /* banked stuff */
6049 
6050 	ROM_REGION( 0x080000, REGION_SOUND1, 0 )	/* ADPCM samples */
6051 	ROM_LOAD( "c81-05.bin",  0x00000, 0x80000, CRC(9c3d71be) SHA1(79f1bb40d8356d9fc93b569c20be15e7fbf34580) )
6052 
6053 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )	/* Delta-T samples */
6054 	ROM_LOAD( "c81-06.bin",  0x00000, 0x80000, CRC(927833b4) SHA1(c09240e4885d2eace1c64fa6425faeeea0296d98) )
6055 ROM_END
6056 
6057 ROM_START( yuyugogo )	/* Yuuyu no QUIZ de GO!GO! */
6058 	ROM_REGION( 0x40000, REGION_CPU1, 0 )     /* 256k for 68000 code */
6059 	ROM_LOAD16_BYTE( "c83_10.3",  0x00000,  0x20000, CRC(4d185d03) SHA1(ab494c777a0acfe088d3db7c1a0488d40884ea0a) )
6060 	ROM_LOAD16_BYTE( "c83_09.2",  0x00001,  0x20000, CRC(f9892792) SHA1(310d02833c821a34baa0ce537019b8cade6402b7) )
6061 
6062 	ROM_REGION16_BE( 0x100000, REGION_USER1, 0 )
6063 	/* extra ROM mapped at d00000 */
6064 	ROM_LOAD16_WORD_SWAP( "c83-03.10", 0x000000, 0x100000, CRC(eed9acc2) SHA1(baa6a9aa5ed8fbbff7b289693407192b464cb7c7) )	/* data rom */
6065 
6066 	ROM_REGION( 0x020000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6067 	ROM_LOAD( "c83-05.21", 0x00000, 0x20000, CRC(eca57fb1) SHA1(c67b5e734f5fd8801a4376c0555ce4a891dcd6bc) )
6068 
6069 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6070 	ROM_LOAD16_BYTE( "c83-01.12",  0x000000, 0x100000, CRC(8bf0d416) SHA1(ec3d51422fcc8e3e822716d57adab56f639a2d02) )
6071 	ROM_LOAD16_BYTE( "c83-02.11",  0x000001, 0x100000, CRC(20bb1c15) SHA1(33370b665d681f765e363e5a8e79e62f59ad25f7) )
6072 
6073 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	 /* sound cpu */
6074 	ROM_LOAD( "c83_11.1"  , 0x00000, 0x04000, CRC(461e702a) SHA1(f1f4294a7e8acc50473df15a167ba84595c9eb15) )
6075 	ROM_CONTINUE(           0x10000, 0x0c000 ) /* banked stuff */
6076 
6077 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6078 	ROM_LOAD( "c83-04.5",  0x000000, 0x100000, CRC(2600093a) SHA1(824fde078e0ded58037bd06f888eac4e7487ac82) )
6079 
6080 	/* no Delta-T samples */
6081 ROM_END
6082 
6083 ROM_START( ninjak )
6084 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
6085 	ROM_LOAD16_BYTE( "c85_10x.19",  0x00000, 0x20000, CRC(ba7e6e74) SHA1(d6fc7529f1df348fedc6f32edd7691a6da35423d) )
6086 	ROM_LOAD16_BYTE( "c85_xx.5",    0x00001, 0x20000, CRC(0ac2cba2) SHA1(18e1b458995051c8d4a0077a41fa24dbaa318afc) )
6087 	ROM_LOAD16_BYTE( "c85_07.18",   0x40000, 0x20000, CRC(3eccfd0a) SHA1(54f20d852ab88a19e9ddee95b9c6057887a8d433) )
6088 	ROM_LOAD16_BYTE( "c85_06.4",    0x40001, 0x20000, CRC(d126ded1) SHA1(fc4b6504d0234e7e006a63e33fd061411f008c38) )
6089 
6090 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6091 	ROM_LOAD( "c85-03.10",    0x00000, 0x80000, CRC(4cc7b9df) SHA1(aaf0e587b86a7bf9fbfd4e19127a7295da8a3676) )
6092 
6093 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6094 	ROM_LOAD( "c85-01.16",    0x000000, 0x100000, CRC(a711977c) SHA1(b6b79ff6086a7b6e242fe26eec448f025ab431af) )
6095 	ROM_LOAD( "c85-02.15",    0x100000, 0x100000, CRC(a6ad0f3d) SHA1(6d3a661807dd64f0b56ae6252a7e980fd678feef) )
6096 
6097 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6098 	ROM_LOAD( "c85-14.6",     0x00000, 0x04000, CRC(f2a52a51) SHA1(951793c65a3436a7fb36f3058bc7a3b4265a90bb) )
6099 	ROM_CONTINUE(             0x10000, 0x0c000 ) /* banked stuff */
6100 
6101 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
6102 	ROM_LOAD( "c85-04.1",     0x00000, 0x80000, CRC(5afb747e) SHA1(e4f03582221f3a97f0e24693aa77264663eb1b47) )
6103 
6104 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
6105 	ROM_LOAD( "c85-05.11",    0x00000, 0x80000, CRC(3c1b0ed0) SHA1(08920dc55d695debae3eea5a8ff1d17bb11afd45) )
6106 ROM_END
6107 
6108 ROM_START( ninjakj )
6109 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
6110 	ROM_LOAD16_BYTE( "c85_10x.19",  0x00000, 0x20000, CRC(ba7e6e74) SHA1(d6fc7529f1df348fedc6f32edd7691a6da35423d) )
6111 	ROM_LOAD16_BYTE( "c85-11x.5",   0x00001, 0x20000, CRC(e4ccaa8e) SHA1(6e1b9dade70e3d91071a3ea590537232bb1215fe) )
6112 	ROM_LOAD16_BYTE( "c85_07.18",   0x40000, 0x20000, CRC(3eccfd0a) SHA1(54f20d852ab88a19e9ddee95b9c6057887a8d433) )
6113 	ROM_LOAD16_BYTE( "c85_06.4",    0x40001, 0x20000, CRC(d126ded1) SHA1(fc4b6504d0234e7e006a63e33fd061411f008c38) )
6114 
6115 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6116 	ROM_LOAD( "c85-03.10",    0x00000, 0x80000, CRC(4cc7b9df) SHA1(aaf0e587b86a7bf9fbfd4e19127a7295da8a3676) )
6117 
6118 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6119 	ROM_LOAD( "c85-01.16",    0x000000, 0x100000, CRC(a711977c) SHA1(b6b79ff6086a7b6e242fe26eec448f025ab431af) )
6120 	ROM_LOAD( "c85-02.15",    0x100000, 0x100000, CRC(a6ad0f3d) SHA1(6d3a661807dd64f0b56ae6252a7e980fd678feef) )
6121 
6122 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6123 	ROM_LOAD( "c85-14.6",     0x00000, 0x04000, CRC(f2a52a51) SHA1(951793c65a3436a7fb36f3058bc7a3b4265a90bb) )
6124 	ROM_CONTINUE(             0x10000, 0x0c000 ) /* banked stuff */
6125 
6126 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
6127 	ROM_LOAD( "c85-04.1",     0x00000, 0x80000, CRC(5afb747e) SHA1(e4f03582221f3a97f0e24693aa77264663eb1b47) )
6128 
6129 	ROM_REGION( 0x80000, REGION_SOUND2, 0 )	/* Delta-T samples */
6130 	ROM_LOAD( "c85-05.11",    0x00000, 0x80000, CRC(3c1b0ed0) SHA1(08920dc55d695debae3eea5a8ff1d17bb11afd45) )
6131 ROM_END
6132 
6133 ROM_START( solfigtr )	/* Solitary Fighter */
6134 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
6135 	ROM_LOAD16_BYTE( "c91-05.59",  0x00000, 0x40000, CRC(c1260e7c) SHA1(406663b8f92380f37955061765d77a92dc51c17a) )
6136 	ROM_LOAD16_BYTE( "c91-09.61",  0x00001, 0x40000, CRC(d82b5266) SHA1(670dc91067dd856b5d36b71e5ddf67e82220d83b) )
6137 
6138 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6139 	ROM_LOAD( "c91-03.34", 0x000000, 0x100000, CRC(8965da12) SHA1(b06f3fc91c9ce1e20cb4187505f3c7921c54cc12) )
6140 
6141 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6142 	ROM_LOAD( "c91-01.12", 0x000000, 0x100000, CRC(0f3f4e00) SHA1(5912eddc066435b276d615842d123f58c4852b2b) )
6143 	ROM_LOAD( "c91-02.11", 0x100000, 0x100000, CRC(e14ab98e) SHA1(b2e559ec9ccf383e693b27436081c29d30f17835) )
6144 
6145 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6146 	ROM_LOAD( "c91-07.62", 0x00000, 0x04000, CRC(e471a05a) SHA1(4d9c2b734aac27819673094dc1843e1ca5fe6994) )
6147 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
6148 
6149 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
6150 	ROM_LOAD( "c91-04.28", 0x00000, 0x80000, CRC(390b1065) SHA1(ee7ba77634854e4896528ff1bbc308de92a5815b) )	/* Channel A */
6151 
6152 	/* no Delta-T samples */
6153 
6154 /*Pals c74-06.48*/
6155 ROM_END
6156 
6157 ROM_START( qzquest )	/* Quiz Quest */
6158 	ROM_REGION( 0x180000, REGION_CPU1, 0 )     /* 256k for 68000 code */
6159 	ROM_LOAD16_BYTE( "c92_06.8", 0x000000, 0x020000, CRC(424be722) SHA1(ec064028bd68e8e2ec37705cab1c79c963188944) )
6160 	ROM_LOAD16_BYTE( "c92_05.7", 0x000001, 0x020000, CRC(da470f93) SHA1(dc6d2142fc5662f4b3ffbe4cc9adb5b394d958ed) )
6161 	ROM_LOAD16_WORD_SWAP( "c92-03.6", 0x100000, 0x080000, CRC(1d697606) SHA1(0af7ac3c3229f139fab1569adaa893b43999bc89) )	/* data rom */
6162 
6163 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6164 	ROM_LOAD( "c92-02.10", 0x000000, 0x100000, CRC(2daccecf) SHA1(bd22f95210f2bb0b63d210a54e07535c3f0e1031) )
6165 
6166 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6167 	ROM_LOAD( "c92-01.21", 0x000000, 0x100000, CRC(9976a285) SHA1(8575ee18a3a6d690c9aa09f0c540665a31f87216) )
6168 
6169 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6170 	ROM_LOAD( "c92_07.5",  0x00000, 0x04000, CRC(3e313db9) SHA1(44f781c7d3df8eacd745dc0af180cec9e1164b89) )
6171 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
6172 
6173 	ROM_REGION( 0x080000, REGION_SOUND1, 0 )	/* ADPCM samples */
6174 	ROM_LOAD( "c92-04.9",  0x000000, 0x080000, CRC(e421bb43) SHA1(a89157e65b537b31f5837435dae848adde8a86d1) )
6175 
6176 	/* no Delta-T samples */
6177 ROM_END
6178 
6179 ROM_START( pulirula )
6180 	ROM_REGION( 0xc0000, REGION_CPU1, 0 )     /* 768k for 68000 code */
6181 	ROM_LOAD16_BYTE( "c98-12.rom", 0x00000, 0x40000, CRC(816d6cde) SHA1(cac583440cca9aa57373f4a6c9a68c5442a5258b) )
6182 	ROM_LOAD16_BYTE( "c98-16.rom", 0x00001, 0x40000, CRC(59df5c77) SHA1(e6f222589dd8d046fb92dcf5f68ab0f6cd1b725b) )
6183 	ROM_LOAD16_BYTE( "c98-06.rom", 0x80000, 0x20000, CRC(64a71b45) SHA1(40734c378f15cd47d4128f9713bf19b0d42c0517) )
6184 	ROM_LOAD16_BYTE( "c98-07.rom", 0x80001, 0x20000, CRC(90195bc0) SHA1(0f7e48ee8964dec1fbc6f8dab57f3ae67b2494d2) )
6185 
6186 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6187 	ROM_LOAD( "c98-04.rom", 0x000000, 0x100000, CRC(0e1fe3b2) SHA1(37bf8e946ee4239de104a07ff87727cb6e2a3932) )
6188 
6189 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6190 	ROM_LOAD( "c98-02.rom", 0x000000, 0x100000, CRC(4a2ad2b3) SHA1(3296cf2855203d06170c991d187c65ccc3751952) )
6191 	ROM_LOAD( "c98-03.rom", 0x100000, 0x100000, CRC(589a678f) SHA1(228b959046bec10b28599d83d9e58fd149273473) )
6192 
6193 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* pivot gfx */
6194 	ROM_LOAD( "c98-05.rom", 0x000000, 0x080000, CRC(9ddd9c39) SHA1(4005a540c5cef6754284361da79a9e5e15612146) )
6195 
6196 	ROM_REGION( 0x2c000, REGION_CPU2, 0 )      /* sound cpu */
6197 	ROM_LOAD( "c98-14.rom", 0x00000, 0x04000, CRC(a858e17c) SHA1(4389f43035a94e776a25350a8989dcfdb3e4675a) )
6198 	ROM_CONTINUE(           0x10000, 0x1c000 ) /* banked stuff */
6199 
6200 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6201 	ROM_LOAD( "c98-01.rom", 0x000000, 0x100000, CRC(197f66f5) SHA1(cc5d104033f9ab7d614afd47eeb61a22ef5714ea) )
6202 
6203 	/* no Delta-T samples */
6204 ROM_END
6205 
6206 ROM_START( pulirulj )
6207 	ROM_REGION( 0xc0000, REGION_CPU1, 0 )     /* 768k for 68000 code */
6208 	ROM_LOAD16_BYTE( "c98-12.rom", 0x00000, 0x40000, CRC(816d6cde) SHA1(cac583440cca9aa57373f4a6c9a68c5442a5258b) )
6209 	ROM_LOAD16_BYTE( "c98-13",     0x00001, 0x40000, CRC(b7d13d5b) SHA1(f2cac6931c5984d68c2d5303b53c54b5781b3aed) )
6210 	ROM_LOAD16_BYTE( "c98-06.rom", 0x80000, 0x20000, CRC(64a71b45) SHA1(40734c378f15cd47d4128f9713bf19b0d42c0517) )
6211 	ROM_LOAD16_BYTE( "c98-07.rom", 0x80001, 0x20000, CRC(90195bc0) SHA1(0f7e48ee8964dec1fbc6f8dab57f3ae67b2494d2) )
6212 
6213 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6214 	ROM_LOAD( "c98-04.rom", 0x000000, 0x100000, CRC(0e1fe3b2) SHA1(37bf8e946ee4239de104a07ff87727cb6e2a3932) )
6215 
6216 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6217 	ROM_LOAD( "c98-02.rom", 0x000000, 0x100000, CRC(4a2ad2b3) SHA1(3296cf2855203d06170c991d187c65ccc3751952) )
6218 	ROM_LOAD( "c98-03.rom", 0x100000, 0x100000, CRC(589a678f) SHA1(228b959046bec10b28599d83d9e58fd149273473) )
6219 
6220 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )	/* pivot gfx */
6221 	ROM_LOAD( "c98-05.rom", 0x000000, 0x080000, CRC(9ddd9c39) SHA1(4005a540c5cef6754284361da79a9e5e15612146) )
6222 
6223 	ROM_REGION( 0x2c000, REGION_CPU2, 0 )      /* sound cpu */
6224 	ROM_LOAD( "c98-14.rom", 0x00000, 0x04000, CRC(a858e17c) SHA1(4389f43035a94e776a25350a8989dcfdb3e4675a) )
6225 	ROM_CONTINUE(           0x10000, 0x1c000 ) /* banked stuff */
6226 
6227 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6228 	ROM_LOAD( "c98-01.rom", 0x000000, 0x100000, CRC(197f66f5) SHA1(cc5d104033f9ab7d614afd47eeb61a22ef5714ea) )
6229 
6230 	/* no Delta-T samples */
6231 ROM_END
6232 
6233 ROM_START( metalb )
6234 	ROM_REGION( 0xc0000, REGION_CPU1, 0 )     /* 768k for 68000 code */
6235 	ROM_LOAD16_BYTE( "d16-16.8",   0x00000, 0x40000, CRC(3150be61) SHA1(63e0e6c6dc3a64da77bc83a160bbcd0f7d98ca52) )
6236 	ROM_LOAD16_BYTE( "d16-18.7",   0x00001, 0x40000, CRC(5216d092) SHA1(d5a237112f0e76fa68f26a4a4e804818dc49a2fa) )
6237 	ROM_LOAD16_BYTE( "d12-07.9",   0x80000, 0x20000, CRC(e07f5136) SHA1(27df1a1f21c27feb91801e3cc304ee534969f792) )
6238 	ROM_LOAD16_BYTE( "d12-06.6",   0x80001, 0x20000, CRC(131df731) SHA1(537a9f404d797db051a5aaf0afa2cd1e9c0bdcfb) )
6239 
6240 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6241 	ROM_LOAD16_BYTE( "d12-03.14",  0x00000, 0x80000, CRC(46b498c0) SHA1(c2ec7ce9ac7874d1bc54ce4b5d428d73c5a16549) )
6242 	ROM_LOAD16_BYTE( "d12-04.13",  0x00001, 0x80000, CRC(ab66d141) SHA1(e7f82b297dd2ae0b5d29886e5393cece61b742bb) )
6243 
6244 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6245 	ROM_LOAD( "d12-01.20", 0x000000, 0x100000, CRC(b81523b9) SHA1(e688e88008db87fed0051fbcb28d3e3ae7e945a8) )
6246 
6247 	ROM_REGION( 0x2c000, REGION_CPU2, 0 )      /* sound cpu */
6248 	ROM_LOAD( "d12-13.5", 0x00000, 0x04000, CRC(bcca2649) SHA1(d932134416c951d849ae41598f75609d453ed520) )
6249 	ROM_CONTINUE(         0x10000, 0x1c000 ) /* banked stuff */
6250 
6251 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6252 	ROM_LOAD( "d12-02.10", 0x000000, 0x100000, CRC(79263e74) SHA1(f9ef222239855d593b5855dbf9ea0376ea349c4b) )
6253 
6254 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )   /* Delta-T samples */
6255 	ROM_LOAD( "d12-05.16", 0x000000, 0x080000, CRC(7fd036c5) SHA1(f412c6302cfba73df110943d7d6679dc908479f7) )
6256 ROM_END
6257 
6258 ROM_START( metalbj )
6259 	ROM_REGION( 0xc0000, REGION_CPU1, 0 )     /* 768k for 68000 code */
6260 	ROM_LOAD16_BYTE( "d12-12.8",   0x00000, 0x40000, CRC(556f82b2) SHA1(fbce771eda99fd8b778f64fdc314ada4b6fdffde) )
6261 	ROM_LOAD16_BYTE( "d12-11.7",   0x00001, 0x40000, CRC(af9ee28d) SHA1(2c2ced0240e929da6ebec0ea7aac641531833583) )
6262 	ROM_LOAD16_BYTE( "d12-07.9",   0x80000, 0x20000, CRC(e07f5136) SHA1(27df1a1f21c27feb91801e3cc304ee534969f792) )
6263 	ROM_LOAD16_BYTE( "d12-06.6",   0x80001, 0x20000, CRC(131df731) SHA1(537a9f404d797db051a5aaf0afa2cd1e9c0bdcfb) )
6264 
6265 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6266 	ROM_LOAD16_BYTE( "d12-03.14",  0x00000, 0x80000, CRC(46b498c0) SHA1(c2ec7ce9ac7874d1bc54ce4b5d428d73c5a16549) )
6267 	ROM_LOAD16_BYTE( "d12-04.13",  0x00001, 0x80000, CRC(ab66d141) SHA1(e7f82b297dd2ae0b5d29886e5393cece61b742bb) )
6268 
6269 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6270 	ROM_LOAD( "d12-01.20", 0x000000, 0x100000, CRC(b81523b9) SHA1(e688e88008db87fed0051fbcb28d3e3ae7e945a8) )
6271 
6272 	ROM_REGION( 0x2c000, REGION_CPU2, 0 )      /* sound cpu */
6273 	ROM_LOAD( "d12-13.5", 0x00000, 0x04000, CRC(bcca2649) SHA1(d932134416c951d849ae41598f75609d453ed520) )
6274 	ROM_CONTINUE(         0x10000, 0x1c000 ) /* banked stuff */
6275 
6276 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6277 	ROM_LOAD( "d12-02.10", 0x000000, 0x100000, CRC(79263e74) SHA1(f9ef222239855d593b5855dbf9ea0376ea349c4b) )
6278 
6279 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )   /* Delta-T samples */
6280 	ROM_LOAD( "d12-05.16", 0x000000, 0x080000, CRC(7fd036c5) SHA1(f412c6302cfba73df110943d7d6679dc908479f7) )
6281 ROM_END
6282 
6283 ROM_START( qzchikyu )
6284 	ROM_REGION( 0x180000, REGION_CPU1, 0 )     /* 256k for 68000 code */
6285 	ROM_LOAD16_BYTE( "d19_06.8",	0x000000, 0x020000, CRC(de8c8e55) SHA1(ffe177231193ff32da575a4f72fc655b88f08aa8) )
6286 	ROM_LOAD16_BYTE( "d19_05.7",	0x000001, 0x020000, CRC(c6d099d0) SHA1(a291177e1ddbe993ffa91fbe41fc04a57a568fd0) )
6287 	ROM_LOAD16_WORD_SWAP( "d19-03.6",	0x100000, 0x080000, CRC(5c1b92c0) SHA1(36af32584ef4b2856d397e5e3ee6d17d5be296fd) )	/* data rom */
6288 
6289 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6290 	ROM_LOAD( "d19-02.10",	0x000000, 0x100000, CRC(f2dce2f2) SHA1(29fd34f1177f0b587bfef40534adaea7afc0efcb) )
6291 
6292 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6293 	ROM_LOAD( "d19-01.21",	0x000000, 0x100000, CRC(6c4342d0) SHA1(197e51302c23f65b8808ec9a66391b972c275867) )
6294 
6295 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6296 	ROM_LOAD( "d19_07.5",	0x00000, 0x04000, CRC(a8935f84) SHA1(6f264cf7a52dfb8248b8aeb4ff34477d7ccb0b6d) )
6297 	ROM_CONTINUE(			0x10000, 0x0c000 ) /* banked stuff */
6298 
6299 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6300 	ROM_LOAD( "d19-04.9",	0x000000, 0x080000, CRC(d3c44905) SHA1(d00bd4f11523b2123383dd852ee5484d907ff904) )
6301 
6302 	/* no Delta-T samples */
6303 ROM_END
6304 
6305 ROM_START( yesnoj )	/* Yes/No Sinri Tokimeki Chart */
6306 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
6307 	ROM_LOAD16_BYTE( "d20-05-2.2",  0x00000, 0x40000, CRC(68adb929) SHA1(5238409708d67f03d251338883de536bdf76c6c1) )
6308 	ROM_LOAD16_BYTE( "d20-04-2.4",  0x00001, 0x40000, CRC(a84762f8) SHA1(2950419fc6dca35a43a565575cec21de8efb9df1) )
6309 
6310 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6311 	ROM_LOAD( "d20-01.11", 0x00000, 0x80000, CRC(9d8a4d57) SHA1(d7afcd86bdfe2a4c94a7c2847e17ba7e41d4de79) )
6312 
6313 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6314 	ROM_LOAD16_BYTE( "d20-02.12",  0x00000, 0x80000, CRC(e71a8e40) SHA1(cda7f14ba90f178887b9cd57d5b85be7d5090ca7) )
6315 	ROM_LOAD16_BYTE( "d20-03.13",  0x00001, 0x80000, CRC(6a51a1b4) SHA1(a2492a7775e137a705b3281de674724d4aab4fe1) )
6316 
6317 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6318 	ROM_LOAD( "d20-06.5",  0x00000, 0x04000, CRC(3eb537dc) SHA1(368a03fc265157faf50612b823a78c820b2519f1) )
6319 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
6320 
6321 	/* no ADPCM samples */
6322 
6323 	/* no Delta-T samples */
6324 ROM_END
6325 
6326 ROM_START( deadconx )
6327 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 1024k for 68000 code */
6328 	ROM_LOAD16_BYTE( "d28_06.3",  0x00000, 0x40000, CRC(5b4bff51) SHA1(a589cbc8425add9ed5f2add26f17bb18fe53ca8a) )
6329 	ROM_LOAD16_BYTE( "d28_12.5",  0x00001, 0x40000, CRC(9b74e631) SHA1(6a3ec317492fdf44dcee66ef8323611c55cd8843) )
6330 	ROM_LOAD16_BYTE( "d28_09.2",  0x80000, 0x40000, CRC(143a0cc1) SHA1(a0b658b6a1567651d6fe1a955e1c853b48301f30) )
6331 	ROM_LOAD16_BYTE( "d28_08.4",  0x80001, 0x40000, CRC(4c872bd9) SHA1(a78eec00b40445ad49425ba5a9b392b8516a30ff) )
6332 
6333 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6334 	ROM_LOAD16_BYTE( "d28_04.16", 0x00000, 0x80000, CRC(dcabc26b) SHA1(2e5e9912710ede9fc7c87430572f4e33a2ab66e7) )
6335 	ROM_LOAD16_BYTE( "d28_05.17", 0x00001, 0x80000, CRC(862f9665) SHA1(c576c929f90ff454adca8f127fd7f74863d03239) )
6336 
6337 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6338 	ROM_LOAD( "d28_01.8", 0x000000, 0x100000, CRC(181d7b69) SHA1(fea7bd60224cf98d53d1389695f2e0d76e50b573) )
6339 	ROM_LOAD( "d28_02.9", 0x100000, 0x100000, CRC(d301771c) SHA1(2756bb834b50a657bbcf4e9bec02f4af595ac7e9) )
6340 
6341 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	 /* sound cpu */
6342 	ROM_LOAD( "d28_10.6", 0x00000, 0x04000, CRC(40805d74) SHA1(172114be692c766622d1235e5c4aa83ad438d9d9) )
6343 	ROM_CONTINUE(         0x10000, 0x0c000 )	/* banked stuff */
6344 
6345 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6346 	ROM_LOAD( "d28_03.10", 0x000000, 0x100000, CRC(a1804b52) SHA1(f252c473a71a4cf80d9f984fec08e5ae7524a620) )
6347 
6348 	/* no Delta-T samples */
6349 ROM_END
6350 
6351 ROM_START( deadconj )
6352 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 1024k for 68000 code */
6353 	ROM_LOAD16_BYTE( "d28_06.3",  0x00000, 0x40000, CRC(5b4bff51) SHA1(a589cbc8425add9ed5f2add26f17bb18fe53ca8a) )
6354 	ROM_LOAD16_BYTE( "d28_07.5",  0x00001, 0x40000, CRC(3fb8954c) SHA1(3104c1537f5fda7e5619aacfb48b02e969399a89) )
6355 	ROM_LOAD16_BYTE( "d28_09.2",  0x80000, 0x40000, CRC(143a0cc1) SHA1(a0b658b6a1567651d6fe1a955e1c853b48301f30) )
6356 	ROM_LOAD16_BYTE( "d28_08.4",  0x80001, 0x40000, CRC(4c872bd9) SHA1(a78eec00b40445ad49425ba5a9b392b8516a30ff) )
6357 
6358 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6359 	ROM_LOAD16_BYTE( "d28_04.16", 0x00000, 0x80000, CRC(dcabc26b) SHA1(2e5e9912710ede9fc7c87430572f4e33a2ab66e7) )
6360 	ROM_LOAD16_BYTE( "d28_05.17", 0x00001, 0x80000, CRC(862f9665) SHA1(c576c929f90ff454adca8f127fd7f74863d03239) )
6361 
6362 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6363 	ROM_LOAD( "d28_01.8", 0x000000, 0x100000, CRC(181d7b69) SHA1(fea7bd60224cf98d53d1389695f2e0d76e50b573) )
6364 	ROM_LOAD( "d28_02.9", 0x100000, 0x100000, CRC(d301771c) SHA1(2756bb834b50a657bbcf4e9bec02f4af595ac7e9) )
6365 
6366 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	 /* sound cpu */
6367 	ROM_LOAD( "d28_10.6", 0x00000, 0x04000, CRC(40805d74) SHA1(172114be692c766622d1235e5c4aa83ad438d9d9) )
6368 	ROM_CONTINUE(         0x10000, 0x0c000 )	/* banked stuff */
6369 
6370 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6371 	ROM_LOAD( "d28_03.10", 0x000000, 0x100000, CRC(a1804b52) SHA1(f252c473a71a4cf80d9f984fec08e5ae7524a620) )
6372 
6373 	/* no Delta-T samples */
6374 ROM_END
6375 
6376 ROM_START( dinorex )
6377 	ROM_REGION( 0x300000, REGION_CPU1, 0 )     /* 1Mb for 68000 code */
6378 	ROM_LOAD16_BYTE( "d39_14.9",	0x000000, 0x080000, CRC(e6aafdac) SHA1(083c6f27b9f7b983e93c7f5d30a9a286b925c10c) )
6379 	ROM_LOAD16_BYTE( "d39_16.8",	0x000001, 0x080000, CRC(cedc8537) SHA1(b2063c2405a3d244157ae07d60a077fdd984dbb6) )
6380 	ROM_LOAD16_WORD_SWAP( "d39-04.6",	0x100000, 0x100000, CRC(3800506d) SHA1(a75067e94071617cd5dafdd0ae0ec096dded520a) )	/* data rom */
6381 	ROM_LOAD16_WORD_SWAP( "d39-05.7",	0x200000, 0x100000, CRC(e2ec3b5d) SHA1(143b72d0f2f5c40dbaeed1eee0672c3b95c2bda6) )	/* data rom */
6382 
6383 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6384 	ROM_LOAD( "d39-06.2",	0x000000, 0x100000, CRC(52f62835) SHA1(251c4f17bc98a5e81c224864fb81352cf1234377) )
6385 
6386 	ROM_REGION( 0x600000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6387 	ROM_LOAD( "d39-01.29",	0x000000, 0x200000, CRC(d10e9c7d) SHA1(42c13b271a91fac37be4ea92eb358ad6a6c540cf) )
6388 	ROM_LOAD( "d39-02.28",	0x200000, 0x200000, CRC(6c304403) SHA1(97cd58bd7d00550b7ed5f77b066216c05206b513) )
6389 	ROM_LOAD( "d39-03.27",	0x400000, 0x200000, CRC(fc9cdab4) SHA1(ce2dfac922d6ac0f008b7dfb92d76c1671ccabbd) )
6390 
6391 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		 /* sound cpu */
6392 	ROM_LOAD( "d39_12.5",	0x00000, 0x04000, CRC(8292c7c1) SHA1(2ff20726f6cc6d98d860d96b8eb3c10f46b87d58) )
6393 	ROM_CONTINUE(             0x10000, 0x0c000 )	/* banked stuff */
6394 
6395 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6396 	ROM_LOAD( "d39-07.10",	0x000000, 0x100000, CRC(28262816) SHA1(6df9a31a2edf1dfc23070b41b1da2c0a9e91d1b0) )
6397 
6398 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )	/* Delta-T samples */
6399 	ROM_LOAD( "d39-08.4",	0x000000, 0x080000, CRC(377b8b7b) SHA1(4905ac3b9b52c70afe5f451f860fb9acd81a1dbb) )
6400 ROM_END
6401 
6402 ROM_START( dinorexj )
6403 	ROM_REGION( 0x300000, REGION_CPU1, 0 )     /* 1Mb for 68000 code */
6404 	ROM_LOAD16_BYTE( "d39_14.9",	0x000000, 0x080000, CRC(e6aafdac) SHA1(083c6f27b9f7b983e93c7f5d30a9a286b925c10c) )
6405 	ROM_LOAD16_BYTE( "d39_13.8",	0x000001, 0x080000, CRC(ae496b2f) SHA1(0e2ed2b77287590343820841d413ce6cb05b616d) )
6406 	ROM_LOAD16_WORD_SWAP( "d39-04.6",	0x100000, 0x100000, CRC(3800506d) SHA1(a75067e94071617cd5dafdd0ae0ec096dded520a) )	/* data rom */
6407 	ROM_LOAD16_WORD_SWAP( "d39-05.7",	0x200000, 0x100000, CRC(e2ec3b5d) SHA1(143b72d0f2f5c40dbaeed1eee0672c3b95c2bda6) )	/* data rom */
6408 
6409 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6410 	ROM_LOAD( "d39-06.2",	0x000000, 0x100000, CRC(52f62835) SHA1(251c4f17bc98a5e81c224864fb81352cf1234377) )
6411 
6412 	ROM_REGION( 0x600000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6413 	ROM_LOAD( "d39-01.29",	0x000000, 0x200000, CRC(d10e9c7d) SHA1(42c13b271a91fac37be4ea92eb358ad6a6c540cf) )
6414 	ROM_LOAD( "d39-02.28",	0x200000, 0x200000, CRC(6c304403) SHA1(97cd58bd7d00550b7ed5f77b066216c05206b513) )
6415 	ROM_LOAD( "d39-03.27",	0x400000, 0x200000, CRC(fc9cdab4) SHA1(ce2dfac922d6ac0f008b7dfb92d76c1671ccabbd) )
6416 
6417 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		 /* sound cpu */
6418 	ROM_LOAD( "d39_12.5",	0x00000, 0x04000, CRC(8292c7c1) SHA1(2ff20726f6cc6d98d860d96b8eb3c10f46b87d58) )
6419 	ROM_CONTINUE(             0x10000, 0x0c000 )	/* banked stuff */
6420 
6421 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6422 	ROM_LOAD( "d39-07.10",	0x000000, 0x100000, CRC(28262816) SHA1(6df9a31a2edf1dfc23070b41b1da2c0a9e91d1b0) )
6423 
6424 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )	/* Delta-T samples */
6425 	ROM_LOAD( "d39-08.4",	0x000000, 0x080000, CRC(377b8b7b) SHA1(4905ac3b9b52c70afe5f451f860fb9acd81a1dbb) )
6426 ROM_END
6427 
6428 ROM_START( dinorexu )
6429 	ROM_REGION( 0x300000, REGION_CPU1, 0 )	/* 1Mb for 68000 code */
6430 	ROM_LOAD16_BYTE( "d39_14.9",	0x000000, 0x080000, CRC(e6aafdac) SHA1(083c6f27b9f7b983e93c7f5d30a9a286b925c10c) )
6431 	ROM_LOAD16_BYTE( "d39_15.8",	0x000001, 0x080000, CRC(fe96723b) SHA1(e68b2149cc935ff36efa501b086d5ffb1e0f5887) )
6432 	ROM_LOAD16_WORD_SWAP( "d39-04.6",	0x100000, 0x100000, CRC(3800506d) SHA1(a75067e94071617cd5dafdd0ae0ec096dded520a) )	/* data rom */
6433 	ROM_LOAD16_WORD_SWAP( "d39-05.7",	0x200000, 0x100000, CRC(e2ec3b5d) SHA1(143b72d0f2f5c40dbaeed1eee0672c3b95c2bda6) )	/* data rom */
6434 
6435 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6436 	ROM_LOAD( "d39-06.2",	0x000000, 0x100000, CRC(52f62835) SHA1(251c4f17bc98a5e81c224864fb81352cf1234377) )
6437 
6438 	ROM_REGION( 0x600000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6439 	ROM_LOAD( "d39-01.29",	0x000000, 0x200000, CRC(d10e9c7d) SHA1(42c13b271a91fac37be4ea92eb358ad6a6c540cf) )
6440 	ROM_LOAD( "d39-02.28",	0x200000, 0x200000, CRC(6c304403) SHA1(97cd58bd7d00550b7ed5f77b066216c05206b513) )
6441 	ROM_LOAD( "d39-03.27",	0x400000, 0x200000, CRC(fc9cdab4) SHA1(ce2dfac922d6ac0f008b7dfb92d76c1671ccabbd) )
6442 
6443 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		 /* sound cpu */
6444 	ROM_LOAD( "d39_12.5",	0x00000, 0x04000, CRC(8292c7c1) SHA1(2ff20726f6cc6d98d860d96b8eb3c10f46b87d58) )
6445 	ROM_CONTINUE(             0x10000, 0x0c000 )	/* banked stuff */
6446 
6447 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6448 	ROM_LOAD( "d39-07.10",	0x000000, 0x100000, CRC(28262816) SHA1(6df9a31a2edf1dfc23070b41b1da2c0a9e91d1b0) )
6449 
6450 	ROM_REGION( 0x080000, REGION_SOUND2, 0 )	/* Delta-T samples */
6451 	ROM_LOAD( "d39-08.4",	0x000000, 0x080000, CRC(377b8b7b) SHA1(4905ac3b9b52c70afe5f451f860fb9acd81a1dbb) )
6452 ROM_END
6453 
6454 ROM_START( qjinsei )	/* Quiz Jinsei Gekijoh */
6455 	ROM_REGION( 0x200000, REGION_CPU1, 0 )     /* 512k for 68000 code */
6456 	ROM_LOAD16_BYTE( "d48-09",  0x000000, 0x040000, CRC(a573b68d) SHA1(fc12c7fb577c919cdb8e16e6d0ddba5603813a13) )
6457 	ROM_LOAD16_BYTE( "d48-10",  0x000001, 0x040000, CRC(37143a5b) SHA1(8a06031618b60a0c8f38789027d0ed042e540c4d) )
6458 	ROM_LOAD16_WORD_SWAP( "d48-03",  0x100000, 0x100000, CRC(fb5ea8dc) SHA1(2444042a85af6ae5b87e95ab09f661b877f215cc) )	/* data rom */
6459 
6460 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6461 	ROM_LOAD( "d48-04", 0x000000, 0x100000, CRC(61e4b078) SHA1(c01722af74220d0bb0daf3b78f53f8875209e066) )
6462 
6463 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6464 	ROM_LOAD16_BYTE( "d48-02", 0x000000, 0x100000, CRC(a7b68e63) SHA1(ecdd0b7f4c52eac8c6e4218f69c01cf9b2f98e2a) )
6465 	ROM_LOAD16_BYTE( "d48-01", 0x000001, 0x100000, CRC(72a94b73) SHA1(f4f296886c5fdb227f43cb9231bb15742f8a77f1) )
6466 
6467 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6468 	ROM_LOAD( "d48-11",    0x00000, 0x04000, CRC(656c5b54) SHA1(650bcc5920838db5c6613bcf30468d6e296ea017) )
6469 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
6470 
6471 	ROM_REGION( 0x080000, REGION_SOUND1, 0 )	/* ADPCM samples */
6472 	ROM_LOAD( "d48-05",  0x000000, 0x080000, CRC(3fefd058) SHA1(338c35c3a086041d28708d4b17e208b590c926d5) )
6473 
6474 	/* no Delta-T samples */
6475 ROM_END
6476 
6477 ROM_START( qcrayon )	/* Quiz Crayon */
6478 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
6479 	ROM_LOAD16_BYTE( "d55-13",  0x00000, 0x40000, CRC(16afbfc7) SHA1(daf948603c78312aa8fb8e239097939ec89ecc64) )
6480 	ROM_LOAD16_BYTE( "d55-14",  0x00001, 0x40000, CRC(2fb3057f) SHA1(3b107dc69c01ca1b90c78a122336896b89509a3e) )
6481 
6482 	ROM_REGION16_BE( 0x100000, REGION_USER1, 0 )
6483 	/* extra ROM mapped 0x300000 */
6484 	ROM_LOAD16_WORD_SWAP( "d55-03", 0x000000, 0x100000, CRC(4d161e76) SHA1(96189294f91f165423ba585c650ee47fc8165725) )   /* data rom */
6485 
6486 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )	/* SCR */
6487 	ROM_LOAD( "d55-02", 0x000000, 0x100000, CRC(f3db2f1c) SHA1(a96d89dd2c851dae3a237141c478fe2a65dda9c3) )
6488 
6489 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )	/* OBJ */
6490 	ROM_LOAD16_BYTE( "d55-05", 0x000000, 0x100000, CRC(f0e59902) SHA1(44d93e0e9622a98796a128a0273065947f586a1d) )
6491 	ROM_LOAD16_BYTE( "d55-04", 0x000001, 0x100000, CRC(412975ce) SHA1(32058a87947d6b6cdc8b147ddfcf359792f9c9fc) )
6492 
6493 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )	 /* sound cpu */
6494 	ROM_LOAD( "d55-15",  0x00000, 0x04000, CRC(ba782eff) SHA1(ce24654db49b9694e444e93b9a8d529a86729e03) )
6495 	ROM_CONTINUE(        0x10000, 0x0c000 )	/* banked stuff */
6496 
6497 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6498 	ROM_LOAD( "d55-01",  0x000000, 0x100000, CRC(a8309af4) SHA1(dc30b2e019003c58aecaf899668b36dea6e1274e) )
6499 
6500 	/* no Delta-T samples */
6501 ROM_END
6502 
6503 ROM_START( qcrayon2 )	/* Quiz Crayon 2 */
6504 	ROM_REGION( 0x80000, REGION_CPU1, 0 )     /* 512k for 68000 code */
6505 	ROM_LOAD16_BYTE( "d63-12",  0x00000, 0x40000, CRC(0f445a38) SHA1(cb9212c6c61d7dec7cfa039ebbbabd368dad52c3) )
6506 	ROM_LOAD16_BYTE( "d63-13",  0x00001, 0x40000, CRC(74455752) SHA1(9835eb5ebad8df96abe8f7d5f8e4ff663b38015a) )
6507 
6508 	ROM_REGION16_BE( 0x080000, REGION_USER1, 0 )
6509 	/* extra ROM mapped at 600000 */
6510 	ROM_LOAD16_WORD_SWAP( "d63-01", 0x00000, 0x80000, CRC(872e38b4) SHA1(dbb3728655dee03f6583db976708507c9ac5be16) )   /* data rom */
6511 
6512 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )    /* SCR */
6513 	ROM_LOAD( "d63-03", 0x000000, 0x100000, CRC(d24843af) SHA1(6508182f9038e4603230a6489e89ebae91c2f761) )
6514 
6515 	ROM_REGION( 0x200000, REGION_GFX2, ROMREGION_DISPOSE )    /* OBJ */
6516 	ROM_LOAD( "d63-06", 0x000000, 0x200000, CRC(58b1e4a8) SHA1(1b957c2d2d1cdada9972880d9d7b6c8c584edabb) )
6517 
6518 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )      /* sound cpu */
6519 	ROM_LOAD( "d63-11",    0x00000, 0x04000, CRC(2c7ac9e5) SHA1(2477fb4415781afddc2f4084eca52f53b7d40480) )
6520 	ROM_CONTINUE(          0x10000, 0x0c000 ) /* banked stuff */
6521 
6522 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6523 	ROM_LOAD( "d63-02",  0x000000, 0x100000, CRC(162ae165) SHA1(8b503d096640ec91cf55e05374b293937965c672) )
6524 
6525 	/* no Delta-T samples */
6526 ROM_END
6527 
6528 ROM_START( driftout )
6529 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 1024k for 68000 code */
6530 	ROM_LOAD16_BYTE( "do_46.rom",  0x00000, 0x80000, CRC(f960363e) SHA1(3f64fd606d4e19198de460cf2d99331a2d2e7434) )
6531 	ROM_LOAD16_BYTE( "do_45.rom",  0x00001, 0x80000, CRC(e3fe66b9) SHA1(6b197061be0c296af08a86dace08ba75c9574e19) )
6532 
6533 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
6534 	/* empty */
6535 
6536 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )      /* OBJ */
6537 	ROM_LOAD( "do_obj.rom", 0x00000, 0x80000, CRC(5491f1c4) SHA1(a2e92a9a1e77d9f683f6720947e0622dde48287f) )
6538 
6539 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )      /* pivot gfx */
6540 	ROM_LOAD( "do_piv.rom", 0x00000, 0x80000, CRC(c4f012f7) SHA1(4ad6a88f6a7f89b2b4c62c2b376d4e7b43c3d442) )
6541 
6542 	ROM_REGION( 0x1c000, REGION_CPU2, 0 )		/* sound cpu */
6543 	ROM_LOAD( "do_50.rom",  0x00000, 0x04000, CRC(ffe10124) SHA1(a47dfedfa7b352a5db39e7e1ccc666d3c5fb0d75) )
6544 	ROM_CONTINUE(           0x10000, 0x0c000 )	/* banked stuff */
6545 
6546 	ROM_REGION( 0x80000, REGION_SOUND1, 0 )	/* ADPCM samples */
6547 	ROM_LOAD( "do_snd.rom", 0x00000, 0x80000, CRC(f2deb82b) SHA1(55e39173a475f5ab0b5f573a678a493fb6eefe64) )
6548 
6549 	/* no Delta-T samples */
6550 ROM_END
6551 
6552 ROM_START( driveout )
6553 	ROM_REGION( 0x100000, REGION_CPU1, 0 )     /* 1024k for 68000 code */
6554 	ROM_LOAD16_BYTE( "driveout.003", 0x00000, 0x80000, CRC(dc431e4e) SHA1(6002cb7a2bd05e28a2413942998a5c7e11fc1432) )
6555 	ROM_LOAD16_BYTE( "driveout.002", 0x00001, 0x80000, CRC(6f9063f4) SHA1(7ea55126a2f6391322740432d835cd06450909ae) )
6556 
6557 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
6558 	/* empty */
6559 
6560 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )      /* OBJ */
6561 	ROM_LOAD16_BYTE( "driveout.084", 0x00000, 0x40000, CRC(530ac420) SHA1(d66006958580205d0962871ba7d0b40a067bb9af) )
6562 	ROM_LOAD16_BYTE( "driveout.081", 0x00001, 0x40000, CRC(0e9a3e9e) SHA1(7bb21e6fc930a5e1913bffb626958d0ee22d5883) )
6563 
6564 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )      /* pivot gfx */
6565 	ROM_LOAD( "do_piv.rom",    0x00000, 0x80000, CRC(c4f012f7) SHA1(4ad6a88f6a7f89b2b4c62c2b376d4e7b43c3d442) )
6566 
6567 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	 /* sound cpu */
6568 	ROM_LOAD( "driveout.020",  0x0000,  0x8000, CRC(99aaeb2e) SHA1(c7eb174f2ddcd8fd2b73b5251f434a20a9627b49) )
6569 
6570 	ROM_REGION( 0x100000, REGION_SOUND1, 0 )	/* ADPCM samples */
6571 	ROM_LOAD( "driveout.028",  0x00000, 0x20000, CRC(cbde0b66) SHA1(b264aa525ff40c7813182031825cd052db887000) )	/* banked */
6572 	ROM_CONTINUE(              0x40000, 0x20000 )
6573 	ROM_CONTINUE(              0x80000, 0x20000 )
6574 	ROM_CONTINUE(              0xc0000, 0x20000 )
6575 	ROM_LOAD( "driveout.029",  0x20000, 0x20000, CRC(0aba2026) SHA1(f592e3b294d44f499fdca4cc31646e55d8c3dfbf) )	/* sandwiched */
6576 	ROM_RELOAD(                0x60000, 0x20000 )
6577 	ROM_RELOAD(                0xa0000, 0x20000 )
6578 	ROM_RELOAD(                0xe0000, 0x20000 )
6579 ROM_END
6580 
6581 
6582 DRIVER_INIT( f2 )
6583 {
6584 	state_save_register_int("taitof2", 0, "sound region", &banknum);
6585 	state_save_register_func_postload(reset_sound_region);
6586 }
6587 
DRIVER_INIT(finalb)6588 DRIVER_INIT( finalb )
6589 {
6590 	int i;
6591 	unsigned char data;
6592 	unsigned int offset;
6593 	UINT8 *gfx = memory_region(REGION_GFX2);
6594 
6595 	offset = 0x100000;
6596 	for (i = 0x180000; i<0x200000; i++)
6597 	{
6598 		int d1,d2,d3,d4;
6599 
6600 		/* convert from 2bits into 4bits format */
6601 		data = gfx[i];
6602 		d1 = (data>>0) & 3;
6603 		d2 = (data>>2) & 3;
6604 		d3 = (data>>4) & 3;
6605 		d4 = (data>>6) & 3;
6606 
6607 		gfx[offset] = (d3<<2) | (d4<<6);
6608 		offset++;
6609 
6610 		gfx[offset] = (d1<<2) | (d2<<6);
6611 		offset++;
6612 	}
6613 
6614 	init_f2();
6615 }
6616 
DRIVER_INIT(mjnquest)6617 DRIVER_INIT( mjnquest )
6618 {
6619 	int i;
6620 	UINT8 *gfx = memory_region(REGION_GFX2);
6621 
6622 	/* the bytes in each longword are in reversed order, put them in the
6623 	   order used by the other games. */
6624 	for (i = 0;i < memory_region_length(REGION_GFX2);i += 2)
6625 	{
6626 		int t;
6627 
6628 		t = gfx[i];
6629 		gfx[i] = (gfx[i+1] >> 4) | (gfx[i+1] << 4);
6630 		gfx[i+1] = (t >> 4) | (t << 4);
6631 	}
6632 
6633 	init_f2();
6634 }
6635 
DRIVER_INIT(yesnoj)6636 DRIVER_INIT( yesnoj )
6637 {
6638 	yesnoj_dsw = 0;
6639 	state_save_register_int("yesnoj_dsw", 0, "control", &yesnoj_dsw);
6640 	init_f2();
6641 }
6642 
DRIVER_INIT(driveout)6643 DRIVER_INIT( driveout )
6644 {
6645 	state_save_register_int("driveout_sound1", 0, "sound", &driveout_sound_latch);
6646 	state_save_register_int("driveout_sound2", 0, "sound region", &oki_bank);
6647 	state_save_register_func_postload(reset_driveout_sound_region);
6648 	init_f2();
6649 }
6650 
6651 
6652 GAME( 1988, finalb,   0,        finalb,   finalb,   finalb,   ROT0,   "Taito Corporation Japan", "Final Blow (World)" )
6653 GAME( 1988, finalbj,  finalb,   finalb,   finalbj,  finalb,   ROT0,   "Taito Corporation", "Final Blow (Japan)" )
6654 GAME( 1989, dondokod, 0,        dondokod, dondokod, f2,       ROT0,   "Taito Corporation Japan", "Don Doko Don (World)" )
6655 GAME( 1989, dondokdu, dondokod, dondokod, dondokdu, f2,       ROT0,   "Taito America Corporation", "Don Doko Don (US)" )
6656 GAME( 1989, dondokdj, dondokod, dondokod, dondokdj, f2,       ROT0,   "Taito Corporation", "Don Doko Don (Japan)" )
6657 GAME( 1989, megab,    0,        megab,    megab,    f2,       ROT0,   "Taito Corporation Japan", "Mega Blast (World)" )
6658 GAME( 1989, megabj,   megab,    megab,    megabj,   f2,       ROT0,   "Taito Corporation", "Mega Blast (Japan)" )
6659 GAME( 1990, thundfox, 0,        thundfox, thundfox, f2,       ROT0,   "Taito Corporation Japan", "Thunder Fox (World)" )
6660 GAME( 1990, thndfoxu, thundfox, thundfox, thndfoxu, f2,       ROT0,   "Taito America Corporation", "Thunder Fox (US)" )
6661 GAME( 1990, thndfoxj, thundfox, thundfox, thndfoxj, f2,       ROT0,   "Taito Corporation", "Thunder Fox (Japan)" )
6662 GAME( 1989, cameltry, 0,        cameltry, cameltry, f2,       ROT0,   "Taito America Corporation", "Cameltry (US)" )
6663 GAMEX(1989, camltrua, cameltry, camltrua, cameltry, f2,       ROT0,   "Taito America Corporation", "Cameltry (US, alt sound)", GAME_IMPERFECT_SOUND )
6664 GAME( 1989, cameltrj, cameltry, cameltry, cameltrj, f2,       ROT0,   "Taito Corporation", "Cameltry (Japan)" )
6665 GAME( 1990, qtorimon, 0,        qtorimon, qtorimon, f2,       ROT0,   "Taito Corporation", "Quiz Torimonochou (Japan)" )
6666 GAME( 1990, liquidk,  0,        liquidk,  liquidk,  f2,       ROT0,   "Taito Corporation Japan", "Liquid Kids (World)" )
6667 GAME( 1990, liquidku, liquidk,  liquidk,  liquidku, f2,       ROT0,   "Taito America Corporation", "Liquid Kids (US)" )
6668 GAME( 1990, mizubaku, liquidk,  liquidk,  mizubaku, f2,       ROT0,   "Taito Corporation", "Mizubaku Daibouken (Japan)" )
6669 GAME( 1990, quizhq,   0,        quizhq,   quizhq,   f2,       ROT0,   "Taito Corporation", "Quiz H.Q. (Japan)" )
6670 GAME( 1990, ssi,      0,        ssi,      ssi,      f2,       ROT270, "Taito Corporation Japan", "Super Space Invaders '91 (World)" )
6671 GAME( 1990, majest12, ssi,      ssi,      majest12, f2,       ROT270, "Taito Corporation", "Majestic Twelve - The Space Invaders Part IV (Japan)" )
6672 GAME( 1990, gunfront, 0,        gunfront, gunfront, f2,       ROT270, "Taito Corporation Japan", "Gun and Frontier (World)" )
6673 GAME( 1990, gunfronj, gunfront, gunfront, gunfronj, f2,       ROT270, "Taito Corporation", "Gun Frontier (Japan)" )
6674 GAME( 1990, growl,    0,        growl,    growl,    f2,       ROT0,   "Taito Corporation Japan", "Growl (World)" )
6675 GAME( 1990, growlu,   growl,    growl,    growlu,   f2,       ROT0,   "Taito America Corporation", "Growl (US)" )
6676 GAME( 1990, runark,   growl,    growl,    runark,   f2,       ROT0,   "Taito Corporation", "Runark (Japan)" )
6677 GAME( 1990, mjnquest, 0,        mjnquest, mjnquest, mjnquest, ROT0,   "Taito Corporation", "Mahjong Quest (Japan)" )
6678 GAME( 1990, mjnquesb, mjnquest, mjnquest, mjnquest, mjnquest, ROT0,   "Taito Corporation", "Mahjong Quest (No Nudity)" )
6679 GAME( 1990, footchmp, 0,        footchmp, footchmp, f2,       ROT0,   "Taito Corporation Japan", "Football Champ (World)" )
6680 GAME( 1990, hthero,   footchmp, hthero,   hthero,   f2,       ROT0,   "Taito Corporation", "Hat Trick Hero (Japan)" )
6681 GAME( 1992, euroch92, footchmp, footchmp, footchmp, f2,       ROT0,   "Taito Corporation Japan", "Euro Champ '92 (World)" )
6682 GAME( 1990, koshien,  0,        koshien,  koshien,  f2,       ROT0,   "Taito Corporation", "Ah Eikou no Koshien (Japan)" )
6683 GAME( 1990, yuyugogo, 0,        yuyugogo, yuyugogo, f2,       ROT0,   "Taito Corporation", "Yuuyu no Quiz de GO!GO! (Japan)" )
6684 GAME( 1990, ninjak,   0,        ninjak,   ninjak,   f2,       ROT0,   "Taito Corporation Japan", "The Ninja Kids (World)" )
6685 GAME( 1990, ninjakj,  ninjak,   ninjak,   ninjakj,  f2,       ROT0,   "Taito Corporation", "The Ninja Kids (Japan)" )
6686 GAME( 1991, solfigtr, 0,        solfigtr, solfigtr, f2,       ROT0,   "Taito Corporation Japan", "Solitary Fighter (World)" )
6687 GAME( 1991, qzquest,  0,        qzquest , qzquest,  f2,       ROT0,   "Taito Corporation", "Quiz Quest - Hime to Yuusha no Monogatari (Japan)" )
6688 GAME( 1991, pulirula, 0,        pulirula, pulirula, f2,       ROT0,   "Taito Corporation Japan", "PuLiRuLa (World)" )
6689 GAME( 1991, pulirulj, pulirula, pulirula, pulirulj, f2,       ROT0,   "Taito Corporation", "PuLiRuLa (Japan)" )
6690 GAME( 1991, metalb,   0,        metalb,   metalb,   f2,       ROT0,   "Taito Corporation Japan", "Metal Black (World)" )
6691 GAME( 1991, metalbj,  metalb,   metalb,   metalbj,  f2,       ROT0,   "Taito Corporation", "Metal Black (Japan)" )
6692 GAME( 1991, qzchikyu, 0,        qzchikyu, qzchikyu, f2,       ROT0,   "Taito Corporation", "Quiz Chikyu Bouei Gun (Japan)" )
6693 GAME( 1992, yesnoj,   0,        yesnoj,   yesnoj,   yesnoj,   ROT0,   "Taito Corporation", "Yes-No Sinri Tokimeki Chart" )
6694 GAME( 1992, deadconx, 0,        deadconx, deadconx, f2,       ROT0,   "Taito Corporation Japan", "Dead Connection (World)" )
6695 GAME( 1992, deadconj, deadconx, deadconj, deadconj, f2,       ROT0,   "Taito Corporation", "Dead Connection (Japan)" )
6696 GAME( 1992, dinorex,  0,        dinorex,  dinorex,  f2,       ROT0,   "Taito Corporation Japan", "Dino Rex (World)" )
6697 GAME( 1992, dinorexj, dinorex,  dinorex,  dinorexj, f2,       ROT0,   "Taito Corporation", "Dino Rex (Japan)" )
6698 GAME( 1992, dinorexu, dinorex,  dinorex,  dinorex,  f2,       ROT0,   "Taito America Corporation", "Dino Rex (US)" )
6699 GAME( 1992, qjinsei,  0,        qjinsei,  qjinsei,  f2,       ROT0,   "Taito Corporation", "Quiz Jinsei Gekijoh (Japan)" )
6700 GAME( 1993, qcrayon,  0,        qcrayon,  qcrayon,  f2,       ROT0,   "Taito Corporation", "Quiz Crayon Shinchan (Japan)" )
6701 GAME( 1993, qcrayon2, 0,        qcrayon2, qcrayon2, f2,       ROT0,   "Taito Corporation", "Crayon Shinchan Orato Asobo (Japan)" )
6702 GAME( 1991, driftout, 0,        driftout, driftout, f2,       ROT270, "Visco", "Drift Out (Japan)" )
6703 GAME( 1991, driveout, driftout, driveout, driftout, driveout, ROT270, "bootleg", "Drive Out" )
6704