1 #include "../vidhrdw/snk.c"
2
3 /*
4 snk.c
5 various SNK triple Z80 games
6
7 Known Issues:
8 - sound glitches:
9 Touchdown Fever, Fighting Soccer: crashes if Y8950 is used
10 Psycho Soldier: some samples aren't played
11 Chopper1: YM3812 interferes with Y8950
12 - consolidate gfx decode/drivers, if possible
13 - emulate protection (get rid of patches)
14 - translucency issues in Bermuda Triangle? (see brick tiles in title screen)
15
16 Bryan McPhail, 27/01/00:
17
18 Fixed Gwar, Gwarj, both working properly now.
19 Renamed Gwarjp to Gwarj.
20 Added Gwara
21 Removed strcmp(drv->names) :)
22 Made Gwara (the new clone) the main set, and old gwar to gwara. This is
23 because (what is now) gwara seemingly has a different graphics board. Fix
24 chars and scroll registers are in different locations, while gwar (new)
25 matches the bootleg and original japanese versions.
26
27 Added Bermuda Triangle (alternate), World Wars, these are the 'early'
28 versions of the main set with different sprites, gameplay etc. All roms
29 are different except for the samples, technically Bermuda Triangle (Alt)
30 is a clone of World Wars rather than the main Bermuda set.
31
32 Bermuda Triangle (alt) has some tile banking problems (see attract mode),
33 this may also be the cause of the title screen corruption in Bermuda
34 Triangle (main set).
35
36 ****************************************************************************
37
38 ym3526
39 Aso, Tank
40
41 ym3526x2
42 Athena, Ikari, Fighting Golf
43
44 ym3526 + y8950
45 Victory Road, Psycho Soldier, Bermuda Triangle, Touchdown Fever, Guerilla War
46
47 ym3812 + y8950
48 Legofair, Chopper1
49
50 y8950
51 Fighting Soccer
52
53 Credits (in alphabetical order)
54 Ernesto Corvi
55 Carlos A. Lozano
56 Jarek Parchanski
57 Phil Stroffolino (pjstroff@hotmail.com)
58 Victor Trucco
59 Marco Cassili
60
61 ***************************************************************************/
62
63 #include "driver.h"
64 #include "vidhrdw/generic.h"
65 #include "cpu/z80/z80.h"
66
67 extern void snk_vh_convert_color_prom(unsigned char *palette, unsigned short *colortable,const unsigned char *color_prom);
68 extern void aso_vh_convert_color_prom(unsigned char *palette, unsigned short *colortable,const unsigned char *color_prom);
69 extern void ikari_vh_convert_color_prom(unsigned char *palette, unsigned short *colortable,const unsigned char *color_prom);
70
71 extern int snk_vh_start( void );
72 extern void snk_vh_stop( void );
73
74 extern void tnk3_vh_screenrefresh(struct osd_bitmap *bitmap,int full_refresh);
75 extern void ikari_vh_screenrefresh(struct osd_bitmap *bitmap,int full_refresh);
76 extern void tdfever_vh_screenrefresh(struct osd_bitmap *bitmap,int full_refresh);
77 extern void ftsoccer_vh_screenrefresh(struct osd_bitmap *bitmap,int full_refresh);
78 extern void gwar_vh_screenrefresh(struct osd_bitmap *bitmap,int full_refresh);
79 extern void psychos_vh_screenrefresh(struct osd_bitmap *bitmap,int full_refresh);
80
81 /*********************************************************************/
82
83 #define SNK_NMI_ENABLE 1
84 #define SNK_NMI_PENDING 2
85 static int cpuA_latch, cpuB_latch;
86
87 static unsigned char *shared_ram, *io_ram, *shared_ram2;
88 extern int snk_bg_tilemap_baseaddr, gwar_sprite_placement;
89
90 /*********************************************************************/
91
92 static int hard_flags;
93
94 #define SNK_MAX_INPUT_PORTS 12
95
96 typedef enum {
97 SNK_UNUSED,
98 SNK_INP0,
99 SNK_INP1,SNK_INP2,SNK_INP3,SNK_INP4,
100 SNK_INP5,SNK_INP6,SNK_INP7,SNK_INP8,
101 SNK_INP9,SNK_INP10,
102 SNK_ROT8_PLAYER1, SNK_ROT8_PLAYER2,
103 SNK_ROT12_PLAYER1, SNK_ROT12_PLAYER2
104 } SNK_INPUT_PORT_TYPE;
105
106 static const SNK_INPUT_PORT_TYPE *snk_io; /* input port configuration */
107
108 static int snk_sound_busy_bit;
109
110 /*********************************************************************/
111
112 static int snk_sound_register;
113 /*
114 This 4 bit register is mapped at 0xf800.
115
116 Writes to this register always contain 0x0f in the lower nibble.
117 The upper nibble contains a mask, which clears bits
118
119 bit 0: set by YM3526/YM3812 callback?
120 bit 1: set by Y8950 callback?
121 bit 2: sound cpu busy
122 bit 3: sound command pending
123 */
124
125 /*********************************************************************/
126
snk_rot8(int which)127 static int snk_rot8( int which ){
128 const int dial_8[8] = { 0xf0,0x30,0x10,0x50,0x40,0xc0,0x80,0xa0 };
129 int value = readinputport(which+1);
130 int joypos16 = value>>4;
131 return (value&0xf) | dial_8[joypos16>>1];
132 }
133
snk_rot12(int which)134 static int snk_rot12( int which ){
135 /*
136 This routine converts a 4 bit (16 directional) analog input to the 12 directional input
137 that many SNK games require.
138 */
139 const int dial_12[12] = { 0xb0,0xa0,0x90,0x80,0x70,0x60,0x50,0x40,0x30,0x20,0x10,0x00 };
140 int value = readinputport(which+1);
141 int joypos16 = value>>4;
142
143 static int old_joypos16[2];
144 static int joypos12[2];
145 int delta = joypos16 - old_joypos16[which];
146
147 old_joypos16[which] = joypos16;
148
149 if( delta>8 ) delta -= 16; else if( delta<-8 ) delta += 16;
150
151 joypos12[which] += delta;
152 while( joypos12[which]<0 ) joypos12[which] += 12;
153 while( joypos12[which]>=12 ) joypos12[which] -= 12;
154
155 return (value&0x0f) | dial_12[joypos12[which]];
156 }
157
snk_input_port_r(int which)158 static int snk_input_port_r( int which ){
159 switch( snk_io[which] ){
160 case SNK_INP0:
161 {
162 int value = input_port_0_r( 0 );
163 if( (snk_sound_register & 0x04) == 0 ) value &= ~snk_sound_busy_bit;
164 return value;
165 }
166
167 case SNK_ROT8_PLAYER1: return snk_rot8( 0 );
168 case SNK_ROT8_PLAYER2: return snk_rot8( 1 );
169
170 case SNK_ROT12_PLAYER1: return snk_rot12( 0 );
171 case SNK_ROT12_PLAYER2: return snk_rot12( 1 );
172
173 case SNK_INP1: return input_port_1_r(0);
174 case SNK_INP2: return input_port_2_r(0);
175 case SNK_INP3: return input_port_3_r(0);
176 case SNK_INP4: return input_port_4_r(0);
177 case SNK_INP5: return input_port_5_r(0);
178 case SNK_INP6: return input_port_6_r(0);
179 case SNK_INP7: return input_port_7_r(0);
180 case SNK_INP8: return input_port_8_r(0);
181 case SNK_INP9: return input_port_9_r(0);
182 case SNK_INP10: return input_port_10_r(0);
183
184 default:
185 //logerror("read from unmapped input port:%d\n", which );
186 break;
187 }
188 return 0;
189 }
190
191 /*********************************************************************/
192
WRITE_HANDLER(snk_sound_register_w)193 static WRITE_HANDLER( snk_sound_register_w ){
194 snk_sound_register &= (data>>4);
195 }
196
READ_HANDLER(snk_sound_register_r)197 static READ_HANDLER( snk_sound_register_r ){
198 return snk_sound_register;// | 0x2; /* hack; lets chopper1 play music */
199 }
200
snk_sound_callback0_w(int state)201 void snk_sound_callback0_w( int state ){ /* ? */
202 if( state ) snk_sound_register |= 0x01;
203 }
204
snk_sound_callback1_w(int state)205 void snk_sound_callback1_w( int state ){ /* ? */
206 if( state ) snk_sound_register |= 0x02;
207 }
208
209 static struct YM3526interface ym3526_interface = {
210 1, /* number of chips */
211 4000000, /* 4 MHz */
212 { 50 }, /* mixing level */
213 { snk_sound_callback0_w } /* ? */
214 };
215
216 static struct YM3526interface ym3526_ym3526_interface = {
217 2, /* number of chips */
218 4000000, /* 4 MHz */
219 { 50,50 }, /* mixing level */
220 { snk_sound_callback0_w, snk_sound_callback1_w } /* ? */
221 };
222
223 static struct Y8950interface y8950_interface = {
224 1, /* number of chips */
225 4000000, /* 4 MHz */
226 { 50 }, /* mixing level */
227 { snk_sound_callback1_w }, /* ? */
228 { REGION_SOUND1 } /* memory region */
229 };
230
231 static struct YM3812interface ym3812_interface = {
232 1, /* number of chips */
233 4000000, /* 4 MHz */
234 { 50,50 }, /* mixing level */
235 { snk_sound_callback0_w } /* ? */
236 };
237
238 /* We don't actually have any games that use two Y8950s,
239 but the soundchip implementation misbehaves if we
240 declare both a YM3526 and Y8950.
241
242 Since Y8950 is a superset of YM3526, this works.
243 */
244 static struct Y8950interface ym3526_y8950_interface = {
245 2, /* number of chips */
246 4000000, /* 4 MHz */
247 { 50, 50 }, /* mixing level */
248 { snk_sound_callback0_w, snk_sound_callback1_w }, /* ? */
249 { REGION_SOUND1, REGION_SOUND1 }
250 };
251
WRITE_HANDLER(snk_soundlatch_w)252 static WRITE_HANDLER( snk_soundlatch_w ){
253 snk_sound_register |= 0x08 | 0x04;
254 soundlatch_w( offset, data );
255 }
256
READ_HANDLER(snk_soundlatch_clear_r)257 static READ_HANDLER( snk_soundlatch_clear_r ){ /* TNK3 */
258 soundlatch_w( 0, 0 );
259 snk_sound_register = 0;
260 return 0x00;
261 }
262
263 /*********************************************************************/
264
265 static struct MemoryReadAddress YM3526_readmem_sound[] = {
266 { 0x0000, 0x7fff, MRA_ROM },
267 { 0x8000, 0x87ff, MRA_RAM },
268 { 0xa000, 0xa000, soundlatch_r },
269 { 0xc000, 0xc000, snk_soundlatch_clear_r },
270 { 0xe000, 0xe000, YM3526_status_port_0_r },
271 { -1 }
272 };
273
274 static struct MemoryWriteAddress YM3526_writemem_sound[] = {
275 { 0x0000, 0x7fff, MWA_ROM },
276 { 0x8000, 0x87ff, MWA_RAM },
277 { 0xe000, 0xe000, YM3526_control_port_0_w },
278 { 0xe001, 0xe001, YM3526_write_port_0_w },
279 { -1 }
280 };
281
282 static struct MemoryReadAddress YM3526_YM3526_readmem_sound[] = {
283 { 0x0000, 0xbfff, MRA_ROM },
284 { 0xc000, 0xcfff, MRA_RAM },
285 { 0xe000, 0xe000, soundlatch_r },
286 { 0xe800, 0xe800, YM3526_status_port_0_r },
287 { 0xf000, 0xf000, YM3526_status_port_1_r },
288 { 0xf800, 0xf800, snk_sound_register_r },
289 { -1 }
290 };
291
292 static struct MemoryWriteAddress YM3526_YM3526_writemem_sound[] = {
293 { 0x0000, 0xbfff, MWA_ROM },
294 { 0xc000, 0xcfff, MWA_RAM },
295 { 0xe800, 0xe800, YM3526_control_port_0_w },
296 { 0xec00, 0xec00, YM3526_write_port_0_w },
297 { 0xf000, 0xf000, YM3526_control_port_1_w },
298 { 0xf400, 0xf400, YM3526_write_port_1_w },
299 { 0xf800, 0xf800, snk_sound_register_w },
300 { -1 }
301 };
302
303 static struct MemoryReadAddress YM3526_Y8950_readmem_sound[] = {
304 { 0x0000, 0xbfff, MRA_ROM },
305 { 0xc000, 0xcfff, MRA_RAM },
306 { 0xe000, 0xe000, soundlatch_r },
307 { 0xe800, 0xe800, Y8950_status_port_0_r }, // YM3526_status_port_0_r
308 { 0xf000, 0xf000, Y8950_status_port_1_r },
309 { 0xf800, 0xf800, snk_sound_register_r },
310 { -1 }
311 };
312
313 static struct MemoryWriteAddress YM3526_Y8950_writemem_sound[] = {
314 { 0x0000, 0xbfff, MWA_ROM },
315 { 0xc000, 0xcfff, MWA_RAM },
316 { 0xe800, 0xe800, Y8950_control_port_0_w }, // YM3526_control_port_0_w
317 { 0xec00, 0xec00, Y8950_write_port_0_w }, // YM3526_write_port_0_w
318 { 0xf000, 0xf000, Y8950_control_port_1_w },
319 { 0xf400, 0xf400, Y8950_write_port_1_w },
320 { 0xf800, 0xf800, snk_sound_register_w },
321 { -1 }
322 };
323
324 static struct MemoryReadAddress YM3812_Y8950_readmem_sound[] = {
325 { 0x0000, 0xbfff, MRA_ROM },
326 { 0xc000, 0xcfff, MRA_RAM },
327 { 0xe000, 0xe000, soundlatch_r },
328 { 0xe800, 0xe800, YM3812_status_port_0_r },
329 { 0xf000, 0xf000, Y8950_status_port_0_r },
330 { 0xf800, 0xf800, snk_sound_register_r },
331 { -1 }
332 };
333
334 static struct MemoryWriteAddress YM3812_Y8950_writemem_sound[] = {
335 { 0x0000, 0xbfff, MWA_ROM },
336 { 0xc000, 0xcfff, MWA_RAM },
337 { 0xe800, 0xe800, YM3812_control_port_0_w },
338 { 0xec00, 0xec00, YM3812_write_port_0_w },
339 { 0xf000, 0xf000, Y8950_control_port_0_w },
340 { 0xf400, 0xf400, Y8950_write_port_0_w },
341 { 0xf800, 0xf800, snk_sound_register_w },
342 { -1 }
343 };
344
345 static struct MemoryReadAddress Y8950_readmem_sound[] = {
346 { 0x0000, 0xbfff, MRA_ROM },
347 { 0xc000, 0xcfff, MRA_RAM },
348 { 0xe000, 0xe000, soundlatch_r },
349 { 0xf000, 0xf000, YM3526_status_port_0_r },
350 // { 0xf000, 0xf000, Y8950_status_port_0_r },
351 { 0xf800, 0xf800, snk_sound_register_r },
352 { -1 }
353 };
354
355 static struct MemoryWriteAddress Y8950_writemem_sound[] = {
356 { 0x0000, 0xbfff, MWA_ROM },
357 { 0xc000, 0xcfff, MWA_RAM },
358 { 0xf000, 0xf000, YM3526_control_port_0_w },
359 { 0xf400, 0xf400, YM3526_write_port_0_w },
360 // { 0xf000, 0xf000, Y8950_control_port_0_w },
361 // { 0xf400, 0xf400, Y8950_write_port_0_w },
362 { 0xf800, 0xf800, snk_sound_register_w },
363 { -1 }
364 };
365
366 /********************** Tnk3, Athena, Fighting Golf ********************/
367
READ_HANDLER(shared_ram_r)368 static READ_HANDLER( shared_ram_r ){
369 return shared_ram[offset];
370 }
WRITE_HANDLER(shared_ram_w)371 static WRITE_HANDLER( shared_ram_w ){
372 shared_ram[offset] = data;
373 }
374
READ_HANDLER(shared_ram2_r)375 static READ_HANDLER( shared_ram2_r ){
376 return shared_ram2[offset];
377 }
WRITE_HANDLER(shared_ram2_w)378 static WRITE_HANDLER( shared_ram2_w ){
379 shared_ram2[offset] = data;
380 }
381
READ_HANDLER(cpuA_io_r)382 static READ_HANDLER( cpuA_io_r ){
383 switch( offset ){
384 case 0x000: return snk_input_port_r( 0 ); // coin input, player start
385 case 0x100: return snk_input_port_r( 1 ); // joy1
386 case 0x180: return snk_input_port_r( 2 ); // joy2
387 case 0x200: return snk_input_port_r( 3 ); // joy3
388 case 0x280: return snk_input_port_r( 4 ); // joy4
389 case 0x300: return snk_input_port_r( 5 ); // aim1
390 case 0x380: return snk_input_port_r( 6 ); // aim2
391 case 0x400: return snk_input_port_r( 7 ); // aim3
392 case 0x480: return snk_input_port_r( 8 ); // aim4
393 case 0x500: return snk_input_port_r( 9 ); // unused by tdfever
394 case 0x580: return snk_input_port_r( 10); // dsw
395 case 0x600: return snk_input_port_r( 11 ); // dsw
396
397 case 0x700:
398 if( cpuB_latch & SNK_NMI_ENABLE ){
399 cpu_cause_interrupt( 1, Z80_NMI_INT );
400 cpuB_latch = 0;
401 }
402 else {
403 cpuB_latch |= SNK_NMI_PENDING;
404 }
405 return 0xff;
406
407 /* "Hard Flags" */
408 case 0xe00:
409 case 0xe20:
410 case 0xe40:
411 case 0xe60:
412 case 0xe80:
413 case 0xea0:
414 case 0xee0: if( hard_flags ) return 0xff;
415 }
416 return io_ram[offset];
417 }
418
WRITE_HANDLER(cpuA_io_w)419 static WRITE_HANDLER( cpuA_io_w ){
420 switch( offset ){
421 case 0x000:
422 break;
423
424 case 0x400: /* most games */
425 case 0x500: /* tdfever */
426 snk_soundlatch_w( 0, data );
427 break;
428
429 case 0x700:
430 if( cpuA_latch&SNK_NMI_PENDING ){
431 cpu_cause_interrupt( 0, Z80_NMI_INT );
432 cpuA_latch = 0;
433 }
434 else {
435 cpuA_latch |= SNK_NMI_ENABLE;
436 }
437 break;
438
439 default:
440 io_ram[offset] = data;
441 break;
442 }
443 }
444
READ_HANDLER(cpuB_io_r)445 static READ_HANDLER( cpuB_io_r ){
446 switch( offset ){
447 case 0x000:
448 case 0x700:
449 if( cpuA_latch & SNK_NMI_ENABLE ){
450 cpu_cause_interrupt( 0, Z80_NMI_INT );
451 cpuA_latch = 0;
452 }
453 else {
454 cpuA_latch |= SNK_NMI_PENDING;
455 }
456 return 0xff;
457
458 /* "Hard Flags" they are needed here, otherwise ikarijp/b doesn't work right */
459 case 0xe00:
460 case 0xe20:
461 case 0xe40:
462 case 0xe60:
463 case 0xe80:
464 case 0xea0:
465 case 0xee0: if( hard_flags ) return 0xff;
466 }
467 return io_ram[offset];
468 }
469
WRITE_HANDLER(cpuB_io_w)470 static WRITE_HANDLER( cpuB_io_w ){
471 if( offset==0 || offset==0x700 ){
472 if( cpuB_latch&SNK_NMI_PENDING ){
473 cpu_cause_interrupt( 1, Z80_NMI_INT );
474 cpuB_latch = 0;
475 }
476 else {
477 cpuB_latch |= SNK_NMI_ENABLE;
478 }
479 return;
480 }
481 io_ram[offset] = data;
482 }
483
484 /********************** Tnk3, Athena, Fighting Golf ********************/
485
486 static struct MemoryReadAddress tnk3_readmem_cpuA[] =
487 {
488 { 0x0000, 0xbfff, MRA_ROM },
489 { 0xc000, 0xcfff, cpuA_io_r },
490 { 0xd000, 0xf7ff, MRA_RAM },
491 { 0xf800, 0xffff, MRA_RAM },
492 { -1 }
493 };
494 static struct MemoryWriteAddress tnk3_writemem_cpuA[] =
495 {
496 { 0x0000, 0xbfff, MWA_ROM },
497 { 0xc000, 0xcfff, cpuA_io_w, &io_ram },
498 { 0xd000, 0xf7ff, MWA_RAM, &shared_ram2 },
499 { 0xf800, 0xffff, MWA_RAM, &shared_ram },
500 { -1 }
501 };
502
503 static struct MemoryReadAddress tnk3_readmem_cpuB[] =
504 {
505 { 0x0000, 0xbfff, MRA_ROM },
506 { 0xc000, 0xc7ff, cpuB_io_r },
507 { 0xc800, 0xefff, shared_ram2_r },
508 { 0xf000, 0xf7ff, MRA_RAM },
509 { 0xf800, 0xffff, shared_ram_r },
510 { -1 }
511 };
512 static struct MemoryWriteAddress tnk3_writemem_cpuB[] =
513 {
514 { 0x0000, 0xbfff, MWA_ROM },
515 { 0xc000, 0xc7ff, cpuB_io_w },
516 { 0xc800, 0xefff, shared_ram2_w },
517 { 0xf000, 0xf7ff, MWA_RAM },
518 { 0xf800, 0xffff, shared_ram_w },
519 { -1 }
520 };
521
522
523 /* Chopper I, T.D.Fever, Psycho S., Bermuda T. */
524
525 static struct MemoryReadAddress readmem_cpuA[] =
526 {
527 { 0x0000, 0xbfff, MRA_ROM },
528 { 0xc000, 0xcfff, cpuA_io_r },
529 { 0xd000, 0xffff, MRA_RAM },
530 { -1 }
531 };
532 static struct MemoryWriteAddress writemem_cpuA[] =
533 {
534 { 0x0000, 0xbfff, MWA_ROM },
535 { 0xc000, 0xcfff, cpuA_io_w, &io_ram },
536 { 0xd000, 0xffff, MWA_RAM, &shared_ram },
537 { -1 }
538 };
539
540 static struct MemoryReadAddress readmem_cpuB[] =
541 {
542 { 0x0000, 0xbfff, MRA_ROM },
543 { 0xc000, 0xcfff, cpuB_io_r },
544 { 0xd000, 0xffff, shared_ram_r },
545 { -1 }
546 };
547 static struct MemoryWriteAddress writemem_cpuB[] =
548 {
549 { 0x0000, 0xbfff, MWA_ROM },
550 { 0xc000, 0xcfff, cpuB_io_w },
551 { 0xd000, 0xffff, shared_ram_w },
552 { -1 }
553 };
554
555 /*********************************************************************/
556
557 static struct GfxLayout char512 =
558 {
559 8,8,
560 512,
561 4,
562 { 0, 1, 2, 3 },
563 { 4, 0, 12, 8, 20, 16, 28, 24},
564 { 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32 },
565 256
566 };
567
568 static struct GfxLayout char1024 =
569 {
570 8,8,
571 1024,
572 4,
573 { 0, 1, 2, 3 },
574 { 4, 0, 12, 8, 20, 16, 28, 24},
575 { 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32 },
576 256
577 };
578
579 static struct GfxLayout tile1024 =
580 {
581 16,16,
582 1024,
583 4,
584 { 0, 1, 2, 3 },
585 { 4, 0, 12, 8, 20, 16, 28, 24,
586 32+4, 32+0, 32+12, 32+8, 32+20, 32+16, 32+28, 32+24, },
587 { 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64,
588 8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
589 128*8
590 };
591
592 static struct GfxLayout tile2048 =
593 {
594 16,16,
595 2048,
596 4,
597 { 0, 1, 2, 3 },
598 { 4, 0, 12, 8, 20, 16, 28, 24,
599 32+4, 32+0, 32+12, 32+8, 32+20, 32+16, 32+28, 32+24, },
600 { 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64,
601 8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
602 128*8
603 };
604
605 static struct GfxLayout tdfever_tiles =
606 {
607 16,16,
608 512*5,
609 4,
610 { 0, 1, 2, 3 },
611 { 4, 0, 12, 8, 20, 16, 28, 24,
612 32+4, 32+0, 32+12, 32+8, 32+20, 32+16, 32+28, 32+24, },
613 { 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64,
614 8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
615 128*8
616 };
617
618 static struct GfxLayout sprite512 =
619 {
620 16,16,
621 512,
622 3,
623 { 2*1024*256, 1*1024*256, 0*1024*256 },
624 { 7,6,5,4,3,2,1,0, 15,14,13,12,11,10,9,8 },
625 { 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
626 8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
627 256
628 };
629
630 static struct GfxLayout sprite1024 =
631 {
632 16,16,
633 1024,
634 3,
635 { 2*1024*256,1*1024*256,0*1024*256 },
636 { 7,6,5,4,3,2,1,0, 15,14,13,12,11,10,9,8 },
637 { 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
638 8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
639 256
640 };
641
642 static struct GfxLayout big_sprite512 =
643 {
644 32,32,
645 512,
646 3,
647 { 2*2048*256,1*2048*256,0*2048*256 },
648 {
649 7,6,5,4,3,2,1,0,
650 15,14,13,12,11,10,9,8,
651 23,22,21,20,19,18,17,16,
652 31,30,29,28,27,26,25,24
653 },
654 {
655 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32,
656 8*32, 9*32, 10*32, 11*32, 12*32, 13*32, 14*32, 15*32,
657 16*32+0*32, 16*32+1*32, 16*32+2*32, 16*32+3*32,
658 16*32+4*32, 16*32+5*32, 16*32+6*32, 16*32+7*32,
659 16*32+8*32, 16*32+9*32, 16*32+10*32, 16*32+11*32,
660 16*32+12*32, 16*32+13*32, 16*32+14*32, 16*32+15*32,
661 },
662 16*32*2
663 };
664
665 static struct GfxLayout gwar_sprite1024 =
666 {
667 16,16,
668 1024,
669 4,
670 { 3*2048*256,2*2048*256,1*2048*256,0*2048*256 },
671 {
672 8,9,10,11,12,13,14,15,
673 0,1,2,3,4,5,6,7
674 },
675 { 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
676 8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
677 256
678 };
679
680 static struct GfxLayout gwar_sprite2048 =
681 {
682 16,16,
683 2048,
684 4,
685 { 3*2048*256,2*2048*256,1*2048*256,0*2048*256 },
686 { 8,9,10,11,12,13,14,15, 0,1,2,3,4,5,6,7 },
687 { 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
688 8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
689 256
690 };
691
692 static struct GfxLayout gwar_big_sprite1024 =
693 {
694 32,32,
695 1024,
696 4,
697 { 3*1024*1024, 2*1024*1024, 1*1024*1024, 0*1024*1024 },
698 {
699 24,25,26,27,28,29,30,31,
700 16,17,18,19,20,21,22,23,
701 8,9,10,11,12,13,14,15,
702 0,1,2,3,4,5,6,7
703 },
704 {
705 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32,
706 8*32, 9*32, 10*32, 11*32, 12*32, 13*32, 14*32, 15*32,
707 16*32+0*32, 16*32+1*32, 16*32+2*32, 16*32+3*32,
708 16*32+4*32, 16*32+5*32, 16*32+6*32, 16*32+7*32,
709 16*32+8*32, 16*32+9*32, 16*32+10*32, 16*32+11*32,
710 16*32+12*32, 16*32+13*32, 16*32+14*32, 16*32+15*32,
711 },
712 1024
713 };
714
715 static struct GfxLayout tdfever_big_sprite1024 =
716 {
717 32,32,
718 1024,
719 4,
720 { 0*0x100000, 1*0x100000, 2*0x100000, 3*0x100000 },
721 {
722 7,6,5,4,3,2,1,0,
723 15,14,13,12,11,10,9,8,
724 23,22,21,20,19,18,17,16,
725 31,30,29,28,27,26,25,24
726 },
727 {
728 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32,
729 8*32, 9*32, 10*32, 11*32, 12*32, 13*32, 14*32, 15*32,
730 16*32+0*32, 16*32+1*32, 16*32+2*32, 16*32+3*32,
731 16*32+4*32, 16*32+5*32, 16*32+6*32, 16*32+7*32,
732 16*32+8*32, 16*32+9*32, 16*32+10*32, 16*32+11*32,
733 16*32+12*32, 16*32+13*32, 16*32+14*32, 16*32+15*32,
734 },
735 1024
736 };
737
738 /*********************************************************************/
739
740 static struct GfxDecodeInfo tnk3_gfxdecodeinfo[] =
741 {
742 { REGION_GFX1, 0x0, &char512, 128*3, 8 },
743 { REGION_GFX2, 0x0, &char1024, 128*1, 16 },
744 { REGION_GFX3, 0x0, &sprite512, 128*0, 16 },
745 { -1 }
746 };
747
748 static struct GfxDecodeInfo athena_gfxdecodeinfo[] =
749 {
750 /* colors 512-1023 are currently unused, I think they are a second bank */
751 { REGION_GFX1, 0x0, &char512, 128*3, 8 }, /* colors 384..511 */
752 { REGION_GFX2, 0x0, &char1024, 128*1, 16 }, /* colors 128..383 */
753 { REGION_GFX3, 0x0, &sprite1024, 0, 16 }, /* colors 0..127 */
754 { -1 }
755 };
756
757 static struct GfxDecodeInfo ikari_gfxdecodeinfo[] =
758 {
759 { REGION_GFX1, 0x0, &char512, 256, 16 },
760 { REGION_GFX2, 0x0, &tile1024, 256, 16 },
761 { REGION_GFX3, 0x0, &sprite1024, 0, 16 },
762 { REGION_GFX4, 0x0, &big_sprite512, 128, 16 },
763 { -1 }
764 };
765
766 static struct GfxDecodeInfo gwar_gfxdecodeinfo[] =
767 {
768 { REGION_GFX1, 0x0, &char1024, 256*0, 16 },
769 { REGION_GFX2, 0x0, &tile2048, 256*3, 16 },
770 { REGION_GFX3, 0x0, &gwar_sprite2048, 256*1, 16 },
771 { REGION_GFX4, 0x0, &gwar_big_sprite1024, 256*2, 16 },
772 { -1 }
773 };
774
775 static struct GfxDecodeInfo bermudat_gfxdecodeinfo[] =
776 {
777 { REGION_GFX1, 0x0, &char1024, 256*0, 16 },
778 { REGION_GFX2, 0x0, &tile2048, 256*3, 16 },
779 { REGION_GFX3, 0x0, &gwar_sprite1024, 256*1, 16 },
780 { REGION_GFX4, 0x0, &gwar_big_sprite1024, 256*2, 16 },
781 { -1 }
782 };
783
784 static struct GfxDecodeInfo psychos_gfxdecodeinfo[] =
785 {
786 { REGION_GFX1, 0x0, &char1024, 256*0, 16 },
787 { REGION_GFX2, 0x0, &tile2048, 256*3, 16 },
788 { REGION_GFX3, 0x0, &gwar_sprite1024, 256*1, 16 },
789 { REGION_GFX4, 0x0, &gwar_big_sprite1024, 256*2, 16 },
790 { -1 }
791 };
792
793 static struct GfxDecodeInfo tdfever_gfxdecodeinfo[] =
794 {
795 { REGION_GFX1, 0x0, &char1024, 256*0, 16 },
796 { REGION_GFX2, 0x0, &tdfever_tiles, 256*2, 16 },
797 { REGION_GFX3, 0x0, &tdfever_big_sprite1024, 256*1, 16 },
798 { -1 }
799 };
800
801
802 /**********************************************************************/
803
804 static struct MachineDriver machine_driver_tnk3 =
805 {
806 {
807 {
808 CPU_Z80,
809 4000000, /* ? */
810 tnk3_readmem_cpuA,tnk3_writemem_cpuA,0,0,
811 interrupt,1
812 },
813 {
814 CPU_Z80,
815 4000000, /* ? */
816 tnk3_readmem_cpuB,tnk3_writemem_cpuB,0,0,
817 interrupt,1
818 },
819 {
820 CPU_Z80 | CPU_AUDIO_CPU,
821 4000000, /* 4 Mhz (?) */
822 YM3526_readmem_sound,YM3526_writemem_sound,0,0,
823 interrupt,2 /* ? */
824 },
825 },
826 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
827 100, /* CPU slices per frame */
828 0, /* init machine */
829
830 /* video hardware */
831 36*8, 28*8, { 0*8, 36*8-1, 1*8, 28*8-1 },
832
833 tnk3_gfxdecodeinfo,
834 1024,1024,
835 aso_vh_convert_color_prom,
836
837 VIDEO_TYPE_RASTER,
838 0,
839 snk_vh_start,
840 snk_vh_stop,
841 tnk3_vh_screenrefresh,
842
843 /* sound hardware */
844 0,0,0,0,
845 {
846 {
847 SOUND_YM3526,
848 &ym3526_interface
849 }
850 }
851 };
852
853 static struct MachineDriver machine_driver_athena =
854 /* mostly identical to TNK3, but with an aditional YM3526 */
855 {
856 {
857 {
858 CPU_Z80,
859 4000000, /* ? */
860 tnk3_readmem_cpuA,tnk3_writemem_cpuA,0,0,
861 interrupt,1
862 },
863 {
864 CPU_Z80,
865 4000000, /* ? */
866 tnk3_readmem_cpuB,tnk3_writemem_cpuB,0,0,
867 interrupt,1
868 },
869 {
870 CPU_Z80 | CPU_AUDIO_CPU,
871 4000000, /* 4 Mhz (?) */
872 YM3526_YM3526_readmem_sound,YM3526_YM3526_writemem_sound,0,0,
873 interrupt,1
874 },
875
876 },
877 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
878 600, /* CPU slices per frame */
879 0, /* init machine */
880
881 /* video hardware */
882 36*8, 28*8, { 0*8, 36*8-1, 1*8, 28*8-1 },
883
884 athena_gfxdecodeinfo,
885 1024,1024,
886 aso_vh_convert_color_prom,
887
888 VIDEO_TYPE_RASTER,
889 0,
890 snk_vh_start,
891 snk_vh_stop,
892 tnk3_vh_screenrefresh, //athena_vh...
893
894 /* sound hardware */
895 0,0,0,0,
896 {
897 {
898 SOUND_YM3526,
899 &ym3526_ym3526_interface
900 }
901 }
902 };
903
904 static struct MachineDriver machine_driver_ikari =
905 {
906 {
907 {
908 CPU_Z80,
909 4000000, /* 4.0 Mhz (?) */
910 readmem_cpuA,writemem_cpuA,0,0,
911 interrupt,1
912 },
913 {
914 CPU_Z80,
915 4000000, /* 4.0 Mhz (?) */
916 readmem_cpuB,writemem_cpuB,0,0,
917 interrupt,1
918 },
919 {
920 CPU_Z80 | CPU_AUDIO_CPU,
921 4000000, /* 4 Mhz (?) */
922 YM3526_YM3526_readmem_sound,YM3526_YM3526_writemem_sound,0,0,
923 interrupt,1
924 },
925 },
926 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
927 100, /* CPU slices per frame */
928 0, /* init machine */
929
930 /* video hardware */
931 36*8, 28*8, { 0*8, 36*8-1, 1*8, 28*8-1 },
932
933 ikari_gfxdecodeinfo,
934 1024,1024,
935 ikari_vh_convert_color_prom,
936
937 VIDEO_TYPE_RASTER,
938 0,
939 snk_vh_start,
940 snk_vh_stop,
941 ikari_vh_screenrefresh,
942
943 /* sound hardware */
944 0,0,0,0,
945 {
946 {
947 SOUND_YM3526,
948 &ym3526_ym3526_interface
949 }
950 }
951 };
952
953 static struct MachineDriver machine_driver_victroad =
954 /* identical to Ikari Warriors, but sound system replaces one of the YM3526 with Y8950 */
955 {
956 {
957 {
958 CPU_Z80,
959 4000000, /* 4.0 Mhz (?) */
960 readmem_cpuA,writemem_cpuA,0,0,
961 interrupt,1
962 },
963 {
964 CPU_Z80,
965 4000000, /* 4.0 Mhz (?) */
966 readmem_cpuB,writemem_cpuB,0,0,
967 interrupt,1
968 },
969 {
970 CPU_Z80 | CPU_AUDIO_CPU,
971 4000000, /* 4 Mhz (?) */
972 YM3526_Y8950_readmem_sound,YM3526_Y8950_writemem_sound,0,0,
973 interrupt,1
974 },
975 },
976 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
977 100, /* CPU slices per frame */
978 0, /* init machine */
979
980 /* video hardware */
981 36*8, 28*8, { 0*8, 36*8-1, 1*8, 28*8-1 },
982
983 ikari_gfxdecodeinfo,
984 1024,1024,
985 ikari_vh_convert_color_prom,
986
987 VIDEO_TYPE_RASTER,
988 0,
989 snk_vh_start,
990 snk_vh_stop,
991 ikari_vh_screenrefresh,
992
993 /* sound hardware */
994 0,0,0,0,
995 {
996 {
997 SOUND_Y8950,
998 &ym3526_y8950_interface
999 }
1000 }
1001 };
1002
1003 static struct MachineDriver machine_driver_gwar =
1004 {
1005 {
1006 {
1007 CPU_Z80,
1008 4000000, /* 4.0 Mhz (?) */
1009 readmem_cpuA,writemem_cpuA,0,0,
1010 interrupt,1
1011 },
1012 {
1013 CPU_Z80,
1014 4000000, /* 4.0 Mhz (?) */
1015 readmem_cpuB,writemem_cpuB,0,0,
1016 interrupt,1
1017 },
1018 {
1019 CPU_Z80 | CPU_AUDIO_CPU,
1020 4000000, /* 4 Mhz (?) */
1021 YM3526_Y8950_readmem_sound,YM3526_Y8950_writemem_sound,0,0,
1022 interrupt,1
1023 },
1024 },
1025 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
1026 100, /* CPU slices per frame */
1027 0, /* init machine */
1028
1029 /* video hardware */
1030 384, 240, { 16, 383,0, 239-16 },
1031 gwar_gfxdecodeinfo,
1032 1024,1024,
1033 snk_vh_convert_color_prom,
1034
1035 VIDEO_TYPE_RASTER,
1036 0,
1037 snk_vh_start,
1038 snk_vh_stop,
1039 gwar_vh_screenrefresh,
1040
1041 /* sound hardware */
1042 0,0,0,0,
1043 {
1044 {
1045 SOUND_Y8950,
1046 &ym3526_y8950_interface
1047 }
1048 }
1049 };
1050
1051 static struct MachineDriver machine_driver_bermudat =
1052 {
1053 {
1054 {
1055 CPU_Z80,
1056 4000000, /* 4.0 Mhz (?) */
1057 readmem_cpuA,writemem_cpuA,0,0,
1058 interrupt,1
1059 },
1060 {
1061 CPU_Z80,
1062 4000000, /* 4.0 Mhz (?) */
1063 readmem_cpuB,writemem_cpuB,0,0,
1064 interrupt,1
1065 },
1066 {
1067 CPU_Z80 | CPU_AUDIO_CPU,
1068 4000000, /* 4 Mhz (?) */
1069 YM3526_Y8950_readmem_sound,YM3526_Y8950_writemem_sound,0,0,
1070 interrupt,1
1071 },
1072 },
1073 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
1074 100, /* CPU slices per frame */
1075 0, /* init machine */
1076
1077 /* video hardware */
1078 384, 240, { 16, 383,0, 239-16 },
1079 bermudat_gfxdecodeinfo,
1080 1024,1024,
1081 snk_vh_convert_color_prom,
1082
1083 VIDEO_TYPE_RASTER,
1084 0,
1085 snk_vh_start,
1086 snk_vh_stop,
1087 gwar_vh_screenrefresh,
1088
1089 /* sound hardware */
1090 0,0,0,0,
1091 {
1092 {
1093 SOUND_Y8950,
1094 &ym3526_y8950_interface
1095 }
1096 }
1097 };
1098
1099 static struct MachineDriver machine_driver_psychos =
1100 {
1101 {
1102 {
1103 CPU_Z80,
1104 4000000, /* 4.0 Mhz (?) */
1105 readmem_cpuA,writemem_cpuA,0,0,
1106 interrupt,1
1107 },
1108 {
1109 CPU_Z80,
1110 4000000, /* 4.0 Mhz (?) */
1111 readmem_cpuB,writemem_cpuB,0,0,
1112 interrupt,1
1113 },
1114 {
1115 CPU_Z80 | CPU_AUDIO_CPU,
1116 4000000, /* 4 Mhz (?) */
1117 YM3526_Y8950_readmem_sound,YM3526_Y8950_writemem_sound,0,0,
1118 interrupt,1
1119 },
1120 },
1121 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
1122 100, /* CPU slices per frame */
1123 0, /* init machine */
1124
1125 /* video hardware */
1126 384, 240, { 0, 383, 0, 239-16 },
1127 psychos_gfxdecodeinfo,
1128 1024,1024,
1129 snk_vh_convert_color_prom,
1130
1131 VIDEO_TYPE_RASTER,
1132 0,
1133 snk_vh_start,
1134 snk_vh_stop,
1135 gwar_vh_screenrefresh,
1136
1137 /* sound hardware */
1138 0,0,0,0,
1139 {
1140 {
1141 SOUND_Y8950,
1142 &ym3526_y8950_interface
1143 }
1144 }
1145 };
1146
1147 static struct MachineDriver machine_driver_chopper1 =
1148 {
1149 {
1150 {
1151 CPU_Z80,
1152 4000000, /* 4.0 Mhz (?) */
1153 readmem_cpuA,writemem_cpuA,0,0,
1154 interrupt,1
1155 },
1156 {
1157 CPU_Z80,
1158 4000000, /* 4.0 Mhz (?) */
1159 readmem_cpuB,writemem_cpuB,0,0,
1160 interrupt,1
1161 },
1162 {
1163 CPU_Z80 | CPU_AUDIO_CPU,
1164 4000000, /* 4 Mhz (?) */
1165 YM3812_Y8950_readmem_sound,YM3812_Y8950_writemem_sound,0,0,
1166 interrupt,1
1167 },
1168 },
1169 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
1170 100, /* CPU slices per frame */
1171 0, /* init machine */
1172
1173 /* video hardware */
1174 384, 240, { 0, 383, 0, 239-16 },
1175 psychos_gfxdecodeinfo,
1176 1024,1024,
1177 snk_vh_convert_color_prom,
1178
1179 VIDEO_TYPE_RASTER,
1180 0,
1181 snk_vh_start,
1182 snk_vh_stop,
1183 gwar_vh_screenrefresh,
1184
1185 /* sound hardware */
1186 0,0,0,0,
1187 {
1188 {
1189 SOUND_YM3812,
1190 &ym3812_interface
1191 },
1192 {
1193 SOUND_Y8950,
1194 &y8950_interface
1195 }
1196 }
1197 };
1198
1199 static struct MachineDriver machine_driver_tdfever =
1200 {
1201 {
1202 {
1203 CPU_Z80,
1204 4000000, /* 4.0 Mhz (?) */
1205 readmem_cpuA,writemem_cpuA,0,0,
1206 interrupt,1
1207 },
1208 {
1209 CPU_Z80,
1210 4000000, /* 4.0 Mhz (?) */
1211 readmem_cpuB,writemem_cpuB,0,0,
1212 interrupt,1
1213 },
1214 {
1215 CPU_Z80 | CPU_AUDIO_CPU,
1216 4000000, /* 4 Mhz (?) */
1217 // YM3526_Y8950_readmem_sound, YM3526_Y8950_writemem_sound,0,0,
1218 YM3526_YM3526_readmem_sound, YM3526_YM3526_writemem_sound,0,0,
1219 interrupt,1
1220 },
1221
1222 },
1223 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
1224 100, /* CPU slices per frame */
1225 0, /* init_machine */
1226
1227 /* video hardware */
1228 384,240, { 0, 383, 0, 239-16 },
1229 tdfever_gfxdecodeinfo,
1230 1024,1024,
1231 snk_vh_convert_color_prom,
1232
1233 VIDEO_TYPE_RASTER,
1234 0,
1235 snk_vh_start,
1236 snk_vh_stop,
1237 tdfever_vh_screenrefresh,
1238
1239 /* sound hardware */
1240 0,0,0,0,
1241 {
1242 {
1243 SOUND_YM3526,
1244 &ym3526_ym3526_interface
1245 }
1246 // {
1247 // SOUND_Y8950,
1248 // &ym3526_y8950_interface
1249 // }
1250 }
1251 };
1252
1253 static struct MachineDriver machine_driver_ftsoccer =
1254 {
1255 {
1256 {
1257 CPU_Z80,
1258 4000000, /* 4.0 Mhz (?) */
1259 readmem_cpuA,writemem_cpuA,0,0,
1260 interrupt,1
1261 },
1262 {
1263 CPU_Z80,
1264 4000000, /* 4.0 Mhz (?) */
1265 readmem_cpuB,writemem_cpuB,0,0,
1266 interrupt,1
1267 },
1268 {
1269 CPU_Z80 | CPU_AUDIO_CPU,
1270 4000000, /* 4 Mhz (?) */
1271 Y8950_readmem_sound, Y8950_writemem_sound,0,0,
1272 interrupt,1
1273 },
1274
1275 },
1276 60, DEFAULT_REAL_60HZ_VBLANK_DURATION,
1277 100, /* CPU slices per frame */
1278 0, /* init_machine */
1279
1280 /* video hardware */
1281 384,240, { 0, 383, 0, 239-16 },
1282 tdfever_gfxdecodeinfo,
1283 1024,1024,
1284 snk_vh_convert_color_prom,
1285
1286 VIDEO_TYPE_RASTER,
1287 0,
1288 snk_vh_start,
1289 snk_vh_stop,
1290 ftsoccer_vh_screenrefresh,
1291
1292 /* sound hardware */
1293 0,0,0,0,
1294 {
1295 {
1296 SOUND_YM3526,
1297 &ym3526_interface
1298 }
1299 // {
1300 // SOUND_Y8950,
1301 // &y8950_interface
1302 // }
1303 }
1304 };
1305
1306 /***********************************************************************/
1307
1308 ROM_START( tnk3 )
1309 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1310 ROM_LOAD( "tnk3-p1.bin", 0x0000, 0x4000, 0x0d2a8ca9 )
1311 ROM_LOAD( "tnk3-p2.bin", 0x4000, 0x4000, 0x0ae0a483 )
1312 ROM_LOAD( "tnk3-p3.bin", 0x8000, 0x4000, 0xd16dd4db )
1313
1314 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1315 ROM_LOAD( "tnk3-p4.bin", 0x0000, 0x4000, 0x01b45a90 )
1316 ROM_LOAD( "tnk3-p5.bin", 0x4000, 0x4000, 0x60db6667 )
1317 ROM_LOAD( "tnk3-p6.bin", 0x8000, 0x4000, 0x4761fde7 )
1318
1319 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1320 ROM_LOAD( "tnk3-p10.bin", 0x0000, 0x4000, 0x7bf0a517 )
1321 ROM_LOAD( "tnk3-p11.bin", 0x4000, 0x4000, 0x0569ce27 )
1322
1323 ROM_REGION( 0x0c00, REGION_PROMS )
1324 ROM_LOAD( "7122.2", 0x000, 0x400, 0x34c06bc6 )
1325 ROM_LOAD( "7122.1", 0x400, 0x400, 0x6d0ac66a )
1326 ROM_LOAD( "7122.0", 0x800, 0x400, 0x4662b4c8 )
1327
1328 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1329 ROM_LOAD( "tnk3-p14.bin", 0x0000, 0x2000, 0x1fd18c43 )
1330 ROM_RELOAD( 0x2000, 0x2000 )
1331
1332 ROM_REGION( 0x8000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* background tiles */
1333 ROM_LOAD( "tnk3-p12.bin", 0x0000, 0x4000, 0xff495a16 )
1334 ROM_LOAD( "tnk3-p13.bin", 0x4000, 0x4000, 0xf8344843 )
1335
1336 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1337 ROM_LOAD( "tnk3-p7.bin", 0x00000, 0x4000, 0x06b92c88 )
1338 ROM_LOAD( "tnk3-p8.bin", 0x08000, 0x4000, 0x63d0e2eb )
1339 ROM_LOAD( "tnk3-p9.bin", 0x10000, 0x4000, 0x872e3fac )
1340 ROM_END
1341
1342 ROM_START( tnk3j )
1343 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1344 ROM_LOAD( "p1.4e", 0x0000, 0x4000, 0x03aca147 )
1345 ROM_LOAD( "tnk3-p2.bin", 0x4000, 0x4000, 0x0ae0a483 )
1346 ROM_LOAD( "tnk3-p3.bin", 0x8000, 0x4000, 0xd16dd4db )
1347
1348 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1349 ROM_LOAD( "tnk3-p4.bin", 0x0000, 0x4000, 0x01b45a90 )
1350 ROM_LOAD( "tnk3-p5.bin", 0x4000, 0x4000, 0x60db6667 )
1351 ROM_LOAD( "tnk3-p6.bin", 0x8000, 0x4000, 0x4761fde7 )
1352
1353 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1354 ROM_LOAD( "tnk3-p10.bin", 0x0000, 0x4000, 0x7bf0a517 )
1355 ROM_LOAD( "tnk3-p11.bin", 0x4000, 0x4000, 0x0569ce27 )
1356
1357 ROM_REGION( 0x0c00, REGION_PROMS )
1358 ROM_LOAD( "7122.2", 0x000, 0x400, 0x34c06bc6 )
1359 ROM_LOAD( "7122.1", 0x400, 0x400, 0x6d0ac66a )
1360 ROM_LOAD( "7122.0", 0x800, 0x400, 0x4662b4c8 )
1361
1362 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1363 ROM_LOAD( "p14.1e", 0x0000, 0x2000, 0x6bd575ca )
1364 ROM_RELOAD( 0x2000, 0x2000 )
1365
1366 ROM_REGION( 0x8000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* background tiles */
1367 ROM_LOAD( "tnk3-p12.bin", 0x0000, 0x4000, 0xff495a16 )
1368 ROM_LOAD( "tnk3-p13.bin", 0x4000, 0x4000, 0xf8344843 )
1369
1370 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1371 ROM_LOAD( "tnk3-p7.bin", 0x00000, 0x4000, 0x06b92c88 )
1372 ROM_LOAD( "tnk3-p8.bin", 0x08000, 0x4000, 0x63d0e2eb )
1373 ROM_LOAD( "tnk3-p9.bin", 0x10000, 0x4000, 0x872e3fac )
1374 ROM_END
1375
1376 /***********************************************************************/
1377
1378 ROM_START( athena )
1379 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1380 ROM_LOAD( "up02_p4.rom", 0x0000, 0x4000, 0x900a113c )
1381 ROM_LOAD( "up02_m4.rom", 0x4000, 0x8000, 0x61c69474 )
1382
1383 ROM_REGION( 0x10000 , REGION_CPU2 ) /* 64k for cpuB code */
1384 ROM_LOAD( "up02_p8.rom", 0x0000, 0x4000, 0xdf50af7e )
1385 ROM_LOAD( "up02_m8.rom", 0x4000, 0x8000, 0xf3c933df )
1386
1387 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1388 ROM_LOAD( "up02_g6.rom", 0x0000, 0x4000, 0x42dbe029 )
1389 ROM_LOAD( "up02_k6.rom", 0x4000, 0x8000, 0x596f1c8a )
1390
1391 ROM_REGION( 0x0c00, REGION_PROMS )
1392 ROM_LOAD( "up02_c2.rom", 0x000, 0x400, 0x294279ae )
1393 ROM_LOAD( "up02_b1.rom", 0x400, 0x400, 0xd25c9099 )
1394 ROM_LOAD( "up02_c1.rom", 0x800, 0x400, 0xa4a4e7dc )
1395
1396 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1397 ROM_LOAD( "up01_d2.rom", 0x0000, 0x4000, 0x18b4bcca )
1398
1399 ROM_REGION( 0x8000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* background tiles */
1400 ROM_LOAD( "up01_b2.rom", 0x0000, 0x8000, 0xf269c0eb )
1401
1402 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1403 ROM_LOAD( "up01_p2.rom", 0x00000, 0x8000, 0xc63a871f )
1404 ROM_LOAD( "up01_s2.rom", 0x08000, 0x8000, 0x760568d8 )
1405 ROM_LOAD( "up01_t2.rom", 0x10000, 0x8000, 0x57b35c73 )
1406 ROM_END
1407
1408 /***********************************************************************/
1409
1410 ROM_START( fitegolf )
1411 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1412 ROM_LOAD( "gu2", 0x0000, 0x4000, 0x19be7ad6 )
1413 ROM_LOAD( "gu1", 0x4000, 0x8000, 0xbc32568f )
1414
1415 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1416 ROM_LOAD( "gu6", 0x0000, 0x4000, 0x2b9978c5 )
1417 ROM_LOAD( "gu5", 0x4000, 0x8000, 0xea3d138c )
1418
1419 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1420 ROM_LOAD( "gu3", 0x0000, 0x4000, 0x811b87d7 )
1421 ROM_LOAD( "gu4", 0x4000, 0x8000, 0x2d998e2b )
1422
1423 ROM_REGION( 0x0c00, REGION_PROMS )
1424 ROM_LOAD( "82s137.2c", 0x00000, 0x00400, 0x6e4c7836 )
1425 ROM_LOAD( "82s137.1b", 0x00400, 0x00400, 0x29e7986f )
1426 ROM_LOAD( "82s137.1c", 0x00800, 0x00400, 0x27ba9ff9 )
1427
1428 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1429 ROM_LOAD( "gu8", 0x0000, 0x4000, 0xf1628dcf )
1430
1431 ROM_REGION( 0x8000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1432 ROM_LOAD( "gu7", 0x0000, 0x8000, 0x4655f94e )
1433
1434 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
1435 ROM_LOAD( "gu9", 0x00000, 0x8000, 0xd4957ec5 )
1436 ROM_LOAD( "gu10", 0x08000, 0x8000, 0xb3acdac2 )
1437 ROM_LOAD( "gu11", 0x10000, 0x8000, 0xb99cf73b )
1438 ROM_END
1439
1440 /***********************************************************************/
1441
1442 ROM_START( ikari )
1443 ROM_REGION( 0x10000, REGION_CPU1 ) /* CPU A */
1444 ROM_LOAD( "1.rom", 0x0000, 0x10000, 0x52a8b2dd )
1445
1446 ROM_REGION( 0x10000, REGION_CPU2 ) /* CPU B */
1447 ROM_LOAD( "2.rom", 0x0000, 0x10000, 0x45364d55 )
1448
1449 ROM_REGION( 0x10000, REGION_CPU3 ) /* Sound CPU */
1450 ROM_LOAD( "3.rom", 0x0000, 0x10000, 0x56a26699 )
1451
1452 ROM_REGION( 0x0c00, REGION_PROMS )
1453 ROM_LOAD( "7122er.prm", 0x000, 0x400, 0xb9bf2c2c )
1454 ROM_LOAD( "7122eg.prm", 0x400, 0x400, 0x0703a770 )
1455 ROM_LOAD( "7122eb.prm", 0x800, 0x400, 0x0a11cdde )
1456
1457 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1458 ROM_LOAD( "7.rom", 0x00000, 0x4000, 0xa7eb4917 )
1459
1460 ROM_REGION( 0x20000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1461 ROM_LOAD( "17.rom", 0x00000, 0x8000, 0xe0dba976 )
1462 ROM_LOAD( "18.rom", 0x08000, 0x8000, 0x24947d5f )
1463 ROM_LOAD( "19.rom", 0x10000, 0x8000, 0x9ee59e91 )
1464 ROM_LOAD( "20.rom", 0x18000, 0x8000, 0x5da7ec1a )
1465
1466 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1467 ROM_LOAD( "8.rom", 0x00000, 0x8000, 0x9827c14a )
1468 ROM_LOAD( "9.rom", 0x08000, 0x8000, 0x545c790c )
1469 ROM_LOAD( "10.rom", 0x10000, 0x8000, 0xec9ba07e )
1470
1471 ROM_REGION( 0x30000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1472 ROM_LOAD( "11.rom", 0x00000, 0x8000, 0x5c75ea8f )
1473 ROM_LOAD( "14.rom", 0x08000, 0x8000, 0x3293fde4 )
1474 ROM_LOAD( "12.rom", 0x10000, 0x8000, 0x95138498 )
1475 ROM_LOAD( "15.rom", 0x18000, 0x8000, 0x65a61c99 )
1476 ROM_LOAD( "13.rom", 0x20000, 0x8000, 0x315383d7 )
1477 ROM_LOAD( "16.rom", 0x28000, 0x8000, 0xe9b03e07 )
1478 ROM_END
1479
1480 ROM_START( ikarijp )
1481 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1482 ROM_LOAD( "up03_l4.rom", 0x0000, 0x4000, 0xcde006be )
1483 ROM_LOAD( "up03_k4.rom", 0x4000, 0x8000, 0x26948850 )
1484
1485 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1486 ROM_LOAD( "ik3", 0x0000, 0x4000, 0x9bb385f8 )
1487 ROM_LOAD( "ik4", 0x4000, 0x8000, 0x3a144bca )
1488
1489 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1490 ROM_LOAD( "ik5", 0x0000, 0x4000, 0x863448fa )
1491 ROM_LOAD( "ik6", 0x4000, 0x8000, 0x9b16aa57 )
1492
1493 ROM_REGION( 0x0c00, REGION_PROMS )
1494 ROM_LOAD( "7122er.prm", 0x000, 0x400, 0xb9bf2c2c )
1495 ROM_LOAD( "7122eg.prm", 0x400, 0x400, 0x0703a770 )
1496 ROM_LOAD( "7122eb.prm", 0x800, 0x400, 0x0a11cdde )
1497
1498 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1499 ROM_LOAD( "ik7", 0x00000, 0x4000, 0x9e88f536 ) /* characters */
1500
1501 ROM_REGION( 0x20000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1502 ROM_LOAD( "17.rom", 0x00000, 0x8000, 0xe0dba976 )
1503 ROM_LOAD( "18.rom", 0x08000, 0x8000, 0x24947d5f )
1504 ROM_LOAD( "ik19", 0x10000, 0x8000, 0x566242ec )
1505 ROM_LOAD( "20.rom", 0x18000, 0x8000, 0x5da7ec1a )
1506
1507 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1508 ROM_LOAD( "ik8", 0x00000, 0x8000, 0x75d796d0 )
1509 ROM_LOAD( "ik9", 0x08000, 0x8000, 0x2c34903b )
1510 ROM_LOAD( "ik10", 0x10000, 0x8000, 0xda9ccc94 )
1511
1512 ROM_REGION( 0x30000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1513 ROM_LOAD( "11.rom", 0x00000, 0x8000, 0x5c75ea8f )
1514 ROM_LOAD( "14.rom", 0x08000, 0x8000, 0x3293fde4 )
1515 ROM_LOAD( "12.rom", 0x10000, 0x8000, 0x95138498 )
1516 ROM_LOAD( "15.rom", 0x18000, 0x8000, 0x65a61c99 )
1517 ROM_LOAD( "13.rom", 0x20000, 0x8000, 0x315383d7 )
1518 ROM_LOAD( "16.rom", 0x28000, 0x8000, 0xe9b03e07 )
1519 ROM_END
1520
1521 ROM_START( ikarijpb )
1522 ROM_REGION( 0x10000, REGION_CPU1 ) /* CPU A */
1523 ROM_LOAD( "ik1", 0x00000, 0x4000, 0x2ef87dce )
1524 ROM_LOAD( "up03_k4.rom", 0x04000, 0x8000, 0x26948850 )
1525
1526 ROM_REGION( 0x10000, REGION_CPU2 ) /* CPU B code */
1527 ROM_LOAD( "ik3", 0x0000, 0x4000, 0x9bb385f8 )
1528 ROM_LOAD( "ik4", 0x4000, 0x8000, 0x3a144bca )
1529
1530 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1531 ROM_LOAD( "ik5", 0x0000, 0x4000, 0x863448fa )
1532 ROM_LOAD( "ik6", 0x4000, 0x8000, 0x9b16aa57 )
1533
1534 ROM_REGION( 0x0c00, REGION_PROMS )
1535 ROM_LOAD( "7122er.prm", 0x000, 0x400, 0xb9bf2c2c )
1536 ROM_LOAD( "7122eg.prm", 0x400, 0x400, 0x0703a770 )
1537 ROM_LOAD( "7122eb.prm", 0x800, 0x400, 0x0a11cdde )
1538
1539 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1540 ROM_LOAD( "ik7", 0x0000, 0x4000, 0x9e88f536 )
1541
1542 ROM_REGION( 0x20000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1543 ROM_LOAD( "17.rom", 0x00000, 0x8000, 0xe0dba976 )
1544 ROM_LOAD( "18.rom", 0x08000, 0x8000, 0x24947d5f )
1545 ROM_LOAD( "ik19", 0x10000, 0x8000, 0x566242ec )
1546 ROM_LOAD( "20.rom", 0x18000, 0x8000, 0x5da7ec1a )
1547
1548 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1549 ROM_LOAD( "ik8", 0x00000, 0x8000, 0x75d796d0 )
1550 ROM_LOAD( "ik9", 0x08000, 0x8000, 0x2c34903b )
1551 ROM_LOAD( "ik10", 0x10000, 0x8000, 0xda9ccc94 )
1552
1553 ROM_REGION( 0x30000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1554 ROM_LOAD( "11.rom", 0x00000, 0x8000, 0x5c75ea8f )
1555 ROM_LOAD( "14.rom", 0x08000, 0x8000, 0x3293fde4 )
1556 ROM_LOAD( "12.rom", 0x10000, 0x8000, 0x95138498 )
1557 ROM_LOAD( "15.rom", 0x18000, 0x8000, 0x65a61c99 )
1558 ROM_LOAD( "13.rom", 0x20000, 0x8000, 0x315383d7 )
1559 ROM_LOAD( "16.rom", 0x28000, 0x8000, 0xe9b03e07 )
1560 ROM_END
1561
1562 /***********************************************************************/
1563
1564 ROM_START( victroad )
1565 ROM_REGION( 0x10000, REGION_CPU1 ) /* CPU A code */
1566 ROM_LOAD( "p1", 0x0000, 0x10000, 0xe334acef )
1567
1568 ROM_REGION( 0x10000 , REGION_CPU2 ) /* CPU B code */
1569 ROM_LOAD( "p2", 0x00000, 0x10000, 0x907fac83 )
1570
1571 ROM_REGION( 0x10000, REGION_CPU3 ) /* sound code */
1572 ROM_LOAD( "p3", 0x00000, 0x10000, 0xbac745f6 )
1573
1574 ROM_REGION( 0x0c00, REGION_PROMS )
1575 ROM_LOAD( "mb7122e.1k", 0x000, 0x400, 0x491ab831 )
1576 ROM_LOAD( "mb7122e.2l", 0x400, 0x400, 0x8feca424 )
1577 ROM_LOAD( "mb7122e.1l", 0x800, 0x400, 0x220076ca )
1578
1579 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1580 ROM_LOAD( "p7", 0x0000, 0x4000, 0x2b6ed95b )
1581
1582 ROM_REGION( 0x20000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1583 ROM_LOAD( "p17", 0x00000, 0x8000, 0x19d4518c )
1584 ROM_LOAD( "p18", 0x08000, 0x8000, 0xd818be43 )
1585 ROM_LOAD( "p19", 0x10000, 0x8000, 0xd64e0f89 )
1586 ROM_LOAD( "p20", 0x18000, 0x8000, 0xedba0f31 )
1587
1588 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1589 ROM_LOAD( "p8", 0x00000, 0x8000, 0xdf7f252a )
1590 ROM_LOAD( "p9", 0x08000, 0x8000, 0x9897bc05 )
1591 ROM_LOAD( "p10", 0x10000, 0x8000, 0xecd3c0ea )
1592
1593 ROM_REGION( 0x40000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1594 ROM_LOAD( "p11", 0x00000, 0x8000, 0x668b25a4 )
1595 ROM_LOAD( "p14", 0x08000, 0x8000, 0xa7031d4a )
1596 ROM_LOAD( "p12", 0x10000, 0x8000, 0xf44e95fa )
1597 ROM_LOAD( "p15", 0x18000, 0x8000, 0x120d2450 )
1598 ROM_LOAD( "p13", 0x20000, 0x8000, 0x980ca3d8 )
1599 ROM_LOAD( "p16", 0x28000, 0x8000, 0x9f820e8a )
1600
1601 ROM_REGION( 0x20000, REGION_SOUND1 )
1602 ROM_LOAD( "p4", 0x00000, 0x10000, 0xe10fb8cc )
1603 ROM_LOAD( "p5", 0x10000, 0x10000, 0x93e5f110 )
1604 ROM_END
1605
1606 ROM_START( dogosoke ) /* Victory Road Japan */
1607 ROM_REGION( 0x10000, REGION_CPU1 ) /* CPU A code */
1608 ROM_LOAD( "up03_p4.rom", 0x0000, 0x10000, 0x37867ad2 )
1609
1610 ROM_REGION( 0x10000, REGION_CPU2 ) /* CPU B code */
1611 ROM_LOAD( "p2", 0x00000, 0x10000, 0x907fac83 )
1612
1613 ROM_REGION( 0x10000, REGION_CPU3 ) /* sound code */
1614 ROM_LOAD( "up03_k7.rom", 0x00000, 0x10000, 0x173fa571 )
1615
1616 ROM_REGION( 0x0c00, REGION_PROMS )
1617 ROM_LOAD( "up03_k1.rom", 0x000, 0x400, 0x10a2ce2b )
1618 ROM_LOAD( "up03_l2.rom", 0x400, 0x400, 0x99dc9792 )
1619 ROM_LOAD( "up03_l1.rom", 0x800, 0x400, 0xe7213160 )
1620
1621 ROM_REGION( 0x4000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1622 ROM_LOAD( "up02_b3.rom", 0x0000, 0x4000, 0x51a4ec83 )
1623
1624 ROM_REGION( 0x20000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1625 ROM_LOAD( "p17", 0x00000, 0x8000, 0x19d4518c )
1626 ROM_LOAD( "p18", 0x08000, 0x8000, 0xd818be43 )
1627 ROM_LOAD( "p19", 0x10000, 0x8000, 0xd64e0f89 )
1628 ROM_LOAD( "p20", 0x18000, 0x8000, 0xedba0f31 )
1629
1630 ROM_REGION( 0x18000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1631 ROM_LOAD( "up02_d3.rom", 0x00000, 0x8000, 0xd43044f8 )
1632 ROM_LOAD( "up02_e3.rom", 0x08000, 0x8000, 0x365ed2d8 )
1633 ROM_LOAD( "up02_g3.rom", 0x10000, 0x8000, 0x92579bf3 )
1634
1635 ROM_REGION( 0x30000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1636 ROM_LOAD( "p11", 0x00000, 0x8000, 0x668b25a4 )
1637 ROM_LOAD( "p14", 0x08000, 0x8000, 0xa7031d4a )
1638 ROM_LOAD( "p12", 0x10000, 0x8000, 0xf44e95fa )
1639 ROM_LOAD( "p15", 0x18000, 0x8000, 0x120d2450 )
1640 ROM_LOAD( "p13", 0x20000, 0x8000, 0x980ca3d8 )
1641 ROM_LOAD( "p16", 0x28000, 0x8000, 0x9f820e8a )
1642
1643 ROM_REGION( 0x20000, REGION_SOUND1 )
1644 ROM_LOAD( "up03_f5.rom", 0x00000, 0x10000, 0x5b43fe9f )
1645 ROM_LOAD( "up03_g5.rom", 0x10000, 0x10000, 0xaae30cd6 )
1646 ROM_END
1647
1648 /***********************************************************************/
1649
1650 ROM_START( gwar )
1651 ROM_REGION( 0x10000, REGION_CPU1 )
1652 ROM_LOAD( "7g", 0x00000, 0x10000, 0x5bcfa7dc )
1653
1654 ROM_REGION( 0x10000, REGION_CPU2 )
1655 ROM_LOAD( "g02", 0x00000, 0x10000, 0x86d931bf )
1656
1657 ROM_REGION( 0x10000, REGION_CPU3 )
1658 ROM_LOAD( "g03", 0x00000, 0x10000, 0xeb544ab9 )
1659
1660 ROM_REGION( 0x0c00, REGION_PROMS )
1661 ROM_LOAD( "guprom.3", 0x000, 0x400, 0x090236a3 ) /* red */
1662 ROM_LOAD( "guprom.2", 0x400, 0x400, 0x9147de69 ) /* green */
1663 ROM_LOAD( "guprom.1", 0x800, 0x400, 0x7f9c839e ) /* blue */
1664
1665 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE )
1666 ROM_LOAD( "g05", 0x0000, 0x08000, 0x80f73e2e )
1667
1668 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE )
1669 ROM_LOAD( "g06", 0x00000, 0x10000, 0xf1dcdaef )
1670 ROM_LOAD( "g07", 0x10000, 0x10000, 0x326e4e5e )
1671 ROM_LOAD( "g08", 0x20000, 0x10000, 0x0aa70967 )
1672 ROM_LOAD( "g09", 0x30000, 0x10000, 0xb7686336 )
1673
1674 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE )
1675 ROM_LOAD( "g10", 0x00000, 0x10000, 0x58600f7d )
1676 ROM_LOAD( "g11", 0x10000, 0x10000, 0xa3f9b463 )
1677 ROM_LOAD( "g12", 0x20000, 0x10000, 0x092501be )
1678 ROM_LOAD( "g13", 0x30000, 0x10000, 0x25801ea6 )
1679
1680 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE )
1681 ROM_LOAD( "g20", 0x00000, 0x10000, 0x2b46edff )
1682 ROM_LOAD( "g21", 0x10000, 0x10000, 0xbe19888d )
1683 ROM_LOAD( "g18", 0x20000, 0x10000, 0x2d653f0c )
1684 ROM_LOAD( "g19", 0x30000, 0x10000, 0xebbf3ba2 )
1685 ROM_LOAD( "g16", 0x40000, 0x10000, 0xaeb3707f )
1686 ROM_LOAD( "g17", 0x50000, 0x10000, 0x0808f95f )
1687 ROM_LOAD( "g14", 0x60000, 0x10000, 0x8dfc7b87 )
1688 ROM_LOAD( "g15", 0x70000, 0x10000, 0x06822aac )
1689
1690 ROM_REGION( 0x10000, REGION_SOUND1 )
1691 ROM_LOAD( "g04", 0x00000, 0x10000, 0x2255f8dd )
1692 ROM_END
1693
1694 ROM_START( gwara )
1695 ROM_REGION( 0x10000, REGION_CPU1 )
1696 ROM_LOAD( "gv3", 0x00000, 0x10000, 0x24936d83 )
1697
1698 ROM_REGION( 0x10000, REGION_CPU2 )
1699 ROM_LOAD( "gv4", 0x00000, 0x10000, 0x26335a55 )
1700
1701 ROM_REGION( 0x10000, REGION_CPU3 )
1702 ROM_LOAD( "gv2", 0x00000, 0x10000, 0x896682dd )
1703
1704 ROM_REGION( 0x0c00, REGION_PROMS )
1705 ROM_LOAD( "guprom.3", 0x000, 0x400, 0x090236a3 ) /* red */
1706 ROM_LOAD( "guprom.2", 0x400, 0x400, 0x9147de69 ) /* green */
1707 ROM_LOAD( "guprom.1", 0x800, 0x400, 0x7f9c839e ) /* blue */
1708
1709 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE )
1710 ROM_LOAD( "g05", 0x0000, 0x08000, 0x80f73e2e )
1711
1712 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE )
1713 ROM_LOAD( "g06", 0x00000, 0x10000, 0xf1dcdaef )
1714 ROM_LOAD( "g07", 0x10000, 0x10000, 0x326e4e5e )
1715 ROM_LOAD( "g08", 0x20000, 0x10000, 0x0aa70967 )
1716 ROM_LOAD( "g09", 0x30000, 0x10000, 0xb7686336 )
1717
1718 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE )
1719 ROM_LOAD( "g10", 0x00000, 0x10000, 0x58600f7d )
1720 ROM_LOAD( "g11", 0x10000, 0x10000, 0xa3f9b463 )
1721 ROM_LOAD( "g12", 0x20000, 0x10000, 0x092501be )
1722 ROM_LOAD( "g13", 0x30000, 0x10000, 0x25801ea6 )
1723
1724 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE )
1725 ROM_LOAD( "g20", 0x00000, 0x10000, 0x2b46edff )
1726 ROM_LOAD( "g21", 0x10000, 0x10000, 0xbe19888d )
1727 ROM_LOAD( "g18", 0x20000, 0x10000, 0x2d653f0c )
1728 ROM_LOAD( "g19", 0x30000, 0x10000, 0xebbf3ba2 )
1729 ROM_LOAD( "g16", 0x40000, 0x10000, 0xaeb3707f )
1730 ROM_LOAD( "g17", 0x50000, 0x10000, 0x0808f95f )
1731 ROM_LOAD( "g14", 0x60000, 0x10000, 0x8dfc7b87 )
1732 ROM_LOAD( "g15", 0x70000, 0x10000, 0x06822aac )
1733
1734 ROM_REGION( 0x10000, REGION_SOUND1 )
1735 ROM_LOAD( "g04", 0x00000, 0x10000, 0x2255f8dd )
1736 ROM_END
1737
1738 ROM_START( gwarj )
1739 ROM_REGION( 0x10000, REGION_CPU1 )
1740 ROM_LOAD( "7y3047", 0x00000, 0x10000, 0x7f8a880c )
1741
1742 ROM_REGION( 0x10000, REGION_CPU2 )
1743 ROM_LOAD( "g02", 0x00000, 0x10000, 0x86d931bf )
1744
1745 ROM_REGION( 0x10000, REGION_CPU3 )
1746 ROM_LOAD( "g03", 0x00000, 0x10000, 0xeb544ab9 )
1747
1748 ROM_REGION( 0x0c00, REGION_PROMS )
1749 ROM_LOAD( "guprom.3", 0x000, 0x400, 0x090236a3 ) /* red */
1750 ROM_LOAD( "guprom.2", 0x400, 0x400, 0x9147de69 ) /* green */
1751 ROM_LOAD( "guprom.1", 0x800, 0x400, 0x7f9c839e ) /* blue */
1752
1753 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE )
1754 ROM_LOAD( "792001", 0x0000, 0x08000, 0x99d7ddf3 )
1755
1756 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE )
1757 ROM_LOAD( "g06", 0x00000, 0x10000, 0xf1dcdaef )
1758 ROM_LOAD( "g07", 0x10000, 0x10000, 0x326e4e5e )
1759 ROM_LOAD( "g08", 0x20000, 0x10000, 0x0aa70967 )
1760 ROM_LOAD( "g09", 0x30000, 0x10000, 0xb7686336 )
1761
1762 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE )
1763 ROM_LOAD( "g10", 0x00000, 0x10000, 0x58600f7d )
1764 ROM_LOAD( "g11", 0x10000, 0x10000, 0xa3f9b463 )
1765 ROM_LOAD( "g12", 0x20000, 0x10000, 0x092501be )
1766 ROM_LOAD( "g13", 0x30000, 0x10000, 0x25801ea6 )
1767
1768 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE )
1769 ROM_LOAD( "g20", 0x00000, 0x10000, 0x2b46edff )
1770 ROM_LOAD( "g21", 0x10000, 0x10000, 0xbe19888d )
1771 ROM_LOAD( "g18", 0x20000, 0x10000, 0x2d653f0c )
1772 ROM_LOAD( "g19", 0x30000, 0x10000, 0xebbf3ba2 )
1773 ROM_LOAD( "g16", 0x40000, 0x10000, 0xaeb3707f )
1774 ROM_LOAD( "g17", 0x50000, 0x10000, 0x0808f95f )
1775 ROM_LOAD( "g14", 0x60000, 0x10000, 0x8dfc7b87 )
1776 ROM_LOAD( "g15", 0x70000, 0x10000, 0x06822aac )
1777
1778 ROM_REGION( 0x10000, REGION_SOUND1 )
1779 ROM_LOAD( "g04", 0x00000, 0x10000, 0x2255f8dd )
1780 ROM_END
1781
1782 ROM_START( gwarb )
1783 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1784 ROM_LOAD( "g01", 0x00000, 0x10000, 0xce1d3c80 )
1785
1786 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1787 ROM_LOAD( "g02", 0x00000, 0x10000, 0x86d931bf )
1788
1789 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1790 ROM_LOAD( "g03", 0x00000, 0x10000, 0xeb544ab9 )
1791
1792 ROM_REGION( 0x0c00, REGION_PROMS )
1793 ROM_LOAD( "guprom.3", 0x000, 0x400, 0x090236a3 ) /* red */ // up03_k1.rom
1794 ROM_LOAD( "guprom.2", 0x400, 0x400, 0x9147de69 ) /* green */ // up03_l1.rom
1795 ROM_LOAD( "guprom.1", 0x800, 0x400, 0x7f9c839e ) /* blue */ // up03_k2.rom
1796
1797 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1798 ROM_LOAD( "g05", 0x0000, 0x08000, 0x80f73e2e )
1799
1800 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* background tiles */
1801 ROM_LOAD( "g06", 0x00000, 0x10000, 0xf1dcdaef )
1802 ROM_LOAD( "g07", 0x10000, 0x10000, 0x326e4e5e )
1803 ROM_LOAD( "g08", 0x20000, 0x10000, 0x0aa70967 )
1804 ROM_LOAD( "g09", 0x30000, 0x10000, 0xb7686336 )
1805
1806 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1807 ROM_LOAD( "g10", 0x00000, 0x10000, 0x58600f7d )
1808 ROM_LOAD( "g11", 0x10000, 0x10000, 0xa3f9b463 )
1809 ROM_LOAD( "g12", 0x20000, 0x10000, 0x092501be )
1810 ROM_LOAD( "g13", 0x30000, 0x10000, 0x25801ea6 )
1811
1812 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1813 ROM_LOAD( "g20", 0x00000, 0x10000, 0x2b46edff )
1814 ROM_LOAD( "g21", 0x10000, 0x10000, 0xbe19888d )
1815 ROM_LOAD( "g18", 0x20000, 0x10000, 0x2d653f0c )
1816 ROM_LOAD( "g19", 0x30000, 0x10000, 0xebbf3ba2 )
1817 ROM_LOAD( "g16", 0x40000, 0x10000, 0xaeb3707f )
1818 ROM_LOAD( "g17", 0x50000, 0x10000, 0x0808f95f )
1819 ROM_LOAD( "g14", 0x60000, 0x10000, 0x8dfc7b87 )
1820 ROM_LOAD( "g15", 0x70000, 0x10000, 0x06822aac )
1821
1822 ROM_REGION( 0x10000, REGION_SOUND1 )
1823 ROM_LOAD( "g04", 0x00000, 0x10000, 0x2255f8dd )
1824 ROM_END
1825
1826 /***********************************************************************/
1827
1828 ROM_START( bermudat )
1829 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1830 ROM_LOAD( "bt_p1.rom", 0x0000, 0x10000, 0x43dec5e9 )
1831
1832 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1833 ROM_LOAD( "bt_p2.rom", 0x00000, 0x10000, 0x0e193265 )
1834
1835 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1836 ROM_LOAD( "bt_p3.rom", 0x00000, 0x10000, 0x53a82e50 ) /* YM3526 */
1837
1838 ROM_REGION( 0x1400, REGION_PROMS )
1839 ROM_LOAD( "btj_01r.prm", 0x0000, 0x0400, 0xf4b54d06 ) /* red */
1840 ROM_LOAD( "btj_02g.prm", 0x0400, 0x0400, 0xbaac139e ) /* green */
1841 ROM_LOAD( "btj_03b.prm", 0x0800, 0x0400, 0x2edf2e0b ) /* blue */
1842 ROM_LOAD( "btj_h.prm", 0x0c00, 0x0400, 0xc20b197b ) /* ? */
1843 ROM_LOAD( "btj_v.prm", 0x1000, 0x0400, 0x5d0c617f ) /* ? */
1844
1845 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1846 ROM_LOAD( "bt_p10.rom", 0x0000, 0x8000, 0xd3650211 )
1847
1848 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1849 ROM_LOAD( "bt_p22.rom", 0x00000, 0x10000, 0x8daf7df4 )
1850 ROM_LOAD( "bt_p21.rom", 0x10000, 0x10000, 0xb7689599 )
1851 ROM_LOAD( "bt_p20.rom", 0x20000, 0x10000, 0xab6217b7 )
1852 ROM_LOAD( "bt_p19.rom", 0x30000, 0x10000, 0x8ed759a0 )
1853
1854 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1855 ROM_LOAD( "bt_p6.rom", 0x00000, 0x8000, 0x8ffdf969 )
1856 ROM_LOAD( "bt_p7.rom", 0x10000, 0x8000, 0x268d10df )
1857 ROM_LOAD( "bt_p8.rom", 0x20000, 0x8000, 0x3e39e9dd )
1858 ROM_LOAD( "bt_p9.rom", 0x30000, 0x8000, 0xbf56da61 )
1859
1860 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1861 ROM_LOAD( "bt_p11.rom", 0x00000, 0x10000, 0xaae7410e )
1862 ROM_LOAD( "bt_p12.rom", 0x10000, 0x10000, 0x18914f70 )
1863 ROM_LOAD( "bt_p13.rom", 0x20000, 0x10000, 0xcd79ce81 )
1864 ROM_LOAD( "bt_p14.rom", 0x30000, 0x10000, 0xedc57117 )
1865 ROM_LOAD( "bt_p15.rom", 0x40000, 0x10000, 0x448bf9f4 )
1866 ROM_LOAD( "bt_p16.rom", 0x50000, 0x10000, 0x119999eb )
1867 ROM_LOAD( "bt_p17.rom", 0x60000, 0x10000, 0xb5462139 )
1868 ROM_LOAD( "bt_p18.rom", 0x70000, 0x10000, 0xcb416227 )
1869
1870 ROM_REGION( 0x20000, REGION_SOUND1 )
1871 ROM_LOAD( "bt_p4.rom", 0x00000, 0x10000, 0x4bc83229 )
1872 ROM_LOAD( "bt_p5.rom", 0x10000, 0x10000, 0x817bd62c )
1873 ROM_END
1874
1875 ROM_START( bermudaj )
1876 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1877 ROM_LOAD( "btj_p01.bin", 0x0000, 0x10000, 0xeda75f36 )
1878
1879 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1880 ROM_LOAD( "bt_p2.rom", 0x00000, 0x10000, 0x0e193265 )
1881
1882 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1883 ROM_LOAD( "btj_p03.bin", 0x00000, 0x10000, 0xfea8a096 ) /* YM3526 */
1884
1885 ROM_REGION( 0x1400, REGION_PROMS )
1886 ROM_LOAD( "btj_01r.prm", 0x0000, 0x0400, 0xf4b54d06 ) /* red */
1887 ROM_LOAD( "btj_02g.prm", 0x0400, 0x0400, 0xbaac139e ) /* green */
1888 ROM_LOAD( "btj_03b.prm", 0x0800, 0x0400, 0x2edf2e0b ) /* blue */
1889 ROM_LOAD( "btj_h.prm", 0x0c00, 0x0400, 0xc20b197b ) /* ? */
1890 ROM_LOAD( "btj_v.prm", 0x1000, 0x0400, 0x5d0c617f ) /* ? */
1891
1892 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1893 ROM_LOAD( "bt_p10.rom", 0x0000, 0x8000, 0xd3650211 )
1894
1895 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1896 ROM_LOAD( "bt_p22.rom", 0x00000, 0x10000, 0x8daf7df4 )
1897 ROM_LOAD( "bt_p21.rom", 0x10000, 0x10000, 0xb7689599 )
1898 ROM_LOAD( "bt_p20.rom", 0x20000, 0x10000, 0xab6217b7 )
1899 ROM_LOAD( "bt_p19.rom", 0x30000, 0x10000, 0x8ed759a0 )
1900
1901 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1902 ROM_LOAD( "bt_p6.rom", 0x00000, 0x8000, 0x8ffdf969 )
1903 ROM_LOAD( "bt_p7.rom", 0x10000, 0x8000, 0x268d10df )
1904 ROM_LOAD( "bt_p8.rom", 0x20000, 0x8000, 0x3e39e9dd )
1905 ROM_LOAD( "bt_p9.rom", 0x30000, 0x8000, 0xbf56da61 )
1906
1907 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1908 ROM_LOAD( "bt_p11.rom", 0x00000, 0x10000, 0xaae7410e )
1909 ROM_LOAD( "bt_p12.rom", 0x10000, 0x10000, 0x18914f70 )
1910 ROM_LOAD( "bt_p13.rom", 0x20000, 0x10000, 0xcd79ce81 )
1911 ROM_LOAD( "bt_p14.rom", 0x30000, 0x10000, 0xedc57117 )
1912 ROM_LOAD( "bt_p15.rom", 0x40000, 0x10000, 0x448bf9f4 )
1913 ROM_LOAD( "bt_p16.rom", 0x50000, 0x10000, 0x119999eb )
1914 ROM_LOAD( "bt_p17.rom", 0x60000, 0x10000, 0xb5462139 )
1915 ROM_LOAD( "bt_p18.rom", 0x70000, 0x10000, 0xcb416227 )
1916
1917 ROM_REGION( 0x20000, REGION_SOUND1 )
1918 ROM_LOAD( "btj_p04.bin", 0x00000, 0x10000, 0xb2e01129 )
1919 ROM_LOAD( "btj_p05.bin", 0x10000, 0x10000, 0x924c24f7 )
1920 ROM_END
1921
1922 ROM_START( worldwar )
1923 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1924 ROM_LOAD( "ww4.bin", 0x0000, 0x10000, 0xbc29d09f )
1925
1926 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1927 ROM_LOAD( "ww5.bin", 0x00000, 0x10000, 0x8dc15909 )
1928
1929 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1930 ROM_LOAD( "ww3.bin", 0x00000, 0x10000, 0x8b74c951 )
1931
1932 ROM_REGION( 0x1400, REGION_PROMS )
1933 ROM_LOAD( "ww_r.bin", 0x0000, 0x0400, 0xb88e95f0 ) /* red */
1934 ROM_LOAD( "ww_g.bin", 0x0400, 0x0400, 0x5e1616b2 ) /* green */
1935 ROM_LOAD( "ww_b.bin", 0x0800, 0x0400, 0xe9770796 ) /* blue */
1936 ROM_LOAD( "btj_h.prm", 0x0c00, 0x0400, 0xc20b197b ) /* ? */
1937 ROM_LOAD( "btj_v.prm", 0x1000, 0x0400, 0x5d0c617f ) /* ? */
1938
1939 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1940 ROM_LOAD( "ww6.bin", 0x0000, 0x8000, 0xd57570ab )
1941
1942 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1943 ROM_LOAD( "ww11.bin", 0x00000, 0x10000, 0x603ddcb5 )
1944 ROM_LOAD( "ww14.bin", 0x10000, 0x10000, 0x04c784be )
1945 ROM_LOAD( "ww13.bin", 0x20000, 0x10000, 0x83a7ef62 )
1946 ROM_LOAD( "ww12.bin", 0x30000, 0x10000, 0x388093ff )
1947
1948 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1949 ROM_LOAD( "ww7.bin", 0x30000, 0x08000, 0x53c4b24e )
1950 ROM_LOAD( "ww8.bin", 0x20000, 0x08000, 0x0ec15086 )
1951 ROM_LOAD( "ww9.bin", 0x10000, 0x08000, 0xd9d35911 )
1952 ROM_LOAD( "ww10.bin", 0x00000, 0x08000, 0xf68a2d51 )
1953
1954 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
1955 ROM_LOAD( "ww15.bin", 0x40000, 0x10000, 0xd55ce063 )
1956 ROM_LOAD( "ww16.bin", 0x50000, 0x10000, 0xa2d19ce5 )
1957 ROM_LOAD( "ww17.bin", 0x60000, 0x10000, 0xa9a6b128 )
1958 ROM_LOAD( "ww18.bin", 0x70000, 0x10000, 0xc712d24c )
1959 ROM_LOAD( "ww19.bin", 0x20000, 0x10000, 0xc39ac1a7 )
1960 ROM_LOAD( "ww20.bin", 0x30000, 0x10000, 0x8504170f )
1961 ROM_LOAD( "ww21.bin", 0x00000, 0x10000, 0xbe974fbe )
1962 ROM_LOAD( "ww22.bin", 0x10000, 0x10000, 0x9914972a )
1963
1964 ROM_REGION( 0x20000, REGION_SOUND1 ) /* ADPCM samples */
1965 ROM_LOAD( "bt_p4.rom", 0x00000, 0x10000, 0x4bc83229 )
1966 ROM_LOAD( "bt_p5.rom", 0x10000, 0x10000, 0x817bd62c )
1967 ROM_END
1968
1969 ROM_START( bermudaa )
1970 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
1971 ROM_LOAD( "4", 0x0000, 0x10000, 0x4de39d01 )
1972
1973 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
1974 ROM_LOAD( "5", 0x00000, 0x10000, 0x76158e94 )
1975
1976 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
1977 ROM_LOAD( "3", 0x00000, 0x10000, 0xc79134a8 )
1978
1979 ROM_REGION( 0x1400, REGION_PROMS )
1980 ROM_LOAD( "mb7122e.1k", 0x0000, 0x0400, 0x1e8fc4c3 ) /* red */
1981 ROM_LOAD( "mb7122e.2l", 0x0400, 0x0400, 0x23ce9707 ) /* green */
1982 ROM_LOAD( "mb7122e.1l", 0x0800, 0x0400, 0x26caf985 ) /* blue */
1983 ROM_LOAD( "btj_h.prm", 0x0c00, 0x0400, 0xc20b197b ) /* ? */
1984 ROM_LOAD( "btj_v.prm", 0x1000, 0x0400, 0x5d0c617f ) /* ? */
1985
1986 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
1987 ROM_LOAD( "6", 0x0000, 0x8000, 0xa0e6710c )
1988
1989 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
1990 ROM_LOAD( "ww11.bin", 0x00000, 0x10000, 0x603ddcb5 )
1991 ROM_LOAD( "ww14.bin", 0x10000, 0x10000, 0x04c784be )
1992 ROM_LOAD( "ww13.bin", 0x20000, 0x10000, 0x83a7ef62 )
1993 ROM_LOAD( "ww12.bin", 0x30000, 0x10000, 0x388093ff )
1994
1995 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
1996 ROM_LOAD( "ww7.bin", 0x30000, 0x08000, 0x53c4b24e )
1997 ROM_LOAD( "ww8.bin", 0x20000, 0x08000, 0x0ec15086 )
1998 ROM_LOAD( "ww9.bin", 0x10000, 0x08000, 0xd9d35911 )
1999 ROM_LOAD( "ww10.bin", 0x00000, 0x08000, 0xf68a2d51 )
2000
2001 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
2002 ROM_LOAD( "ww15.bin", 0x40000, 0x10000, 0xd55ce063 )
2003 ROM_LOAD( "ww16.bin", 0x50000, 0x10000, 0xa2d19ce5 )
2004 ROM_LOAD( "ww17.bin", 0x60000, 0x10000, 0xa9a6b128 )
2005 ROM_LOAD( "ww18.bin", 0x70000, 0x10000, 0xc712d24c )
2006 ROM_LOAD( "ww19.bin", 0x20000, 0x10000, 0xc39ac1a7 )
2007 ROM_LOAD( "ww20.bin", 0x30000, 0x10000, 0x8504170f )
2008 ROM_LOAD( "ww21.bin", 0x00000, 0x10000, 0xbe974fbe )
2009 ROM_LOAD( "ww22.bin", 0x10000, 0x10000, 0x9914972a )
2010
2011 ROM_REGION( 0x20000, REGION_SOUND1 ) /* ADPCM samples */
2012 ROM_LOAD( "bt_p4.rom", 0x00000, 0x10000, 0x4bc83229 )
2013 ROM_LOAD( "bt_p5.rom", 0x10000, 0x10000, 0x817bd62c )
2014 ROM_END
2015
2016 /***********************************************************************/
2017
2018 ROM_START( psychos )
2019 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
2020 ROM_LOAD( "p7", 0x00000, 0x10000, 0x562809f4 )
2021
2022 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
2023 ROM_LOAD( "up03_m8.rom", 0x00000, 0x10000, 0x5f426ddb )
2024
2025 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
2026 ROM_LOAD( "p5", 0x0000, 0x10000, 0x64503283 )
2027
2028 ROM_REGION( 0x1400, REGION_PROMS )
2029 ROM_LOAD( "up03_k1.rom", 0x00000, 0x00400, 0x27b8ca8c ) /* red */
2030 ROM_LOAD( "up03_l1.rom", 0x00400, 0x00400, 0x40e78c9e ) /* green */
2031 ROM_LOAD( "up03_k2.rom", 0x00800, 0x00400, 0xd845d5ac ) /* blue */
2032 ROM_LOAD( "mb7122e.8j", 0x0c00, 0x400, 0xc20b197b ) /* ? */
2033 ROM_LOAD( "mb7122e.8k", 0x1000, 0x400, 0x5d0c617f ) /* ? */
2034
2035 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
2036 ROM_LOAD( "up02_a3.rom", 0x0000, 0x8000, 0x11a71919 )
2037
2038 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
2039 ROM_LOAD( "up01_f1.rom", 0x00000, 0x10000, 0x167e5765 )
2040 ROM_LOAD( "up01_d1.rom", 0x10000, 0x10000, 0x8b0fe8d0 )
2041 ROM_LOAD( "up01_c1.rom", 0x20000, 0x10000, 0xf4361c50 )
2042 ROM_LOAD( "up01_a1.rom", 0x30000, 0x10000, 0xe4b0b95e )
2043
2044 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
2045 ROM_LOAD( "up02_f3.rom", 0x00000, 0x8000, 0xf96f82db )
2046 ROM_LOAD( "up02_e3.rom", 0x10000, 0x8000, 0x2b007733 )
2047 ROM_LOAD( "up02_c3.rom", 0x20000, 0x8000, 0xefa830e1 )
2048 ROM_LOAD( "up02_b3.rom", 0x30000, 0x8000, 0x24559ee1 )
2049
2050 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
2051 ROM_LOAD( "up01_f10.rom", 0x00000, 0x10000, 0x2bac250e )
2052 ROM_LOAD( "up01_h10.rom", 0x10000, 0x10000, 0x5e1ba353 )
2053 ROM_LOAD( "up01_j10.rom", 0x20000, 0x10000, 0x9ff91a97 )
2054 ROM_LOAD( "up01_l10.rom", 0x30000, 0x10000, 0xae1965ef )
2055 ROM_LOAD( "up01_m10.rom", 0x40000, 0x10000, 0xdf283b67 )
2056 ROM_LOAD( "up01_n10.rom", 0x50000, 0x10000, 0x914f051f )
2057 ROM_LOAD( "up01_r10.rom", 0x60000, 0x10000, 0xc4488472 )
2058 ROM_LOAD( "up01_s10.rom", 0x70000, 0x10000, 0x8ec7fe18 )
2059
2060 ROM_REGION( 0x40000, REGION_SOUND1 )
2061 ROM_LOAD( "p1", 0x00000, 0x10000, 0x58f1683f )
2062 ROM_LOAD( "p2", 0x10000, 0x10000, 0xda3abda1 )
2063 ROM_LOAD( "p3", 0x20000, 0x10000, 0xf3683ae8 )
2064 ROM_LOAD( "p4", 0x30000, 0x10000, 0x437d775a )
2065 ROM_END
2066
2067 ROM_START( psychosj )
2068 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
2069 ROM_LOAD( "up03_m4.rom", 0x0000, 0x10000, 0x05dfb409 )
2070
2071 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
2072 ROM_LOAD( "up03_m8.rom", 0x00000, 0x10000, 0x5f426ddb )
2073
2074 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
2075 ROM_LOAD( "up03_j6.rom", 0x00000, 0x10000, 0xbbd0a8e3 )
2076
2077 ROM_REGION( 0x1400, REGION_PROMS )
2078 ROM_LOAD( "up03_k1.rom", 0x00000, 0x00400, 0x27b8ca8c ) /* red */
2079 ROM_LOAD( "up03_l1.rom", 0x00400, 0x00400, 0x40e78c9e ) /* green */
2080 ROM_LOAD( "up03_k2.rom", 0x00800, 0x00400, 0xd845d5ac ) /* blue */
2081 ROM_LOAD( "mb7122e.8j", 0x0c00, 0x400, 0xc20b197b ) /* ? */
2082 ROM_LOAD( "mb7122e.8k", 0x1000, 0x400, 0x5d0c617f ) /* ? */
2083
2084 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
2085 ROM_LOAD( "up02_a3.rom", 0x0000, 0x8000, 0x11a71919 )
2086
2087 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
2088 ROM_LOAD( "up01_f1.rom", 0x00000, 0x10000, 0x167e5765 )
2089 ROM_LOAD( "up01_d1.rom", 0x10000, 0x10000, 0x8b0fe8d0 )
2090 ROM_LOAD( "up01_c1.rom", 0x20000, 0x10000, 0xf4361c50 )
2091 ROM_LOAD( "up01_a1.rom", 0x30000, 0x10000, 0xe4b0b95e )
2092
2093 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
2094 ROM_LOAD( "up02_f3.rom", 0x00000, 0x8000, 0xf96f82db )
2095 ROM_LOAD( "up02_e3.rom", 0x10000, 0x8000, 0x2b007733 )
2096 ROM_LOAD( "up02_c3.rom", 0x20000, 0x8000, 0xefa830e1 )
2097 ROM_LOAD( "up02_b3.rom", 0x30000, 0x8000, 0x24559ee1 )
2098
2099 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
2100 ROM_LOAD( "up01_f10.rom", 0x00000, 0x10000, 0x2bac250e )
2101 ROM_LOAD( "up01_h10.rom", 0x10000, 0x10000, 0x5e1ba353 )
2102 ROM_LOAD( "up01_j10.rom", 0x20000, 0x10000, 0x9ff91a97 )
2103 ROM_LOAD( "up01_l10.rom", 0x30000, 0x10000, 0xae1965ef )
2104 ROM_LOAD( "up01_m10.rom", 0x40000, 0x10000, 0xdf283b67 )
2105 ROM_LOAD( "up01_n10.rom", 0x50000, 0x10000, 0x914f051f )
2106 ROM_LOAD( "up01_r10.rom", 0x60000, 0x10000, 0xc4488472 )
2107 ROM_LOAD( "up01_s10.rom", 0x70000, 0x10000, 0x8ec7fe18 )
2108
2109 ROM_REGION( 0x40000, REGION_SOUND1 )
2110 ROM_LOAD( "up03_b5.rom", 0x00000, 0x10000, 0x0f8e8276 )
2111 ROM_LOAD( "up03_c5.rom", 0x10000, 0x10000, 0x34e41dfb )
2112 ROM_LOAD( "up03_d5.rom", 0x20000, 0x10000, 0xaa583c5e )
2113 ROM_LOAD( "up03_f5.rom", 0x30000, 0x10000, 0x7e8bce7a )
2114 ROM_END
2115
2116 /***********************************************************************/
2117
2118 ROM_START( chopper )
2119 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
2120 ROM_LOAD( "kk_01.rom", 0x0000, 0x10000, 0x8fa2f839 )
2121
2122 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
2123 ROM_LOAD( "kk_04.rom", 0x00000, 0x10000, 0x004f7d9a )
2124
2125 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
2126 ROM_LOAD( "kk_03.rom", 0x00000, 0x10000, 0xdbaafb87 ) /* YM3526 */
2127
2128 ROM_REGION( 0x0c00, REGION_PROMS )
2129 ROM_LOAD( "up03_k1.rom", 0x0000, 0x0400, 0x7f07a45c ) /* red */
2130 ROM_LOAD( "up03_l1.rom", 0x0400, 0x0400, 0x15359fc3 ) /* green */
2131 ROM_LOAD( "up03_k2.rom", 0x0800, 0x0400, 0x79b50f7d ) /* blue */
2132
2133 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
2134 ROM_LOAD( "kk_05.rom", 0x0000, 0x8000, 0xdefc0987 )
2135
2136 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
2137 ROM_LOAD( "kk_10.rom", 0x00000, 0x10000, 0x5cf4d22b )
2138 ROM_LOAD( "kk_11.rom", 0x10000, 0x10000, 0x9af4cad0 )
2139 ROM_LOAD( "kk_12.rom", 0x20000, 0x10000, 0x02fec778 )
2140 ROM_LOAD( "kk_13.rom", 0x30000, 0x10000, 0x2756817d )
2141
2142 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
2143 ROM_LOAD( "kk_09.rom", 0x00000, 0x08000, 0x653c4342 )
2144 ROM_LOAD( "kk_08.rom", 0x10000, 0x08000, 0x2da45894 )
2145 ROM_LOAD( "kk_07.rom", 0x20000, 0x08000, 0xa0ebebdf )
2146 ROM_LOAD( "kk_06.rom", 0x30000, 0x08000, 0x284fad9e )
2147
2148 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
2149 ROM_LOAD( "kk_18.rom", 0x00000, 0x10000, 0x6abbff36 )
2150 ROM_LOAD( "kk_19.rom", 0x10000, 0x10000, 0x5283b4d3 )
2151 ROM_LOAD( "kk_20.rom", 0x20000, 0x10000, 0x6403ddf2 )
2152 ROM_LOAD( "kk_21.rom", 0x30000, 0x10000, 0x9f411940 )
2153 ROM_LOAD( "kk_14.rom", 0x40000, 0x10000, 0x9bad9e25 )
2154 ROM_LOAD( "kk_15.rom", 0x50000, 0x10000, 0x89faf590 )
2155 ROM_LOAD( "kk_16.rom", 0x60000, 0x10000, 0xefb1fb6c )
2156 ROM_LOAD( "kk_17.rom", 0x70000, 0x10000, 0x6b7fb0a5 )
2157
2158 ROM_REGION( 0x10000, REGION_SOUND1 )
2159 ROM_LOAD( "kk_02.rom", 0x00000, 0x10000, 0x06169ae0 )
2160 ROM_END
2161
2162 ROM_START( legofair ) /* ChopperI (Japan) */
2163 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
2164 ROM_LOAD( "up03_m4.rom", 0x0000, 0x10000, 0x79a485c0 )
2165
2166 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
2167 ROM_LOAD( "up03_m8.rom", 0x00000, 0x10000, 0x96d3a4d9 )
2168
2169 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
2170 ROM_LOAD( "kk_03.rom", 0x00000, 0x10000, 0xdbaafb87 )
2171
2172 ROM_REGION( 0x0c00, REGION_PROMS )
2173 ROM_LOAD( "up03_k1.rom", 0x0000, 0x0400, 0x7f07a45c ) /* red */
2174 ROM_LOAD( "up03_l1.rom", 0x0400, 0x0400, 0x15359fc3 ) /* green */
2175 ROM_LOAD( "up03_k2.rom", 0x0800, 0x0400, 0x79b50f7d ) /* blue */
2176
2177 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
2178 ROM_LOAD( "kk_05.rom", 0x0000, 0x8000, 0xdefc0987 )
2179
2180 ROM_REGION( 0x40000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
2181 ROM_LOAD( "kk_10.rom", 0x00000, 0x10000, 0x5cf4d22b )
2182 ROM_LOAD( "kk_11.rom", 0x10000, 0x10000, 0x9af4cad0 )
2183 ROM_LOAD( "kk_12.rom", 0x20000, 0x10000, 0x02fec778 )
2184 ROM_LOAD( "kk_13.rom", 0x30000, 0x10000, 0x2756817d )
2185
2186 ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
2187 ROM_LOAD( "kk_09.rom", 0x00000, 0x08000, 0x653c4342 )
2188 ROM_LOAD( "kk_08.rom", 0x10000, 0x08000, 0x2da45894 )
2189 ROM_LOAD( "kk_07.rom", 0x20000, 0x08000, 0xa0ebebdf )
2190 ROM_LOAD( "kk_06.rom", 0x30000, 0x08000, 0x284fad9e )
2191
2192 ROM_REGION( 0x80000, REGION_GFX4 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
2193 ROM_LOAD( "kk_18.rom", 0x00000, 0x10000, 0x6abbff36 )
2194 ROM_LOAD( "kk_19.rom", 0x10000, 0x10000, 0x5283b4d3 )
2195 ROM_LOAD( "kk_20.rom", 0x20000, 0x10000, 0x6403ddf2 )
2196 ROM_LOAD( "kk_21.rom", 0x30000, 0x10000, 0x9f411940 )
2197 ROM_LOAD( "kk_14.rom", 0x40000, 0x10000, 0x9bad9e25 )
2198 ROM_LOAD( "kk_15.rom", 0x50000, 0x10000, 0x89faf590 )
2199 ROM_LOAD( "kk_16.rom", 0x60000, 0x10000, 0xefb1fb6c )
2200 ROM_LOAD( "kk_17.rom", 0x70000, 0x10000, 0x6b7fb0a5 )
2201
2202 ROM_REGION( 0x10000, REGION_SOUND1 )
2203 ROM_LOAD( "kk_02.rom", 0x00000, 0x10000, 0x06169ae0 )
2204 ROM_END
2205
2206 /***********************************************************************/
2207
2208 ROM_START( ftsoccer )
2209 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
2210 ROM_LOAD( "ft-003.bin", 0x00000, 0x10000, 0x649d4448 )
2211
2212 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
2213 ROM_LOAD( "ft-001.bin", 0x00000, 0x10000, 0x2f68e38b )
2214
2215 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
2216 ROM_LOAD( "ft-002.bin", 0x00000, 0x10000, 0x9ee54ea1 )
2217
2218 ROM_REGION( 0x0c00, REGION_PROMS )
2219 ROM_LOAD( "prom2.bin", 0x000, 0x400, 0xbf4ac706 ) /* red */
2220 ROM_LOAD( "prom1.bin", 0x400, 0x400, 0x1bac8010 ) /* green */
2221 ROM_LOAD( "prom3.bin", 0x800, 0x400, 0xdbeddb14 ) /* blue */
2222
2223 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
2224 ROM_LOAD( "ft-013.bin", 0x0000, 0x08000, 0x0de7b7ad )
2225
2226 ROM_REGION( 0x50000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* background tiles */
2227 ROM_LOAD( "ft-014.bin", 0x00000, 0x10000, 0x38c38b40 )
2228 ROM_LOAD( "ft-015.bin", 0x10000, 0x10000, 0xa614834f )
2229
2230 // ROM_REGION( 0x40000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 16x16 sprites */
2231
2232 ROM_REGION( 0x80000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
2233 ROM_LOAD( "ft-005.bin", 0x10000, 0x10000, 0xdef2f1d8 )
2234 ROM_LOAD( "ft-006.bin", 0x00000, 0x10000, 0x588d14b3 )
2235
2236 ROM_LOAD( "ft-007.bin", 0x30000, 0x10000, 0xd584964b )
2237 ROM_LOAD( "ft-008.bin", 0x20000, 0x10000, 0x11156a7d )
2238
2239 ROM_LOAD( "ft-009.bin", 0x50000, 0x10000, 0xd8112aa6 )
2240 ROM_LOAD( "ft-010.bin", 0x40000, 0x10000, 0xe42864d8 )
2241
2242 ROM_LOAD( "ft-011.bin", 0x70000, 0x10000, 0x022f3e96 )
2243 ROM_LOAD( "ft-012.bin", 0x60000, 0x10000, 0xb2442c30 )
2244
2245 ROM_REGION( 0x10000, REGION_SOUND1 )
2246 ROM_LOAD( "ft-004.bin", 0x00000, 0x10000, 0x435c3716 )
2247 ROM_END
2248
2249 /***********************************************************************/
2250
2251 ROM_START( tdfever ) /* USA set */
2252 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
2253 ROM_LOAD( "td2-ver3.6c", 0x0000, 0x10000, 0x92138fe4 )
2254
2255 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
2256 ROM_LOAD( "td1-ver3.2c", 0x00000, 0x10000, 0x798711f5 )
2257
2258 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
2259 ROM_LOAD( "td3-ver3.3j", 0x00000, 0x10000, 0x5d13e0b1 )
2260
2261 ROM_REGION( 0x0c00, REGION_PROMS )
2262 ROM_LOAD( "up03_e8.rom", 0x000, 0x00400, 0x67bdf8a0 )
2263 ROM_LOAD( "up03_d8.rom", 0x400, 0x00400, 0x9c4a9198 )
2264 ROM_LOAD( "up03_e9.rom", 0x800, 0x00400, 0xc93c18e8 )
2265
2266 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
2267 ROM_LOAD( "td14ver3.4n", 0x0000, 0x8000, 0xe841bf1a )
2268
2269 ROM_REGION( 0x50000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
2270 ROM_LOAD( "up01_d8.rom", 0x00000, 0x10000, 0xad6e0927 )
2271 ROM_LOAD( "up01_e8.rom", 0x10000, 0x10000, 0x181db036 )
2272 ROM_LOAD( "up01_f8.rom", 0x20000, 0x10000, 0xc5decca3 )
2273 ROM_LOAD( "td18ver2.8gh", 0x30000, 0x10000, 0x3924da37 )
2274 ROM_LOAD( "up01_j8.rom", 0x40000, 0x10000, 0xbc17ea7f )
2275
2276 ROM_REGION( 0x80000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
2277 ROM_LOAD( "up01_k2.rom", 0x00000, 0x10000, 0x72a5590d )
2278 ROM_LOAD( "up01_l2.rom", 0x30000, 0x10000, 0x28f49182 )
2279 ROM_LOAD( "up01_n2.rom", 0x20000, 0x10000, 0xa8979657 )
2280 ROM_LOAD( "up01_j2.rom", 0x10000, 0x10000, 0x9b6d4053 )
2281 ROM_LOAD( "up01_r2.rom", 0x40000, 0x10000, 0xa0d53fbd )
2282 ROM_LOAD( "up01_p2.rom", 0x50000, 0x10000, 0xc8c71c7b )
2283 ROM_LOAD( "up01_t2.rom", 0x60000, 0x10000, 0x88e2e819 )
2284 ROM_LOAD( "up01_s2.rom", 0x70000, 0x10000, 0xf6f83d63 )
2285
2286 ROM_REGION( 0x20000, REGION_SOUND1 )
2287 ROM_LOAD( "up02_n6.rom", 0x00000, 0x10000, 0x155e472e )
2288 ROM_LOAD( "up02_p6.rom", 0x10000, 0x10000, 0x04794557 )
2289 ROM_END
2290
2291 ROM_START( tdfeverj )
2292 ROM_REGION( 0x10000, REGION_CPU1 ) /* 64k for cpuA code */
2293 ROM_LOAD( "up02_c6.rom", 0x0000, 0x10000, 0x88d88ec4 )
2294
2295 ROM_REGION( 0x10000, REGION_CPU2 ) /* 64k for cpuB code */
2296 ROM_LOAD( "up02_c2.rom", 0x00000, 0x10000, 0x191e6442 )
2297
2298 ROM_REGION( 0x10000, REGION_CPU3 ) /* 64k for sound code */
2299 ROM_LOAD( "up02_j3.rom", 0x00000, 0x10000, 0x4e4d71c7 )
2300
2301 ROM_REGION( 0x0c00, REGION_PROMS )
2302 ROM_LOAD( "up03_e8.rom", 0x000, 0x00400, 0x67bdf8a0 )
2303 ROM_LOAD( "up03_d8.rom", 0x400, 0x00400, 0x9c4a9198 )
2304 ROM_LOAD( "up03_e9.rom", 0x800, 0x00400, 0xc93c18e8 )
2305
2306 ROM_REGION( 0x8000, REGION_GFX1 | REGIONFLAG_DISPOSE ) /* characters */
2307 ROM_LOAD( "up01_n4.rom", 0x0000, 0x8000, 0xaf9bced5 )
2308
2309 ROM_REGION( 0x50000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* tiles */
2310 ROM_LOAD( "up01_d8.rom", 0x00000, 0x10000, 0xad6e0927 )
2311 ROM_LOAD( "up01_e8.rom", 0x10000, 0x10000, 0x181db036 )
2312 ROM_LOAD( "up01_f8.rom", 0x20000, 0x10000, 0xc5decca3 )
2313 ROM_LOAD( "up01_g8.rom", 0x30000, 0x10000, 0x4512cdfb )
2314 ROM_LOAD( "up01_j8.rom", 0x40000, 0x10000, 0xbc17ea7f )
2315
2316 ROM_REGION( 0x80000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* 32x32 sprites */
2317 ROM_LOAD( "up01_k2.rom", 0x00000, 0x10000, 0x72a5590d )
2318 ROM_LOAD( "up01_l2.rom", 0x30000, 0x10000, 0x28f49182 )
2319 ROM_LOAD( "up01_n2.rom", 0x20000, 0x10000, 0xa8979657 )
2320 ROM_LOAD( "up01_j2.rom", 0x10000, 0x10000, 0x9b6d4053 )
2321 ROM_LOAD( "up01_t2.rom", 0x40000, 0x10000, 0x88e2e819 )
2322 ROM_LOAD( "up01_s2.rom", 0x50000, 0x10000, 0xf6f83d63 )
2323 ROM_LOAD( "up01_r2.rom", 0x60000, 0x10000, 0xa0d53fbd )
2324 ROM_LOAD( "up01_p2.rom", 0x70000, 0x10000, 0xc8c71c7b )
2325
2326 ROM_REGION( 0x20000, REGION_SOUND1 )
2327 ROM_LOAD( "up02_n6.rom", 0x00000, 0x10000, 0x155e472e )
2328 ROM_LOAD( "up02_p6.rom", 0x10000, 0x10000, 0x04794557 )
2329 ROM_END
2330
2331 /***********************************************************************/
2332
2333 #define SNK_JOY1_PORT \
2334 PORT_START \
2335 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY ) \
2336 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY ) \
2337 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY ) \
2338 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY ) \
2339 PORT_ANALOGX( 0xf0, 0x00, IPT_DIAL, 25, 10, 0, 0, JOYCODE_1_BUTTON5, JOYCODE_1_BUTTON6, 0, 0 ) \
2340
2341 #define SNK_JOY2_PORT \
2342 PORT_START \
2343 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER2 ) \
2344 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER2 ) \
2345 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER2 ) \
2346 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER2 ) \
2347 PORT_ANALOGX( 0xf0, 0x00, IPT_DIAL | IPF_PLAYER2, 25, 10, 0, 0, JOYCODE_2_BUTTON5, JOYCODE_2_BUTTON6, 0, 0 )
2348
2349 #define SNK_BUTTON_PORT \
2350 PORT_START \
2351 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) \
2352 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) \
2353 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) \
2354 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 ) \
2355 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 ) \
2356 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) \
2357 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) \
2358 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2359
2360 #define SNK_COINAGE \
2361 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) ) \
2362 PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) \
2363 PORT_DIPSETTING( 0x10, DEF_STR( 3C_1C ) ) \
2364 PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) ) \
2365 PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) ) \
2366 PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) ) \
2367 PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) ) \
2368 PORT_DIPSETTING( 0x40, DEF_STR( 1C_3C ) ) \
2369 PORT_DIPSETTING( 0x80, DEF_STR( 1C_4C ) ) \
2370 PORT_DIPSETTING( 0xc0, DEF_STR( 1C_6C ) )
2371
2372 INPUT_PORTS_START( ikari )
2373 PORT_START
2374 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
2375 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
2376 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2377 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2378 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2379 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2380 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2381 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2382
2383 SNK_JOY1_PORT
2384
2385 SNK_JOY2_PORT
2386
2387 SNK_BUTTON_PORT
2388
2389 PORT_START /* DSW 1 */
2390 PORT_DIPNAME( 0x01, 0x01, "Allow killing each other" )
2391 PORT_DIPSETTING( 0x01, DEF_STR( No ) )
2392 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2393 PORT_DIPNAME( 0x02, 0x02, "P1 & P2 Fire Buttons" )
2394 PORT_DIPSETTING( 0x02, "Separate" )
2395 PORT_DIPSETTING( 0x00, "Common" )
2396 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2397 PORT_DIPSETTING( 0x04, "1st & every 2nd" )
2398 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2399 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2400 PORT_DIPSETTING( 0x08, "3" )
2401 PORT_DIPSETTING( 0x00, "5" )
2402 SNK_COINAGE
2403
2404 PORT_START /* DSW 2 */
2405 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2406 PORT_DIPSETTING( 0x03, "Easy" )
2407 PORT_DIPSETTING( 0x02, "Normal" )
2408 PORT_DIPSETTING( 0x01, "Hard" )
2409 PORT_DIPSETTING( 0x00, "Hardest" )
2410 PORT_DIPNAME( 0x0c, 0x08, "Game Mode" )
2411 PORT_DIPSETTING( 0x0c, "Demo Sounds Off" )
2412 PORT_DIPSETTING( 0x08, "Demo Sounds On" )
2413 PORT_DIPSETTING( 0x04, "Freeze" )
2414 PORT_BITX( 0, 0x00, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Infinite Lives", IP_KEY_NONE, IP_JOY_NONE )
2415 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2416 PORT_DIPSETTING( 0x30, "50k 100k" )
2417 PORT_DIPSETTING( 0x20, "60k 120k" )
2418 PORT_DIPSETTING( 0x10, "100k 200k" )
2419 PORT_DIPSETTING( 0x00, "None" )
2420 PORT_DIPNAME( 0x40 ,0x40, DEF_STR( Unused ) )
2421 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
2422 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2423 PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
2424 PORT_DIPSETTING( 0x80, DEF_STR( No ) )
2425 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2426 INPUT_PORTS_END
2427
2428 INPUT_PORTS_START( ikarijp )
2429 PORT_START
2430 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
2431 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
2432 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
2433 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 )
2434 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START2 )
2435 PORT_BIT( 0x20, IP_ACTIVE_LOW,IPT_UNKNOWN ) /* sound CPU status */
2436 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2437 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* tilt? */
2438
2439 SNK_JOY1_PORT
2440
2441 SNK_JOY2_PORT
2442
2443 SNK_BUTTON_PORT
2444
2445 PORT_START /* DSW 1 */
2446 PORT_DIPNAME( 0x01, 0x01, "Allow killing each other" )
2447 PORT_DIPSETTING( 0x01, DEF_STR( No ) )
2448 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2449 PORT_DIPNAME( 0x02, 0x02, "P1 & P2 Fire Buttons" )
2450 PORT_DIPSETTING( 0x02, "Separate" )
2451 PORT_DIPSETTING( 0x00, "Common" )
2452 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2453 PORT_DIPSETTING( 0x04, "1st & every 2nd" )
2454 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2455 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2456 PORT_DIPSETTING( 0x08, "3" )
2457 PORT_DIPSETTING( 0x00, "5" )
2458 SNK_COINAGE
2459
2460 PORT_START /* DSW 2 */
2461 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2462 PORT_DIPSETTING( 0x03, "Easy" )
2463 PORT_DIPSETTING( 0x02, "Normal" )
2464 PORT_DIPSETTING( 0x01, "Hard" )
2465 PORT_DIPSETTING( 0x00, "Hardest" )
2466 PORT_DIPNAME( 0x0c, 0x08, "Game Mode" )
2467 PORT_DIPSETTING( 0x0c, "Demo Sounds Off" )
2468 PORT_DIPSETTING( 0x08, "Demo Sounds On" )
2469 PORT_DIPSETTING( 0x04, "Freeze" )
2470 PORT_BITX( 0, 0x00, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Infinite Lives", IP_KEY_NONE, IP_JOY_NONE )
2471 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2472 PORT_DIPSETTING( 0x30, "50k 100k" )
2473 PORT_DIPSETTING( 0x20, "60k 120k" )
2474 PORT_DIPSETTING( 0x10, "100k 200k" )
2475 PORT_DIPSETTING( 0x00, "None" )
2476 PORT_DIPNAME( 0x40 ,0x40, DEF_STR( Unused ) )
2477 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
2478 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2479 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
2480 PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
2481 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2482 INPUT_PORTS_END
2483
2484
2485 INPUT_PORTS_START( victroad )
2486 PORT_START
2487 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound related ??? */
2488 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
2489 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2490 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2491 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2492 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2493 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2494 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2495
2496 SNK_JOY1_PORT
2497
2498 SNK_JOY2_PORT
2499
2500 SNK_BUTTON_PORT
2501
2502 PORT_START /* DSW 1 */
2503 PORT_BITX( 0x01, 0x01, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Kill friend & walk everywhere" ,0 ,0 )
2504 PORT_DIPSETTING( 0x01, DEF_STR( No ) )
2505 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2506 PORT_DIPNAME( 0x02, 0x02, "P1 & P2 Fire Buttons" )
2507 PORT_DIPSETTING( 0x02, "Separate" )
2508 PORT_DIPSETTING( 0x00, "Common" )
2509 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2510 PORT_DIPSETTING( 0x04, "1st & every 2nd" )
2511 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2512 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2513 PORT_DIPSETTING( 0x08, "3" )
2514 PORT_DIPSETTING( 0x00, "5" )
2515 SNK_COINAGE
2516
2517 PORT_START /* DSW 2 */
2518 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2519 PORT_DIPSETTING( 0x03, "Easy" )
2520 PORT_DIPSETTING( 0x02, "Normal" )
2521 PORT_DIPSETTING( 0x01, "Hard" )
2522 PORT_DIPSETTING( 0x00, "Hardest" )
2523 PORT_DIPNAME( 0x0c, 0x08, "Game Mode" )
2524 PORT_DIPSETTING( 0x0c, "Demo Sounds Off" )
2525 PORT_DIPSETTING( 0x08, "Demo Sounds On" )
2526 PORT_DIPSETTING( 0x00, "Freeze" )
2527 PORT_BITX( 0, 0x04, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Infinite Lives", IP_KEY_NONE, IP_JOY_NONE )
2528 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2529 PORT_DIPSETTING( 0x30, "50k 100k" )
2530 PORT_DIPSETTING( 0x20, "60k 120k" )
2531 PORT_DIPSETTING( 0x10, "100k 200k" )
2532 PORT_DIPSETTING( 0x00, "None" )
2533 PORT_DIPNAME( 0x40 ,0x00, "Allow Continue" )
2534 PORT_DIPSETTING( 0x40, DEF_STR( No ) )
2535 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2536 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
2537 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2538 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
2539 INPUT_PORTS_END
2540
2541
2542 INPUT_PORTS_START( gwar )
2543 PORT_START
2544 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound related ??? */
2545 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
2546 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* causes reset */
2547 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2548 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2549 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2550 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2551 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2552
2553 SNK_JOY1_PORT
2554
2555 SNK_JOY2_PORT
2556
2557 SNK_BUTTON_PORT
2558
2559 PORT_START /* DSW 1 */
2560 PORT_DIPNAME( 0x01, 0x01, "Allow Continue" )
2561 PORT_DIPSETTING( 0x00, DEF_STR( No ) )
2562 PORT_DIPSETTING( 0x01, DEF_STR( Yes ) )
2563 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2564 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
2565 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2566 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2567 PORT_DIPSETTING( 0x04, "1st & every 2nd" )
2568 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2569 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2570 PORT_DIPSETTING( 0x08, "3" )
2571 PORT_DIPSETTING( 0x00, "5" )
2572 SNK_COINAGE
2573
2574 PORT_START /* DSW 2 */
2575 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2576 PORT_DIPSETTING( 0x03, "Easy" )
2577 PORT_DIPSETTING( 0x02, "Normal" )
2578 PORT_DIPSETTING( 0x01, "Hard" )
2579 PORT_DIPSETTING( 0x00, "Hardest" )
2580 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) )
2581 PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
2582 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2583 PORT_DIPNAME( 0x08, 0x08, "Freeze" )
2584 PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
2585 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2586 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2587 PORT_DIPSETTING( 0x30, "30k 50k" )
2588 PORT_DIPSETTING( 0x20, "40k 80k" )
2589 PORT_DIPSETTING( 0x10, "50k 100k" )
2590 PORT_DIPSETTING( 0x00, "None" )
2591 PORT_DIPNAME( 0x40 ,0x40, DEF_STR( Unknown ) )
2592 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
2593 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2594 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
2595 PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
2596 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2597 INPUT_PORTS_END
2598
2599 INPUT_PORTS_START( athena )
2600 PORT_START
2601 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
2602 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
2603 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2604 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2605 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2606 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2607 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2608 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2609
2610 PORT_START
2611 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
2612 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
2613 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
2614 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
2615 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
2616 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
2617 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2618 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2619
2620 PORT_START
2621 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_COCKTAIL )
2622 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_COCKTAIL )
2623 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_COCKTAIL )
2624 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL )
2625 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
2626 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
2627 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2628 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2629
2630 PORT_START /* DSW1 */
2631 PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
2632 PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
2633 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2634 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
2635 PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
2636 PORT_DIPSETTING( 0x02, DEF_STR( Cocktail ) )
2637 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2638 PORT_DIPSETTING( 0x04, "1st & every 2nd" )
2639 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2640 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2641 PORT_DIPSETTING( 0x08, "3" )
2642 PORT_DIPSETTING( 0x00, "5" )
2643 SNK_COINAGE
2644
2645 PORT_START /* DSW2 */
2646 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2647 PORT_DIPSETTING( 0x03, "Easy" )
2648 PORT_DIPSETTING( 0x02, "Normal" )
2649 PORT_DIPSETTING( 0x01, "Hard" )
2650 PORT_DIPSETTING( 0x00, "Hardest" )
2651 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) )
2652 PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
2653 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2654 PORT_DIPNAME( 0x08, 0x08, "Freeze" )
2655 PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
2656 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2657 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2658 PORT_DIPSETTING( 0x30, "50k 100k" )
2659 PORT_DIPSETTING( 0x20, "80k 160k" )
2660 PORT_DIPSETTING( 0x10, "100k 200k" )
2661 PORT_DIPSETTING( 0x00, "None" )
2662 PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) )
2663 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
2664 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2665 PORT_DIPNAME( 0x80, 0x80, "Energy" )
2666 PORT_DIPSETTING( 0x80, "12" )
2667 PORT_DIPSETTING( 0x00, "14" )
2668 INPUT_PORTS_END
2669
2670 INPUT_PORTS_START( tnk3 )
2671 PORT_START
2672 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 )
2673 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
2674 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
2675 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 )
2676 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START2 )
2677 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
2678 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2679 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2680
2681 PORT_START
2682 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
2683 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
2684 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
2685 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
2686 PORT_ANALOGX( 0xf0, 0x00, IPT_DIAL, 25, 10, 0, 0, JOYCODE_1_BUTTON5, JOYCODE_1_BUTTON6, 0, 0 )
2687
2688 PORT_START
2689 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_COCKTAIL )
2690 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_COCKTAIL )
2691 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_COCKTAIL )
2692 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_COCKTAIL )
2693 PORT_ANALOGX( 0xf0, 0x00, IPT_DIAL | IPF_PLAYER2, 25, 10, 0, 0, JOYCODE_2_BUTTON5, JOYCODE_2_BUTTON6, 0, 0 )
2694
2695 PORT_START
2696 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
2697 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
2698 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2699 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
2700 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
2701 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2702 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
2703 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2704
2705 PORT_START /* DSW1 */
2706 PORT_BITX( 0x01, 0x01, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Walk everywhere", IP_KEY_NONE, IP_JOY_NONE )
2707 PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
2708 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2709 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
2710 PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
2711 PORT_DIPSETTING( 0x02, DEF_STR( Cocktail ) )
2712 PORT_DIPNAME( 0x04, 0x04, DEF_STR( Lives ) )
2713 PORT_DIPSETTING( 0x04, "3" )
2714 PORT_DIPSETTING( 0x00, "5" )
2715 PORT_DIPNAME( 0x38, 0x38, DEF_STR( Coinage ) )
2716 /* 0x08 and 0x10: 1 Coin/1 Credit */
2717 PORT_DIPSETTING( 0x20, DEF_STR( 3C_1C ) )
2718 PORT_DIPSETTING( 0x18, DEF_STR( 2C_1C ) )
2719 PORT_DIPSETTING( 0x38, DEF_STR( 1C_1C ) )
2720 PORT_DIPSETTING( 0x30, DEF_STR( 1C_2C ) )
2721 PORT_DIPSETTING( 0x28, DEF_STR( 1C_3C ) )
2722 PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
2723 PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Bonus_Life ) )
2724 PORT_DIPSETTING( 0xc0, "20k 60k" )
2725 PORT_DIPSETTING( 0x80, "40k 90k" )
2726 PORT_DIPSETTING( 0x40, "50k 120k" )
2727 PORT_DIPSETTING( 0x00, "None" )
2728
2729 PORT_START /* DSW2 */
2730 PORT_DIPNAME( 0x01, 0x01, "Bonus Occurrence" )
2731 PORT_DIPSETTING( 0x01, "1st & every 2nd" )
2732 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2733 PORT_DIPNAME( 0x06, 0x06, DEF_STR( Difficulty ) )
2734 PORT_DIPSETTING( 0x06, "Easy?" )
2735 PORT_DIPSETTING( 0x04, "Normal?" )
2736 PORT_DIPSETTING( 0x02, "Hard?" )
2737 PORT_DIPSETTING( 0x00, "Hardest?" )
2738 PORT_DIPNAME( 0x18, 0x10, "Game Mode" )
2739 PORT_DIPSETTING( 0x18, "Demo Sounds Off" )
2740 PORT_DIPSETTING( 0x10, "Demo Sounds On" )
2741 PORT_DIPSETTING( 0x00, "Freeze" )
2742 PORT_BITX( 0, 0x08, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Infinite Lives", IP_KEY_NONE, IP_JOY_NONE )
2743 PORT_DIPNAME( 0x20, 0x20, DEF_STR( Flip_Screen ) )
2744 PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
2745 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2746 PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
2747 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
2748 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2749 PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
2750 PORT_DIPSETTING( 0x80, DEF_STR( No ) )
2751 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2752 INPUT_PORTS_END
2753
2754 INPUT_PORTS_START( bermudat )
2755 PORT_START
2756 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
2757 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
2758 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* tile? */
2759 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2760 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2761 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2762 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2763 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2764
2765 SNK_JOY1_PORT
2766
2767 SNK_JOY2_PORT
2768
2769 SNK_BUTTON_PORT
2770
2771 PORT_START /* DSW 1 */
2772 PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
2773 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2774 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
2775 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2776 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2777 PORT_DIPSETTING( 0x04, "1st & every 2nd" )
2778 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2779 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2780 PORT_DIPSETTING( 0x08, "3" )
2781 PORT_DIPSETTING( 0x00, "5" )
2782 SNK_COINAGE
2783
2784 PORT_START /* DSW 2 */
2785 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2786 PORT_DIPSETTING( 0x03, "Easy" )
2787 PORT_DIPSETTING( 0x02, "Normal" )
2788 PORT_DIPSETTING( 0x01, "Hard" )
2789 PORT_DIPSETTING( 0x00, "Hardest" )
2790 PORT_DIPNAME( 0x0c, 0x08, "Game Mode" )
2791 PORT_DIPSETTING( 0x0c, "Demo Sounds Off" )
2792 PORT_DIPSETTING( 0x08, "Demo Sounds On" )
2793 PORT_DIPSETTING( 0x00, "Freeze" )
2794 PORT_BITX( 0, 0x04, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Infinite Lives", IP_KEY_NONE, IP_JOY_NONE )
2795 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2796 PORT_DIPSETTING( 0x30, "50k 100k" )
2797 PORT_DIPSETTING( 0x20, "60k 120k" )
2798 PORT_DIPSETTING( 0x10, "100k 200k" )
2799 PORT_DIPSETTING( 0x00, "None" )
2800 PORT_DIPNAME( 0xc0, 0xc0, "Game Style" )
2801 PORT_DIPSETTING( 0xc0, "Normal without continue" )
2802 PORT_DIPSETTING( 0x80, "Normal with continue" )
2803 PORT_DIPSETTING( 0x40, "Time attack 3 minutes" )
2804 PORT_DIPSETTING( 0x00, "Time attack 5 minutes" )
2805 INPUT_PORTS_END
2806
2807 INPUT_PORTS_START( bermudaa )
2808 PORT_START
2809 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
2810 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
2811 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* tile? */
2812 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2813 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2814 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2815 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2816 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2817
2818 SNK_JOY1_PORT
2819
2820 SNK_JOY2_PORT
2821
2822 SNK_BUTTON_PORT
2823
2824 PORT_START /* DSW 1 */
2825 PORT_DIPNAME( 0x01, 0x00, "Allow Continue" )
2826 PORT_DIPSETTING( 0x01, DEF_STR( No ) )
2827 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2828 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2829 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
2830 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2831 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2832 PORT_DIPSETTING( 0x04, "1st & every 2nd" )
2833 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2834 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2835 PORT_DIPSETTING( 0x08, "3" )
2836 PORT_DIPSETTING( 0x00, "5" )
2837 SNK_COINAGE
2838
2839 PORT_START /* DSW 2 */
2840 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2841 PORT_DIPSETTING( 0x03, "Easy" )
2842 PORT_DIPSETTING( 0x02, "Normal" )
2843 PORT_DIPSETTING( 0x01, "Hard" )
2844 PORT_DIPSETTING( 0x00, "Hardest" )
2845 PORT_DIPNAME( 0x0c, 0x08, "Game Mode" )
2846 PORT_DIPSETTING( 0x0c, "Demo Sounds Off" )
2847 PORT_DIPSETTING( 0x08, "Demo Sounds On" )
2848 PORT_DIPSETTING( 0x00, "Freeze" )
2849 PORT_BITX( 0, 0x04, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Infinite Lives", IP_KEY_NONE, IP_JOY_NONE )
2850 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2851 PORT_DIPSETTING( 0x30, "25k 50k" )
2852 PORT_DIPSETTING( 0x20, "35k 70k" )
2853 PORT_DIPSETTING( 0x10, "50K 100k" )
2854 PORT_DIPSETTING( 0x00, "None" )
2855 PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )
2856 INPUT_PORTS_END
2857
2858 /* Same as Bermudaa, but has different Bonus Life */
2859 INPUT_PORTS_START( worldwar )
2860 PORT_START
2861 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
2862 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
2863 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* tile? */
2864 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2865 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2866 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2867 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2868 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2869
2870 SNK_JOY1_PORT
2871
2872 SNK_JOY2_PORT
2873
2874 SNK_BUTTON_PORT
2875
2876 PORT_START /* DSW 1 */
2877 PORT_DIPNAME( 0x01, 0x00, "Allow Continue" )
2878 PORT_DIPSETTING( 0x01, DEF_STR( No ) )
2879 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2880 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2881 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
2882 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2883 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2884 PORT_DIPSETTING( 0x04, "1st & every 2nd" )
2885 PORT_DIPSETTING( 0x00, "1st & 2nd only" )
2886 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2887 PORT_DIPSETTING( 0x08, "3" )
2888 PORT_DIPSETTING( 0x00, "5" )
2889 SNK_COINAGE
2890
2891 PORT_START /* DSW 2 */
2892 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2893 PORT_DIPSETTING( 0x03, "Easy" )
2894 PORT_DIPSETTING( 0x02, "Normal" )
2895 PORT_DIPSETTING( 0x01, "Hard" )
2896 PORT_DIPSETTING( 0x00, "Hardest" )
2897 PORT_DIPNAME( 0x0c, 0x08, "Game Mode" )
2898 PORT_DIPSETTING( 0x0c, "Demo Sounds Off" )
2899 PORT_DIPSETTING( 0x08, "Demo Sounds On" )
2900 PORT_DIPSETTING( 0x00, "Freeze" )
2901 PORT_BITX( 0, 0x04, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Infinite Lives", IP_KEY_NONE, IP_JOY_NONE )
2902 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2903 PORT_DIPSETTING( 0x30, "50k 100k" )
2904 PORT_DIPSETTING( 0x20, "80k 120k" )
2905 PORT_DIPSETTING( 0x10, "100k 200k" )
2906 PORT_DIPSETTING( 0x00, "None" )
2907 PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )
2908 INPUT_PORTS_END
2909
2910 INPUT_PORTS_START( psychos )
2911 PORT_START
2912 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound related */
2913 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
2914 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* reset */
2915 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
2916 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2917 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2918 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2919 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2920
2921 PORT_START
2922 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER2 )
2923 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER2 )
2924 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER2 )
2925 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER2 )
2926 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
2927 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
2928 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
2929 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
2930
2931 SNK_BUTTON_PORT
2932
2933 PORT_START /* DSW 1 */
2934 PORT_SERVICE( 0x01, IP_ACTIVE_LOW )
2935 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
2936 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
2937 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2938 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
2939 PORT_DIPSETTING( 0x00, "1st & every 2nd" )
2940 PORT_DIPSETTING( 0x04, "1st & 2nd only" )
2941 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
2942 PORT_DIPSETTING( 0x08, "3" )
2943 PORT_DIPSETTING( 0x00, "5" )
2944 SNK_COINAGE
2945
2946 PORT_START /* DSW 2 */
2947 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
2948 PORT_DIPSETTING( 0x02, "Easy" )
2949 PORT_DIPSETTING( 0x03, "Normal" )
2950 PORT_DIPSETTING( 0x01, "Hard" )
2951 PORT_DIPSETTING( 0x00, "Hardest" )
2952 PORT_DIPNAME( 0x04, 0x04, DEF_STR( Demo_Sounds ) )
2953 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2954 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
2955 PORT_DIPNAME( 0x08, 0x08, "Freeze" )
2956 PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
2957 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2958 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
2959 PORT_DIPSETTING( 0x30, "50K 100K" )
2960 PORT_DIPSETTING( 0x20, "60K 120K" )
2961 PORT_DIPSETTING( 0x10, "100K 200K" )
2962 PORT_DIPSETTING( 0x00, "None" )
2963 PORT_DIPNAME( 0x40, 0x00, "Allow Continue" )
2964 PORT_DIPSETTING( 0x40, DEF_STR( No ) )
2965 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
2966 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) )
2967 PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
2968 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
2969 INPUT_PORTS_END
2970
2971 INPUT_PORTS_START( legofair )
2972 PORT_START
2973 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
2974 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
2975 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT ) /* Reset */
2976 PORT_BITX(0x08, 0x08, IPT_SERVICE, DEF_STR( Service_Mode), KEYCODE_F2, IP_JOY_NONE )
2977 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
2978 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
2979 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
2980 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
2981
2982 PORT_START
2983 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_COCKTAIL )
2984 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_COCKTAIL )
2985 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_COCKTAIL )
2986 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL )
2987 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
2988 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
2989 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
2990 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
2991
2992 PORT_START
2993 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
2994 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
2995 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
2996 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
2997 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
2998 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
2999 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3000 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3001
3002 PORT_START /* DSW 1 */
3003 PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
3004 PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
3005 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3006 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Cabinet ) )
3007 PORT_DIPSETTING( 0x02, DEF_STR( Upright ) )
3008 PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
3009 PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )
3010 PORT_DIPSETTING( 0x00, "1st & every 2nd" )
3011 PORT_DIPSETTING( 0x04, "1st & 2nd only" )
3012 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
3013 PORT_DIPSETTING( 0x08, "3" )
3014 PORT_DIPSETTING( 0x00, "5" )
3015 SNK_COINAGE
3016
3017 PORT_START /* DSW 2 */
3018 PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
3019 PORT_DIPSETTING( 0x02, "Easy" )
3020 PORT_DIPSETTING( 0x03, "Normal" )
3021 PORT_DIPSETTING( 0x01, "Hard" )
3022 PORT_DIPSETTING( 0x00, "Hardest" )
3023 PORT_DIPNAME( 0x0c, 0x0c, "Game Mode" )
3024 PORT_DIPSETTING( 0x08, "Demo Sounds Off" )
3025 PORT_DIPSETTING( 0x0c, "Demo Sounds On" )
3026 PORT_DIPSETTING( 0x00, "Freeze" )
3027 PORT_BITX( 0, 0x04, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Infinite Lives", IP_KEY_NONE, IP_JOY_NONE )
3028 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
3029 PORT_DIPSETTING( 0x30, "50k 100k" )
3030 PORT_DIPSETTING( 0x20, "75k 150k" )
3031 PORT_DIPSETTING( 0x10, "100k 200k" )
3032 PORT_DIPSETTING( 0x00, "None" )
3033 PORT_DIPNAME( 0x40, 0x40, "Allow Continue" )
3034 PORT_DIPSETTING( 0x00, DEF_STR( No ) )
3035 PORT_DIPSETTING( 0x40, DEF_STR( Yes ) )
3036 PORT_BITX( 0x80, 0x80, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability" , IP_KEY_NONE ,IP_JOY_NONE )
3037 PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
3038 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3039 INPUT_PORTS_END
3040
3041 INPUT_PORTS_START( fitegolf )
3042 PORT_START
3043 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound related? */
3044 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
3045 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
3046 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
3047 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
3048 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
3049 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
3050 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
3051
3052 PORT_START
3053 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
3054 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
3055 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
3056 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
3057 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
3058 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
3059 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3060 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3061
3062 PORT_START
3063 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
3064 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
3065 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
3066 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
3067 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
3068 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
3069 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
3070 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
3071
3072 PORT_START /* DSW1 */
3073 PORT_DIPNAME( 0x01, 0x01, "Continue?" )
3074 PORT_DIPSETTING( 0x01, "Coin Up" )
3075 PORT_DIPSETTING( 0x00, "Standard" )
3076 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3077 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
3078 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3079 PORT_DIPNAME( 0x04, 0x04, "Bonus?" )
3080 PORT_DIPSETTING( 0x04, "Every?" )
3081 PORT_DIPSETTING( 0x00, "Only?" )
3082 PORT_DIPNAME( 0x08, 0x08, "Lives?" )
3083 PORT_DIPSETTING( 0x08, "3" )
3084 PORT_DIPSETTING( 0x00, "5" )
3085 PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) )
3086 PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) )
3087 PORT_DIPSETTING( 0x10, DEF_STR( 3C_1C ) )
3088 PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) )
3089 PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) )
3090 PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
3091 PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) )
3092 PORT_DIPSETTING( 0x40, DEF_STR( 1C_3C ) )
3093 PORT_DIPSETTING( 0x80, DEF_STR( 1C_4C ) )
3094 PORT_DIPSETTING( 0xc0, DEF_STR( 1C_6C ) )
3095
3096 PORT_START /* DSW2 */
3097 PORT_DIPNAME( 0x03, 0x03, "Difficulty?" )
3098 PORT_DIPSETTING( 0x03, "Easy" )
3099 PORT_DIPSETTING( 0x02, "Normal" )
3100 PORT_DIPSETTING( 0x01, "Hard" )
3101 PORT_DIPSETTING( 0x00, "Hardest" )
3102 PORT_DIPNAME( 0x0c, 0x0c, "Game Mode" )
3103 PORT_DIPSETTING( 0x08, "Demo Sound Off" )
3104 PORT_DIPSETTING( 0x0c, "Demo Sound On" )
3105 PORT_DIPSETTING( 0x00, "Freeze" )
3106 PORT_BITX( 0, 0x04, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Never Finish?", IP_KEY_NONE, IP_JOY_NONE )
3107 PORT_DIPNAME( 0x30, 0x30, "Bonus?" )
3108 PORT_DIPSETTING( 0x30, "50k 100k?" )
3109 PORT_DIPSETTING( 0x20, "60k 120k?" )
3110 PORT_DIPSETTING( 0x10, "100k 200k?" )
3111 PORT_DIPSETTING( 0x00, "None?" )
3112 PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
3113 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
3114 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3115 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
3116 PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
3117 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3118 INPUT_PORTS_END
3119
3120 INPUT_PORTS_START( ftsoccer )
3121 PORT_START
3122 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
3123 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
3124 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
3125 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
3126 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
3127 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 )
3128 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
3129 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3130
3131 PORT_START
3132 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
3133 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
3134 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
3135 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
3136 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
3137 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
3138 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
3139 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
3140
3141 PORT_START
3142 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
3143 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
3144 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
3145 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
3146 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER2 )
3147 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER2 )
3148 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER2 )
3149 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER2 )
3150 PORT_START
3151
3152 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER3 )
3153 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER3 )
3154 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
3155 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) // START5?
3156 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER3 )
3157 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER3 )
3158 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER3 )
3159 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER3 )
3160
3161 PORT_START
3162 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER4 )
3163 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER4 )
3164 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 )
3165 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 )
3166 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER4 )
3167 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER4 )
3168 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER4 )
3169 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER4 )
3170
3171 PORT_START
3172 PORT_ANALOGX( 0x7f, 0x00, IPT_DIAL, 25, 10, 0, 0, JOYCODE_1_BUTTON5, JOYCODE_1_BUTTON6, 0, 0 )
3173 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
3174
3175 PORT_START
3176 PORT_ANALOGX( 0x7f, 0x00, IPT_DIAL | IPF_PLAYER2, 25, 10, 0, 0, JOYCODE_2_BUTTON5, JOYCODE_2_BUTTON6, 0, 0 )
3177 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
3178
3179 PORT_START
3180 PORT_ANALOGX( 0x7f, 0x00, IPT_DIAL | IPF_PLAYER3, 25, 10, 0, 0, 0, 0, 0, 0 )
3181 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
3182
3183 PORT_START
3184 PORT_ANALOGX( 0x7f, 0x00, IPT_DIAL | IPF_PLAYER4, 25, 10, 0, 0, 0, 0, 0, 0 )
3185 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
3186
3187 PORT_START
3188 PORT_DIPNAME( 0x03, 0x03, DEF_STR( Cabinet ) )
3189 PORT_DIPSETTING( 0x03, "Upright (with vs)" )
3190 PORT_DIPSETTING( 0x02, "Upright (without vs)" )
3191 PORT_DIPSETTING( 0x00, "Cocktail (2 Players)" )
3192 PORT_DIPSETTING( 0x01, "Cocktail (4 Players)" )
3193 PORT_DIPNAME( 0x0c, 0x04, "Version" )
3194 PORT_DIPSETTING( 0x04, "Europe" )
3195 PORT_DIPSETTING( 0x00, "USA" )
3196 PORT_DIPSETTING( 0x08, "Japan" )
3197 /* PORT_DIPSETTING( 0x0c, "Europe" ) */
3198 SNK_COINAGE
3199
3200 PORT_START
3201 PORT_DIPNAME( 0x01, 0x01, "Allow Continue" )
3202 PORT_DIPSETTING( 0x00, DEF_STR( No ) )
3203 PORT_DIPSETTING( 0x01, DEF_STR( Yes ) )
3204 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
3205 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
3206 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3207 PORT_DIPNAME( 0x0c, 0x0c, "Game Mode" )
3208 PORT_DIPSETTING( 0x08, "Demo Sound Off" )
3209 PORT_DIPSETTING( 0x0c, "Demo Sound On" )
3210 PORT_DIPSETTING( 0x00, "Freeze" )
3211 PORT_BITX( 0, 0x04, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Never Finish", IP_KEY_NONE, IP_JOY_NONE )
3212 PORT_DIPNAME( 0x70, 0x70, "Play Time" )
3213 PORT_DIPSETTING( 0x10, "1:00" )
3214 PORT_DIPSETTING( 0x60, "1:10" )
3215 PORT_DIPSETTING( 0x50, "1:20" )
3216 PORT_DIPSETTING( 0x40, "1:30" )
3217 PORT_DIPSETTING( 0x30, "1:40" )
3218 PORT_DIPSETTING( 0x20, "1:50" )
3219 PORT_DIPSETTING( 0x70, "2:00" )
3220 PORT_DIPSETTING( 0x00, "2:10" )
3221 PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
3222 INPUT_PORTS_END
3223
3224 INPUT_PORTS_START( tdfever )
3225 PORT_START
3226 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 )
3227 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
3228 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
3229 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
3230 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
3231 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 )
3232 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
3233 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
3234
3235 PORT_START
3236 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
3237 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
3238 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
3239 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
3240 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
3241 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
3242 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
3243 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
3244
3245 PORT_START
3246 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
3247 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
3248 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
3249 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
3250 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER2 )
3251 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER2 )
3252 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER2 )
3253 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER2 )
3254 PORT_START
3255
3256 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER3 )
3257 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER3 )
3258 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
3259 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
3260 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER3 )
3261 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER3 )
3262 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER3 )
3263 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER3 )
3264
3265 PORT_START
3266 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER4 )
3267 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER4 )
3268 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
3269 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
3270 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER4 )
3271 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER4 )
3272 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER4 )
3273 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER4 )
3274
3275 PORT_START
3276 PORT_ANALOGX( 0x7f, 0x00, IPT_DIAL, 25, 10, 0, 0, JOYCODE_1_BUTTON5, JOYCODE_1_BUTTON6, 0, 0 )
3277 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
3278
3279 PORT_START
3280 PORT_ANALOGX( 0x7f, 0x00, IPT_DIAL | IPF_PLAYER2, 25, 10, 0, 0, JOYCODE_2_BUTTON5, JOYCODE_2_BUTTON6, 0, 0 )
3281 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
3282
3283 PORT_START
3284 PORT_ANALOGX( 0x7f, 0x00, IPT_DIAL | IPF_PLAYER3, 25, 10, 0, 0, 0, 0, 0, 0 )
3285 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
3286
3287 PORT_START
3288 PORT_ANALOGX( 0x7f, 0x00, IPT_DIAL | IPF_PLAYER4, 25, 10, 0, 0, 0, 0, 0, 0 )
3289 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
3290
3291 PORT_START
3292 PORT_DIPNAME( 0x01, 0x00, "Allow Continue" )
3293 PORT_DIPSETTING( 0x01, DEF_STR( No ) )
3294 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
3295 PORT_DIPNAME( 0x02, 0x02, "Max Players" )
3296 PORT_DIPSETTING( 0x02, "2" )
3297 PORT_DIPSETTING( 0x00, "4" )
3298 PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
3299 PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
3300 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3301 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
3302 PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
3303 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3304 PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
3305 PORT_DIPSETTING( 0x00, "1 Coin/1 Credit 4/5" )
3306 PORT_DIPSETTING( 0x10, "1 Coin/1 Credit 3/4" )
3307 PORT_DIPSETTING( 0x20, "1 Coin/1 Credit 2/3" )
3308 PORT_DIPSETTING( 0x30, DEF_STR( 1C_2C ) )
3309 PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
3310 PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) )
3311 PORT_DIPSETTING( 0x40, DEF_STR( 1C_3C ) )
3312 PORT_DIPSETTING( 0x80, DEF_STR( 1C_4C ) )
3313 PORT_DIPSETTING( 0xc0, DEF_STR( 1C_6C ) )
3314
3315 PORT_START
3316 PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
3317 PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
3318 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3319 PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
3320 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
3321 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3322 PORT_DIPNAME( 0x0c, 0x08, "Game Mode" )
3323 PORT_DIPSETTING( 0x0c, "Demo Sound Off" )
3324 PORT_DIPSETTING( 0x08, "Demo Sound On" )
3325 PORT_DIPSETTING( 0x00, "Freeze" )
3326 PORT_BITX( 0, 0x04, IPT_DIPSWITCH_SETTING | IPF_CHEAT, "Never Finish?", IP_KEY_NONE, IP_JOY_NONE )
3327 PORT_DIPNAME( 0x70, 0x70, "Play Time" )
3328 PORT_DIPSETTING( 0x70, "1:00" )
3329 PORT_DIPSETTING( 0x60, "1:10" )
3330 PORT_DIPSETTING( 0x50, "1:20" )
3331 PORT_DIPSETTING( 0x40, "1:30" )
3332 PORT_DIPSETTING( 0x30, "1:40" )
3333 PORT_DIPSETTING( 0x20, "1:50" )
3334 PORT_DIPSETTING( 0x10, "2:00" )
3335 PORT_DIPSETTING( 0x00, "2:10" )
3336 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
3337 PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
3338 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
3339 INPUT_PORTS_END
3340
3341 /***********************************************************************/
3342
3343 /* input port configuration */
3344
3345 const SNK_INPUT_PORT_TYPE athena_io[SNK_MAX_INPUT_PORTS] = {
3346 /* c000 */ SNK_INP0,
3347 /* c100 */ SNK_INP1, SNK_UNUSED,
3348 /* c200 */ SNK_INP2, SNK_UNUSED,
3349 /* c300 */ SNK_UNUSED, SNK_UNUSED,
3350 /* c400 */ SNK_UNUSED, SNK_UNUSED,
3351 /* c500 */ SNK_INP3, SNK_UNUSED,
3352 /* c600 */ SNK_INP4
3353 };
3354
3355 const SNK_INPUT_PORT_TYPE ikari_io[SNK_MAX_INPUT_PORTS] = {
3356 /* c000 */ SNK_INP0,
3357 /* c100 */ SNK_ROT12_PLAYER1, SNK_UNUSED,
3358 /* c200 */ SNK_ROT12_PLAYER2, SNK_UNUSED,
3359 /* c300 */ SNK_INP3, SNK_UNUSED,
3360 /* c400 */ SNK_UNUSED, SNK_UNUSED,
3361 /* c500 */ SNK_INP4, SNK_UNUSED,
3362 /* c600 */ SNK_INP5
3363 };
3364
3365 const SNK_INPUT_PORT_TYPE ikarijpb_io[SNK_MAX_INPUT_PORTS] = {
3366 /* c000 */ SNK_INP0,
3367 /* c100 */ SNK_ROT8_PLAYER1, SNK_UNUSED,
3368 /* c200 */ SNK_ROT8_PLAYER2, SNK_UNUSED,
3369 /* c300 */ SNK_INP3, SNK_UNUSED,
3370 /* c400 */ SNK_UNUSED, SNK_UNUSED,
3371 /* c500 */ SNK_INP4, SNK_UNUSED,
3372 /* c600 */ SNK_INP5
3373 };
3374
3375 const SNK_INPUT_PORT_TYPE tdfever_io[SNK_MAX_INPUT_PORTS] = {
3376 /* c000 */ SNK_INP0,
3377 /* c100 */ SNK_INP1, SNK_INP2, SNK_INP3, SNK_INP4, /* joy1..joy4 */
3378 /* c300 */ SNK_INP5, SNK_INP6, SNK_INP7, SNK_INP8, /* aim1..aim4 */
3379 /* c500 */ SNK_UNUSED,
3380 /* c580 */ SNK_INP9, /* DSW1 */
3381 /* c600 */ SNK_INP10 /* DSW2 */
3382 };
3383
init_ikari(void)3384 static void init_ikari(void){
3385 unsigned char *RAM = memory_region(REGION_CPU1);
3386 /* Hack ROM test */
3387 RAM[0x11a6] = 0x00;
3388 RAM[0x11a7] = 0x00;
3389 RAM[0x11a8] = 0x00;
3390
3391 /* Hack Incorrect port value */
3392 RAM[0x1003] = 0xc3;
3393 RAM[0x1004] = 0x02;
3394 RAM[0x1005] = 0x10;
3395
3396 snk_sound_busy_bit = 0x01;
3397 snk_io = ikari_io;
3398 hard_flags = 1;
3399 gwar_sprite_placement=0;
3400 snk_bg_tilemap_baseaddr = 0xd800;
3401 }
3402
init_ikarijp(void)3403 static void init_ikarijp(void){
3404 unsigned char *RAM = memory_region(REGION_CPU1);
3405 RAM[0x190b] = 0xc9; /* faster test */
3406
3407 snk_sound_busy_bit = 0x20;
3408 snk_io = ikari_io;
3409 hard_flags = 1;
3410 gwar_sprite_placement=0;
3411 snk_bg_tilemap_baseaddr = 0xd000;
3412 }
3413
init_ikarijpb(void)3414 static void init_ikarijpb(void){
3415 unsigned char *RAM = memory_region(REGION_CPU1);
3416 RAM[0x190b] = 0xc9; /* faster test */
3417
3418 snk_sound_busy_bit = 0x20;
3419 snk_io = ikarijpb_io;
3420 hard_flags = 1;
3421 gwar_sprite_placement=0;
3422 snk_bg_tilemap_baseaddr = 0xd000;
3423 }
3424
init_victroad(void)3425 static void init_victroad(void){
3426 unsigned char *RAM = memory_region(REGION_CPU1);
3427 /* Hack ROM test */
3428 RAM[0x17bd] = 0x00;
3429 RAM[0x17be] = 0x00;
3430 RAM[0x17bf] = 0x00;
3431
3432 /* Hack Incorrect port value */
3433 RAM[0x161a] = 0xc3;
3434 RAM[0x161b] = 0x19;
3435 RAM[0x161c] = 0x16;
3436
3437 snk_sound_busy_bit = 0x01;
3438 snk_io = ikari_io;
3439 hard_flags = 1;
3440 gwar_sprite_placement=0;
3441 snk_bg_tilemap_baseaddr = 0xd800;
3442 }
3443
init_dogosoke(void)3444 static void init_dogosoke(void){
3445 unsigned char *RAM = memory_region(REGION_CPU1);
3446 /* Hack ROM test */
3447 RAM[0x179f] = 0x00;
3448 RAM[0x17a0] = 0x00;
3449 RAM[0x17a1] = 0x00;
3450
3451 /* Hack Incorrect port value */
3452 RAM[0x15fc] = 0xc3;
3453 RAM[0x15fd] = 0xfb;
3454 RAM[0x15fe] = 0x15;
3455
3456 snk_sound_busy_bit = 0x01;
3457 snk_io = ikari_io;
3458 hard_flags = 1;
3459 gwar_sprite_placement=0;
3460 snk_bg_tilemap_baseaddr = 0xd800;
3461 }
3462
init_gwar(void)3463 static void init_gwar(void){
3464 snk_sound_busy_bit = 0x01;
3465 snk_io = ikari_io;
3466 hard_flags = 0;
3467 gwar_sprite_placement=1;
3468 snk_bg_tilemap_baseaddr = 0xd800;
3469 }
3470
init_gwara(void)3471 static void init_gwara(void){
3472 snk_sound_busy_bit = 0x01;
3473 snk_io = ikari_io;
3474 hard_flags = 0;
3475 gwar_sprite_placement=2;
3476 snk_bg_tilemap_baseaddr = 0xd800;
3477 }
3478
init_chopper(void)3479 static void init_chopper(void){
3480 snk_sound_busy_bit = 0x01;
3481 snk_io = athena_io;
3482 hard_flags = 0;
3483 gwar_sprite_placement=0;
3484 snk_bg_tilemap_baseaddr = 0xd800;
3485 }
3486
init_bermudat(void)3487 static void init_bermudat(void){
3488 unsigned char *RAM = memory_region(REGION_CPU1);
3489
3490 // Patch "Turbo Error"
3491 RAM[0x127e] = 0xc9;
3492 RAM[0x118d] = 0x00;
3493 RAM[0x118e] = 0x00;
3494
3495 snk_sound_busy_bit = 0x01;
3496 snk_io = ikari_io;
3497 hard_flags = 0;
3498 gwar_sprite_placement=0;
3499 snk_bg_tilemap_baseaddr = 0xd800;
3500 }
3501
init_worldwar(void)3502 static void init_worldwar(void){
3503 snk_sound_busy_bit = 0x01;
3504 snk_io = ikari_io;
3505 hard_flags = 0;
3506 gwar_sprite_placement=0;
3507 snk_bg_tilemap_baseaddr = 0xd800;
3508 }
3509
init_tdfever(void)3510 static void init_tdfever( void ){
3511 snk_sound_busy_bit = 0x08;
3512 snk_io = tdfever_io;
3513 hard_flags = 0;
3514 gwar_sprite_placement=0;
3515 snk_bg_tilemap_baseaddr = 0xd800;
3516 }
3517
init_ftsoccer(void)3518 static void init_ftsoccer( void ){
3519 snk_sound_busy_bit = 0x08;
3520 snk_io = tdfever_io;
3521 hard_flags = 0;
3522 gwar_sprite_placement=0;
3523 snk_bg_tilemap_baseaddr = 0xd800;
3524 }
3525
init_tnk3(void)3526 static void init_tnk3( void ){
3527 snk_sound_busy_bit = 0x20;
3528 snk_io = ikari_io;
3529 hard_flags = 0;
3530 gwar_sprite_placement=0;
3531 snk_bg_tilemap_baseaddr = 0xd800;
3532 }
3533
init_athena(void)3534 static void init_athena( void ){
3535 snk_sound_busy_bit = 0x01;
3536 snk_io = athena_io;
3537 hard_flags = 0;
3538 gwar_sprite_placement=0;
3539 snk_bg_tilemap_baseaddr = 0xd800;
3540 }
3541
init_fitegolf(void)3542 static void init_fitegolf( void ){
3543 snk_sound_busy_bit = 0x01;
3544 snk_io = athena_io;
3545 hard_flags = 0;
3546 gwar_sprite_placement=0;
3547 snk_bg_tilemap_baseaddr = 0xd800;
3548 }
3549
init_psychos(void)3550 static void init_psychos( void ){
3551 snk_sound_busy_bit = 0x01;
3552 snk_io = athena_io;
3553 hard_flags = 0;
3554 gwar_sprite_placement=0;
3555 snk_bg_tilemap_baseaddr = 0xd800;
3556 }
3557
3558 /* rom parent machine inp init */
3559 GAMEX( 1985, tnk3, 0, tnk3, tnk3, tnk3, ROT270, "SNK", "TNK III (US?)", GAME_NO_COCKTAIL )
3560 GAMEX( 1985, tnk3j, tnk3, tnk3, tnk3, tnk3, ROT270, "SNK", "Tank (Japan)", GAME_NO_COCKTAIL )
3561 GAMEX( 1986, athena, 0, athena, athena, athena, ROT0_16BIT, "SNK", "Athena", GAME_NO_COCKTAIL )
3562 GAMEX( 1988, fitegolf, 0, athena, fitegolf, fitegolf, ROT0, "SNK", "Fighting Golf", GAME_NO_COCKTAIL )
3563 GAMEX( 1986, ikari, 0, ikari, ikari, ikari, ROT270, "SNK", "Ikari Warriors (US)", GAME_NO_COCKTAIL )
3564 GAMEX( 1986, ikarijp, ikari, ikari, ikarijp, ikarijp, ROT270, "SNK", "Ikari Warriors (Japan)", GAME_NO_COCKTAIL )
3565 GAMEX( 1986, ikarijpb, ikari, ikari, ikarijp, ikarijpb, ROT270, "bootleg", "Ikari Warriors (Japan bootleg)", GAME_NO_COCKTAIL )
3566 GAMEX( 1986, victroad, 0, victroad, victroad, victroad, ROT270, "SNK", "Victory Road", GAME_NO_COCKTAIL )
3567 GAMEX( 1986, dogosoke, victroad, victroad, victroad, dogosoke, ROT270, "SNK", "Dogou Souken", GAME_NO_COCKTAIL )
3568 GAMEX( 1987, gwar, 0, gwar, gwar, gwar, ROT270, "SNK", "Guerrilla War (US)", GAME_NO_COCKTAIL )
3569 GAMEX( 1987, gwarj, gwar, gwar, gwar, gwar, ROT270, "SNK", "Guevara (Japan)", GAME_NO_COCKTAIL )
3570 GAMEX( 1987, gwara, gwar, gwar, gwar, gwara, ROT270, "SNK", "Guerrilla War (Version 1)", GAME_NOT_WORKING | GAME_NO_COCKTAIL )
3571 GAMEX( 1987, gwarb, gwar, gwar, gwar, gwar, ROT270, "bootleg", "Guerrilla War (bootleg)", GAME_NO_COCKTAIL )
3572 GAMEX( 1987, bermudat, 0, bermudat, bermudat, bermudat, ROT270_16BIT, "SNK", "Bermuda Triangle (US)", GAME_NO_COCKTAIL )
3573 GAMEX( 1987, bermudaj, bermudat, bermudat, bermudat, bermudat, ROT270_16BIT, "SNK", "Bermuda Triangle (Japan)", GAME_NO_COCKTAIL )
3574 GAMEX( 1987, bermudaa, bermudat, bermudat, bermudaa, worldwar, ROT270_16BIT, "SNK", "Bermuda Triangle (US early version)", GAME_NO_COCKTAIL )
3575 GAMEX( 1987, worldwar, bermudat, bermudat, worldwar, worldwar, ROT270_16BIT, "SNK", "World Wars (Japan)", GAME_NO_COCKTAIL )
3576 GAMEX( 1987, psychos, 0, psychos, psychos, psychos, ROT0_16BIT, "SNK", "Psycho Soldier (US)", GAME_IMPERFECT_SOUND | GAME_NO_COCKTAIL )
3577 GAMEX( 1987, psychosj, psychos, psychos, psychos, psychos, ROT0_16BIT, "SNK", "Psycho Soldier (Japan)", GAME_IMPERFECT_SOUND | GAME_NO_COCKTAIL )
3578 GAMEX( 1988, chopper, 0, chopper1, legofair, chopper, ROT270_16BIT, "SNK", "Chopper I", GAME_IMPERFECT_SOUND | GAME_NO_COCKTAIL )
3579 GAMEX( 1988, legofair, chopper, chopper1, legofair, chopper, ROT270_16BIT, "SNK", "Koukuu Kihei Monogatari - The Legend of Air Cavalry", GAME_IMPERFECT_SOUND | GAME_NO_COCKTAIL )
3580 GAMEX( 1987, tdfever, 0, tdfever, tdfever, tdfever, ROT270, "SNK", "TouchDown Fever", GAME_NO_COCKTAIL )
3581 GAMEX( 1987, tdfeverj, tdfever, tdfever, tdfever, tdfever, ROT270, "SNK", "TouchDown Fever (Japan)", GAME_NO_COCKTAIL )
3582 GAMEX( 1988, ftsoccer, 0, ftsoccer, ftsoccer, ftsoccer, ROT0_16BIT, "SNK", "Fighting Soccer", GAME_NO_COCKTAIL )
3583