1 /***************************************************************************
2
3 -= Seta, Sammy, Visco (SSV) System =-
4
5 driver by Luca Elia (l.elia@tin.it)
6
7
8 CPU : NEC V60
9
10 Sound Chip : Ensoniq ES5506 (OTTOR2)
11
12 Custom Chips : ST-0004 (Video DAC)
13 ST-0005 (Parallel I/O)
14 ST-0006 (Video controller)
15 ST-0007 (System controller)
16
17 Others : Battery + MB3790 + LH5168D-10L (NVRAM)
18 DX-102 (I/O)
19 M62X42B (RTC)
20 ST010
21 TA8210 (Audio AMP)
22 uPD71051/7001C (UART)
23
24 -----------------------------------------------------------------------------------
25 Main Board ROM Board Year + Game By
26 -----------------------------------------------------------------------------------
27 STA-0001 STS-0001 93 Super Real Mahjong PIV Seta
28 STA-0001 STS-0001 93 Dramatic Adventure Quiz Keith & Lucy Visco
29 STA-0001 SAM-5127 93 Survival Arts Sammy
30 STA-0001 SAM-5127 93 DynaGears Sammy
31 STA-0001B VISCO-001B 94 Drift Out '94 Visco
32 STA-0001B GOLF ROM 94 Eagle Shot Golf Sammy
33 STA-0001B ? 94 Twin Eagle II - The Rescue Mission Seta
34 STA-0001B P1-102A 95 Mahjong Hyper Reaction Sammy
35 ? ? 95 Ultra X Weapons / Ultra Keibitai Banpresto + Tsuburaya Prod.
36 STA-0001B VISCO-JJ1 96 Lovely Pop Mahjong Jan Jan Shimasyo Visco
37 STA-0001B VISCO-001B 96 Storm Blade Visco
38 STA-0001B P1-105A 96? Meosis Magic Sammy
39 STA-0001B ? 97 Joryuu Syougi Kyoushitsu (1) Visco
40 STA-0001B VISCO-JJ1 97 Koi Koi Shimasyo 2 Visco
41 STA-0001B P1-112A 97 Mahjong Hyper Reaction 2 Sammy
42 STA-0001B ? 97 Monster Slider Visco / Datt
43 STA-0001 ? 97 Super Real Mahjong P7 Seta
44 STA-0001B ? 98 Gourmet Battle Quiz Ryorioh CooKing Visco
45 STA-0001B P1-112C 98 Pachinko Sexy Reaction Sammy
46 STA-0001B P1-112C 99 Change Air Blade Visco
47 STA-0001B SSV_SUB 00 Vasara Visco
48 STA-0001B SSV_SUB 01 Vasara 2 Visco
49 -----------------------------------------------------------------------------------
50
51 (1) Uses an unemulated NEC V810 CPU instead of the V60.
52
53
54 Games not yet dumped:
55 ? Kidou Senshi Gundam Final Shooting Visco / Banpresto
56 ? Pachinko Sexy Reaction 2 Sammy
57
58
59 STA-0001 & STA-0001B should be fully interchangable, its reported that STA-0001 runs at
60 12mhz whereas STA-0001B runs at 16.
61
62 To Do:
63
64 - all games : CRT controller (resolution+visible area+flip screen?)
65 Proper "shadows" support: the low 4 bits of the pens from a "shadowing"
66 tile (regardless of color code) substitute the top 4 bits of the
67 color index (0-7fff) in the frame buffer.
68
69 - hypreac2 : communication with other units
70 tilemap sprites use the yoffset specified in the sprites-list?
71 (see the 8 pixel gap between the backgrounds and the black rows)
72
73 - mslider : V60 issues? the correct tiles don't always vanish, depending on
74 the layout of the 3 tiles you put together sometimes only 2 vanish
75 and a blank are off the bottom of the game board flashes instead
76 of the correct 3rd tile
77
78 - srmp4 : Backgrounds are offset by $60 pixels, so they're kludged to work
79
80 - srmp7 : Needs interrupts by the sound chip (unsupported yet). Kludged to work.
81
82 - ultrax : bad gfx offsets and wrong visible area
83 - twineag2 : bad gfx offsets on some scenes
84
85 - dynagear : Requires 2 kludges for the video emulation and has some bad shadow sprites
86 on the left side of the screen
87
88 code @ $e75cdc
89
90 W:
91 0x482000 - 0x482007 - values taken from obj table
92 0x482040 - 0x482043 - write latch ?
93
94 R:
95 0x482022 - 0x482023 - result = direction ,
96 probably : 00 = down, 40 = left, 80 = up, c0 = right
97 0x482042 - 0x482043 - protection status bits ?
98
99 ***************************************************************************/
100
101 #include "driver.h"
102 #include "vidhrdw/generic.h"
103 #include "machine/random.h"
104 #include "machine/eeprom.h"
105 #include "seta.h"
106
107 #include <math.h>
108
109 /***************************************************************************
110
111
112 Interrupts
113
114
115 ***************************************************************************/
116
117 static UINT8 requested_int;
118 static data16_t *ssv_irq_vectors;
119 static data16_t irq_enable;
120 static data16_t *ssv_mainram;
121
122 /* Update the IRQ state based on all possible causes */
update_irq_state(void)123 static void update_irq_state(void)
124 {
125 cpu_set_irq_line(0, 0, (requested_int & irq_enable)? ASSERT_LINE : CLEAR_LINE);
126 }
127
ssv_irq_callback(int level)128 int ssv_irq_callback(int level)
129 {
130 int i;
131 for ( i = 0; i <= 7; i++ )
132 {
133 if (requested_int & (1 << i))
134 {
135 data16_t vector = ssv_irq_vectors[i * (16/2)] & 7;
136 return vector;
137 }
138 }
139 return 0;
140 }
141
WRITE16_HANDLER(ssv_irq_ack_w)142 WRITE16_HANDLER( ssv_irq_ack_w )
143 {
144 int level = ((offset * 2) & 0x70) >> 4;
145 requested_int &= ~(1 << level);
146
147 update_irq_state();
148 }
149
150 /*
151 IRQ Enable Register:
152
153 drifto94: c at the start
154 hypreact: ff at the start
155 hypreac2: ff at the start
156 janjans1: 0,6c,60
157 keithlcy: c at the start
158 meosism: ff at the start
159 mslider: c at the start
160 ryorioh: 0,c at the start
161 srmp4: 8 at the start
162 srmp7: 8 at the start, 28, 40 (seems related to 21000e writes)
163 survarts: 0,8 at the start
164 sxyreact: ff at the start
165 ultrax: 40,00 at the start then 42,4a
166 twineag2: 40,00 at the start then 42,4a
167 */
WRITE16_HANDLER(ssv_irq_enable_w)168 WRITE16_HANDLER( ssv_irq_enable_w )
169 {
170 COMBINE_DATA(&irq_enable);
171 }
172
173 static int interrupt_ultrax;
174
INTERRUPT_GEN(ssv_interrupt)175 INTERRUPT_GEN( ssv_interrupt )
176 {
177 if (cpu_getiloops())
178 {
179 if(interrupt_ultrax)
180 {
181 requested_int |= 1 << 1; /* needed by ultrax to coin up, breaks cairblad*/
182 update_irq_state();
183 }
184 }
185 else
186 {
187 requested_int |= 1 << 3; /* vblank*/
188 update_irq_state();
189 }
190 }
191
INTERRUPT_GEN(gdfs_interrupt)192 INTERRUPT_GEN( gdfs_interrupt )
193 {
194 if (cpu_getiloops())
195 {
196 requested_int |= 1 << 6; /* reads lightgun (4 times for 4 axis) */
197 update_irq_state();
198 }
199 else
200 {
201 requested_int |= 1 << 3; /* vblank */
202 update_irq_state();
203 }
204 }
205
206
207 /***************************************************************************
208
209
210 Coins Lockout / Counter
211
212
213 ***************************************************************************/
214
215 /*
216 drifto94: c3
217 janjans1: c3
218 keithlcy: c3
219 mslider: c3, 83 in test mode
220 ryorioh: c3
221
222 hypreac2: 80
223 hypreact: 80
224 meosism: 83
225 srmp4: 83, c0 in test mode (where only tilemap sprites are used)
226 srmp7: 80
227 survarts: 83
228 sxyreact: 80
229 */
WRITE16_HANDLER(ssv_lockout_w)230 static WRITE16_HANDLER( ssv_lockout_w )
231 {
232 /* usrintf_showmessage("%02X",data & 0xff);*/
233 if (ACCESSING_LSB)
234 {
235 coin_lockout_w(1,~data & 0x01);
236 coin_lockout_w(0,~data & 0x02);
237 coin_counter_w(1, data & 0x04);
238 coin_counter_w(0, data & 0x08);
239 /* data & 0x40?*/
240 ssv_enable_video( data & 0x80);
241 }
242 }
243
244 /* Same as above but with inverted lockout lines */
WRITE16_HANDLER(ssv_lockout_inv_w)245 static WRITE16_HANDLER( ssv_lockout_inv_w )
246 {
247 /* usrintf_showmessage("%02X",data & 0xff);*/
248 if (ACCESSING_LSB)
249 {
250 coin_lockout_w(1, data & 0x01);
251 coin_lockout_w(0, data & 0x02);
252 coin_counter_w(1, data & 0x04);
253 coin_counter_w(0, data & 0x08);
254 /* data & 0x40?*/
255 ssv_enable_video( data & 0x80);
256 }
257 }
258
MACHINE_INIT(ssv)259 MACHINE_INIT( ssv )
260 {
261 requested_int = 0;
262 cpu_set_irq_callback(0, ssv_irq_callback);
263 cpu_setbank(1, memory_region(REGION_USER1));
264 }
265
266
267 /***************************************************************************
268
269
270 Non-Volatile RAM
271
272
273 ***************************************************************************/
274
275 static data16_t *ssv_nvram;
276 static size_t ssv_nvram_size;
277
NVRAM_HANDLER(ssv)278 NVRAM_HANDLER( ssv )
279 {
280 if (read_or_write)
281 mame_fwrite(file, ssv_nvram, ssv_nvram_size);
282 else
283 if (file)
284 mame_fread(file, ssv_nvram, ssv_nvram_size);
285 }
286
NVRAM_HANDLER(gdfs)287 NVRAM_HANDLER( gdfs )
288 {
289 if (read_or_write)
290 EEPROM_save(file);
291 else
292 {
293 EEPROM_init(&eeprom_interface_93C46);
294
295 if (file) EEPROM_load(file);
296 else
297 {
298 /* Set the EEPROM to Factory Defaults */
299 }
300 }
301 }
302
303 /***************************************************************************
304
305
306 DSP
307
308
309 ***************************************************************************/
310
311
312 static UINT16 *dsp_ram;
313
WRITE16_HANDLER(dsp_w)314 static WRITE16_HANDLER( dsp_w )
315 {
316 COMBINE_DATA(dsp_ram+offset);
317 if(offset == 0x21 && dsp_ram[0x21]) {
318 switch(dsp_ram[0x20]) {
319 case 0x0001:
320 dsp_ram[0x11] = (UINT8)(128*atan2(dsp_ram[0] - dsp_ram[1], dsp_ram[2] - dsp_ram[3])/M_PI) ^ 0x80;
321 dsp_ram[0x21] = 0;
322 break;
323 default:
324 dsp_ram[0x21] = 0;
325 log_cb(RETRO_LOG_DEBUG, LOGPRE "SSV DSP: unknown function %x (%x)\n", dsp_ram[0x20], activecpu_get_pc());
326 break;
327 }
328 }
329 }
330
331
332
333 /***************************************************************************
334
335
336 Memory Maps
337
338
339 ***************************************************************************/
340
341 /*static READ16_HANDLER( fake_r ) { return ssv_scroll[offset]; }*/
342
343 #define SSV_READMEM( _ROM ) \
344 { 0x000000, 0x00ffff, MRA16_RAM }, /* RAM */ \
345 { 0x100000, 0x13ffff, MRA16_RAM }, /* Sprites */ \
346 { 0x140000, 0x15ffff, MRA16_RAM }, /* Palette */ \
347 { 0x160000, 0x17ffff, MRA16_RAM }, /* */ \
348 { 0x1c0000, 0x1c0001, ssv_vblank_r }, /* Vblank? */ \
349 /**/{ 0x1c0002, 0x1c007f, MRA16_RAM }, /* Scroll */ \
350 { 0x210002, 0x210003, input_port_0_word_r }, /* DSW */ \
351 { 0x210004, 0x210005, input_port_1_word_r }, /* DSW */ \
352 { 0x210008, 0x210009, input_port_2_word_r }, /* P1 */ \
353 { 0x21000a, 0x21000b, input_port_3_word_r }, /* P2 */ \
354 { 0x21000c, 0x21000d, input_port_4_word_r }, /* Coins */ \
355 { 0x21000e, 0x21000f, MRA16_NOP }, /* */ \
356 { 0x300000, 0x30007f, ES5506_data_0_word_r }, /* Sound */ \
357 { 0x482000, 0x482fff, MRA16_RAM }, /* DSP */ \
358 { _ROM, 0xffffff, MRA16_BANK1 }, /* ROM */ \
359 /*{ 0x990000, 0x99007f, fake_r },*/
360
361 #define SSV_WRITEMEM \
362 { 0x000000, 0x00ffff, MWA16_RAM, &ssv_mainram }, /* RAM */ \
363 { 0x100000, 0x13ffff, MWA16_RAM, &spriteram16 }, /* Sprites */ \
364 { 0x140000, 0x15ffff, paletteram16_xrgb_swap_word_w, &paletteram16 }, \
365 { 0x160000, 0x17ffff, MWA16_RAM }, /* */ \
366 { 0x1c0000, 0x1c007f, ssv_scroll_w, &ssv_scroll }, /* Scroll */ \
367 { 0x21000e, 0x21000f, ssv_lockout_w }, /* Lockout */ \
368 { 0x210010, 0x210011, MWA16_NOP }, /* */ \
369 { 0x230000, 0x230071, MWA16_RAM, &ssv_irq_vectors }, /* IRQ Vectors */ \
370 { 0x240000, 0x240071, ssv_irq_ack_w }, /* IRQ Ack. */ \
371 { 0x260000, 0x260001, ssv_irq_enable_w }, /* IRQ Enable */ \
372 { 0x300000, 0x30007f, ES5506_data_0_word_w }, /* Sound */ \
373 { 0x482000, 0x482fff, dsp_w, &dsp_ram }, /* DSP */ \
374 /*{ 0x990000, 0x99007f, ssv_scroll_w },*/
375
376
377 static data16_t *ssv_input_sel;
378
379 /***************************************************************************
380 Drift Out '94
381 ***************************************************************************/
382
READ16_HANDLER(drifto94_rand_r)383 static READ16_HANDLER( drifto94_rand_r )
384 {
385 return mame_rand() & 0xffff;
386 }
387
MEMORY_READ16_START(drifto94_readmem)388 static MEMORY_READ16_START( drifto94_readmem )
389 { 0x480000, 0x480001, MRA16_NOP }, /* ?*/
390 { 0x510000, 0x510001, drifto94_rand_r }, /* ??*/
391 { 0x520000, 0x520001, drifto94_rand_r }, /* ??*/
392 { 0x580000, 0x5807ff, MRA16_RAM }, /* NVRAM*/
393 SSV_READMEM( 0xc00000 )
394 MEMORY_END
395 static MEMORY_WRITE16_START( drifto94_writemem )
396 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 1 at the start*/
397 { 0x400000, 0x47ffff, MWA16_RAM }, /* ?*/
398 { 0x480000, 0x480001, MWA16_NOP }, /* ?*/
399 { 0x483000, 0x485fff, MWA16_NOP }, /* ?*/
400 { 0x500000, 0x500001, MWA16_NOP }, /* ??*/
401 { 0x580000, 0x5807ff, MWA16_RAM, &ssv_nvram, &ssv_nvram_size }, /* NVRAM*/
402 SSV_WRITEMEM
403 MEMORY_END
404
405 /***************************************************************************
406 Eagle Shot Golf
407 ***************************************************************************/
408
409 static data8_t trackball_select, gfxrom_select;
410
411
READ16_HANDLER(eaglshot_gfxrom_r)412 static READ16_HANDLER( eaglshot_gfxrom_r )
413 {
414 UINT8 *rom = memory_region(REGION_GFX1);
415 size_t size = memory_region_length(REGION_GFX1);
416
417 offset = offset * 2 + gfxrom_select * 0x200000;
418
419 if (offset > size)
420 return 0xffff;
421
422 return rom[offset] + (rom[offset+1]<<8);
423 }
424
WRITE16_HANDLER(eaglshot_gfxrom_w)425 static WRITE16_HANDLER( eaglshot_gfxrom_w )
426 {
427 if (ACCESSING_LSB)
428 gfxrom_select = data;
429 }
430
READ16_HANDLER(eaglshot_trackball_r)431 static READ16_HANDLER( eaglshot_trackball_r )
432 {
433 switch(trackball_select)
434 {
435 case 0x60: return (readinputport(5) >> 8) & 0xff;
436 case 0x40: return (readinputport(5) >> 0) & 0xff;
437
438 case 0x70: return (readinputport(6) >> 8) & 0xff;
439 case 0x50: return (readinputport(6) >> 0) & 0xff;
440 }
441 return 0;
442 }
443
WRITE16_HANDLER(eaglshot_trackball_w)444 static WRITE16_HANDLER( eaglshot_trackball_w )
445 {
446 if (ACCESSING_LSB)
447 trackball_select = data;
448 }
449
450
451
READ16_HANDLER(eaglshot_gfxram_r)452 static READ16_HANDLER( eaglshot_gfxram_r )
453 {
454 return eaglshot_gfxram[offset + (ssv_scroll[0x76/2] & 0xf) * 0x40000/2];
455 }
456
WRITE16_HANDLER(eaglshot_gfxram_w)457 static WRITE16_HANDLER( eaglshot_gfxram_w )
458 {
459 offset += (ssv_scroll[0x76/2] & 0xf) * 0x40000/2;
460 COMBINE_DATA(&eaglshot_gfxram[offset]);
461
462 eaglshot_dirty = 1;
463 eaglshot_dirty_tile[offset / (16*8/2)] = 1;
464 }
465
466
MEMORY_READ16_START(eaglshot_readmem)467 static MEMORY_READ16_START( eaglshot_readmem )
468 { 0x180000, 0x1bffff, eaglshot_gfxram_r },
469 { 0x210000, 0x210001, MRA16_NOP }, /* Watchdog */
470 { 0xa00000, 0xbfffff, eaglshot_gfxrom_r },
471 { 0xc00000, 0xc007ff, MRA16_RAM }, /* NVRAM */
472 { 0xd00000, 0xd00001, eaglshot_trackball_r },
473 SSV_READMEM( 0xf00000 )
474 MEMORY_END
475 static MEMORY_WRITE16_START( eaglshot_writemem )
476 { 0x180000, 0x1bffff, eaglshot_gfxram_w },
477 /* { 0x210002, 0x210003, MWA16_NOP }, ? 0,4 at the start */
478 { 0x21000e, 0x21000f, ssv_lockout_inv_w }, /* Inverted lockout lines */
479 { 0x800000, 0x800001, eaglshot_gfxrom_w },
480 { 0x900000, 0x900001, eaglshot_trackball_w },
481 { 0xc00000, 0xc007ff, MWA16_RAM, &ssv_nvram, &ssv_nvram_size }, /* NVRAM */
482 SSV_WRITEMEM
483 MEMORY_END
484
485
486 /***************************************************************************
487 Mobile Suit Gundam Final Shooting
488 ***************************************************************************/
489
490 static int gdfs_gfxram_bank, gdfs_lightgun_select;
491 static data16_t *gdfs_blitram;
492
READ16_HANDLER(gdfs_eeprom_r)493 READ16_HANDLER( gdfs_eeprom_r )
494 {
495 return (((gdfs_lightgun_select & 1) ? 0 : 0xff) ^ readinputport(5 + gdfs_lightgun_select)) | (EEPROM_read_bit() << 8);
496 }
497
WRITE16_HANDLER(gdfs_eeprom_w)498 WRITE16_HANDLER( gdfs_eeprom_w )
499 {
500 static data16_t data_old;
501
502 if (data & ~0x7b00)
503 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC: %06X - Unknown EEPROM bit written %04X\n",activecpu_get_pc(),data);
504
505 if ( ACCESSING_MSB )
506 {
507 /* data & 0x8000 ? (near palette writes) */
508 /* data & 0x0001 ? */
509
510 /* latch the bit */
511 EEPROM_write_bit(data & 0x4000);
512
513 /* reset line asserted: reset. */
514 EEPROM_set_cs_line((data & 0x1000) ? CLEAR_LINE : ASSERT_LINE );
515
516 /* clock line asserted: write latch or select next bit to read */
517 EEPROM_set_clock_line((data & 0x2000) ? ASSERT_LINE : CLEAR_LINE );
518
519 if (!(data_old & 0x0800) && (data & 0x0800)) /* rising clock */
520 gdfs_lightgun_select = (data & 0x0300) >> 8;
521 }
522
523 COMBINE_DATA(&data_old);
524 }
525
526
READ16_HANDLER(gdfs_gfxram_r)527 static READ16_HANDLER( gdfs_gfxram_r )
528 {
529 return eaglshot_gfxram[offset + gdfs_gfxram_bank * 0x100000/2];
530 }
531
WRITE16_HANDLER(gdfs_gfxram_w)532 static WRITE16_HANDLER( gdfs_gfxram_w )
533 {
534 offset += gdfs_gfxram_bank * 0x100000/2;
535 COMBINE_DATA(&eaglshot_gfxram[offset]);
536
537 eaglshot_dirty = 1;
538 eaglshot_dirty_tile[offset / (16*8/2)] = 1;
539 }
540
READ16_HANDLER(gdfs_blitram_r)541 static READ16_HANDLER( gdfs_blitram_r )
542 {
543 switch (offset)
544 {
545 case 0x00/2:
546 /* blitter status? (bit C, bit A) */
547 return 0;
548 }
549
550 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC: %06X - Blit reg read: %02X\n",activecpu_get_pc(),offset*2);
551 return 0;
552 }
553
WRITE16_HANDLER(gdfs_blitram_w)554 static WRITE16_HANDLER( gdfs_blitram_w )
555 {
556 COMBINE_DATA(&gdfs_blitram[offset]);
557
558 switch (offset)
559 {
560 case 0x8a/2:
561 {
562 if (data & ~0x43)
563 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC: %06X - Unknown gdfs_gfxram_bank bit written %04X\n",activecpu_get_pc(),data);
564
565 if (ACCESSING_LSB)
566 gdfs_gfxram_bank = data & 3;
567 }
568 break;
569
570 case 0xc0/2:
571 case 0xc2/2:
572 case 0xc4/2:
573 case 0xc6/2:
574 case 0xc8/2:
575 break;
576
577 case 0xca/2:
578 {
579 UINT32 src = (gdfs_blitram[0xc0/2] + (gdfs_blitram[0xc2/2] << 16)) << 1;
580 UINT32 dst = (gdfs_blitram[0xc4/2] + (gdfs_blitram[0xc6/2] << 16)) << 4;
581 UINT32 len = (gdfs_blitram[0xc8/2]) << 4;
582
583 UINT8 *rom = memory_region(REGION_GFX2);
584 size_t size = memory_region_length(REGION_GFX2);
585
586 if ( (src+len <= size) && (dst+len <= 4 * 0x100000) )
587 {
588 eaglshot_dirty = 1;
589
590 memcpy( &eaglshot_gfxram[dst/2], &rom[src], len );
591
592 if (len % (16*8)) len = len / (16*8) + 1;
593 else len = len / (16*8);
594
595 memset( &eaglshot_dirty_tile[dst / (16*8)], 1, len );
596 }
597 else
598 {
599 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC: %06X - Blit out of range: src %x, dst %x, len %x\n",activecpu_get_pc(),src,dst,len);
600 }
601 }
602 break;
603
604 default:
605 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC: %06X - Blit reg written: %02X <- %04X\n",activecpu_get_pc(),offset*2,data);
606 }
607 }
608
MEMORY_READ16_START(gdfs_readmem)609 static MEMORY_READ16_START( gdfs_readmem )
610 { 0x540000, 0x540001, gdfs_eeprom_r },
611 { 0x600000, 0x600fff, MRA16_RAM },
612 { 0x400000, 0x43ffff, MRA16_RAM },
613 { 0x440000, 0x44003f, MRA16_RAM },
614 { 0x800000, 0x87ffff, MRA16_RAM },
615 { 0x8c0000, 0x8c00ff, gdfs_blitram_r },
616 { 0x900000, 0x9fffff, gdfs_gfxram_r },
617 SSV_READMEM( 0xc00000 )
618 MEMORY_END
619 static MEMORY_WRITE16_START( gdfs_writemem )
620 { 0x400000, 0x41ffff, gdfs_tmapram_w, &gdfs_tmapram },
621 { 0x420000, 0x43ffff, MWA16_RAM },
622 { 0x440000, 0x44003f, MWA16_RAM, &gdfs_tmapscroll },
623 { 0x500000, 0x500001, gdfs_eeprom_w },
624 { 0x600000, 0x600fff, MWA16_RAM },
625 { 0x800000, 0x87ffff, MWA16_RAM, &spriteram16_2 },
626 { 0x8c0000, 0x8c00ff, gdfs_blitram_w, &gdfs_blitram },
627 { 0x900000, 0x9fffff, gdfs_gfxram_w },
628 SSV_WRITEMEM
629 MEMORY_END
630
631
632 /***************************************************************************
633 Hyper Reaction
634 ***************************************************************************/
635
636 /*
637 The game prints "backup ram ok" and there is code to test some ram
638 at 0x580000-0x5bffff. The test is skipped and this ram isn't used
639 though. I guess it's either a left-over or there are different
640 version with some battery backed RAM (which would indeed be on the
641 rom-board, AFAIK)
642 */
643
644 static READ16_HANDLER( hypreact_input_r )
645 {
646 data16_t input_sel = *ssv_input_sel;
647 if (input_sel & 0x0001) return readinputport(5);
648 if (input_sel & 0x0002) return readinputport(6);
649 if (input_sel & 0x0004) return readinputport(7);
650 if (input_sel & 0x0008) return readinputport(8);
651 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06X: unknown input read: %04X\n",activecpu_get_pc(),input_sel);
652 return 0xffff;
653 }
654
MEMORY_READ16_START(hypreact_readmem)655 static MEMORY_READ16_START( hypreact_readmem )
656 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog*/
657 /* { 0x280000, 0x280001, MRA16_NOP }, */ /* ? read at the start, value not used*/
658 { 0xc00000, 0xc00001, hypreact_input_r }, /* Inputs*/
659 { 0xc00006, 0xc00007, MRA16_RAM }, /**/
660 { 0xc00008, 0xc00009, MRA16_NOP }, /**/
661 SSV_READMEM( 0xf00000 )
662 MEMORY_END
663 static MEMORY_WRITE16_START( hypreact_writemem )
664 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 5 at the start*/
665 { 0x21000e, 0x21000f, ssv_lockout_inv_w }, /* Inverted lockout lines*/
666 { 0xc00006, 0xc00007, MWA16_RAM, &ssv_input_sel }, /* Inputs*/
667 { 0xc00008, 0xc00009, MWA16_NOP }, /**/
668 SSV_WRITEMEM
669 MEMORY_END
670
671
672 /***************************************************************************
673 Hyper Reaction 2
674 ***************************************************************************/
675
676 static MEMORY_READ16_START( hypreac2_readmem )
677 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog*/
678 /* { 0x280000, 0x280001, MRA16_NOP }, */ /* ? read at the start, value not used*/
679 { 0x500000, 0x500001, hypreact_input_r }, /* Inputs*/
680 { 0x500002, 0x500003, hypreact_input_r }, /* (again?)*/
681 /* 0x540000, 0x540003 communication with another unit*/
682 SSV_READMEM( 0xe00000 )
683 MEMORY_END
684 static MEMORY_WRITE16_START( hypreac2_writemem )
685 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 5 at the start*/
686 { 0x21000e, 0x21000f, ssv_lockout_inv_w }, /* Inverted lockout lines*/
687 { 0x520000, 0x520001, MWA16_RAM, &ssv_input_sel }, /* Inputs*/
688 /* 0x540000, 0x540003 communication with other units*/
689 SSV_WRITEMEM
690 MEMORY_END
691
692
693 /***************************************************************************
694 Jan Jan Simasyo
695 ***************************************************************************/
696
697 static READ16_HANDLER( srmp4_input_r );
698
MEMORY_READ16_START(janjans1_readmem)699 static MEMORY_READ16_START( janjans1_readmem )
700 { 0x210006, 0x210007, MRA16_NOP },
701 { 0x800002, 0x800003, srmp4_input_r }, /* Inputs*/
702 SSV_READMEM( 0xc00000 )
703 MEMORY_END
704 static MEMORY_WRITE16_START( janjans1_writemem )
705 { 0x210000, 0x210001, MWA16_NOP }, /* koikois2 but not janjans1*/
706 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 1 at the start*/
707 { 0x800000, 0x800001, MWA16_RAM, &ssv_input_sel }, /* Inputs*/
708 SSV_WRITEMEM
709 MEMORY_END
710
711
712 /***************************************************************************
713 Keith & Lucy
714 ***************************************************************************/
715
716 static MEMORY_READ16_START( keithlcy_readmem )
717 { 0x21000e, 0x21000f, MRA16_NOP }, /**/
718 SSV_READMEM( 0xe00000 )
719 MEMORY_END
720 static MEMORY_WRITE16_START( keithlcy_writemem )
721 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 1 at the start*/
722 { 0x210010, 0x210011, MWA16_NOP }, /**/
723 { 0x400000, 0x47ffff, MWA16_RAM }, /* ?*/
724 SSV_WRITEMEM
725 MEMORY_END
726
727
728 /***************************************************************************
729 Meosis Magic
730 ***************************************************************************/
731
732 static MEMORY_READ16_START( meosism_readmem )
733 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog*/
734 /* { 0x280000, 0x280001, MRA16_NOP }, */ /* ? read once, value not used*/
735 { 0x580000, 0x58ffff, MRA16_RAM }, /* NVRAM*/
736 SSV_READMEM( 0xf00000 )
737 MEMORY_END
738 static MEMORY_WRITE16_START( meosism_writemem )
739 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 5 at the start*/
740 /* { 0x500004, 0x500005, MWA16_NOP }, */ /* ? 0,58,18*/
741 { 0x580000, 0x58ffff, MWA16_RAM, &ssv_nvram, &ssv_nvram_size }, /* NVRAM*/
742 SSV_WRITEMEM
743 MEMORY_END
744
745 /***************************************************************************
746 Monster Slider
747 ***************************************************************************/
748
749 /* Monster Slider needs the RAM mirrored for the gameplay logic to work correctly */
750
751 static READ16_HANDLER( ssv_mainram_r )
752 {
753 return ssv_mainram[offset];
754 }
755
WRITE16_HANDLER(ssv_mainram_w)756 static WRITE16_HANDLER( ssv_mainram_w )
757 {
758 COMBINE_DATA(&ssv_mainram[offset]);
759 }
760
MEMORY_READ16_START(mslider_readmem)761 static MEMORY_READ16_START( mslider_readmem )
762 { 0x010000, 0x01ffff, ssv_mainram_r }, /* RAM Mirror*/
763 SSV_READMEM( 0xf00000 )
764 MEMORY_END
765 static MEMORY_WRITE16_START( mslider_writemem )
766 { 0x010000, 0x01ffff, ssv_mainram_w }, /* RAM Mirror*/
767 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 1 at the start*/
768 { 0x400000, 0x47ffff, MWA16_RAM }, /* ?*/
769 /* { 0x500000, 0x500001, MWA16_NOP }, */ /* ? ff at the start*/
770 SSV_WRITEMEM
771 MEMORY_END
772
773
774 /***************************************************************************
775 Gourmet Battle Quiz Ryohrioh CooKing
776 ***************************************************************************/
777
778 static MEMORY_READ16_START( ryorioh_readmem )
779 SSV_READMEM( 0xc00000 )
780 MEMORY_END
781 static MEMORY_WRITE16_START( ryorioh_writemem )
782 { 0x210000, 0x210001, watchdog_reset16_w }, /* Watchdog*/
783 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 1 at the start*/
784 SSV_WRITEMEM
785 MEMORY_END
786
787
788 /***************************************************************************
789 Super Real Mahjong PIV
790 ***************************************************************************/
791
792 static READ16_HANDLER( srmp4_input_r )
793 {
794 data16_t input_sel = *ssv_input_sel;
795 if (input_sel & 0x0002) return readinputport(5);
796 if (input_sel & 0x0004) return readinputport(6);
797 if (input_sel & 0x0008) return readinputport(7);
798 if (input_sel & 0x0010) return readinputport(8);
799 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06X: unknown input read: %04X\n",activecpu_get_pc(),input_sel);
800 return 0xffff;
801 }
802
MEMORY_READ16_START(srmp4_readmem)803 static MEMORY_READ16_START( srmp4_readmem )
804 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog*/
805 { 0xc0000a, 0xc0000b, srmp4_input_r }, /* Inputs*/
806 SSV_READMEM( 0xf00000 )
807 MEMORY_END
808 static MEMORY_WRITE16_START( srmp4_writemem )
809 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 1,5 at the start*/
810 { 0xc0000e, 0xc0000f, MWA16_RAM, &ssv_input_sel }, /* Inputs*/
811 { 0xc00010, 0xc00011, MWA16_NOP }, /**/
812 SSV_WRITEMEM
813 MEMORY_END
814
815
816 /***************************************************************************
817 Super Real Mahjong P7
818 ***************************************************************************/
819
820 /*
821 Interrupts aren't supported by the chip emulator yet
822 (lev 5 in this case, I guess)
823 */
824 static READ16_HANDLER( srmp7_irqv_r )
825 {
826 return 0x0080;
827 }
828
WRITE16_HANDLER(srmp7_sound_bank_w)829 static WRITE16_HANDLER( srmp7_sound_bank_w )
830 {
831 if (ACCESSING_LSB)
832 {
833 int bank = 0x400000 * (data & 1);
834 ES5506_voice_bank_0_w(2, bank);
835 ES5506_voice_bank_0_w(3, bank);
836 }
837 /* usrintf_showmessage("%04X",data);*/
838 }
839
READ16_HANDLER(srmp7_input_r)840 static READ16_HANDLER( srmp7_input_r )
841 {
842 data16_t input_sel = *ssv_input_sel;
843 if (input_sel & 0x0002) return readinputport(5);
844 if (input_sel & 0x0004) return readinputport(6);
845 if (input_sel & 0x0008) return readinputport(7);
846 if (input_sel & 0x0010) return readinputport(8);
847 log_cb(RETRO_LOG_DEBUG, LOGPRE "CPU #0 PC %06X: unknown input read: %04X\n",activecpu_get_pc(),input_sel);
848 return 0xffff;
849 }
850
MEMORY_READ16_START(srmp7_readmem)851 static MEMORY_READ16_START( srmp7_readmem )
852 { 0x010000, 0x050faf, MRA16_RAM }, /* More RAM*/
853 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog*/
854 { 0x300076, 0x300077, srmp7_irqv_r }, /* Sound*/
855 /* 0x540000, 0x540003, related to lev 5 irq?*/
856 { 0x600000, 0x600001, srmp7_input_r }, /* Inputs*/
857 SSV_READMEM( 0xc00000 )
858 MEMORY_END
859 static MEMORY_WRITE16_START( srmp7_writemem )
860 { 0x010000, 0x050faf, MWA16_RAM }, /* More RAM*/
861 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 0,4 at the start*/
862 { 0x21000e, 0x21000f, ssv_lockout_inv_w }, /* Coin Counters / Lockouts*/
863 /* 0x540000, 0x540003, related to lev 5 irq?*/
864 { 0x580000, 0x580001, srmp7_sound_bank_w }, /* Sound Bank*/
865 { 0x680000, 0x680001, MWA16_RAM, &ssv_input_sel }, /* Inputs*/
866 SSV_WRITEMEM
867 MEMORY_END
868
869
870 /***************************************************************************
871 Survival Arts
872 ***************************************************************************/
873
874 static MEMORY_READ16_START( survarts_readmem )
875 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog*/
876 /* { 0x290000, 0x290001, MRA16_NOP }, */ /* ?*/
877 /* { 0x2a0000, 0x2a0001, MRA16_NOP }, */ /* ?*/
878 { 0x400000, 0x43ffff, MRA16_RAM }, /* dyna*/
879 { 0x500008, 0x500009, input_port_5_word_r }, /* Extra Buttons*/
880 SSV_READMEM( 0xf00000 )
881 MEMORY_END
882 static MEMORY_WRITE16_START( survarts_writemem )
883 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 0,4 at the start*/
884 { 0x400000, 0x43ffff, MWA16_RAM }, /* dyna*/
885 SSV_WRITEMEM
886 MEMORY_END
887
888
889 /***************************************************************************
890 Pachinko Sexy Reaction
891 ***************************************************************************/
892
893 static data16_t serial;
894
READ16_HANDLER(sxyreact_ballswitch_r)895 static READ16_HANDLER( sxyreact_ballswitch_r )
896 {
897 return readinputport(5);
898 }
899
READ16_HANDLER(sxyreact_dial_r)900 static READ16_HANDLER( sxyreact_dial_r )
901 {
902 return ((serial >> 1) & 0x80);
903 }
904
WRITE16_HANDLER(sxyreact_dial_w)905 static WRITE16_HANDLER( sxyreact_dial_w )
906 {
907 if (ACCESSING_LSB)
908 {
909 static int old;
910
911 if (data & 0x20)
912 serial = readinputport(6) & 0xff;
913
914 if ( (old & 0x40) && !(data & 0x40) ) /* $40 -> $00*/
915 serial <<= 1; /* shift 1 bit*/
916
917 old = data;
918 }
919 }
920
WRITE16_HANDLER(sxyreact_motor_w)921 static WRITE16_HANDLER( sxyreact_motor_w )
922 {
923 /* usrintf_showmessage("%04X",data); */ /* 8 = motor on; 0 = motor off*/
924 }
925
MEMORY_READ16_START(sxyreact_readmem)926 static MEMORY_READ16_START( sxyreact_readmem )
927 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog*/
928 { 0x500002, 0x500003, sxyreact_ballswitch_r }, /* ?*/
929 { 0x500004, 0x500005, sxyreact_dial_r }, /* Dial Value (serial)*/
930 { 0x580000, 0x58ffff, MRA16_RAM }, /* NVRAM*/
931 SSV_READMEM( 0xe00000 )
932 MEMORY_END
933 static MEMORY_WRITE16_START( sxyreact_writemem )
934 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 1 at the start*/
935 { 0x21000e, 0x21000f, ssv_lockout_inv_w }, /* Inverted lockout lines*/
936 { 0x520000, 0x520001, sxyreact_dial_w }, /* Dial Value (advance 1 bit)*/
937 { 0x520004, 0x520005, sxyreact_motor_w }, /* Dial Motor?*/
938 { 0x580000, 0x58ffff, MWA16_RAM, &ssv_nvram, &ssv_nvram_size }, /* NVRAM*/
939 SSV_WRITEMEM
940 MEMORY_END
941
942
943 /***************************************************************************
944 Twin Eagle II
945 ***************************************************************************/
946
947 static MEMORY_READ16_START( twineag2_readmem )
948 { 0x010000, 0x03ffff, MRA16_RAM }, /* More RAM*/
949 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog (also value is cmp.b with mem 8)*/
950 SSV_READMEM( 0xe00000 )
951 MEMORY_END
952 static MEMORY_WRITE16_START( twineag2_writemem )
953 { 0x010000, 0x03ffff, MWA16_RAM }, /* More RAM*/
954 SSV_WRITEMEM
955 MEMORY_END
956
957
958 /***************************************************************************
959 Ultra X
960 ***************************************************************************/
961
962 static MEMORY_READ16_START( ultrax_readmem )
963 { 0x010000, 0x03ffff, MRA16_RAM }, /* More RAM*/
964 { 0x210000, 0x210001, watchdog_reset16_r }, /* Watchdog (also value is cmp.b with memory address 8)*/
965 SSV_READMEM( 0xe00000 )
966 MEMORY_END
967 static MEMORY_WRITE16_START( ultrax_writemem )
968 { 0x010000, 0x03ffff, MWA16_RAM }, /* More RAM*/
969 /* { 0x210002, 0x210003, MWA16_NOP }, */ /* ? 2,6 at the start*/
970 SSV_WRITEMEM
971 MEMORY_END
972
973 /***************************************************************************
974
975
976 Input Ports
977
978
979 ***************************************************************************/
980
981
982 /***************************************************************************
983 Change Air Blade
984 ***************************************************************************/
985
986 INPUT_PORTS_START( cairblad )
987 PORT_START /* IN0*/
988 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) )
989 PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) )
990 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) )
991 PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) )
992 PORT_DIPSETTING( 0x0004, DEF_STR( 1C_2C ) )
993 PORT_DIPSETTING( 0x0003, DEF_STR( 1C_3C ) )
994 PORT_DIPSETTING( 0x0002, DEF_STR( 1C_4C ) )
995 PORT_DIPSETTING( 0x0001, DEF_STR( 1C_5C ) )
996 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
997 PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) )
998 PORT_DIPSETTING( 0x0028, DEF_STR( 3C_1C ) )
999 PORT_DIPSETTING( 0x0030, DEF_STR( 2C_1C ) )
1000 PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) )
1001 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1002 PORT_DIPSETTING( 0x0018, DEF_STR( 1C_3C ) )
1003 PORT_DIPSETTING( 0x0010, DEF_STR( 1C_4C ) )
1004 PORT_DIPSETTING( 0x0008, DEF_STR( 1C_5C ) )
1005 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
1006 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unused ) )
1007 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
1008 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1009 PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unused ) )
1010 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1011 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1012
1013 PORT_START /* IN1*/
1014 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) )
1015 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1016 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1017 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) )
1018 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1019 PORT_DIPSETTING( 0x0002, DEF_STR( On ) )
1020 PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) )
1021 PORT_DIPSETTING( 0x0008, "Easy" )
1022 PORT_DIPSETTING( 0x000c, "Normal" )
1023 PORT_DIPSETTING( 0x0004, "Hard" )
1024 PORT_DIPSETTING( 0x0000, "Hardest" )
1025 PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Free_Play ) )
1026 PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
1027 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1028 PORT_DIPNAME( 0x0060, 0x0060, DEF_STR( Bonus_Life ) )
1029 PORT_DIPSETTING( 0x0040, "Every 2 Mil" )
1030 PORT_DIPSETTING( 0x0060, "2 Mil/6 Mil" )
1031 PORT_DIPSETTING( 0x0020, "4 Million" )
1032 PORT_DIPSETTING( 0x0000, "None" )
1033 PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
1034
1035 PORT_START /* IN2*/
1036 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1037 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
1038 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1039 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
1040 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1041 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1042 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1043 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1044
1045 PORT_START /* IN3*/
1046 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
1047 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
1048 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1049 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
1050 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1051 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1052 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1053 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1054
1055 PORT_START /* IN4*/
1056 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1057 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1058 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1059 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
1060 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1061 INPUT_PORTS_END
1062
1063
1064 /***************************************************************************
1065 Drift Out '94
1066 ***************************************************************************/
1067
1068 INPUT_PORTS_START( drifto94 )
1069 PORT_START /* IN0 - $210002*/
1070 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) )
1071 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1072 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1073 PORT_SERVICE( 0x0002, IP_ACTIVE_LOW )
1074 PORT_DIPNAME( 0x0004, 0x0004, "Sound Test" )
1075 PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
1076 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1077 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) )
1078 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1079 PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
1080 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Coin_A ) )
1081 PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) )
1082 PORT_DIPSETTING( 0x0030, DEF_STR( 1C_1C ) )
1083 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
1084 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1085 PORT_DIPNAME( 0x00c0, 0x00c0, DEF_STR( Coin_B ) )
1086 PORT_DIPSETTING( 0x0040, DEF_STR( 2C_1C ) )
1087 PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_1C ) )
1088 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
1089 PORT_DIPSETTING( 0x0080, DEF_STR( 1C_2C ) )
1090
1091 PORT_START /* IN1 - $210004*/
1092 PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) )
1093 PORT_DIPSETTING( 0x0003, "Normal" )
1094 PORT_DIPSETTING( 0x0002, "Easy" )
1095 PORT_DIPSETTING( 0x0001, "Hard" )
1096 PORT_DIPSETTING( 0x0000, "Hardest" )
1097 PORT_DIPNAME( 0x000c, 0x000c, "Unknown 2-2&3*" )
1098 PORT_DIPSETTING( 0x000c, "11 (0)" )
1099 PORT_DIPSETTING( 0x0008, "10 (1)" )
1100 PORT_DIPSETTING( 0x0004, "01 (0)" )
1101 PORT_DIPSETTING( 0x0000, "00 (2)" )
1102 PORT_DIPNAME( 0x0010, 0x0010, "Music Volume" )
1103 PORT_DIPSETTING( 0x0000, "Quiet" )
1104 PORT_DIPSETTING( 0x0010, "Loud" )
1105 PORT_DIPNAME( 0x0020, 0x0020, "Sound Volume" )
1106 PORT_DIPSETTING( 0x0000, "Quiet" )
1107 PORT_DIPSETTING( 0x0020, "Loud" )
1108 PORT_DIPNAME( 0x0040, 0x0040, "Save Best Time" )
1109 PORT_DIPSETTING( 0x0000, DEF_STR( No ) )
1110 PORT_DIPSETTING( 0x0040, DEF_STR( Yes ) )
1111 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 2-7" )
1112 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1113 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1114
1115 PORT_START /* IN2 - $210008*/
1116 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1117 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED )
1118 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
1119 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1120 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1121 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1122 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
1123 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED )
1124
1125 PORT_START /* IN3 - $21000a*/
1126 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
1127 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED )
1128 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
1129 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1130 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1131 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1132 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
1133 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED )
1134
1135 PORT_START /* IN4 - $21000c*/
1136 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1137 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1138 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1139 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
1140 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1141 INPUT_PORTS_END
1142
1143
1144 /***************************************************************************
1145 Eagle Shot Golf
1146
1147 Place holder for corrected dip switch settings
1148 ***************************************************************************/
1149
1150 INPUT_PORTS_START( eaglshot )
1151 PORT_START /* IN0 - $210002*/
1152 PORT_DIPNAME( 0x000f, 0x0009, DEF_STR( Coinage ) )
1153 PORT_DIPSETTING( 0x0007, DEF_STR( 4C_1C ) )
1154 PORT_DIPSETTING( 0x0008, DEF_STR( 3C_1C ) )
1155 PORT_DIPSETTING( 0x0009, DEF_STR( 2C_1C ) )
1156 PORT_DIPSETTING( 0x000f, DEF_STR( 1C_1C ) )
1157 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_3C ) )
1158 PORT_DIPSETTING( 0x000e, DEF_STR( 1C_2C ) )
1159 PORT_DIPSETTING( 0x000d, DEF_STR( 1C_3C ) )
1160 PORT_DIPSETTING( 0x000c, DEF_STR( 1C_4C ) )
1161 PORT_DIPSETTING( 0x000b, DEF_STR( 1C_5C ) )
1162 PORT_DIPSETTING( 0x000a, DEF_STR( 1C_6C ) )
1163 /* "** ADDED MULTIPLE COIN FEATURE **"*/
1164 PORT_DIPSETTING( 0x0005, "Multiple Coin Feature A" )
1165 /* 2c-1c, 4c-2c, 5c-3c & 6c-4c*/
1166 PORT_DIPSETTING( 0x0004, "Multiple Coin Feature B" )
1167 /* 2c-1c, 4c-3c*/
1168 PORT_DIPSETTING( 0x0003, "Multiple Coin Feature C" )
1169 /* 1c-1c, 2c-2c, 3c-3c, 4c-4c, 5c-6c*/
1170 PORT_DIPSETTING( 0x0002, "Multiple Coin Feature D" )
1171 /* 1c-1c, 2c-2c, 3c-3c & 4c-5c*/
1172 PORT_DIPSETTING( 0x0001, "Multiple Coin Feature E" )
1173 /* 1c-1c, 2c-3c*/
1174 PORT_DIPSETTING( 0x0000, DEF_STR( Free_Play ) )
1175 PORT_DIPNAME( 0x0010, 0x0010, "Discount to Continue" )
1176 PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
1177 PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) /* 2 Coins to start, 1 to continue*/
1178 PORT_DIPNAME( 0x0020, 0x0020, "Controls" )
1179 PORT_DIPSETTING( 0x0020, "Trackball" )
1180 PORT_DIPSETTING( 0x0000, "Joystick" )
1181 PORT_DIPNAME( 0x0040, 0x0040, "Trackball Type" )
1182 PORT_DIPSETTING( 0x0040, "24 Counts (USA)" )
1183 PORT_DIPSETTING( 0x0000, "12 Counts (Japan)" )
1184 PORT_DIPNAME( 0x0080, 0x0080, "Unused/Unknown" )
1185 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1186 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1187
1188 PORT_START /* IN1 - $210004*/
1189 PORT_DIPNAME( 0x0003, 0x0003, "Number of Holes" )
1190 PORT_DIPSETTING( 0x0002, "2 Holes" )
1191 PORT_DIPSETTING( 0x0003, "3 Holes" )
1192 PORT_DIPSETTING( 0x0001, "4 Holes" )
1193 PORT_DIPSETTING( 0x0000, "5 Holes" )
1194 PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) /* No listed value for ON & ON*/
1195 PORT_DIPSETTING( 0x0008, "Easy" )
1196 PORT_DIPSETTING( 0x000c, "Normal" )
1197 PORT_DIPSETTING( 0x0004, "Hard" )
1198 PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Demo_Sounds ) )
1199 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1200 PORT_DIPSETTING( 0x0010, DEF_STR( On ) )
1201 PORT_DIPNAME( 0x0020, 0x0020, "Allow Continue" )
1202 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1203 PORT_DIPSETTING( 0x0020, DEF_STR( On ) )
1204 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) )
1205 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
1206 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1207 PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
1208
1209 PORT_START /* IN2 - $210008*/
1210 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1211 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
1212 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1213 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
1214 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1215 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1216 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1217 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1218
1219 PORT_START /* IN3 - $21000a*/
1220 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
1221 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
1222 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1223 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
1224 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1225 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1226 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1227 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1228
1229 PORT_START /* IN4 - $21000c*/
1230 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1231 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1232 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1233 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )
1234 PORT_BITX( 0x0010, IP_ACTIVE_LOW, IPT_SERVICE, DEF_STR( Service_Mode ), KEYCODE_F2, IP_JOY_NONE )
1235 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1236
1237 PORT_START /* IN5 - trackball x ($d00000) */
1238 PORT_ANALOG( 0x0fff, 0x0000, IPT_TRACKBALL_X | IPF_PLAYER1, 30, 30, 0, 0x0fff)
1239
1240 PORT_START /* IN6 - trackball y ($d00000) */
1241 PORT_ANALOG( 0x0fff, 0x0000, IPT_TRACKBALL_Y | IPF_PLAYER1, 30, 30, 0, 0x0fff)
1242
1243 INPUT_PORTS_END
1244
1245
1246 /***************************************************************************
1247 Hyper Reaction
1248 ***************************************************************************/
1249
1250 INPUT_PORTS_START( hypreact )
1251 PORT_START /* IN0 - $210002*/
1252 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) )
1253 PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) )
1254 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) )
1255 PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) )
1256 PORT_DIPSETTING( 0x0004, DEF_STR( 1C_2C ) )
1257 PORT_DIPSETTING( 0x0003, DEF_STR( 1C_3C ) )
1258 PORT_DIPSETTING( 0x0002, DEF_STR( 1C_4C ) )
1259 PORT_DIPSETTING( 0x0001, DEF_STR( 1C_5C ) )
1260 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
1261 PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) )
1262 PORT_DIPSETTING( 0x0028, DEF_STR( 3C_1C ) )
1263 PORT_DIPSETTING( 0x0030, DEF_STR( 2C_1C ) )
1264 PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) )
1265 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1266 PORT_DIPSETTING( 0x0018, DEF_STR( 1C_3C ) )
1267 PORT_DIPSETTING( 0x0010, DEF_STR( 1C_4C ) )
1268 PORT_DIPSETTING( 0x0008, DEF_STR( 1C_5C ) )
1269 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
1270 PORT_DIPNAME( 0x0040, 0x0040, "Half Coins To Continue" )
1271 PORT_DIPSETTING( 0x0040, DEF_STR( No ) )
1272 PORT_DIPSETTING( 0x0000, DEF_STR( Yes ) )
1273 PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Free_Play ) )
1274 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1275 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1276
1277 PORT_START /* IN1 - $210004*/
1278 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) )
1279 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1280 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1281 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) )
1282 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1283 PORT_DIPSETTING( 0x0002, DEF_STR( On ) )
1284 PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) )
1285 PORT_DIPSETTING( 0x0008, "Easy" )
1286 PORT_DIPSETTING( 0x000c, "Normal" )
1287 PORT_DIPSETTING( 0x0004, "Hard" )
1288 PORT_DIPSETTING( 0x0000, "Hardest" )
1289 PORT_DIPNAME( 0x0010, 0x0010, "Controls" )
1290 PORT_DIPSETTING( 0x0010, "Keyboard" )
1291 PORT_DIPSETTING( 0x0000, "Joystick" )
1292 PORT_DIPNAME( 0x0020, 0x0020, "Unknown 2-5" )
1293 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
1294 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1295 PORT_DIPNAME( 0x0040, 0x0040, "Unknown 2-6" )
1296 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
1297 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1298 PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
1299
1300 PORT_START /* IN2 - $210008 (used in joystick mode)*/
1301 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1302 PORT_BITX( 0x0002, IP_ACTIVE_LOW, 0, "Chi", KEYCODE_SPACE, IP_JOY_NONE )
1303 PORT_BITX( 0x0004, IP_ACTIVE_LOW, 0, "Pon", KEYCODE_LALT, IP_JOY_NONE )
1304 PORT_BITX( 0x0008, IP_ACTIVE_LOW, 0, "Kan", KEYCODE_LCONTROL, IP_JOY_NONE )
1305 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )
1306 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN )
1307 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
1308 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
1309
1310 PORT_START /* IN3 - $21000a (used in joystick mode)*/
1311 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
1312 PORT_BITX( 0x0002, IP_ACTIVE_LOW, 0, "Reach", KEYCODE_LSHIFT, IP_JOY_NONE )
1313 PORT_BITX( 0x0004, IP_ACTIVE_LOW, 0, "Ron", KEYCODE_Z, IP_JOY_NONE )
1314 PORT_BITX( 0x0008, IP_ACTIVE_LOW, 0, "Tsumo", KEYCODE_RCONTROL, IP_JOY_NONE )
1315 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
1316 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
1317 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1318 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1319
1320 PORT_START /* IN4 - $21000c*/
1321 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1322 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1323 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* service coin & bet*/
1324 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
1325 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1326
1327 PORT_START /* IN5 - $c00000(0)*/
1328 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "A", KEYCODE_A, IP_JOY_NONE )
1329 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "E", KEYCODE_E, IP_JOY_NONE )
1330 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "I", KEYCODE_I, IP_JOY_NONE )
1331 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "M", KEYCODE_M, IP_JOY_NONE )
1332 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "Kan", KEYCODE_LCONTROL, IP_JOY_NONE )
1333 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START1 )
1334 PORT_BIT( 0xffc0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1335
1336 PORT_START /* IN6 - $c00000(1)*/
1337 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "B", KEYCODE_B, IP_JOY_NONE )
1338 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "F", KEYCODE_F, IP_JOY_NONE )
1339 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "J", KEYCODE_J, IP_JOY_NONE )
1340 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "N", KEYCODE_N, IP_JOY_NONE )
1341 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "Reach", KEYCODE_LSHIFT, IP_JOY_NONE )
1342 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "Bet", KEYCODE_RCONTROL, IP_JOY_NONE )
1343 PORT_BIT( 0xffc0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1344
1345 PORT_START /* IN7 - $c00000(2)*/
1346 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "C", KEYCODE_C, IP_JOY_NONE )
1347 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "G", KEYCODE_G, IP_JOY_NONE )
1348 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "K", KEYCODE_K, IP_JOY_NONE )
1349 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "Chi", KEYCODE_SPACE, IP_JOY_NONE )
1350 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "Ron", KEYCODE_Z, IP_JOY_NONE )
1351 PORT_BIT( 0xffe0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1352
1353 PORT_START /* IN8 - $c00000(3)*/
1354 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "D", KEYCODE_D, IP_JOY_NONE )
1355 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "H", KEYCODE_H, IP_JOY_NONE )
1356 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "L", KEYCODE_L, IP_JOY_NONE )
1357 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "Pon", KEYCODE_LALT, IP_JOY_NONE )
1358 PORT_BIT( 0xfff0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1359 INPUT_PORTS_END
1360
1361
1362 /***************************************************************************
1363 Hyper Reaction 2
1364 ***************************************************************************/
1365
1366 INPUT_PORTS_START( hypreac2 )
1367 PORT_START /* IN0 - $210002*/
1368 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) )
1369 PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) )
1370 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) )
1371 PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) )
1372 PORT_DIPSETTING( 0x0004, DEF_STR( 1C_2C ) )
1373 PORT_DIPSETTING( 0x0003, DEF_STR( 1C_3C ) )
1374 PORT_DIPSETTING( 0x0002, DEF_STR( 1C_4C ) )
1375 PORT_DIPSETTING( 0x0001, DEF_STR( 1C_5C ) )
1376 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
1377 PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) )
1378 PORT_DIPSETTING( 0x0028, DEF_STR( 3C_1C ) )
1379 PORT_DIPSETTING( 0x0030, DEF_STR( 2C_1C ) )
1380 PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) )
1381 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1382 PORT_DIPSETTING( 0x0018, DEF_STR( 1C_3C ) )
1383 PORT_DIPSETTING( 0x0010, DEF_STR( 1C_4C ) )
1384 PORT_DIPSETTING( 0x0008, DEF_STR( 1C_5C ) )
1385 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
1386 PORT_DIPNAME( 0x0040, 0x0040, "Half Coins To Continue" )
1387 PORT_DIPSETTING( 0x0040, DEF_STR( No ) )
1388 PORT_DIPSETTING( 0x0000, DEF_STR( Yes ) )
1389 PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Free_Play ) )
1390 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1391 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1392
1393 PORT_START /* IN1 - $210004*/
1394 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) )
1395 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1396 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1397 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) )
1398 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1399 PORT_DIPSETTING( 0x0002, DEF_STR( On ) )
1400 PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) )
1401 PORT_DIPSETTING( 0x0008, "Easy" )
1402 PORT_DIPSETTING( 0x000c, "Normal" )
1403 PORT_DIPSETTING( 0x0004, "Hard" )
1404 PORT_DIPSETTING( 0x0000, "Hardest" )
1405 PORT_DIPNAME( 0x0010, 0x0010, "Controls" )
1406 PORT_DIPSETTING( 0x0010, "Keyboard" )
1407 PORT_DIPSETTING( 0x0000, "Joystick" )
1408 PORT_DIPNAME( 0x0020, 0x0020, "Communication 1" )
1409 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
1410 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1411 PORT_DIPNAME( 0x0040, 0x0040, "Communication 2" )
1412 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
1413 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1414 PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
1415
1416 PORT_START /* IN2 - $210008*/
1417 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1418 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
1419 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1420 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
1421 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1422 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1423 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1424 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1425
1426 PORT_START /* IN3 - $21000a*/
1427 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
1428 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
1429 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1430 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
1431 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1432 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1433 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1434 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1435
1436 PORT_START /* IN4 - $21000c*/
1437 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1438 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1439 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1440 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
1441 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1442
1443 PORT_START /* IN5 - $500000(0)*/
1444 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "A", KEYCODE_A, IP_JOY_NONE )
1445 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "E", KEYCODE_E, IP_JOY_NONE )
1446 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "I", KEYCODE_I, IP_JOY_NONE )
1447 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "M", KEYCODE_M, IP_JOY_NONE )
1448 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "Kan", KEYCODE_LCONTROL, IP_JOY_NONE )
1449 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START1 )
1450 PORT_BIT( 0xffc0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1451
1452 PORT_START /* IN6 - $500000(1)*/
1453 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "B", KEYCODE_B, IP_JOY_NONE )
1454 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "F", KEYCODE_F, IP_JOY_NONE )
1455 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "J", KEYCODE_J, IP_JOY_NONE )
1456 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "N", KEYCODE_N, IP_JOY_NONE )
1457 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "Reach", KEYCODE_LSHIFT, IP_JOY_NONE )
1458 PORT_BIT( 0xffe0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1459
1460 PORT_START /* IN7 - $500000(2)*/
1461 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "C", KEYCODE_C, IP_JOY_NONE )
1462 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "G", KEYCODE_G, IP_JOY_NONE )
1463 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "K", KEYCODE_K, IP_JOY_NONE )
1464 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "Chi", KEYCODE_SPACE, IP_JOY_NONE )
1465 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "Ron", KEYCODE_Z, IP_JOY_NONE )
1466 PORT_BIT( 0xffe0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1467
1468 PORT_START /* IN8 - $500000(3)*/
1469 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "D", KEYCODE_D, IP_JOY_NONE )
1470 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "H", KEYCODE_H, IP_JOY_NONE )
1471 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "L", KEYCODE_L, IP_JOY_NONE )
1472 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "Pon", KEYCODE_LALT, IP_JOY_NONE )
1473 PORT_BIT( 0xfff0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1474 INPUT_PORTS_END
1475
1476
1477 /***************************************************************************
1478 Jan Jan Simasyo
1479 ***************************************************************************/
1480
1481 INPUT_PORTS_START( janjans1 )
1482 PORT_START /* IN0 - $210002*/
1483 PORT_DIPNAME( 0x0001, 0x0001, "Unknown 1-0" )
1484 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1485 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1486 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) )
1487 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
1488 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1489 PORT_SERVICE( 0x0004, IP_ACTIVE_LOW )
1490 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) )
1491 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1492 PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
1493 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Coinage ) )
1494 PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) )
1495 PORT_DIPSETTING( 0x0030, DEF_STR( 1C_1C ) )
1496 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
1497 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1498 PORT_DIPNAME( 0x0040, 0x0040, "Voice" )
1499 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1500 PORT_DIPSETTING( 0x0040, DEF_STR( On ) )
1501 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 1-7" )
1502 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1503 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1504
1505 PORT_START /* IN1 - $210004*/
1506 PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) )
1507 PORT_DIPSETTING( 0x0002, "Easy" )
1508 PORT_DIPSETTING( 0x0003, "Normal" )
1509 PORT_DIPSETTING( 0x0001, "Hard" )
1510 PORT_DIPSETTING( 0x0000, "Hardest" )
1511 PORT_DIPNAME( 0x0004, 0x0004, "Nudity" )
1512 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1513 PORT_DIPSETTING( 0x0004, DEF_STR( On ) )
1514 PORT_DIPNAME( 0x0008, 0x0008, "Mini Game" )
1515 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1516 PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
1517 PORT_DIPNAME( 0x0030, 0x0030, "Initial Score" )
1518 PORT_DIPSETTING( 0x0020, "1000" )
1519 PORT_DIPSETTING( 0x0030, "1500" )
1520 PORT_DIPSETTING( 0x0010, "2000" )
1521 PORT_DIPSETTING( 0x0000, "3000" )
1522 PORT_DIPNAME( 0x00c0, 0x00c0, "Communication" )
1523 /* PORT_DIPSETTING( 0x0080, "unused" )*/
1524 PORT_DIPSETTING( 0x00c0, "None" )
1525 PORT_DIPSETTING( 0x0040, "Board 1 (Main)" )
1526 PORT_DIPSETTING( 0x0000, "Board 2 (Sub)" )
1527
1528 PORT_START /* IN2 - $210008*/
1529 PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN )
1530
1531 PORT_START /* IN3 - $21000a*/
1532 PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN )
1533
1534 PORT_START /* IN4 - $21000c*/
1535 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1536 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1537 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1538 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
1539 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1540
1541 PORT_START /* IN5 - $800002(0)*/
1542 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
1543 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
1544 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "Pon", KEYCODE_LALT, IP_JOY_NONE )
1545 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "L", KEYCODE_L, IP_JOY_NONE )
1546 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "H", KEYCODE_H, IP_JOY_NONE )
1547 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "D", KEYCODE_D, IP_JOY_NONE )
1548 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1549 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1550
1551 PORT_START /* IN6 - $800002(1)*/
1552 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
1553 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Ron", KEYCODE_Z, IP_JOY_NONE )
1554 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "Chi", KEYCODE_SPACE, IP_JOY_NONE )
1555 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "K", KEYCODE_K, IP_JOY_NONE )
1556 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "G", KEYCODE_G, IP_JOY_NONE )
1557 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "C", KEYCODE_C, IP_JOY_NONE )
1558 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1559 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1560
1561 PORT_START /* IN7 - $800002(2)*/
1562 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "Bet", KEYCODE_RCONTROL, IP_JOY_NONE )
1563 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Reach", KEYCODE_LSHIFT, IP_JOY_NONE )
1564 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "N", KEYCODE_N, IP_JOY_NONE )
1565 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "J", KEYCODE_J, IP_JOY_NONE )
1566 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "F", KEYCODE_F, IP_JOY_NONE )
1567 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "B", KEYCODE_B, IP_JOY_NONE )
1568 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1569 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1570
1571 PORT_START /* IN8 - $800002(3)*/
1572 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1573 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Kan", KEYCODE_LCONTROL, IP_JOY_NONE )
1574 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "M", KEYCODE_M, IP_JOY_NONE )
1575 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "I", KEYCODE_I, IP_JOY_NONE )
1576 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "E", KEYCODE_E, IP_JOY_NONE )
1577 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "A", KEYCODE_A, IP_JOY_NONE )
1578 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1579 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1580 INPUT_PORTS_END
1581
1582
1583 /***************************************************************************
1584 Keith & Lucy
1585 ***************************************************************************/
1586
1587 INPUT_PORTS_START( keithlcy )
1588 PORT_START /* IN0 - $210002*/
1589 PORT_DIPNAME( 0x0001, 0x0001, "Unknown 1-0" )
1590 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1591 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1592 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) )
1593 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
1594 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1595 PORT_SERVICE( 0x0004, IP_ACTIVE_LOW )
1596 PORT_DIPNAME( 0x0008, 0x0008, "Unknown 1-3*" )
1597 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
1598 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1599 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Coin_A ) )
1600 PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) )
1601 PORT_DIPSETTING( 0x0030, DEF_STR( 1C_1C ) )
1602 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
1603 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1604 PORT_DIPNAME( 0x00c0, 0x00c0, DEF_STR( Coin_B ) )
1605 PORT_DIPSETTING( 0x0040, DEF_STR( 2C_1C ) )
1606 PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_1C ) )
1607 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
1608 PORT_DIPSETTING( 0x0080, DEF_STR( 1C_2C ) )
1609
1610 PORT_START /* IN1 - $210004*/
1611 PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) )
1612 PORT_DIPSETTING( 0x0002, "Easy" ) /* 15 sec*/
1613 PORT_DIPSETTING( 0x0003, "Normal" ) /* 12*/
1614 PORT_DIPSETTING( 0x0001, "Hard" ) /* 10*/
1615 PORT_DIPSETTING( 0x0000, "Hardest" ) /* 8*/
1616 PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Lives ) )
1617 PORT_DIPSETTING( 0x0008, "2" )
1618 PORT_DIPSETTING( 0x000c, "3" )
1619 PORT_DIPSETTING( 0x0004, "4" )
1620 PORT_DIPSETTING( 0x0000, "5" )
1621 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Bonus_Life ) )
1622 PORT_DIPSETTING( 0x0030, "100k" ) /*100*/
1623 PORT_DIPSETTING( 0x0020, "150k" ) /*150*/
1624 PORT_DIPSETTING( 0x0010, "200k" ) /*100*/
1625 PORT_DIPSETTING( 0x0000, "200k?" ) /*200*/
1626 PORT_DIPNAME( 0x0040, 0x0040, "Unknown 2-6" )
1627 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
1628 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1629 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 2-7" )
1630 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1631 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1632
1633 PORT_START /* IN2 - $210008*/
1634 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1635 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
1636 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
1637 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )
1638 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
1639 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
1640 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1641 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
1642
1643 PORT_START /* IN3 - $21000a*/
1644 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
1645 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
1646 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
1647 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )
1648 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
1649 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
1650 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1651 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
1652
1653 PORT_START /* IN4 - $21000c*/
1654 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1655 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1656 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1657 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
1658 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1659 INPUT_PORTS_END
1660
1661
1662 /***************************************************************************
1663 Koi Koi Simasyo 2
1664 ***************************************************************************/
1665
1666 INPUT_PORTS_START( koikois2 )
1667 PORT_START /* IN0 - $210002*/
1668 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) )
1669 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1670 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1671 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) )
1672 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
1673 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1674 PORT_SERVICE( 0x0004, IP_ACTIVE_LOW )
1675 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) )
1676 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1677 PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
1678 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Coinage ) )
1679 PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) )
1680 PORT_DIPSETTING( 0x0030, DEF_STR( 1C_1C ) )
1681 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
1682 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1683 PORT_DIPNAME( 0x0040, 0x0040, "Voice" )
1684 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1685 PORT_DIPSETTING( 0x0040, DEF_STR( On ) )
1686 PORT_DIPNAME( 0x0080, 0x0080, "Controls" )
1687 PORT_DIPSETTING( 0x0080, "Joystick" )
1688 PORT_DIPSETTING( 0x0000, "Keyboard" )
1689
1690 PORT_START /* IN1 - $210004*/
1691 PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) )
1692 PORT_DIPSETTING( 0x0002, "Easy" )
1693 PORT_DIPSETTING( 0x0003, "Normal" )
1694 PORT_DIPSETTING( 0x0001, "Hard" )
1695 PORT_DIPSETTING( 0x0000, "Hardest" )
1696 PORT_DIPNAME( 0x0004, 0x0004, "Nudity" )
1697 PORT_DIPSETTING( 0x0000, DEF_STR( No ) )
1698 PORT_DIPSETTING( 0x0004, DEF_STR( Yes ) )
1699 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
1700 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
1701 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1702 PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
1703 PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
1704 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1705 PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
1706 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
1707 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1708 PORT_DIPNAME( 0x00c0, 0x00c0, "Communication" )
1709 /* PORT_DIPSETTING( 0x0080, "unused" )*/
1710 PORT_DIPSETTING( 0x00c0, "None" )
1711 PORT_DIPSETTING( 0x0040, "Board 1 (Main)" )
1712 PORT_DIPSETTING( 0x0000, "Board 2 (Sub)" )
1713
1714 PORT_START /* IN2 - $210008*/
1715 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1716 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
1717 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1718 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
1719 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1720 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1721 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1722 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1723
1724 PORT_START /* IN3 - $21000a*/
1725 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
1726 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
1727 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1728 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
1729 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1730 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1731 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1732 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1733
1734 PORT_START /* IN4 - $21000c*/
1735 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1736 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1737 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1738 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
1739 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1740
1741 PORT_START /* IN5 - $800002(0)*/
1742 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
1743 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
1744 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "Pon", KEYCODE_LALT, IP_JOY_NONE )
1745 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "L", KEYCODE_L, IP_JOY_NONE )
1746 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "H", KEYCODE_H, IP_JOY_NONE )
1747 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "D", KEYCODE_D, IP_JOY_NONE )
1748 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1749 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1750
1751 PORT_START /* IN6 - $800002(1)*/
1752 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
1753 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Ron", KEYCODE_Z, IP_JOY_NONE )
1754 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "Chi", KEYCODE_SPACE, IP_JOY_NONE )
1755 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "K", KEYCODE_K, IP_JOY_NONE )
1756 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "G", KEYCODE_G, IP_JOY_NONE )
1757 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "C", KEYCODE_C, IP_JOY_NONE )
1758 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1759 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1760
1761 PORT_START /* IN7 - $800002(2)*/
1762 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "Bet", KEYCODE_RCONTROL, IP_JOY_NONE )
1763 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Reach", KEYCODE_LSHIFT, IP_JOY_NONE )
1764 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "N", KEYCODE_N, IP_JOY_NONE )
1765 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "J", KEYCODE_J, IP_JOY_NONE )
1766 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "F", KEYCODE_F, IP_JOY_NONE )
1767 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "B", KEYCODE_B, IP_JOY_NONE )
1768 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1769 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1770
1771 PORT_START /* IN8 - $800002(3)*/
1772 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1773 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Kan", KEYCODE_LCONTROL, IP_JOY_NONE )
1774 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "M", KEYCODE_M, IP_JOY_NONE )
1775 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "I", KEYCODE_I, IP_JOY_NONE )
1776 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "E", KEYCODE_E, IP_JOY_NONE )
1777 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "A", KEYCODE_A, IP_JOY_NONE )
1778 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
1779 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
1780 INPUT_PORTS_END
1781
1782
1783 /***************************************************************************
1784 Meosis Magic
1785 ***************************************************************************/
1786
1787 INPUT_PORTS_START( meosism )
1788 PORT_START /* IN0 - $210002*/
1789 PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Coinage ) )
1790 PORT_DIPSETTING( 0x0003, "1 Medal/1 Credit" )
1791 PORT_DIPSETTING( 0x0001, "1 Medal/5 Credits" )
1792 PORT_DIPSETTING( 0x0002, "1 Medal/10 Credits" )
1793 PORT_DIPSETTING( 0x0000, "1 Medal/20 Credits" )
1794 PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Demo_Sounds ) )
1795 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1796 PORT_DIPSETTING( 0x0004, DEF_STR( On ) )
1797 PORT_DIPNAME( 0x0008, 0x0008, "Attendant Pay" )
1798 PORT_DIPSETTING( 0x0000, DEF_STR( No ) )
1799 PORT_DIPSETTING( 0x0008, DEF_STR( Yes ) )
1800 PORT_DIPNAME( 0x0010, 0x0010, "Medals Payout" )
1801 PORT_DIPSETTING( 0x0010, "400" )
1802 PORT_DIPSETTING( 0x0000, "800" )
1803 PORT_DIPNAME( 0x0020, 0x0020, "Max Credits" )
1804 PORT_DIPSETTING( 0x0020, "5000" )
1805 PORT_DIPSETTING( 0x0000, "9999" )
1806 PORT_DIPNAME( 0x0040, 0x0040, "Hopper" )
1807 PORT_DIPSETTING( 0x0000, DEF_STR( No ) )
1808 PORT_DIPSETTING( 0x0040, DEF_STR( Yes ) )
1809 PORT_DIPNAME( 0x0080, 0x0080, "Reel Speed" )
1810 PORT_DIPSETTING( 0x0080, "Low" )
1811 PORT_DIPSETTING( 0x0000, "High" )
1812
1813 PORT_START /* IN1 - $210004*/
1814 PORT_DIPNAME( 0x0003, 0x0003, "Game Rate" )
1815 PORT_DIPSETTING( 0x0000, "80%" )
1816 PORT_DIPSETTING( 0x0002, "85%" )
1817 PORT_DIPSETTING( 0x0003, "90%" )
1818 PORT_DIPSETTING( 0x0001, "95%" )
1819 PORT_DIPNAME( 0x0004, 0x0004, "Unknown 2-2" )
1820 PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
1821 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1822 PORT_DIPNAME( 0x0008, 0x0008, "Unknown 2-3" )
1823 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
1824 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1825 PORT_DIPNAME( 0x0010, 0x0010, "Unknown 2-4" )
1826 PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
1827 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1828 PORT_DIPNAME( 0x0020, 0x0000, "Controls" )
1829 /* PORT_DIPSETTING( 0x0020, "Simple") )*/
1830 PORT_DIPSETTING( 0x0000, "Complex" )
1831 PORT_DIPNAME( 0x0040, 0x0000, "Coin Sensor" )
1832 PORT_DIPSETTING( 0x0040, "Active High" )
1833 PORT_DIPSETTING( 0x0000, "Active Low" )
1834 PORT_DIPNAME( 0x0080, 0x0080, "Hopper Sensor" )
1835 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1836 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1837
1838 PORT_START /* IN2 - $210008*/
1839 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) /*bet*/
1840 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 ) /*stop/r*/
1841 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 ) /*stop/c*/
1842 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 ) /*stop/l*/
1843 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) /*no*/
1844 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) /*yes*/
1845 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START1 ) /*start*/
1846 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*-*/
1847
1848 PORT_START /* IN3 - $21000a*/
1849 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*-*/
1850 PORT_BITX( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE, DEF_STR( Service_Mode ), KEYCODE_F2, IP_JOY_NONE ) /*test*/
1851 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*-*/
1852 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE3 ) /*payout*/
1853 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*-*/
1854 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_TILT ) /*reset*/
1855 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*-*/
1856 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*-*/
1857
1858 PORT_START /* IN4 - $21000c*/
1859 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1860 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1861 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) /*service coin*/
1862 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE2 ) /*analyzer*/
1863 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON5 ) /*max bet*/
1864 PORT_BIT( 0x00e0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1865 INPUT_PORTS_END
1866
1867
1868 /***************************************************************************
1869 Monster Slider
1870 ***************************************************************************/
1871
1872 INPUT_PORTS_START( mslider )
1873 PORT_START /* IN0 - $210002*/
1874 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) )
1875 PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) )
1876 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) )
1877 PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) )
1878 PORT_DIPSETTING( 0x0004, DEF_STR( 1C_2C ) )
1879 PORT_DIPSETTING( 0x0003, DEF_STR( 1C_3C ) )
1880 PORT_DIPSETTING( 0x0002, DEF_STR( 1C_4C ) )
1881 PORT_DIPSETTING( 0x0001, DEF_STR( 1C_5C ) )
1882 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
1883 PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) )
1884 PORT_DIPSETTING( 0x0028, DEF_STR( 3C_1C ) )
1885 PORT_DIPSETTING( 0x0030, DEF_STR( 2C_1C ) )
1886 PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) )
1887 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1888 PORT_DIPSETTING( 0x0018, DEF_STR( 1C_3C ) )
1889 PORT_DIPSETTING( 0x0010, DEF_STR( 1C_4C ) )
1890 PORT_DIPSETTING( 0x0008, DEF_STR( 1C_5C ) )
1891 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
1892 PORT_SERVICE( 0x0040, IP_ACTIVE_LOW )
1893 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 1-7" )
1894 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1895 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1896
1897 PORT_START /* IN1 - $210004*/
1898 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) )
1899 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1900 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1901 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) )
1902 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1903 PORT_DIPSETTING( 0x0002, DEF_STR( On ) )
1904 PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) )
1905 PORT_DIPSETTING( 0x0008, "Easy" )
1906 PORT_DIPSETTING( 0x000c, "Normal" )
1907 PORT_DIPSETTING( 0x0004, "Hard" )
1908 PORT_DIPSETTING( 0x0000, "Hardest" )
1909 PORT_DIPNAME( 0x0030, 0x0030, "Rounds (Vs Mode)" )
1910 PORT_DIPSETTING( 0x0000, "1" )
1911 PORT_DIPSETTING( 0x0030, "2" )
1912 PORT_DIPSETTING( 0x0020, "3" )
1913 PORT_DIPSETTING( 0x0010, "4" )
1914 PORT_DIPNAME( 0x0040, 0x0040, "Unknown 2-6" )
1915 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
1916 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1917 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 2-7" )
1918 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1919 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1920
1921 PORT_START /* IN2 - $210008*/
1922 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
1923 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
1924 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
1925 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
1926 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1927 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1928 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1929 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1930
1931 PORT_START /* IN3 - $21000a*/
1932 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
1933 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
1934 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
1935 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
1936 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1937 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1938 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1939 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1940
1941 PORT_START /* IN4 - $21000c*/
1942 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
1943 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
1944 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
1945 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
1946 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
1947 INPUT_PORTS_END
1948
1949
1950 /***************************************************************************
1951 Gourmet Battle Quiz Ryohrioh CooKing
1952 ***************************************************************************/
1953
1954 INPUT_PORTS_START( ryorioh )
1955 PORT_START /* IN0 - $210002*/
1956 PORT_DIPNAME( 0x0001, 0x0001, "Unknown 1-0" )
1957 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
1958 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1959 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) )
1960 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
1961 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1962 PORT_SERVICE( 0x0004, IP_ACTIVE_LOW )
1963 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) )
1964 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
1965 PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
1966 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Coinage ) )
1967 PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) )
1968 PORT_DIPSETTING( 0x0030, DEF_STR( 1C_1C ) )
1969 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
1970 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
1971 PORT_DIPNAME( 0x0040, 0x0040, "Unknown 1-6" )
1972 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
1973 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1974 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 1-7*" )
1975 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
1976 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1977
1978 PORT_START /* IN1 - $210004*/
1979 PORT_DIPNAME( 0x0003, 0x0003, "Unknown 2-0&1*" )
1980 PORT_DIPSETTING( 0x0002, "0" )
1981 PORT_DIPSETTING( 0x0003, "1" )
1982 PORT_DIPSETTING( 0x0001, "2" )
1983 PORT_DIPSETTING( 0x0000, "3" )
1984 PORT_DIPNAME( 0x0004, 0x0004, "Unknown 2-2" )
1985 PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
1986 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1987 PORT_DIPNAME( 0x0008, 0x0008, "Unknown 2-3" )
1988 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
1989 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1990 PORT_DIPNAME( 0x0010, 0x0010, "Unknown 2-4" )
1991 PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
1992 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1993 PORT_DIPNAME( 0x0020, 0x0020, "Unknown 2-5" )
1994 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
1995 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1996 PORT_DIPNAME( 0x0040, 0x0040, "Unknown 2-6" )
1997 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
1998 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
1999 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 2-7" )
2000 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2001 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2002
2003 PORT_START /* IN2 - $210008*/
2004 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2005 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2006 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
2007 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )
2008 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
2009 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2010 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2011 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2012
2013 PORT_START /* IN3 - $21000a*/
2014 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
2015 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2016 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
2017 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )
2018 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
2019 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2020 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2021 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2022
2023 PORT_START /* IN4 - $21000c*/
2024 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2025 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2026 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2027 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2028 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2029 INPUT_PORTS_END
2030
2031
2032 /***************************************************************************
2033 Super Real Mahjong PIV
2034 ***************************************************************************/
2035
2036 INPUT_PORTS_START( srmp4 )
2037 PORT_START /* IN0 - $210002*/
2038 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) )
2039 PORT_DIPSETTING( 0x0000, DEF_STR( 5C_1C ) )
2040 PORT_DIPSETTING( 0x0001, DEF_STR( 4C_1C ) )
2041 PORT_DIPSETTING( 0x0002, DEF_STR( 3C_1C ) )
2042 PORT_DIPSETTING( 0x0003, DEF_STR( 2C_1C ) )
2043 PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) )
2044 PORT_DIPSETTING( 0x0006, DEF_STR( 1C_2C ) )
2045 PORT_DIPSETTING( 0x0005, DEF_STR( 1C_3C ) )
2046 PORT_DIPSETTING( 0x0004, DEF_STR( 1C_4C ) )
2047 PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) )
2048 PORT_DIPSETTING( 0x0000, DEF_STR( 5C_1C ) )
2049 PORT_DIPSETTING( 0x0008, DEF_STR( 4C_1C ) )
2050 PORT_DIPSETTING( 0x0010, DEF_STR( 3C_1C ) )
2051 PORT_DIPSETTING( 0x0018, DEF_STR( 2C_1C ) )
2052 PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) )
2053 PORT_DIPSETTING( 0x0030, DEF_STR( 1C_2C ) )
2054 PORT_DIPSETTING( 0x0028, DEF_STR( 1C_3C ) )
2055 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_4C ) )
2056 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Free_Play ) )
2057 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
2058 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2059 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 1-7" )
2060 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2061 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2062
2063 PORT_START /* IN1 - $210004*/
2064 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Difficulty ) )
2065 PORT_DIPSETTING( 0x0006, "Easiest" )
2066 PORT_DIPSETTING( 0x0005, "Easier" )
2067 PORT_DIPSETTING( 0x0004, "Easy" )
2068 PORT_DIPSETTING( 0x0007, "Normal" )
2069 PORT_DIPSETTING( 0x0003, "Medium" )
2070 PORT_DIPSETTING( 0x0002, "Hard" )
2071 PORT_DIPSETTING( 0x0001, "Harder" )
2072 PORT_DIPSETTING( 0x0000, "Hardest" )
2073 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Flip_Screen ) )
2074 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
2075 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2076 PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Demo_Sounds ) )
2077 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2078 PORT_DIPSETTING( 0x0010, DEF_STR( On ) )
2079 PORT_SERVICE( 0x0020, IP_ACTIVE_LOW )
2080 PORT_DIPNAME( 0x0040, 0x0040, "Allow Continue" )
2081 PORT_DIPSETTING( 0x0000, DEF_STR( No ) )
2082 PORT_DIPSETTING( 0x0040, DEF_STR( Yes ) )
2083 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 2-7" )
2084 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2085 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2086
2087 PORT_START /* IN2 - $210008*/
2088 PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN )
2089
2090 PORT_START /* IN3 - $21000a*/
2091 PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN )
2092
2093 PORT_START /* IN4 - $21000c*/
2094 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2095 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2096 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2097 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2098 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2099
2100 PORT_START /* IN5 - $c0000a(0)*/
2101 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
2102 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2103 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "Pon", KEYCODE_LALT, IP_JOY_NONE )
2104 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "L", KEYCODE_L, IP_JOY_NONE )
2105 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "H", KEYCODE_H, IP_JOY_NONE )
2106 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "D", KEYCODE_D, IP_JOY_NONE )
2107 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2108 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2109
2110 PORT_START /* IN6 - $c0000a(1)*/
2111 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
2112 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Ron", KEYCODE_Z, IP_JOY_NONE )
2113 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "Chi", KEYCODE_SPACE, IP_JOY_NONE )
2114 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "K", KEYCODE_K, IP_JOY_NONE )
2115 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "G", KEYCODE_G, IP_JOY_NONE )
2116 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "C", KEYCODE_C, IP_JOY_NONE )
2117 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2118 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2119
2120 PORT_START /* IN7 - $c0000a(2)*/
2121 PORT_BITX(0x0001, IP_ACTIVE_LOW, 0, "Bet", KEYCODE_RCONTROL, IP_JOY_NONE )
2122 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Reach", KEYCODE_LSHIFT, IP_JOY_NONE )
2123 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "N", KEYCODE_N, IP_JOY_NONE )
2124 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "J", KEYCODE_J, IP_JOY_NONE )
2125 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "F", KEYCODE_F, IP_JOY_NONE )
2126 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "B", KEYCODE_B, IP_JOY_NONE )
2127 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2128 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2129
2130 PORT_START /* IN8 - $c0000a(3)*/
2131 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2132 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Kan", KEYCODE_LCONTROL, IP_JOY_NONE )
2133 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "M", KEYCODE_M, IP_JOY_NONE )
2134 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "I", KEYCODE_I, IP_JOY_NONE )
2135 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "E", KEYCODE_E, IP_JOY_NONE )
2136 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "A", KEYCODE_A, IP_JOY_NONE )
2137 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2138 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2139 INPUT_PORTS_END
2140
2141
2142 /***************************************************************************
2143 Super Real Mahjong P7
2144 ***************************************************************************/
2145
2146 INPUT_PORTS_START( srmp7 )
2147 PORT_START /* IN0 - $210002*/
2148 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coinage ) )
2149 PORT_DIPSETTING( 0x0000, DEF_STR( 5C_1C ) )
2150 PORT_DIPSETTING( 0x0001, DEF_STR( 4C_1C ) )
2151 PORT_DIPSETTING( 0x0002, DEF_STR( 3C_1C ) )
2152 PORT_DIPSETTING( 0x0003, DEF_STR( 2C_1C ) )
2153 PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) )
2154 PORT_DIPSETTING( 0x0006, DEF_STR( 1C_2C ) )
2155 PORT_DIPSETTING( 0x0005, DEF_STR( 1C_3C ) )
2156 PORT_DIPSETTING( 0x0004, DEF_STR( 1C_4C ) )
2157 PORT_DIPNAME( 0x0008, 0x0008, "Unknown 1-3" )
2158 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
2159 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2160 PORT_DIPNAME( 0x0010, 0x0010, "Unknown 1-4" )
2161 PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
2162 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2163 PORT_DIPNAME( 0x0020, 0x0020, "Unknown 1-5" )
2164 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
2165 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2166 PORT_DIPNAME( 0x0040, 0x0040, "Re-cloth" )
2167 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2168 PORT_DIPSETTING( 0x0040, DEF_STR( On ) )
2169 PORT_DIPNAME( 0x0080, 0x0080, "Nudity" )
2170 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2171 PORT_DIPSETTING( 0x0080, DEF_STR( On ) )
2172
2173 PORT_START /* IN1 - $210004*/
2174 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Difficulty ) )
2175 PORT_DIPSETTING( 0x0006, "Easiest" )
2176 PORT_DIPSETTING( 0x0005, "Easier" )
2177 PORT_DIPSETTING( 0x0004, "Easy" )
2178 PORT_DIPSETTING( 0x0007, "Normal" )
2179 PORT_DIPSETTING( 0x0003, "Medium" )
2180 PORT_DIPSETTING( 0x0002, "Hard" )
2181 PORT_DIPSETTING( 0x0001, "Harder" )
2182 PORT_DIPSETTING( 0x0000, "Hardest" )
2183 PORT_DIPNAME( 0x0008, 0x0008, "Kuitan" )
2184 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2185 PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
2186 PORT_DIPNAME( 0x0010, 0x0010, "Allow Continue" )
2187 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2188 PORT_DIPSETTING( 0x0010, DEF_STR( On ) )
2189 PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Demo_Sounds ) )
2190 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2191 PORT_DIPSETTING( 0x0020, DEF_STR( On ) )
2192 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) )
2193 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
2194 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2195 PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
2196
2197 PORT_START /* IN2 - $210008*/
2198 PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN )
2199
2200 PORT_START /* IN3 - $21000a*/
2201 PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN )
2202
2203 PORT_START /* IN4 - $21000c*/
2204 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2205 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2206 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2207 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2208 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* tested*/
2209 PORT_BIT( 0x00e0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2210
2211 PORT_START /* IN6 - $600000(0)*/
2212 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
2213 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Ron", KEYCODE_Z, IP_JOY_NONE )
2214 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "Chi", KEYCODE_SPACE, IP_JOY_NONE )
2215 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "K", KEYCODE_K, IP_JOY_NONE )
2216 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "G", KEYCODE_G, IP_JOY_NONE )
2217 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "C", KEYCODE_C, IP_JOY_NONE )
2218 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2219 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2220
2221 PORT_START /* IN7 - $600000(1)*/
2222 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
2223 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Reach", KEYCODE_LSHIFT, IP_JOY_NONE )
2224 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "N", KEYCODE_N, IP_JOY_NONE )
2225 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "J", KEYCODE_J, IP_JOY_NONE )
2226 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "F", KEYCODE_F, IP_JOY_NONE )
2227 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "B", KEYCODE_B, IP_JOY_NONE )
2228 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2229 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2230
2231 PORT_START /* IN8 - $600000(2)*/
2232 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2233 PORT_BITX(0x0002, IP_ACTIVE_LOW, 0, "Kan", KEYCODE_LCONTROL, IP_JOY_NONE )
2234 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "M", KEYCODE_M, IP_JOY_NONE )
2235 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "I", KEYCODE_I, IP_JOY_NONE )
2236 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "E", KEYCODE_E, IP_JOY_NONE )
2237 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "A", KEYCODE_A, IP_JOY_NONE )
2238 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2239 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2240
2241 PORT_START /* IN5 - $600000(3)*/
2242 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
2243 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2244 PORT_BITX(0x0004, IP_ACTIVE_LOW, 0, "Pon", KEYCODE_LALT, IP_JOY_NONE )
2245 PORT_BITX(0x0008, IP_ACTIVE_LOW, 0, "L", KEYCODE_L, IP_JOY_NONE )
2246 PORT_BITX(0x0010, IP_ACTIVE_LOW, 0, "H", KEYCODE_H, IP_JOY_NONE )
2247 PORT_BITX(0x0020, IP_ACTIVE_LOW, 0, "D", KEYCODE_D, IP_JOY_NONE )
2248 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2249 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2250 INPUT_PORTS_END
2251
2252
2253 /***************************************************************************
2254 Storm Blade
2255 ***************************************************************************/
2256
2257 INPUT_PORTS_START( stmblade )
2258 PORT_START /* IN0 - $210002*/
2259 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) )
2260 PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) )
2261 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) )
2262 PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) )
2263 PORT_DIPSETTING( 0x0004, DEF_STR( 1C_2C ) )
2264 PORT_DIPSETTING( 0x0003, DEF_STR( 1C_3C ) )
2265 PORT_DIPSETTING( 0x0002, DEF_STR( 1C_4C ) )
2266 PORT_DIPSETTING( 0x0001, DEF_STR( 1C_5C ) )
2267 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
2268 PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) )
2269 PORT_DIPSETTING( 0x0028, DEF_STR( 3C_1C ) )
2270 PORT_DIPSETTING( 0x0030, DEF_STR( 2C_1C ) )
2271 PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) )
2272 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
2273 PORT_DIPSETTING( 0x0018, DEF_STR( 1C_3C ) )
2274 PORT_DIPSETTING( 0x0010, DEF_STR( 1C_4C ) )
2275 PORT_DIPSETTING( 0x0008, DEF_STR( 1C_5C ) )
2276 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
2277 PORT_DIPNAME( 0x0040, 0x0040, "Unknown 1-6" )
2278 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
2279 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2280 PORT_DIPNAME( 0x0080, 0x0080, "Rapid Fire" )
2281 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2282 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2283
2284 PORT_START /* IN1 - $210004*/
2285 PORT_DIPNAME( 0x0001, 0x0000, DEF_STR( Flip_Screen ) )
2286 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2287 PORT_DIPSETTING( 0x0001, DEF_STR( On ) )
2288 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) )
2289 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2290 PORT_DIPSETTING( 0x0002, DEF_STR( On ) )
2291 PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) )
2292 PORT_DIPSETTING( 0x0008, "Easy" )
2293 PORT_DIPSETTING( 0x000c, "Normal" )
2294 PORT_DIPSETTING( 0x0004, "Hard" )
2295 PORT_DIPSETTING( 0x0000, "Hardest" )
2296 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Lives ) )
2297 PORT_DIPSETTING( 0x0020, "1" )
2298 PORT_DIPSETTING( 0x0010, "2" )
2299 PORT_DIPSETTING( 0x0030, "3" )
2300 PORT_DIPSETTING( 0x0000, "4" )
2301 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Bonus_Life ) )
2302 PORT_DIPSETTING( 0x0040, "600000" )
2303 PORT_DIPSETTING( 0x0000, "800000" )
2304 PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
2305
2306 PORT_START /* IN2 - $210008*/
2307 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2308 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2309 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2310 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2311 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
2312 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
2313 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
2314 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
2315
2316 PORT_START /* IN3 - $21000a*/
2317 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
2318 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2319 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2320 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2321 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
2322 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
2323 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
2324 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
2325
2326 PORT_START /* IN4 - $21000c*/
2327 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2328 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2329 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2330 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2331 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2332 INPUT_PORTS_END
2333
2334
2335 /***************************************************************************
2336 Survival Arts
2337 ***************************************************************************/
2338
2339 INPUT_PORTS_START( survarts )
2340 PORT_START /* IN0 - $210002*/
2341 PORT_DIPNAME( 0x000f, 0x000f, DEF_STR( Coin_A ) ) /* Verified Defualt is 2 coins 1 Credit*/
2342 PORT_DIPSETTING( 0x0007, DEF_STR( 4C_1C ) )
2343 PORT_DIPSETTING( 0x0008, DEF_STR( 3C_1C ) )
2344 PORT_DIPSETTING( 0x0009, DEF_STR( 2C_1C ) )
2345 /* PORT_DIPSETTING( 0x0000, DEF_STR( 2C_1C ) ) */ /* 2 Credits Start, 1 to continue*/
2346 PORT_DIPSETTING( 0x000f, DEF_STR( 1C_1C ) )
2347 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_3C ) )
2348 PORT_DIPSETTING( 0x000e, DEF_STR( 1C_2C ) )
2349 PORT_DIPSETTING( 0x000d, DEF_STR( 1C_3C ) )
2350 PORT_DIPSETTING( 0x000c, DEF_STR( 1C_4C ) )
2351 PORT_DIPSETTING( 0x000b, DEF_STR( 1C_5C ) )
2352 PORT_DIPSETTING( 0x000a, DEF_STR( 1C_6C ) )
2353 /* "** ADDED MULTIPLE COIN FEATURE **"*/
2354 PORT_DIPSETTING( 0x0005, "Multiple Coin Feature A" )
2355 /* 2c-1c, 4c-2c, 5c-3c & 6c-4c*/
2356 PORT_DIPSETTING( 0x0004, "Multiple Coin Feature B" )
2357 /* 2c-1c, 4c-3c*/
2358 PORT_DIPSETTING( 0x0003, "Multiple Coin Feature C" )
2359 /* 1c-1c, 2c-2c, 3c-3c, 4c-4c, 5c-6c*/
2360 PORT_DIPSETTING( 0x0002, "Multiple Coin Feature D" )
2361 /* 1c-1c, 2c-2c, 3c-3c & 4c-5c*/
2362 PORT_DIPNAME( 0x00f0, 0x00f0, DEF_STR( Coin_B ) ) /* Verified Defualt is 2 coins 1 Credit*/
2363 PORT_DIPSETTING( 0x0070, DEF_STR( 4C_1C ) )
2364 PORT_DIPSETTING( 0x0080, DEF_STR( 3C_1C ) )
2365 PORT_DIPSETTING( 0x0090, DEF_STR( 2C_1C ) )
2366 /* PORT_DIPSETTING( 0x0000, DEF_STR( 2C_1C ) ) */ /* 2 Credits Start, 1 to continue*/
2367 PORT_DIPSETTING( 0x00f0, DEF_STR( 1C_1C ) )
2368 PORT_DIPSETTING( 0x0060, DEF_STR( 2C_3C ) )
2369 PORT_DIPSETTING( 0x00e0, DEF_STR( 1C_2C ) )
2370 PORT_DIPSETTING( 0x00d0, DEF_STR( 1C_3C ) )
2371 PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_4C ) )
2372 PORT_DIPSETTING( 0x00b0, DEF_STR( 1C_5C ) )
2373 PORT_DIPSETTING( 0x00a0, DEF_STR( 1C_6C ) )
2374 /* "** ADDED MULTIPLE COIN FEATURE **"*/
2375 PORT_DIPSETTING( 0x0050, "Multiple Coin Feature A" )
2376 /* 2c-1c, 4c-2c, 5c-3c & 6c-4c*/
2377 PORT_DIPSETTING( 0x0040, "Multiple Coin Feature B" )
2378 /* 2c-1c, 4c-3c*/
2379 PORT_DIPSETTING( 0x0030, "Multiple Coin Feature C" )
2380 /* 1c-1c, 2c-2c, 3c-3c, 4c-4c, 5c-6c*/
2381 PORT_DIPSETTING( 0x0020, "Multiple Coin Feature D" )
2382 /* 1c-1c, 2c-2c, 3c-3c & 4c-5c*/
2383
2384 PORT_START /* IN1 - $210004*/
2385 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) )
2386 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
2387 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2388 PORT_DIPNAME( 0x0002, 0x0000, DEF_STR( Demo_Sounds ) )
2389 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
2390 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2391 PORT_DIPNAME( 0x0004, 0x0004, "Timer Speed" )
2392 PORT_DIPSETTING( 0x0004, "Normal" )
2393 PORT_DIPSETTING( 0x0000, "Fast" )
2394 PORT_DIPNAME( 0x0008, 0x0008, "Damage Level" )
2395 PORT_DIPSETTING( 0x0008, "Normal" )
2396 PORT_DIPSETTING( 0x0000, "High" )
2397 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Difficulty ) )
2398 PORT_DIPSETTING( 0x0020, "Easy" )
2399 PORT_DIPSETTING( 0x0030, "Normal" )
2400 PORT_DIPSETTING( 0x0010, "Hard" )
2401 PORT_DIPSETTING( 0x0000, "Hardest" )
2402 PORT_DIPNAME( 0x00c0, 0x0000, "Fatal Damage" )
2403 PORT_DIPSETTING( 0x00c0, "Light" )
2404 PORT_DIPSETTING( 0x0040, "Normal" )
2405 PORT_DIPSETTING( 0x0080, "Heavy" )
2406 PORT_DIPSETTING( 0x0000, "Heaviest" )
2407
2408 PORT_START /* IN2 - $210008*/
2409 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2410 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2411 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2412 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2413 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
2414 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
2415 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
2416 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
2417
2418 PORT_START /* IN3 - $21000a*/
2419 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
2420 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2421 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2422 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2423 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
2424 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
2425 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
2426 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
2427
2428 PORT_START /* IN4 - $21000c*/
2429 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2430 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2431 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2432 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2433 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2434
2435 PORT_START /* IN5 - $500008*/
2436 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER1 )
2437 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER1 )
2438 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON6 | IPF_PLAYER1 )
2439 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )
2440 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_PLAYER2 )
2441 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON5 | IPF_PLAYER2 )
2442 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON6 | IPF_PLAYER2 )
2443 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2444 INPUT_PORTS_END
2445
2446 /***************************************************************************
2447 Dyna Gears
2448 ***************************************************************************/
2449
2450 INPUT_PORTS_START( dynagear )
2451 PORT_START
2452 PORT_DIPNAME( 0x0001, 0x0001, "0" )
2453 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
2454 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2455 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
2456 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
2457 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2458 PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
2459 PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
2460 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2461 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
2462 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
2463 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2464 PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
2465 PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
2466 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2467 PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
2468 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
2469 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2470 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
2471 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
2472 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2473 PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
2474 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2475 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2476 PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) )
2477 PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
2478 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2479 PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
2480 PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
2481 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2482 PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
2483 PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
2484 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2485 PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
2486 PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
2487 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2488 PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) )
2489 PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
2490 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2491 PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) )
2492 PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
2493 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2494 PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) )
2495 PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
2496 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2497 PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) )
2498 PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
2499 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2500
2501 PORT_START
2502 PORT_DIPNAME( 0x0001, 0x0001, "1" )
2503 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
2504 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2505 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
2506 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
2507 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2508 PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
2509 PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
2510 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2511 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
2512 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
2513 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2514 PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
2515 PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
2516 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2517 PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
2518 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
2519 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2520 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
2521 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
2522 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2523 PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
2524 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2525 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2526 PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) )
2527 PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
2528 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2529 PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
2530 PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
2531 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2532 PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
2533 PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
2534 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2535 PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
2536 PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
2537 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2538 PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) )
2539 PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
2540 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2541 PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) )
2542 PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
2543 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2544 PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) )
2545 PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
2546 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2547 PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) )
2548 PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
2549 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2550
2551 PORT_START /* IN2 - $210008*/
2552 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2553 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2554 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2555 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2556 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
2557 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
2558 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
2559 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
2560
2561 PORT_START /* IN3 - $21000a*/
2562 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
2563 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2564 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2565 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2566 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
2567 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
2568 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
2569 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
2570
2571 PORT_START /* IN4 - $21000c*/
2572 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2573 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2574 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2575 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2576 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2577 INPUT_PORTS_END
2578
2579 /***************************************************************************
2580 Pachinko Sexy Reaction
2581 ***************************************************************************/
2582
2583 INPUT_PORTS_START( sxyreact )
2584 PORT_START /* IN0 - $210002*/
2585 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coinage ) )
2586 PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) )
2587 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) )
2588 PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) )
2589 PORT_DIPSETTING( 0x0004, DEF_STR( 1C_2C ) )
2590 PORT_DIPSETTING( 0x0003, DEF_STR( 1C_3C ) )
2591 PORT_DIPSETTING( 0x0002, DEF_STR( 1C_4C ) )
2592 PORT_DIPSETTING( 0x0001, DEF_STR( 1C_5C ) )
2593 PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )
2594 PORT_BIT( 0x0038, IP_ACTIVE_LOW, IPT_UNUSED )
2595 /* PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) )*/
2596 /* PORT_DIPSETTING( 0x0028, DEF_STR( 3C_1C ) )*/
2597 /* PORT_DIPSETTING( 0x0030, DEF_STR( 2C_1C ) )*/
2598 /* PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) )*/
2599 /* PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )*/
2600 /* PORT_DIPSETTING( 0x0018, DEF_STR( 1C_3C ) )*/
2601 /* PORT_DIPSETTING( 0x0010, DEF_STR( 1C_4C ) )*/
2602 /* PORT_DIPSETTING( 0x0008, DEF_STR( 1C_5C ) )*/
2603 /* PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) )*/
2604 PORT_DIPNAME( 0x0040, 0x0040, "Credits To Play" )
2605 PORT_DIPSETTING( 0x0040, "1" )
2606 PORT_DIPSETTING( 0x0000, "2" )
2607 PORT_DIPNAME( 0x0080, 0x0080, "Buy Balls With Credits" ) /* press start*/
2608 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2609 PORT_DIPSETTING( 0x0080, DEF_STR( On ) )
2610
2611 PORT_START /* IN1 - $210004*/
2612 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) )
2613 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
2614 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2615 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) )
2616 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2617 PORT_DIPSETTING( 0x0002, DEF_STR( On ) )
2618 PORT_DIPNAME( 0x000c, 0x000c, "Difficulty?" )
2619 PORT_DIPSETTING( 0x0008, "Easy?" )
2620 PORT_DIPSETTING( 0x000c, "Normal?" )
2621 PORT_DIPSETTING( 0x0004, "Hard?" )
2622 PORT_DIPSETTING( 0x0000, "Hardest?" )
2623 PORT_DIPNAME( 0x0010, 0x0010, "Controls" )
2624 PORT_DIPSETTING( 0x0010, "Dial" )
2625 PORT_DIPSETTING( 0x0000, "Joystick" )
2626 PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Free_Play ) )
2627 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
2628 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2629 PORT_SERVICE( 0x0040, IP_ACTIVE_LOW )
2630 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 2-7" )
2631 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2632 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2633
2634 PORT_START /* IN2 - $210008*/
2635 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2636 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2637 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 ) /* -> ball sensor on*/
2638 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2639 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 | IPF_2WAY )
2640 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 | IPF_2WAY )
2641 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
2642 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
2643
2644 PORT_START /* IN3 - $21000a*/
2645 PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* (player 2, only shown in test mode)*/
2646
2647 PORT_START /* IN4 - $21000c*/
2648 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2649 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED )
2650 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2651 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2652 PORT_BITX( 0x0010, IP_ACTIVE_LOW, IPT_SERVICE, "Test Advance", KEYCODE_F1, IP_JOY_DEFAULT )
2653 PORT_BIT( 0x00e0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2654
2655 PORT_START /* IN5 - $500002*/
2656 PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_SERVICE2 ) /* ball switch on -> handle motor off*/
2657
2658 PORT_START /* IN6 - $500004*/
2659 PORT_ANALOGX( 0xff, 0x00, IPT_PADDLE, 15, 15, 0, 0xcf, KEYCODE_N, KEYCODE_M, 0, 0 )
2660 INPUT_PORTS_END
2661
2662
2663 /***************************************************************************
2664 Twin Eagle II
2665 ***************************************************************************/
2666
2667 INPUT_PORTS_START( twineag2 )
2668 PORT_START /* IN0 - $210002*/
2669 PORT_DIPNAME( 0x000f, 0x000f, DEF_STR( Coin_A ) ) /* No values listed for all "ON"*/
2670 PORT_DIPSETTING( 0x0007, DEF_STR( 4C_1C ) )
2671 PORT_DIPSETTING( 0x0008, DEF_STR( 3C_1C ) )
2672 PORT_DIPSETTING( 0x0009, DEF_STR( 2C_1C ) )
2673 PORT_DIPSETTING( 0x000f, DEF_STR( 1C_1C ) )
2674 PORT_DIPSETTING( 0x0006, DEF_STR( 2C_3C ) )
2675 PORT_DIPSETTING( 0x000e, DEF_STR( 1C_2C ) )
2676 PORT_DIPSETTING( 0x000d, DEF_STR( 1C_3C ) )
2677 PORT_DIPSETTING( 0x000c, DEF_STR( 1C_4C ) )
2678 PORT_DIPSETTING( 0x000b, DEF_STR( 1C_5C ) )
2679 PORT_DIPSETTING( 0x000a, DEF_STR( 1C_6C ) )
2680 /* "** ADDED MULTIPLE COIN FEATURE **"*/
2681 PORT_DIPSETTING( 0x0005, "Multiple Coin Feature A" )
2682 /* 2c-1c, 4c-2c, 5c-3c & 6c-4c*/
2683 PORT_DIPSETTING( 0x0004, "Multiple Coin Feature B" )
2684 /* 2c-1c, 4c-3c*/
2685 PORT_DIPSETTING( 0x0003, "Multiple Coin Feature C" )
2686 /* 1c-1c, 2c-2c, 3c-3c, 4c-4c, 5c-6c*/
2687 PORT_DIPSETTING( 0x0002, "Multiple Coin Feature D" )
2688 /* 1c-1c, 2c-2c, 3c-3c & 4c-5c*/
2689 PORT_DIPSETTING( 0x0001, "Multiple Coin Feature E" )
2690 /* 1c-1c, 2c-3c*/
2691 PORT_DIPNAME( 0x00f0, 0x00f0, DEF_STR( Coin_B ) ) /* No values listed for all "ON"*/
2692 PORT_DIPSETTING( 0x0070, DEF_STR( 4C_1C ) )
2693 PORT_DIPSETTING( 0x0080, DEF_STR( 3C_1C ) )
2694 PORT_DIPSETTING( 0x0090, DEF_STR( 2C_1C ) )
2695 PORT_DIPSETTING( 0x00f0, DEF_STR( 1C_1C ) )
2696 PORT_DIPSETTING( 0x0060, DEF_STR( 2C_3C ) )
2697 PORT_DIPSETTING( 0x00e0, DEF_STR( 1C_2C ) )
2698 PORT_DIPSETTING( 0x00d0, DEF_STR( 1C_3C ) )
2699 PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_4C ) )
2700 PORT_DIPSETTING( 0x00b0, DEF_STR( 1C_5C ) )
2701 PORT_DIPSETTING( 0x00a0, DEF_STR( 1C_6C ) )
2702 /* "** ADDED MULTIPLE COIN FEATURE **"*/
2703 PORT_DIPSETTING( 0x0050, "Multiple Coin Feature A" )
2704 /* 2c-1c, 4c-2c, 5c-3c & 6c-4c*/
2705 PORT_DIPSETTING( 0x0040, "Multiple Coin Feature B" )
2706 /* 2c-1c, 4c-3c*/
2707 PORT_DIPSETTING( 0x0030, "Multiple Coin Feature C" )
2708 /* 1c-1c, 2c-2c, 3c-3c, 4c-4c, 5c-6c*/
2709 PORT_DIPSETTING( 0x0020, "Multiple Coin Feature D" )
2710 /* 1c-1c, 2c-2c, 3c-3c & 4c-5c*/
2711 PORT_DIPSETTING( 0x0010, "Multiple Coin Feature E" )
2712 /* 1c-1c, 2c-3c*/
2713
2714 PORT_START /* IN1 - $210004*/
2715 PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Difficulty ) )
2716 PORT_DIPSETTING( 0x0006, "Easiest" )
2717 PORT_DIPSETTING( 0x0005, "Easier" )
2718 PORT_DIPSETTING( 0x0004, "Easy" )
2719 PORT_DIPSETTING( 0x0007, "Normal" )
2720 PORT_DIPSETTING( 0x0003, "Medium" )
2721 PORT_DIPSETTING( 0x0002, "Hard" )
2722 PORT_DIPSETTING( 0x0001, "Harder" )
2723 PORT_DIPSETTING( 0x0000, "Hardest" )
2724 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Free_Play ) )
2725 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
2726 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2727 PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Lives ) )
2728 PORT_DIPSETTING( 0x0000, "2" )
2729 PORT_DIPSETTING( 0x0010, "3" )
2730 PORT_DIPNAME( 0x0020, 0x0020, "Freeze" )
2731 PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
2732 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2733 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) )
2734 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
2735 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2736 PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
2737
2738 PORT_START /* IN2 - $210008*/
2739 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2740 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2741 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2742 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2743 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
2744 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
2745 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
2746 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
2747
2748 PORT_START /* IN3 - $21000a*/
2749 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
2750 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2751 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2752 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2753 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
2754 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
2755 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
2756 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
2757
2758 PORT_START /* IN4 - $21000c*/
2759 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2760 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2761 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2762
2763 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE2 )
2764 PORT_BITX( 0x0010, IP_ACTIVE_LOW, IPT_SERVICE, "Test Advance", KEYCODE_F1, IP_JOY_DEFAULT )
2765 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_SERVICE4 )
2766 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START3 )
2767 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START4 )
2768 INPUT_PORTS_END
2769
2770
2771 /***************************************************************************
2772 Ultra X
2773 ***************************************************************************/
2774
2775 INPUT_PORTS_START( ultrax )
2776 PORT_START /* IN0 - $210002*/
2777 PORT_DIPNAME( 0x000f, 0x000f, DEF_STR( Coin_A ) )
2778 PORT_DIPSETTING( 0x0008, DEF_STR( 3C_1C ) )
2779 PORT_DIPSETTING( 0x0009, DEF_STR( 2C_1C ) )
2780 PORT_DIPSETTING( 0x000f, DEF_STR( 1C_1C ) )
2781 PORT_DIPSETTING( 0x000e, DEF_STR( 1C_2C ) )
2782 PORT_DIPSETTING( 0x000d, DEF_STR( 1C_3C ) )
2783 PORT_DIPSETTING( 0x000c, DEF_STR( 1C_4C ) )
2784 PORT_DIPSETTING( 0x000b, DEF_STR( 1C_5C ) )
2785 PORT_DIPSETTING( 0x000a, DEF_STR( 1C_6C ) )
2786 PORT_DIPNAME( 0x00f0, 0x00f0, DEF_STR( Coin_B ) )
2787 PORT_DIPSETTING( 0x0080, DEF_STR( 3C_1C ) )
2788 PORT_DIPSETTING( 0x0090, DEF_STR( 2C_1C ) )
2789 PORT_DIPSETTING( 0x00f0, DEF_STR( 1C_1C ) )
2790 PORT_DIPSETTING( 0x00e0, DEF_STR( 1C_2C ) )
2791 PORT_DIPSETTING( 0x00d0, DEF_STR( 1C_3C ) )
2792 PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_4C ) )
2793 PORT_DIPSETTING( 0x00b0, DEF_STR( 1C_5C ) )
2794 PORT_DIPSETTING( 0x00a0, DEF_STR( 1C_6C ) )
2795
2796 PORT_START /* IN1 - $210004*/
2797 PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) )
2798 PORT_DIPSETTING( 0x0002, "Easy" ) /*$140*/
2799 PORT_DIPSETTING( 0x0003, "Normal" ) /*$190*/
2800 PORT_DIPSETTING( 0x0001, "Hard" ) /*$200*/
2801 PORT_DIPSETTING( 0x0000, "Hardest" ) /*$300*/
2802 PORT_DIPNAME( 0x0014, 0x0004, "Country" )
2803 PORT_DIPSETTING( 0x0000, "China" )
2804 PORT_DIPSETTING( 0x0014, "Japan" )
2805 /* PORT_DIPSETTING( 0x0010, "Japan" )*/
2806 PORT_DIPSETTING( 0x0004, "World" )
2807 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Free_Play ) )
2808 PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
2809 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2810 /* country 0x0010*/
2811 PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Demo_Sounds ) )
2812 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2813 PORT_DIPSETTING( 0x0020, DEF_STR( On ) )
2814 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) )
2815 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
2816 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2817 PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
2818
2819 PORT_START /* IN2 - $210008*/
2820 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2821 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 )
2822 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2823 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2824 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
2825 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
2826 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
2827 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
2828
2829 PORT_START /* IN3 - $21000a*/
2830 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
2831 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
2832 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2833 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2834 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
2835 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
2836 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
2837 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
2838
2839 PORT_START /* IN4 - $21000c*/
2840 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2841 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2842 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2843 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2844 PORT_BITX( 0x0010, IP_ACTIVE_LOW, IPT_SERVICE, "Test Advance", KEYCODE_F1, IP_JOY_DEFAULT )
2845 PORT_BIT( 0x00e0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2846 INPUT_PORTS_END
2847
2848
2849 /***************************************************************************
2850 Vasara
2851 ***************************************************************************/
2852
2853 INPUT_PORTS_START( vasara )
2854 PORT_START /* IN0 - $210002*/
2855 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Free_Play ) )
2856 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
2857 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2858 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) )
2859 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
2860 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2861 PORT_SERVICE( 0x0004, IP_ACTIVE_LOW )
2862 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) )
2863 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2864 PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
2865 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Coin_A ) )
2866 PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) )
2867 PORT_DIPSETTING( 0x0030, DEF_STR( 1C_1C ) )
2868 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
2869 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
2870 PORT_DIPNAME( 0x00c0, 0x00c0, DEF_STR( Coin_B ) )
2871 PORT_DIPSETTING( 0x0040, DEF_STR( 2C_1C ) )
2872 PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_1C ) )
2873 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
2874 PORT_DIPSETTING( 0x0080, DEF_STR( 1C_2C ) )
2875
2876 PORT_START /* IN1*/
2877 PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) )
2878 PORT_DIPSETTING( 0x0002, "Easy" )
2879 PORT_DIPSETTING( 0x0003, "Normal" )
2880 PORT_DIPSETTING( 0x0001, "Hard" )
2881 PORT_DIPSETTING( 0x0000, "Hardest" )
2882 PORT_DIPNAME( 0x000c, 0x000c, "Bomber Stock" )
2883 PORT_DIPSETTING( 0x0000, "0" )
2884 PORT_DIPSETTING( 0x0004, "1" )
2885 PORT_DIPSETTING( 0x000c, "2" )
2886 PORT_DIPSETTING( 0x0008, "3" )
2887 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Lives ))
2888 PORT_DIPSETTING( 0x0000, "1" )
2889 PORT_DIPSETTING( 0x0010, "2" )
2890 PORT_DIPSETTING( 0x0030, "3" )
2891 PORT_DIPSETTING( 0x0020, "5" )
2892 PORT_DIPNAME( 0x0040, 0x0040, "Game Voice" )
2893 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2894 PORT_DIPSETTING( 0x0040, DEF_STR( On ) )
2895 PORT_DIPNAME( 0x0080, 0x0000, "English Subtitles" )
2896 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2897 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2898
2899 PORT_START /* IN2 - $210008*/
2900 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2901 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2902 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2903 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2904 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
2905 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
2906 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
2907 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
2908
2909 PORT_START /* IN3 - $21000a*/
2910 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
2911 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2912 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2913 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2914 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
2915 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
2916 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
2917 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
2918
2919 PORT_START /* IN4 - $21000c*/
2920 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
2921 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
2922 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
2923 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
2924 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
2925 INPUT_PORTS_END
2926
2927 /***************************************************************************
2928 Vasara 2
2929 ***************************************************************************/
2930
2931 INPUT_PORTS_START( vasara2 )
2932 PORT_START /* IN0 - $210002*/
2933 PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Free_Play ) )
2934 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
2935 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2936 PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) )
2937 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
2938 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2939 PORT_SERVICE( 0x0004, IP_ACTIVE_LOW )
2940 PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) )
2941 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2942 PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
2943 PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Coin_A ) )
2944 PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) )
2945 PORT_DIPSETTING( 0x0030, DEF_STR( 1C_1C ) )
2946 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
2947 PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) )
2948 PORT_DIPNAME( 0x00c0, 0x00c0, DEF_STR( Coin_B ) )
2949 PORT_DIPSETTING( 0x0040, DEF_STR( 2C_1C ) )
2950 PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_1C ) )
2951 PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) )
2952 PORT_DIPSETTING( 0x0080, DEF_STR( 1C_2C ) )
2953
2954 PORT_START /* IN1*/
2955 PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) )
2956 PORT_DIPSETTING( 0x0002, "Easy" )
2957 PORT_DIPSETTING( 0x0003, "Normal" )
2958 PORT_DIPSETTING( 0x0001, "Hard" )
2959 PORT_DIPSETTING( 0x0000, "Hardest" )
2960 PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Lives ) )
2961 PORT_DIPSETTING( 0x0000, "1" )
2962 PORT_DIPSETTING( 0x0004, "2" )
2963 PORT_DIPSETTING( 0x000c, "3" )
2964 PORT_DIPSETTING( 0x0008, "5" )
2965 PORT_DIPNAME( 0x0010, 0x0010, "Game Voice" )
2966 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2967 PORT_DIPSETTING( 0x0010, DEF_STR( On ) )
2968 PORT_DIPNAME( 0x0020, 0x0020, "Vasara Stock" )
2969 PORT_DIPSETTING( 0x0020, "2" )
2970 PORT_DIPSETTING( 0x0000, "3" )
2971 PORT_DIPNAME( 0x0040, 0x0040, "English Subtitles" )
2972 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
2973 PORT_DIPSETTING( 0x0040, DEF_STR( On ) )
2974 PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unused ) )
2975 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
2976 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
2977
2978 PORT_START /* IN2 - $210008*/
2979 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
2980 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2981 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
2982 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
2983 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
2984 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
2985 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
2986 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
2987
2988 PORT_START /* IN3 - $21000a*/
2989 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
2990 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
2991 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
2992 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
2993 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
2994 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
2995 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
2996 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
2997
2998 PORT_START /* IN4 - $21000c*/
2999 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
3000 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
3001 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
3002 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
3003 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
3004 INPUT_PORTS_END
3005
3006 INPUT_PORTS_START( gdfs )
3007 PORT_START /* IN0 - $210002 */
3008 PORT_DIPNAME( 0x0001, 0x0000, "Controls" )
3009 PORT_DIPSETTING( 0x0001, "Joystick" )
3010 PORT_DIPSETTING( 0x0000, "Light_Gun" )
3011 PORT_DIPNAME( 0x0002, 0x0002, "Light Gun Calibration" )
3012 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
3013 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
3014 PORT_DIPNAME( 0x0004, 0x0004, "Stage Select" )
3015 PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
3016 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
3017 PORT_DIPNAME( 0x0018, 0x0018, DEF_STR( Coinage ) )
3018 /* PORT_DIPSETTING( 0x0000, DEF_STR( 2C_1C ) ) 2 Coins to Start, 1 Coin to Continue??? */
3019 PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) )
3020 PORT_DIPSETTING( 0x0018, DEF_STR( 1C_1C ) )
3021 PORT_DIPSETTING( 0x0008, DEF_STR( 1C_2C ) )
3022 PORT_DIPNAME( 0x0020, 0x0020, "Save Scores" )
3023 PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) /* Clear NVRAM on boot */
3024 PORT_DIPSETTING( 0x0020, DEF_STR( Yes ) )
3025 PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) )
3026 PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
3027 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
3028 PORT_DIPNAME( 0x0080, 0x0080, "Unknown 1-7" )
3029 PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
3030 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
3031
3032 PORT_START /* IN1 - $210004 */
3033 PORT_DIPNAME( 0x0001, 0x0001, "Invert X Axis" )
3034 PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
3035 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
3036 PORT_DIPNAME( 0x0002, 0x0002, "Unknown 2-1" )
3037 PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
3038 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
3039 PORT_DIPNAME( 0x0004, 0x0004, "Unknown 2-2" )
3040 PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
3041 PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
3042 PORT_DIPNAME( 0x0008, 0x0000, "Language" )
3043 PORT_DIPSETTING( 0x0000, "English" )
3044 PORT_DIPSETTING( 0x0008, "Japanese" )
3045 PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Demo_Sounds ) )
3046 PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
3047 PORT_DIPSETTING( 0x0010, DEF_STR( On ) )
3048 PORT_DIPNAME( 0x0020, 0x0020, "Damage From Machine Gun" ) /* F76E34 */
3049 PORT_DIPSETTING( 0x0020, "Light" )
3050 PORT_DIPSETTING( 0x0000, "Heavy" )
3051 PORT_DIPNAME( 0x0040, 0x0040, "Damage From Beam Cannon" ) /* F77487 */
3052 PORT_DIPSETTING( 0x0040, "Light" )
3053 PORT_DIPSETTING( 0x0000, "Heavy" )
3054 PORT_DIPNAME( 0x0080, 0x0080, "Damage From Missle" ) /* F77255 */
3055 PORT_DIPSETTING( 0x0080, "Light" )
3056 PORT_DIPSETTING( 0x0000, "Heavy" )
3057
3058 PORT_START /* IN2 - $210008 */
3059 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) /* press at boot for service mode */
3060 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER1 ) /* used in test mode */
3061 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER1 )
3062 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER1 )
3063 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
3064 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
3065 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
3066 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER1 )
3067
3068 PORT_START /* IN3 - $21000a */
3069 PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 )
3070 PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
3071 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
3072 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
3073 PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
3074 PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
3075 PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
3076 PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_PLAYER2 )
3077
3078 PORT_START /* IN4 - $21000c */
3079 PORT_BIT_IMPULSE( 0x0001, IP_ACTIVE_LOW, IPT_COIN1, 10 )
3080 PORT_BIT_IMPULSE( 0x0002, IP_ACTIVE_LOW, IPT_COIN2, 10 )
3081 PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 )
3082 PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT )
3083 PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN )
3084
3085 PORT_START /* IN5 - $540000(0) */
3086 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_X | IPF_PLAYER1, 35, 10, 0, 0xff )
3087
3088 PORT_START /* IN6 - $540000(1) */
3089 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_Y | IPF_PLAYER1, 35, 10, 0, 0xff )
3090
3091 PORT_START /* IN7 - $540000(2) */
3092 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_X | IPF_PLAYER2, 35, 10, 0, 0xff )
3093
3094 PORT_START /* IN8 - $540000(3) */
3095 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_Y | IPF_PLAYER2, 35, 10, 0, 0xff )
3096 INPUT_PORTS_END
3097
3098 /***************************************************************************
3099
3100
3101 Graphics Layouts
3102
3103
3104 ***************************************************************************/
3105
3106 /* 16 x 8 tiles. Depth is 8 bits, but can be decreased to 6 (and maybe
3107 less) at runtime. */
3108
3109 static struct GfxLayout layout_16x8x8 =
3110 {
3111 16,8,
3112 RGN_FRAC(1,4),
3113 8,
3114 { RGN_FRAC(3,4)+8, RGN_FRAC(3,4)+0,
3115 RGN_FRAC(2,4)+8, RGN_FRAC(2,4)+0,
3116 RGN_FRAC(1,4)+8, RGN_FRAC(1,4)+0,
3117 RGN_FRAC(0,4)+8, RGN_FRAC(0,4)+0 },
3118 { STEP8(0,1), STEP8(16,1) },
3119 { STEP8(0,16*2) },
3120 16*8*2
3121 };
3122
3123 static struct GfxLayout layout_16x8x6 =
3124 {
3125 16,8,
3126 RGN_FRAC(1,4),
3127 6,
3128 {
3129 RGN_FRAC(2,4)+8, RGN_FRAC(2,4)+0,
3130 RGN_FRAC(1,4)+8, RGN_FRAC(1,4)+0,
3131 RGN_FRAC(0,4)+8, RGN_FRAC(0,4)+0 },
3132 { STEP8(0,1), STEP8(16,1) },
3133 { STEP8(0,16*2) },
3134 16*8*2
3135 };
3136
3137 static struct GfxDecodeInfo ssv_gfxdecodeinfo[] =
3138 {
3139 { REGION_GFX1, 0, &layout_16x8x8, 0, 0x8000/64 }, /* [0] Sprites (256 colors)*/
3140 { REGION_GFX1, 0, &layout_16x8x6, 0, 0x8000/64 }, /* [1] Sprites (64 colors)*/
3141 { -1 }
3142 };
3143
3144 static struct GfxLayout layout_16x8x8_2 =
3145 {
3146 16,8,
3147 RGN_FRAC(1,1),
3148 8,
3149 { STEP8(0,1) },
3150 { STEP16(0,8) },
3151 { STEP8(0,16*8) },
3152 16*8*8
3153 };
3154
3155 static struct GfxLayout layout_16x8x6_2 =
3156 {
3157 16,8,
3158 RGN_FRAC(1,1),
3159 6,
3160 { 2,3,4,5,6,7 },
3161 { STEP16(0,8) },
3162 { STEP8(0,16*8) },
3163 16*8*8
3164 };
3165
3166 static struct GfxDecodeInfo eaglshot_gfxdecodeinfo[] =
3167 {
3168 { REGION_GFX1, 0, &layout_16x8x8_2, 0, 0x8000/64 }, /* [0] Sprites (256 colors)*/
3169 { REGION_GFX1, 0, &layout_16x8x6_2, 0, 0x8000/64 }, /* [1] Sprites (64 colors)*/
3170 { -1 }
3171 };
3172
3173 static struct GfxLayout layout_16x16x8 =
3174 {
3175 16,16,
3176 RGN_FRAC(1,1),
3177 8,
3178 { STEP8(0,1) },
3179 { STEP16(0,8) },
3180 { STEP16(0,16*8) },
3181 16*16*8
3182 };
3183
3184 static struct GfxDecodeInfo gdfs_gfxdecodeinfo[] =
3185 {
3186 { REGION_GFX1, 0, &layout_16x8x8, 0, 0x8000/64 }, /* [0] Sprites (256 colors) */
3187 { REGION_GFX1, 0, &layout_16x8x6, 0, 0x8000/64 }, /* [1] Sprites (64 colors) */
3188 { REGION_GFX2, 0, &layout_16x8x8_2, 0, 0x8000/64 }, /* [2] Zooming Sprites (256 colors, decoded from ram) */
3189 { REGION_GFX3, 0, &layout_16x16x8, 0, 0x8000/256 }, /* [3] Tilemap */
3190 { -1 }
3191 };
3192
3193
3194 /***************************************************************************
3195
3196
3197 Machine Drivers
3198
3199
3200 ***************************************************************************/
3201
3202 static struct ES5506interface es5506_interface =
3203 {
3204 1,
3205 { 16000000 },
3206 { REGION_SOUND1 },
3207 { REGION_SOUND2 },
3208 { REGION_SOUND3 },
3209 { REGION_SOUND4 },
3210 { YM3012_VOL(100,MIXER_PAN_LEFT,100,MIXER_PAN_RIGHT) },
3211 { 0 },
3212 { 0 }
3213 };
3214
3215
3216 /***************************************************************************
3217
3218 Some games (e.g. hypreac2) oddly map the high bits of the tile code
3219 to the gfx roms: arranging the roms accordingly would waste tens of
3220 megabytes. So we use a look-up table.
3221
3222 We also need to set up game specific offsets for sprites and layers
3223 (at least until the CRT controlled will be emulated).
3224
3225 ***************************************************************************/
3226
init_ssv(void)3227 void init_ssv(void)
3228 {
3229 int i;
3230 for (i = 0; i < 16; i++)
3231 ssv_tile_code[i] = ( (i & 8) ? (1 << 16) : 0 ) +
3232 ( (i & 4) ? (2 << 16) : 0 ) +
3233 ( (i & 2) ? (4 << 16) : 0 ) +
3234 ( (i & 1) ? (8 << 16) : 0 ) ;
3235 ssv_enable_video(1);
3236 ssv_special = 0;
3237 interrupt_ultrax=0;
3238 eaglshot_dirty = 0;
3239 }
3240
hypreac2_init(void)3241 void hypreac2_init(void)
3242 {
3243 int i;
3244
3245 init_ssv();
3246
3247 for (i = 0; i < 16; i++)
3248 ssv_tile_code[i] = (i << 16);
3249 }
3250
3251
DRIVER_INIT(drifto94)3252 DRIVER_INIT( drifto94 ) { init_ssv();
3253 ssv_sprites_offsx = -8; ssv_sprites_offsy = +0xf0;
3254 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf0; }
DRIVER_INIT(eaglshot)3255 DRIVER_INIT( eaglshot ) { hypreac2_init();
3256 ssv_sprites_offsx = -8; ssv_sprites_offsy = +0xf0;
3257 ssv_tilemap_offsx = 0; ssv_tilemap_offsy = -0xef; }
DRIVER_INIT(gdfs)3258 DRIVER_INIT( gdfs ) { init_ssv();
3259 ssv_sprites_offsx = -8; ssv_sprites_offsy = 1;
3260 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = 0; }
DRIVER_INIT(hypreact)3261 DRIVER_INIT( hypreact ) { init_ssv();
3262 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xf0;
3263 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf7; }
DRIVER_INIT(hypreac2)3264 DRIVER_INIT( hypreac2 ) { hypreac2_init(); /* different*/
3265 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xf0;
3266 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf8; }
DRIVER_INIT(janjans1)3267 DRIVER_INIT( janjans1 ) { init_ssv();
3268 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xe8;
3269 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf0; }
DRIVER_INIT(keithlcy)3270 DRIVER_INIT( keithlcy ) { init_ssv();
3271 ssv_sprites_offsx = -8; ssv_sprites_offsy = +0xf1;
3272 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf0; }
DRIVER_INIT(meosism)3273 DRIVER_INIT( meosism ) { init_ssv();
3274 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xe8;
3275 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xef; }
DRIVER_INIT(mslider)3276 DRIVER_INIT( mslider ) { init_ssv();
3277 ssv_sprites_offsx =-16; ssv_sprites_offsy = +0xf0;
3278 ssv_tilemap_offsx = +8; ssv_tilemap_offsy = -0xf1; }
DRIVER_INIT(ryorioh)3279 DRIVER_INIT( ryorioh ) { init_ssv();
3280 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xe8;
3281 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf0; }
DRIVER_INIT(srmp4)3282 DRIVER_INIT( srmp4 ) { init_ssv();
3283 ssv_sprites_offsx = -8; ssv_sprites_offsy = +0xf0;
3284 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf0;
3285 /* ((data16_t *)memory_region(REGION_USER1))[0x2b38/2] = 0x037a; // patch to see gal test mode /*/
3286 }
DRIVER_INIT(srmp7)3287 DRIVER_INIT( srmp7 ) { init_ssv();
3288 ssv_sprites_offsx = +0; ssv_sprites_offsy = -0xf;
3289 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf0; }
DRIVER_INIT(stmblade)3290 DRIVER_INIT( stmblade ) { init_ssv();
3291 ssv_sprites_offsx = -8; ssv_sprites_offsy = +0xef;
3292 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf0; }
DRIVER_INIT(survarts)3293 DRIVER_INIT( survarts ) { init_ssv();
3294 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xe8;
3295 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xef; }
DRIVER_INIT(dynagear)3296 DRIVER_INIT( dynagear ) { init_ssv(); ssv_special = 3;
3297 ssv_sprites_offsx = -8; ssv_sprites_offsy = +0xec;
3298 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xec; }
DRIVER_INIT(sxyreact)3299 DRIVER_INIT( sxyreact ) { hypreac2_init(); /* different*/
3300 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xe8;
3301 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xef; }
DRIVER_INIT(twineag2)3302 DRIVER_INIT( twineag2 ) { init_ssv();interrupt_ultrax=1;
3303 ssv_sprites_offsx = -6; ssv_sprites_offsy = -7;
3304 ssv_tilemap_offsx = -10;ssv_tilemap_offsy = -8; }
DRIVER_INIT(ultrax)3305 DRIVER_INIT( ultrax ) { init_ssv();interrupt_ultrax=1;
3306 ssv_sprites_offsx = -8; ssv_sprites_offsy = 0;
3307 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = 0; }
DRIVER_INIT(vasara)3308 DRIVER_INIT( vasara ) { init_ssv();
3309 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xf0;
3310 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf8; }
DRIVER_INIT(vasara2)3311 DRIVER_INIT( vasara2 ) { init_ssv();
3312 ssv_sprites_offsx = +0; ssv_sprites_offsy = +0xf0;
3313 ssv_tilemap_offsx = +0; ssv_tilemap_offsy = -0xf8; }
3314
3315 static MACHINE_DRIVER_START( ssv )
3316
3317 /* basic machine hardware */
3318 MDRV_CPU_ADD_TAG("main", V60, 16000000) /* Based on STA-0001 & STA-0001B System boards */
3319 MDRV_CPU_VBLANK_INT(ssv_interrupt,2) /* Vblank */
3320
3321 MDRV_FRAMES_PER_SECOND(60)
3322 MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION) /* we use cpu_getvblank */
3323
3324 MDRV_MACHINE_INIT(ssv)
3325
3326 /* video hardware */
3327 MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_NEEDS_6BITS_PER_GUN)
3328
3329 MDRV_SCREEN_SIZE(0x180, 0x100)
3330 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3331 MDRV_GFXDECODE(ssv_gfxdecodeinfo)
3332 MDRV_PALETTE_LENGTH(0x8000)
3333 MDRV_VIDEO_START(ssv)
3334 MDRV_VIDEO_UPDATE(ssv)
3335
3336 /* sound hardware */
3337 MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
3338 MDRV_SOUND_ADD(ES5506, es5506_interface)
3339 MACHINE_DRIVER_END
3340
3341
3342 static MACHINE_DRIVER_START( drifto94 )
3343
3344 /* basic machine hardware */
3345 MDRV_IMPORT_FROM(ssv)
3346 MDRV_CPU_MODIFY("main")
3347 MDRV_CPU_MEMORY(drifto94_readmem, drifto94_writemem)
3348
3349 MDRV_NVRAM_HANDLER(ssv)
3350
3351 /* video hardware */
3352 MDRV_VISIBLE_AREA(0, 0x150-1, 4, 0xf0-1)
3353 MACHINE_DRIVER_END
3354
3355 static MACHINE_DRIVER_START( eaglshot )
3356
3357 /* basic machine hardware */
3358 MDRV_IMPORT_FROM(ssv)
3359 MDRV_CPU_MODIFY("main")
3360 MDRV_CPU_MEMORY(eaglshot_readmem, eaglshot_writemem)
3361
3362 MDRV_NVRAM_HANDLER(ssv)
3363
3364 /* video hardware */
3365 MDRV_VISIBLE_AREA(0, 0x140-1, 4, 0xe8-1)
3366
3367 MDRV_GFXDECODE(eaglshot_gfxdecodeinfo)
3368 MDRV_VIDEO_START(eaglshot)
3369 MDRV_VIDEO_UPDATE(eaglshot)
3370 MACHINE_DRIVER_END
3371
3372
3373 static MACHINE_DRIVER_START( gdfs )
3374
3375 /* basic machine hardware */
3376 MDRV_IMPORT_FROM(ssv)
3377 MDRV_CPU_MODIFY("main")
3378 MDRV_CPU_MEMORY(gdfs_readmem, gdfs_writemem)
3379 MDRV_CPU_VBLANK_INT(gdfs_interrupt,1+4)
3380
3381 MDRV_NVRAM_HANDLER(gdfs)
3382
3383 /* video hardware */
3384 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3385
3386 MDRV_GFXDECODE(gdfs_gfxdecodeinfo)
3387 MDRV_VIDEO_START(gdfs)
3388 MDRV_VIDEO_UPDATE(gdfs)
3389 MACHINE_DRIVER_END
3390
3391
3392 static MACHINE_DRIVER_START( hypreact )
3393
3394 /* basic machine hardware */
3395 MDRV_IMPORT_FROM(ssv)
3396 MDRV_CPU_MODIFY("main")
3397 MDRV_CPU_MEMORY(hypreact_readmem, hypreact_writemem)
3398
3399 /* video hardware */
3400 MDRV_VISIBLE_AREA(8, 0x148-1, 16, 0xf0-1)
3401 MACHINE_DRIVER_END
3402
3403
3404 static MACHINE_DRIVER_START( hypreac2 )
3405
3406 /* basic machine hardware */
3407 MDRV_IMPORT_FROM(ssv)
3408 MDRV_CPU_MODIFY("main")
3409 MDRV_CPU_MEMORY(hypreac2_readmem, hypreac2_writemem)
3410
3411 /* video hardware */
3412 MDRV_VISIBLE_AREA(0, 0x150-1, 8, 0xf8-1)
3413 MACHINE_DRIVER_END
3414
3415
3416 static MACHINE_DRIVER_START( janjans1 )
3417
3418 /* basic machine hardware */
3419 MDRV_IMPORT_FROM(ssv)
3420 MDRV_CPU_MODIFY("main")
3421 MDRV_CPU_MEMORY(janjans1_readmem, janjans1_writemem)
3422
3423 /* video hardware */
3424 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3425 MACHINE_DRIVER_END
3426
3427
3428 static MACHINE_DRIVER_START( keithlcy )
3429
3430 /* basic machine hardware */
3431 MDRV_IMPORT_FROM(ssv)
3432 MDRV_CPU_MODIFY("main")
3433 MDRV_CPU_MEMORY(keithlcy_readmem, keithlcy_writemem)
3434
3435 /* video hardware */
3436 MDRV_VISIBLE_AREA(0, 0x150-1, 4, 0xf0-1)
3437 MACHINE_DRIVER_END
3438
3439
3440 static MACHINE_DRIVER_START( meosism )
3441
3442 /* basic machine hardware */
3443 MDRV_IMPORT_FROM(ssv)
3444 MDRV_CPU_MODIFY("main")
3445 MDRV_CPU_MEMORY(meosism_readmem, meosism_writemem)
3446
3447 MDRV_NVRAM_HANDLER(ssv)
3448
3449 /* video hardware */
3450 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3451 MACHINE_DRIVER_END
3452
3453
3454 static MACHINE_DRIVER_START( mslider )
3455
3456 /* basic machine hardware */
3457 MDRV_IMPORT_FROM(ssv)
3458 MDRV_CPU_MODIFY("main")
3459 MDRV_CPU_MEMORY(mslider_readmem, mslider_writemem)
3460
3461 /* video hardware */
3462 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3463 MACHINE_DRIVER_END
3464
3465
3466 static MACHINE_DRIVER_START( ryorioh )
3467
3468 /* basic machine hardware */
3469 MDRV_IMPORT_FROM(ssv)
3470 MDRV_CPU_MODIFY("main")
3471 MDRV_CPU_MEMORY(ryorioh_readmem, ryorioh_writemem)
3472
3473 /* video hardware */
3474 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3475 MACHINE_DRIVER_END
3476
3477
3478 static MACHINE_DRIVER_START( srmp4 )
3479
3480 /* basic machine hardware */
3481 MDRV_IMPORT_FROM(ssv)
3482 MDRV_CPU_MODIFY("main")
3483 MDRV_CPU_MEMORY(srmp4_readmem, srmp4_writemem)
3484
3485 /* video hardware */
3486 MDRV_VISIBLE_AREA(0, 0x150-1, 4, 0xf4-1)
3487 MACHINE_DRIVER_END
3488
3489
3490 static MACHINE_DRIVER_START( srmp7 )
3491
3492 /* basic machine hardware */
3493 MDRV_IMPORT_FROM(ssv)
3494 MDRV_CPU_MODIFY("main")
3495 MDRV_CPU_MEMORY(srmp7_readmem, srmp7_writemem)
3496
3497 /* video hardware */
3498 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3499 MACHINE_DRIVER_END
3500
3501
3502 static MACHINE_DRIVER_START( stmblade )
3503
3504 /* basic machine hardware */
3505 MDRV_IMPORT_FROM(ssv)
3506 MDRV_CPU_MODIFY("main")
3507 MDRV_CPU_MEMORY(drifto94_readmem, drifto94_writemem)
3508
3509 MDRV_NVRAM_HANDLER(ssv)
3510 /* video hardware */
3511 MDRV_VISIBLE_AREA(0, 0x158-1, 1, 0xf0-1)
3512 MACHINE_DRIVER_END
3513
3514
3515 static MACHINE_DRIVER_START( survarts )
3516
3517 /* basic machine hardware */
3518 MDRV_IMPORT_FROM(ssv)
3519 MDRV_CPU_MODIFY("main")
3520 MDRV_CPU_MEMORY(survarts_readmem, survarts_writemem)
3521
3522 /* video hardware */
3523 MDRV_VISIBLE_AREA(0, 0x150-1, 4, 0xf4-1)
3524 MACHINE_DRIVER_END
3525
3526 static MACHINE_DRIVER_START( dynagear )
3527 /* basic machine hardware */
3528 MDRV_IMPORT_FROM(survarts)
3529 /* video hardware */
3530 MDRV_VISIBLE_AREA(8, 0x158-16-1, 0, 0xf0-1)
3531 MACHINE_DRIVER_END
3532
3533
3534 static MACHINE_DRIVER_START( sxyreact )
3535
3536 /* basic machine hardware */
3537 MDRV_IMPORT_FROM(ssv)
3538 MDRV_CPU_MODIFY("main")
3539 MDRV_CPU_MEMORY(sxyreact_readmem, sxyreact_writemem)
3540
3541 MDRV_NVRAM_HANDLER(ssv)
3542
3543 /* video hardware */
3544 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3545 MACHINE_DRIVER_END
3546
3547
3548 static MACHINE_DRIVER_START( twineag2 )
3549
3550 /* basic machine hardware */
3551 MDRV_IMPORT_FROM(ssv)
3552 MDRV_CPU_MODIFY("main")
3553 MDRV_CPU_MEMORY(twineag2_readmem, twineag2_writemem)
3554
3555 /* video hardware */
3556 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3557 MACHINE_DRIVER_END
3558
3559
3560 static MACHINE_DRIVER_START( ultrax )
3561
3562 /* basic machine hardware */
3563 MDRV_IMPORT_FROM(ssv)
3564 MDRV_CPU_MODIFY("main")
3565 MDRV_CPU_MEMORY(ultrax_readmem, ultrax_writemem)
3566
3567 /* video hardware */
3568 MDRV_VISIBLE_AREA(0, 0x150-1, 0, 0xf0-1)
3569 MACHINE_DRIVER_END
3570
3571
3572
3573 /***************************************************************************
3574
3575
3576 ROMs Loading
3577
3578
3579 ***************************************************************************/
3580
3581
3582 /***************************************************************************
3583
3584 Change Air Blade (Japan)
3585
3586 Change Air Blade
3587 Sammy, 1999
3588
3589 ROM board for use with System SSV Main Board
3590 PCB No: P1-112C
3591
3592 Fairly sparsely populated board containing not much except....
3593
3594 RAM : 6262 (x1)
3595 OTHER : 3.6V Ni-Cd Battery
3596 PALs : (x1, labelled AC412G00)
3597
3598 ROMs : (Filename = ROM Label)
3599 (Extension = PCB Location)
3600 ------------------------------
3601 AC1801M01.U6 32M Mask
3602 AC1802M01.U9 32M Mask
3603
3604 AC1805M01.U8 32M Mask
3605 AC1806M01.U11 32M Mask
3606
3607 AC1803M01.U7 32M Mask
3608 AC1804M01.U10 32M Mask
3609
3610 AC1807M01.U41 32M Mask
3611 AC1810E01.U32 27C160
3612
3613
3614 ***************************************************************************/
3615
3616 ROM_START( cairblad )
3617 ROM_REGION16_LE( 0x200000, REGION_USER1, 0 ) /* V60 Code */
3618 ROM_LOAD16_WORD( "ac1810e0.u32", 0x000000, 0x200000, CRC(13a0b4c2) SHA1(3498303e9b186ab329ee761cee9d4cb8ed552455) ) /* AC1810E01.U32 27C160*/
3619
3620 ROM_REGION( 0x2000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
3621 ROM_LOAD( "ac1801m0.u6", 0x0000000, 0x400000, CRC(1b2b6943) SHA1(95c5dc0ed1d533b2285452c8546346d96a90d097) ) /* AC1801M01.U6 32M Mask*/
3622 ROM_LOAD( "ac1802m0.u9", 0x0400000, 0x400000, CRC(e053b087) SHA1(9569e79c6363e8f97c27aacaa29d25cf32c4b4c1) ) /* AC1802M01.U9 32M Mask*/
3623
3624 ROM_LOAD( "ac1803m0.u7", 0x0800000, 0x400000, CRC(45484866) SHA1(5e2f06743906be298202eafc233b76762d60d8aa) ) /* AC1803M01.U7 32M Mask*/
3625 ROM_LOAD( "ac1804m0.u10", 0x0c00000, 0x400000, CRC(5e0b2285) SHA1(b3b8f249c1b1b2e9438ebc3a669f3ebfb5aa5feb) ) /* AC1804M01.U10 32M Mask*/
3626
3627 ROM_LOAD( "ac1805m0.u8", 0x1000000, 0x400000, CRC(19771f43) SHA1(d6a05392c58d3f60d666e08b3a82f06fa2c8e3a3) ) /* AC1805M01.U8 32M Mask*/
3628 ROM_LOAD( "ac1806m0.u11", 0x1400000, 0x400000, CRC(816b97dc) SHA1(3737cb37a4db720901661fa9b4e30c44181efb94) ) /* AC1806M01.U11 32M Mask*/
3629
3630 ROM_FILL( 0x1800000, 0x800000, 0 )
3631
3632 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
3633 ROM_LOAD16_WORD_SWAP( "ac1410m0.u41", 0x000000, 0x400000, CRC(ecf1f255) SHA1(984b1529b8f0c7d94ea713c85d71df00f54eba79) ) /* AC1807M01.U41 32M Mask*/
3634 ROM_END
3635
3636
3637 /***************************************************************************
3638
3639 Drift Out '94 - The hard order
3640
3641 ----------------------
3642 System SSV (STA-0001B)
3643 ----------------------
3644 CPU : NEC D70615GD-16-S (V60)
3645 Sound: Ensoniq ES5506 (OTTOR2)
3646 OSC : 42.9545MHz(X2) 48.0000MHz(X3)
3647
3648 Custom chips:
3649 ST-0004 (Video DAC?)
3650 ST-0005 (Parallel I/O?)
3651 ST-0006 (Video controller)
3652 ST-0007 (System controller)
3653
3654 Program Work RAM : 256Kbitx2 (expandable to 1Mx2)
3655 Object Work RAM : 1Mbitx2
3656 Color Palette RAM : 256Kbitx3 (expandable to 1Mx3)
3657
3658 -------------------------
3659 SSV Subboard (VISCO-001B)
3660 -------------------------
3661 ROMs:
3662 visco-33.bin - Main programs (27c4000)
3663 visco-37.bin /
3664
3665 vg003-19.u26 - Data? (mask, read as 27c160)
3666
3667 vg003-17.u22 - Samples (mask, read as 27c160)
3668 vg003-18.u15 /
3669
3670 vg003-01.a0 - Graphics (mask, read as 27c160)
3671 vg003-05.a1 |
3672 vg003-09.a2 |
3673 vg009-13.a3 |
3674 vg009-02.b0 |
3675 vg003-06.b1 |
3676 vg003-10.b2 |
3677 vg003-14.b3 |
3678 vg003-03.c0 |
3679 vg003-07.c1 |
3680 vg003-11.c2 |
3681 vg003-15.c3 |
3682 vg003-04.d0 |
3683 vg003-08.d1 |
3684 vg003-12.d2 |
3685 vg003-16.d3 /
3686
3687 GAL:
3688 vg003-22.u29 (16V8)
3689
3690 Custom chip:
3691 ST010 (maybe D78C10?)
3692
3693 Others:
3694 Lithium battery + MB3790 + LH5168D-10L
3695
3696 ***************************************************************************/
3697
3698 ROM_START( drifto94 )
3699 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
3700 ROM_LOAD16_WORD( "vg003-19.u26", 0x000000, 0x200000, CRC(238e5e2b) SHA1(fe58f571857804263642d7d089df962327a007b6) ) /* "SoundDriverV1.1a"*/
3701 ROM_LOAD16_BYTE( "visco-37.bin", 0x200000, 0x080000, CRC(78fa3ccb) SHA1(0c79ff1aa31e7ca1eeb14fbef7774278fa83ba44) )
3702 ROM_RELOAD( 0x300000, 0x080000 )
3703 ROM_LOAD16_BYTE( "visco-33.bin", 0x200001, 0x080000, CRC(88351146) SHA1(1decce44b5d244b57676177f417e4937d7088124) )
3704 ROM_RELOAD( 0x300001, 0x080000 )
3705
3706 ROM_REGION( 0x2000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
3707 ROM_LOAD( "vg003-01.a0", 0x0000000, 0x200000, CRC(2812aa1a) SHA1(5046fe51a4ea50051a19cfeeb091c87f0f217fb8) )
3708 ROM_LOAD( "vg003-05.a1", 0x0200000, 0x200000, CRC(1a1dd910) SHA1(f2252e4cd1b6269036ed02cec9d5a224736c1bce) )
3709 ROM_LOAD( "vg003-09.a2", 0x0400000, 0x200000, CRC(198f1c06) SHA1(7df5d51aa62f0b609cd1d296a3cfeeb38fbcd9d0) )
3710 ROM_LOAD( "vg003-13.a3", 0x0600000, 0x200000, CRC(b45b2267) SHA1(66828efcca2050bc1cdca6bbf2e8cf015ff937a8) )
3711
3712 ROM_LOAD( "vg003-02.b0", 0x0800000, 0x200000, CRC(d7402027) SHA1(32af6d611ea277a860ee10e98f4eee5c4458ef7a) )
3713 ROM_LOAD( "vg003-06.b1", 0x0a00000, 0x200000, CRC(518c509f) SHA1(e4bcbe1d8644490a58670add40d2908c7acdf989) )
3714 ROM_LOAD( "vg003-10.b2", 0x0c00000, 0x200000, CRC(c1ee9d8b) SHA1(7425cf92225cd1c8d764aa47db6219a6d8b090a5) )
3715 ROM_LOAD( "vg003-14.b3", 0x0e00000, 0x200000, CRC(645b672b) SHA1(26dfde289679cd780bc65f4f6783a6a0f8b87818) )
3716
3717 ROM_LOAD( "vg003-03.c0", 0x1000000, 0x200000, CRC(1ca7163d) SHA1(d8c5fd0054a1bc1fbad5866216f6d83c42436ecd) )
3718 ROM_LOAD( "vg003-07.c1", 0x1200000, 0x200000, CRC(2ff113bb) SHA1(a482ddd3c86633a79d18a03193d70fc8f0f157d8) )
3719 ROM_LOAD( "vg003-11.c2", 0x1400000, 0x200000, CRC(f924b105) SHA1(079ad0fc3b34c31a67dd88a442088237a2c03fdd) )
3720 ROM_LOAD( "vg003-15.c3", 0x1600000, 0x200000, CRC(83623b01) SHA1(026654303fb58958bc7f7be86aeb4fdd08e8be7b) )
3721
3722 ROM_LOAD( "vg003-04.d0", 0x1800000, 0x200000, CRC(6be9bc62) SHA1(c0b49a558786b50f04c1cd87a11e111ad31b85d9) )
3723 ROM_LOAD( "vg003-08.d1", 0x1a00000, 0x200000, CRC(a7113cdb) SHA1(74d8bfee7e816d53e60d4e54a2584643562a1ee5) )
3724 ROM_LOAD( "vg003-12.d2", 0x1c00000, 0x200000, CRC(ac0fd855) SHA1(992ae0d02bcefaa2fad7462b211a49fbd1338b62) )
3725 ROM_LOAD( "vg003-16.d3", 0x1e00000, 0x200000, CRC(1a5fd312) SHA1(1e67ffa51408de107be75c9c63df6fd1bb6ce6b1) )
3726
3727 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
3728 ROM_LOAD16_BYTE( "vg003-17.u22", 0x000000, 0x200000, CRC(6f9294ce) SHA1(b097defd95eb1d8f00e107d7669f9d33148e75c1) )
3729
3730 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
3731 ROM_LOAD16_BYTE( "vg003-18.u15", 0x000000, 0x200000, CRC(511b3e93) SHA1(09eda175c8f1b21c18645519cc6e89c6ca1fc5de) )
3732 ROM_END
3733
3734
3735 /***************************************************************************
3736
3737 Eagle Shot Golf
3738 Eagle Shot Golf
3739 Sammy, 1994
3740
3741 Lower PCB
3742 PCB Number: GOLF ROM PCB
3743 RAM : HM514400 (x8)
3744 PALs : GAL16V8 (x2) labelled SI3-11 & SI3-12
3745 OTHER : NEC D4701AC
3746 Controls probably trackball, has 6 pin connector hooked up to a
3747 mc14584b Logic IC. Joystick appears to be used also for selecting
3748 stance, club and direction.
3749
3750 ROMs : U18 & U20 are used for main program.
3751 All rest are 16M Mask
3752 U23 & U24 are sound related, all others for GFX.
3753
3754 Loc ROMs Use & eprom type
3755 -----------------------------------------
3756 U18 si003-09.prl - V60 Program (27C4001)
3757 U20 si003-10.prh /
3758
3759 U23 si003-07.s0 - Samples (16M-Mask)
3760 U24 si003-08.s1 /
3761
3762 U13 si003-01.d0 - Graphics (16M-Mask)
3763 U12 si003-02.d1 |
3764 U11 si003-03.d2 |
3765 U10 si003-04.d3 |
3766 U30 si003-05.d4 |
3767 U31 si003-06.d5 /
3768
3769 NOTE: The "s" and "d" designations above are silk-screened on the rom PCB.
3770
3771 Chips of note: mc14584b - Motorola HEX Schmitt Trigger
3772
3773 This chip is used for the trackball trigger / reading / converting values
3774
3775 ***************************************************************************/
3776
3777 ROM_START( eaglshot )
3778 ROM_REGION16_LE( 0x100000, REGION_USER1, 0 ) /* V60 Code */
3779 ROM_LOAD16_BYTE( "si003-09.u18", 0x000000, 0x080000, CRC(219c71ce) SHA1(4f8996b4c5b267a90073d67857358147732f8c0d) )
3780 ROM_LOAD16_BYTE( "si003-10.u20", 0x000001, 0x080000, CRC(c8872e48) SHA1(c8e1e712d5fa380f8fc1447502f21d2ae592811a) )
3781
3782 ROM_REGION( 0x0c00000, REGION_GFX1, /*ROMREGION_DISPOSE*/0 ) /* Sprites - Read by the CPU */
3783 ROM_LOAD( "si003-01.u13", 0x0000000, 0x200000, CRC(d7df0d52) SHA1(d7b79a186f4272334c2297666c52f32c05787c29) )
3784 ROM_LOAD( "si003-02.u12", 0x0200000, 0x200000, CRC(92b4d50d) SHA1(9dc2f2961b088824d8370ac83dff796345fe4158) )
3785 ROM_LOAD( "si003-03.u11", 0x0400000, 0x200000, CRC(6ede4012) SHA1(6663990c6ee8e500cb8c51ad2102761ee0b3351d) )
3786 ROM_LOAD( "si003-04.u10", 0x0600000, 0x200000, CRC(4c65d1a1) SHA1(165f16d08813d2c989ddce4bb23b3a3652003bd5) )
3787 ROM_LOAD( "si003-05.u30", 0x0800000, 0x200000, CRC(daf52d56) SHA1(108419ef7d3716a3890b0d8bcbfddc1585daaae8) )
3788 ROM_LOAD( "si003-06.u31", 0x0a00000, 0x200000, CRC(449f9ae5) SHA1(b3e664eb88d14d1e25a0cfc8dcccc8270ca778c9) )
3789
3790 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
3791 ROM_LOAD16_WORD_SWAP( "si003-07.u23", 0x000000, 0x200000, CRC(81679fd6) SHA1(ca3b07a87781278b5c7c85951728bbe5dfcbe042) )
3792 ROM_LOAD16_WORD_SWAP( "si003-08.u24", 0x200000, 0x200000, CRC(d0122ba2) SHA1(96230fb690cf144cd873f7d51c0304736a698316) )
3793
3794 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_SOUNDONLY ) /* Samples */
3795 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
3796
3797 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
3798 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
3799
3800 ROM_REGION16_BE( 0x400000, REGION_SOUND4, ROMREGION_SOUNDONLY ) /* Samples */
3801 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
3802 ROM_END
3803
3804 ROM_START( eaglshta )
3805 ROM_REGION16_LE( 0x100000, REGION_USER1, 0 ) /* V60 Code */
3806 ROM_LOAD16_BYTE( "si003-09.prl", 0x000000, 0x080000, CRC(36989004) SHA1(115a8dd4d7c4b4e042d51f886a93613b1405603b) )
3807 ROM_LOAD16_BYTE( "si003-10.prh", 0x000001, 0x080000, CRC(2060c304) SHA1(2ecd178ea6459b8aaac1fa499e7c91809cd22649) )
3808
3809 ROM_REGION( 0x0c00000, REGION_GFX1, /*ROMREGION_DISPOSE*/0 ) /* Sprites - Read by the CPU */
3810 ROM_LOAD( "si003-01.u13", 0x0000000, 0x200000, CRC(d7df0d52) SHA1(d7b79a186f4272334c2297666c52f32c05787c29) )
3811 ROM_LOAD( "si003-02.u12", 0x0200000, 0x200000, CRC(92b4d50d) SHA1(9dc2f2961b088824d8370ac83dff796345fe4158) )
3812 ROM_LOAD( "si003-03.u11", 0x0400000, 0x200000, CRC(6ede4012) SHA1(6663990c6ee8e500cb8c51ad2102761ee0b3351d) )
3813 ROM_LOAD( "si003-04.u10", 0x0600000, 0x200000, CRC(4c65d1a1) SHA1(165f16d08813d2c989ddce4bb23b3a3652003bd5) )
3814 ROM_LOAD( "si003-05.u30", 0x0800000, 0x200000, CRC(daf52d56) SHA1(108419ef7d3716a3890b0d8bcbfddc1585daaae8) )
3815 ROM_LOAD( "si003-06.u31", 0x0a00000, 0x200000, CRC(449f9ae5) SHA1(b3e664eb88d14d1e25a0cfc8dcccc8270ca778c9) )
3816
3817 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
3818 ROM_LOAD16_WORD_SWAP( "si003-07.u23", 0x000000, 0x200000, CRC(81679fd6) SHA1(ca3b07a87781278b5c7c85951728bbe5dfcbe042) )
3819 ROM_LOAD16_WORD_SWAP( "si003-08.u24", 0x200000, 0x200000, CRC(d0122ba2) SHA1(96230fb690cf144cd873f7d51c0304736a698316) )
3820
3821 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_SOUNDONLY ) /* Samples */
3822 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
3823
3824 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
3825 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
3826
3827 ROM_REGION16_BE( 0x400000, REGION_SOUND4, ROMREGION_SOUNDONLY ) /* Samples */
3828 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
3829 ROM_END
3830
3831
3832 /***************************************************************************
3833
3834 (Mahjong) Hyper Reaction (Japan)
3835
3836 (c)1995 Sammy, SSV system
3837
3838 P1-102A (ROM board)
3839
3840 ***************************************************************************/
3841
3842 ROM_START( hypreact )
3843 ROM_REGION16_LE( 0x100000, REGION_USER1, 0 ) /* V60 Code */
3844 ROM_LOAD16_BYTE( "s14-1-02.u2", 0x000000, 0x080000, CRC(d90a383c) SHA1(9945f60ce6e1f50c24c2ae3c2c5d0df9ec3b8926) )
3845 ROM_LOAD16_BYTE( "s14-1-01.u1", 0x000001, 0x080000, CRC(80481401) SHA1(4b1b7050893b6659762297d0f6496c7193ea6c4e) )
3846
3847 ROM_REGION( 0x1800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
3848 ROM_LOAD( "s14-1-07.u7", 0x0000000, 0x200000, CRC(6c429fd0) SHA1(de1bbcd4a20410328d88a3b246afa8e1a6a6f232) )
3849 ROM_LOAD( "s14-1-05.u13", 0x0200000, 0x200000, CRC(2ff72f98) SHA1(92bd5042e19e1dae1252305413684f9cff4bd0ac) )
3850 ROM_LOAD( "s14-1-06.u10", 0x0400000, 0x200000, CRC(f470ec42) SHA1(f31e9c3f3daa212226b9eea14aa1d01367fa348f) )
3851
3852 ROM_LOAD( "s14-1-10.u6", 0x0600000, 0x200000, CRC(fdd706ba) SHA1(893ead529c1ef62002dcff97092ff9fa51ced938) )
3853 ROM_LOAD( "s14-1-08.u12", 0x0800000, 0x200000, CRC(5bb9bb0d) SHA1(1874375cbe79663ff1b5181a1c16fa597a6b55f7) )
3854 ROM_LOAD( "s14-1-09.u9", 0x0a00000, 0x200000, CRC(d1dda65f) SHA1(b4bbd5c9da08b4d4fedb48cfe2dea4f27895c2fd) )
3855
3856 ROM_LOAD( "s14-1-13.u8", 0x0c00000, 0x200000, CRC(971caf11) SHA1(7cfc8bed4431467da53e19056402aa2409be5d88) )
3857 ROM_LOAD( "s14-1-11.u14", 0x0e00000, 0x200000, CRC(6d8e7bae) SHA1(93258663ceb6174917560bb66d72a42ba0f96c0e) )
3858 ROM_LOAD( "s14-1-12.u11", 0x1000000, 0x200000, CRC(233a8e23) SHA1(0c813ec80ac63aa342c8ea57d9e38cada74456d9) )
3859
3860 ROM_FILL( 0x1200000, 0x600000, 0 )
3861
3862 /* The chip seems to use REGION1 too, but produces no sound from there.*/
3863
3864 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
3865 ROM_LOAD16_WORD_SWAP( "s14-1-04.u4", 0x000000, 0x200000, CRC(a5955336) SHA1(1ac0f5d27224e93acfe449d8ca5c3ab3b7f5dd8c) )
3866 ROM_LOAD16_WORD_SWAP( "s14-1-03.u5", 0x200000, 0x200000, CRC(283a6ec2) SHA1(766c685384ea8d801c53a2ae36b4980318aff06b) )
3867 ROM_END
3868
3869
3870 /***************************************************************************
3871
3872 (Mahjong) Hyper Reaction 2 (Japan)
3873
3874 (c)1997 Sammy,SSV system
3875
3876 P1-112A (ROM board)
3877
3878 ***************************************************************************/
3879
3880 ROM_START( hypreac2 )
3881 ROM_REGION16_LE( 0x200000, REGION_USER1, 0 ) /* V60 Code */
3882 ROM_LOAD16_BYTE( "u2.bin", 0x000000, 0x080000, CRC(05c93266) SHA1(0833e80f67ccb4ac17e771fa04dc6f433554a34f) )
3883 ROM_LOAD16_BYTE( "u1.bin", 0x000001, 0x080000, CRC(80cf9e59) SHA1(7025321539891e1a3354ca233255f5395d716933) )
3884 ROM_LOAD16_BYTE( "u47.bin", 0x100000, 0x080000, CRC(a3e9bfee) SHA1(1e897646bafd07ab48eda2883926506c6bedab87) )
3885 ROM_LOAD16_BYTE( "u46.bin", 0x100001, 0x080000, CRC(68c41235) SHA1(6ec32aa6ab6074a8db63a76a3d1a0ec2dc8f8aae) )
3886
3887 ROM_REGION( 0x2800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
3888 ROM_LOAD( "s16-1-16.u6", 0x0000000, 0x400000, CRC(b308ac34) SHA1(409652bc5a537650cab1f3709a2c2be206f72a78) )
3889 ROM_LOAD( "s16-1-15.u9", 0x0400000, 0x400000, CRC(2c8e381e) SHA1(a8681620809d3d9dc62b443232b6e4c4c4209248) )
3890 ROM_LOAD( "s16-1-14.u12", 0x0800000, 0x200000, CRC(afe9d187) SHA1(802df8b1bbb94e4451a6b97c852fa555a6cf5837) )
3891
3892 ROM_LOAD( "s16-1-10.u7", 0x0a00000, 0x400000, CRC(86a10cbd) SHA1(7c15da7c3ffebff058e78439c64f6c0386e4d55b) )
3893 ROM_LOAD( "s16-1-09.u10", 0x0e00000, 0x400000, CRC(6b8e4d92) SHA1(a58c02d3fe595ab654b267cebcb1c6e8ec0b20c4) )
3894 ROM_LOAD( "s16-1-08.u13", 0x1200000, 0x200000, CRC(b355f45d) SHA1(7e0fe81825745555b9627716bfdf1132f20e88f0) )
3895
3896 ROM_LOAD( "s16-1-13.u8", 0x1400000, 0x400000, CRC(89869af2) SHA1(46a8eec18327b515a33c6e01d35fb9b947fcab1f) )
3897 ROM_LOAD( "s16-1-12.u11", 0x1800000, 0x400000, CRC(87d9c748) SHA1(1332db901e50e2fd25d3323920f99e0ef0b0533d) )
3898 ROM_LOAD( "s16-1-11.u14", 0x1c00000, 0x200000, CRC(70b3c0a0) SHA1(009e2f2f292ed6f10a9d54557861294156664e72) )
3899
3900 ROM_FILL( 0x1e00000,0x0a00000, 0 )
3901
3902 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
3903 ROM_LOAD16_WORD_SWAP( "s16-1-06.u41", 0x000000, 0x400000, CRC(626e8a81) SHA1(45ef5b630aed575acd160ede1413e0370f4f9761) )
3904
3905 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_SOUNDONLY ) /* Samples */
3906 ROM_LOAD16_WORD_SWAP( "s16-1-07.u42", 0x000000, 0x400000, CRC(42bcb41b) SHA1(060312b19bd52770410cec1f77e5d8d6478d80eb) )
3907 ROM_END
3908
3909
3910 /***************************************************************************
3911
3912 Jan Jan Simasyo (Japan)
3913
3914 (c)1996 Visco, SSV System
3915
3916 ***************************************************************************/
3917
3918 ROM_START( janjans1 )
3919 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
3920 ROM_LOAD16_WORD( "jj1-data.bin", 0x000000, 0x200000, CRC(6734537e) SHA1(a40f84479141a6f33ce465e66ba9313b54915002) )
3921 ROM_LOAD16_BYTE( "jj1-prol.bin", 0x200000, 0x080000, CRC(4231d928) SHA1(820d1233cd1a8d0c4ece15b94bd9be976b383fe2) )
3922 ROM_RELOAD( 0x300000, 0x080000 )
3923 ROM_LOAD16_BYTE( "jj1-proh.bin", 0x200001, 0x080000, CRC(651383c6) SHA1(8291f86b230eee3a2ebcc926a8370777ee21ec47) )
3924 ROM_RELOAD( 0x300001, 0x080000 )
3925
3926 ROM_REGION( 0x2800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
3927 ROM_LOAD( "jj1-a0.bin", 0x0000000, 0x400000, CRC(39bbbc46) SHA1(77c6b5e9d4315671ea79ec838baa7ae043bcd8c4) )
3928 ROM_LOAD( "jj1-a1.bin", 0x0400000, 0x400000, CRC(26020133) SHA1(32c834655d885431d466f25a729aee2d589ade1b) )
3929 ROM_LOAD( "jj1-a2.bin", 0x0800000, 0x200000, CRC(e993251e) SHA1(6cea12bbfc170ad4ecdc09c1728f88ec7534270a) )
3930
3931 ROM_LOAD( "jj1-b0.bin", 0x0a00000, 0x400000, CRC(8ee66b0a) SHA1(f5a641d54a3040b67d9b6e9533c4e1ed3dbc9e12) )
3932 ROM_LOAD( "jj1-b1.bin", 0x0e00000, 0x400000, CRC(048719b3) SHA1(b81198d58afbc7ef2f7dc71cfef11d269bc1608f) )
3933 ROM_LOAD( "jj1-b2.bin", 0x1200000, 0x200000, CRC(6e95af3f) SHA1(c4336a3f169143d5ab828ea527c08dcac27654c3) )
3934
3935 ROM_LOAD( "jj1-c0.bin", 0x1400000, 0x400000, CRC(9df28afc) SHA1(98ee75b028257614c3354d5ec7b3d4b27be75595) )
3936 ROM_LOAD( "jj1-c1.bin", 0x1800000, 0x400000, CRC(eb470ed3) SHA1(ac0601eb57283c3ebb2daf20d07a2c350804b8e6) )
3937 ROM_LOAD( "jj1-c2.bin", 0x1c00000, 0x200000, CRC(aaf72c2d) SHA1(774e713bbc4c2ed7ff7c9fb49a06246d97c33bad) )
3938
3939 ROM_LOAD( "jj1-d0.bin", 0x1e00000, 0x400000, CRC(2b3bd591) SHA1(0619b2779bd4bc19a5259040ccce0fdbefecf1d0) )
3940 ROM_LOAD( "jj1-d1.bin", 0x2200000, 0x400000, CRC(f24c0d36) SHA1(212969b456bfd7cc00081f65c03c1e167186891a) )
3941 ROM_LOAD( "jj1-d2.bin", 0x2600000, 0x200000, CRC(481b3be8) SHA1(cd1bcaca8c236cebba72d315e759b2e9d243aca8) )
3942
3943 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
3944 ROM_LOAD16_BYTE( "jj1-snd0.bin", 0x000000, 0x200000, CRC(4f7d620a) SHA1(edded130ce7bb0f37e1f59b2771ae6a10a061f9e) )
3945
3946 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
3947 ROM_LOAD16_BYTE( "jj1-snd1.bin", 0x000000, 0x200000, CRC(9b3a7ae5) SHA1(193743fcce779c4a8a73a44c54b5391d08116331) )
3948 ROM_END
3949
3950
3951 /***************************************************************************
3952
3953 Joryuu Syougi Kyoushitsu
3954
3955 (c)1997 Visco, System SSV ROM board
3956
3957 CPU : NEC JAPAN D70732GD-25 (C)NEC1991 V810 9651MK007
3958 OSC : 48.0000MHz
3959
3960 ROMs:
3961 JSK-U4 .BIN [ec22fb41] - (27c1001)
3962 JSK-U24.BIN [1fa6e156] |
3963 JSK-U38.BIN [8e5c0de3] |
3964 JSK-U52.BIN [19cc585f] /
3965
3966 JSK-U71.BIN [b529f331] - (27c1001)
3967 JSK-U72.BIN [41ed8a9f] /
3968
3969 JSK-S0.U65 [8d1a9aeb] - (16M mask)
3970
3971 JSK-A0.BIN [4bac3196] - (16M mask)
3972 JSK-B0.BIN [40664e5a] |
3973 JSK-C0.BIN [2a230e64] |
3974 JSK-D0.BIN [911e53a6] /
3975
3976 GAL (not dumped):
3977 U53.BIN [--------] - GAL16V8B
3978 U70.BIN [--------] /
3979
3980 ***************************************************************************/
3981
3982 ROM_START( jsk )
3983 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* !! V810 Code !! */
3984 ROM_LOAD32_BYTE( "jsk-u4.bin", 0x00000, 0x20000, CRC(ec22fb41) SHA1(c0d6b0a92075214a91da78be52d273771cb9f646) ) /* order?*/
3985 ROM_LOAD32_BYTE( "jsk-u24.bin", 0x00001, 0x20000, CRC(1fa6e156) SHA1(4daedf660d89c185c945d4a526312f6528fe7b17) )
3986 ROM_LOAD32_BYTE( "jsk-u38.bin", 0x00002, 0x20000, CRC(8e5c0de3) SHA1(54c5dfd858086b0eb7ffa82c19fb1dfd7752d50e) )
3987 ROM_LOAD32_BYTE( "jsk-u52.bin", 0x00003, 0x20000, CRC(19cc585f) SHA1(b53138e93d40c0cf03aee838d7653f5665d9cf35) )
3988
3989 ROM_LOAD16_BYTE( "jsk-u72.bin", 0x80000, 0x20000, CRC(41ed8a9f) SHA1(a81efc91fbf1abc70ed64f4fa9b828a8b6f554ec) )
3990 ROM_LOAD16_BYTE( "jsk-u71.bin", 0x80001, 0x20000, CRC(b529f331) SHA1(be6259f5c3a6106280a4b519f83ee008d761be4e) )
3991
3992 ROM_REGION( 0x1000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
3993 ROM_LOAD( "jsk-a0.bin", 0x0000000, 0x200000, CRC(4bac3196) SHA1(e9530278f60e789074411c6b2f20695c3af87b87) )
3994 ROM_LOAD( "jsk-b0.bin", 0x0400000, 0x200000, CRC(40664e5a) SHA1(ba0c24f727d502688a37ed67dad0e3aaad33afc4) )
3995 ROM_LOAD( "jsk-c0.bin", 0x0800000, 0x200000, CRC(2a230e64) SHA1(2af8144b84703f896971a2819d7b7a1f662cec92) )
3996 ROM_LOAD( "jsk-d0.bin", 0x0c00000, 0x200000, CRC(911e53a6) SHA1(9657180b4371172babcb21ad93c6253ac5d58f86) )
3997
3998 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
3999 ROM_LOAD16_BYTE( "jsk-s0.u65", 0x000000, 0x200000, CRC(8d1a9aeb) SHA1(37316bd3e8cbe2a84239e1a11a56d4fe4723ae1a) )
4000
4001 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_SOUNDONLY ) /* Samples */
4002 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4003
4004 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4005 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4006
4007 ROM_REGION16_BE( 0x400000, REGION_SOUND4, ROMREGION_SOUNDONLY ) /* Samples */
4008 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4009 ROM_END
4010
4011
4012 /***************************************************************************
4013
4014 Dramatic Adventure Quiz Keith & Lucy (Japan)
4015
4016 (c)1993 Visco, SSV system
4017
4018 STS-0001 (ROM board)
4019
4020 ***************************************************************************/
4021
4022 ROM_START( keithlcy )
4023 ROM_REGION16_LE( 0x200000, REGION_USER1, 0 ) /* V60 Code */
4024 ROM_LOAD16_WORD( "vg002-07.u28", 0x000000, 0x100000, CRC(57f80ff5) SHA1(9dcc35a79d3799407190d113e0f1b57864d6c56a) ) /* "SETA SoundDriver"*/
4025 ROM_LOAD16_BYTE( "kl-p0l.u26", 0x100000, 0x080000, CRC(d7b177fb) SHA1(2a3533b952a7b2404720916662743c144e870c0b) )
4026 ROM_LOAD16_BYTE( "kl-p0h.u27", 0x100001, 0x080000, CRC(9de7add4) SHA1(16f4405b12734cb6a83cff8be21d03bb3c2e2266) )
4027
4028 ROM_REGION( 0x800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4029 ROM_LOAD( "vg002-01.u13", 0x000000, 0x200000, CRC(b44d85b2) SHA1(cf78d46f9f2594a23af08a898afbf5dd609abcec) )
4030 ROM_LOAD( "vg002-02.u16", 0x200000, 0x200000, CRC(aa05fd14) SHA1(9144e9668788fcd45bd6c8464f9b4f865397f783) )
4031 ROM_LOAD( "vg002-03.u21", 0x400000, 0x200000, CRC(299a8a7d) SHA1(b24d8ffba01d345f48f47f92e58e9b2a9ec62526) )
4032 ROM_LOAD( "vg002-04.u34", 0x600000, 0x200000, CRC(d3633f9b) SHA1(250a25b75a4810a676a02c390bb597b6f1cd7494) )
4033
4034 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
4035 ROM_LOAD16_WORD_SWAP( "vg002-05.u29", 0x000000, 0x200000, CRC(66aecd79) SHA1(7735034b8fb35ad5e7916acd0c2e224a7c62e195) )
4036 ROM_LOAD16_WORD_SWAP( "vg002-06.u33", 0x200000, 0x200000, CRC(75d8c8ea) SHA1(545768ac6d8953cd3044680953476276337a94b9) )
4037 ROM_END
4038
4039
4040 /***************************************************************************
4041
4042 Koi Koi Simasyo 2 (Japan)
4043
4044 (c)1997 Visco, SSV System
4045
4046 VISCO-JJ1 (same board as janjans1)
4047
4048 OSC :8.00000MHz
4049
4050 KK2_A0.BIN [0c89a9ae] GFX (32M mask)
4051 KK2_A1.BIN [3f85ff19] |
4052 KK2_B0.BIN [4d028972] |
4053 KK2_B1.BIN [16e085f7] |
4054 KK2_C0.BIN [34b699d9] |
4055 KK2_C1.BIN [896fbb6f] |
4056 KK2_D0.BIN [0e3005a4] |
4057 KK2_D1.BIN [0116a5fb] /
4058
4059 U26.BIN [4be937a1] Programs (27c4001) (PROL)
4060 U27.BIN [25f39d93] / (PROH)
4061
4062 KK2_SND0.BIN [b27eaa94] Sound (16M mask)
4063 KK2_SND1.BIN [e5a963e1] /
4064
4065 (socket for DATA ROM is empty)
4066
4067 ***************************************************************************/
4068
4069 ROM_START( koikois2 )
4070 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
4071 /* socket for DATA ROM is empty*/
4072 ROM_LOAD16_BYTE( "u26.bin", 0x200000, 0x080000, CRC(4be937a1) SHA1(b2c22ec12fc110984bd1914f8e3e16a8cb866816) )
4073 ROM_RELOAD( 0x300000, 0x080000 )
4074 ROM_LOAD16_BYTE( "u27.bin", 0x200001, 0x080000, CRC(25f39d93) SHA1(a36bc2fe5657f6ceada724fd42843e19408b39b8) )
4075 ROM_RELOAD( 0x300001, 0x080000 )
4076
4077 ROM_REGION( 0x2000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4078 ROM_LOAD( "kk2-a0.bin", 0x0000000, 0x400000, CRC(b94b76c2) SHA1(07ce3e3946669c1bd2f022da9861164625be9c1b) )
4079 ROM_LOAD( "kk2-a1.bin", 0x0400000, 0x200000, CRC(a7c99f56) SHA1(de341e99f76446fab4d7f09c2d8a6f18554b5d2f) )
4080
4081 ROM_LOAD( "kk2-b0.bin", 0x0800000, 0x400000, CRC(4d028972) SHA1(732c874d3511c7bce006436d557ec24e54df0166) )
4082 ROM_LOAD( "kk2-b1.bin", 0x0c00000, 0x200000, CRC(778ec9fb) SHA1(5983f0292e274e3da098b461355e2c001f4881b3) )
4083
4084 ROM_LOAD( "kk2-c0.bin", 0x1000000, 0x400000, CRC(34b699d9) SHA1(b5208d5f70f21725e54c9dc59de73f1a5646a72c) )
4085 ROM_LOAD( "kk2-c1.bin", 0x1400000, 0x200000, CRC(ab451e88) SHA1(0c4d6c0c758f2ab4210c201605dd573661b6c553) )
4086
4087 ROM_LOAD( "kk2-d0.bin", 0x1800000, 0x400000, CRC(0e3005a4) SHA1(fa8da58308d58bb6b2e8beb8ee8f7ea08b18f4d9) )
4088 ROM_LOAD( "kk2-d1.bin", 0x1c00000, 0x200000, CRC(17a02252) SHA1(c7aa61e27f197b3c497a65a9369e3a6a20c9f82a) )
4089
4090 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4091 ROM_LOAD16_BYTE( "kk2_snd0.bin", 0x000000, 0x200000, CRC(b27eaa94) SHA1(05baaef683a1fcd9eb8a7cfd5b280c05108e832f) )
4092
4093 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4094 ROM_LOAD16_BYTE( "kk2_snd1.bin", 0x000000, 0x200000, CRC(e5a963e1) SHA1(464ffd53ac2e6db62225b18d12bfea93160771ec) )
4095
4096 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4097 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4098
4099 ROM_REGION16_BE( 0x400000, REGION_SOUND4, ROMREGION_SOUNDONLY ) /* Samples */
4100 ROM_COPY( REGION_SOUND2, 0x000000, 0x000000, 0x400000 )
4101 ROM_END
4102
4103
4104 /***************************************************************************
4105
4106 Meosis Magic (Japan, BET?)
4107
4108 (c)1996 Sammy, SSV System
4109
4110 P1-105A
4111
4112 Custom: DX-102 (I/O)
4113 Others: M62X42B (RTC?)
4114 64k SRAM (Back up)
4115 Ni-Cd Battery
4116
4117 ***************************************************************************/
4118
4119 ROM_START( meosism )
4120 ROM_REGION16_LE( 0x100000, REGION_USER1, 0 ) /* V60 Code */
4121 ROM_LOAD16_BYTE( "s15-2-2.u47", 0x000000, 0x080000, CRC(2ab0373f) SHA1(826aec3b9698ec5db5d7a72c3a24b1ef779fb227) )
4122 ROM_LOAD16_BYTE( "s15-2-1.u46", 0x000001, 0x080000, CRC(a4bce148) SHA1(17ec4d91e215bd38258329b1a71e7f135c5733ad) )
4123
4124 ROM_REGION( 0x800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4125 ROM_LOAD( "s15-1-7.u7", 0x000000, 0x200000, CRC(ec5023cb) SHA1(3406f5143a40c8dcd2d45b44ea91c737810ab05b) )
4126 ROM_LOAD( "s15-1-8.u6", 0x200000, 0x200000, CRC(f04b0836) SHA1(83678427cd0ed0d68ff770baa2693226b391f6c8) )
4127 ROM_LOAD( "s15-1-5.u9", 0x400000, 0x200000, CRC(c0414b97) SHA1(3ca8423e04f606981d158065e38431f2509e1daa) )
4128 ROM_LOAD( "s15-1-6.u8", 0x600000, 0x200000, CRC(d721aeb6) SHA1(3bef7e027a0e14fbf589aee32a6d9cab779da7d4) )
4129
4130 /* The chip seems to use REGION1 too, but produces no sound from there.*/
4131
4132 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4133 ROM_LOAD16_WORD_SWAP( "s15-1-4.u45", 0x000000, 0x200000, CRC(0c6738a7) SHA1(acf9056bb052db7a11cf903d77ab16425d813835) )
4134 ROM_LOAD16_WORD_SWAP( "s15-1-3.u43", 0x200000, 0x200000, CRC(d7e83178) SHA1(74e5c09f6d3b2c8e1c1cc2b0eab0490b5bbc9099) )
4135 ROM_END
4136
4137
4138 /***************************************************************************
4139
4140 Monster Slider (Japan)
4141
4142 (c)1997 Visco/PATT, System SSV
4143
4144 ms-pl.bin - V60 main program (27c4000, low)
4145 ms-ph.bin - V60 main program (27c4000, high)
4146
4147 ms-snd0.bin \
4148 |- sound data (read as 27c160)
4149 ms-snd1.bin /
4150
4151 ms-a0.bin \
4152 ms-b0.bin |- Graphics (read as 27c160)
4153 ms-c0.bin /
4154
4155 ms-a1.bin \
4156 ms-b1.bin |- Graphics (27c4100)
4157 ms-c1.bin /
4158
4159 vg001-14 \
4160 |- (GAL16V8. not dumped)
4161 vg001-15 /
4162
4163 Other parts: uPD71051
4164 OSC 8.0000MHz
4165
4166 ***************************************************************************/
4167
4168 ROM_START( mslider )
4169 ROM_REGION16_LE( 0x100000, REGION_USER1, 0 ) /* V60 Code */
4170 ROM_LOAD16_BYTE( "ms-pl.bin", 0x000000, 0x080000, CRC(70b2a05d) SHA1(387cf67e3e505c4cc1b5cd0b6c9fb3bc27d07e24) )
4171 ROM_LOAD16_BYTE( "ms-ph.bin", 0x000001, 0x080000, CRC(34a64e9f) SHA1(acf3d8490f3ec99b6171e71328a991fcc9c5a8b1) )
4172
4173 ROM_REGION( 0xa00000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4174 ROM_LOAD( "ms-a0.bin", 0x000000, 0x200000, CRC(7ed38ccc) SHA1(9c584a5f6b3aad8646d155a56e4070cfed4af540) )
4175 ROM_LOAD( "ms-a1.bin", 0x200000, 0x080000, CRC(83f5995f) SHA1(33ae99a96702d4aba422eaf454b86c96aaf88426) )
4176
4177 ROM_LOAD( "ms-b0.bin", 0x280000, 0x200000, CRC(faa076e1) SHA1(cca583c617e5d4ab995605dd16280931893991c7) )
4178 ROM_LOAD( "ms-b1.bin", 0x480000, 0x080000, CRC(ef9748db) SHA1(34ab4524ec81b81ae2540f7d69e0f8254fd1b8f4) )
4179
4180 ROM_LOAD( "ms-c0.bin", 0x500000, 0x200000, CRC(f9d3e052) SHA1(4cdde756b24ee980f3c79a35a1fe071861fdeef9) )
4181 ROM_LOAD( "ms-c1.bin", 0x700000, 0x080000, CRC(7f910c5a) SHA1(23ea13b6c07d3d31a25c21704d6a3e506578b199) )
4182
4183 ROM_FILL( 0x780000, 0x280000, 0 )
4184
4185 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
4186 ROM_LOAD16_WORD_SWAP( "ms-snd0.bin", 0x000000, 0x200000, CRC(cda6e3a5) SHA1(28ad8f34bc4f907654582f3522b377b97234eba8) )
4187 ROM_LOAD16_WORD_SWAP( "ms-snd1.bin", 0x200000, 0x200000, CRC(8f484b35) SHA1(cbf3ee7ec6337915f9d90a5b43d2de1eaa5537d0) )
4188 ROM_END
4189
4190
4191 /***************************************************************************
4192
4193 Gourmet Battle Quiz Ryohrioh CooKing (Japan)
4194
4195 (c)1998 Visco, SSV System
4196
4197 ***************************************************************************/
4198
4199 ROM_START( ryorioh )
4200 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
4201 ROM_LOAD( "ryorioh.dat", 0x000000, 0x200000, CRC(d1335a6a) SHA1(a5670ab3c399736232baaabc59573bdb3bf762da) )
4202 ROM_LOAD16_BYTE( "ryorioh.l", 0x200000, 0x080000, CRC(9ad60e7d) SHA1(572b84bab08eb8293d93e03182d9871d8973b7dd) )
4203 ROM_RELOAD( 0x300000, 0x080000 )
4204 ROM_LOAD16_BYTE( "ryorioh.h", 0x200001, 0x080000, CRC(0655fcff) SHA1(2c088e42323f87e01b65f9f523e258f881d4e773) )
4205 ROM_RELOAD( 0x300001, 0x080000 )
4206
4207 ROM_REGION( 0x2000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4208 ROM_LOAD( "ryorioh.a0", 0x0000000, 0x400000, CRC(f76ee003) SHA1(04022238dcfd5cf0e4f97c3c3b24df574ec6b609) )
4209 ROM_LOAD( "ryorioh.a1", 0x0400000, 0x400000, CRC(ca44d66d) SHA1(d5ed2bbc9831182b212533bd67bb3831f655110a) )
4210
4211 ROM_LOAD( "ryorioh.b0", 0x0800000, 0x400000, CRC(daa134f4) SHA1(c3dce66b2c67061ae980374f7559b2bb8ef2502d) )
4212 ROM_LOAD( "ryorioh.b1", 0x0c00000, 0x400000, CRC(7611697c) SHA1(febb0bc5f3bc8766be4377092c8443a489379bca) )
4213
4214 ROM_LOAD( "ryorioh.c0", 0x1000000, 0x400000, CRC(20eb49cf) SHA1(13c201e28be17cdfc7e6266a6d1fb41cfbe04b53) )
4215 ROM_LOAD( "ryorioh.c1", 0x1400000, 0x400000, CRC(1370c75e) SHA1(30dfe37f3fab0e3e94df4a6d45f1291ad41e0147) )
4216
4217 ROM_LOAD( "ryorioh.d0", 0x1800000, 0x400000, CRC(ffa14ef1) SHA1(22a6992f6217d8ef2140e72063290fa34cb45683) )
4218 ROM_LOAD( "ryorioh.d1", 0x1c00000, 0x400000, CRC(ae6055e8) SHA1(ee20a7b3c4f899404ca259991509728d3a0f96b9) )
4219
4220 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4221 ROM_LOAD16_BYTE( "ryorioh.snd", 0x000000, 0x200000, CRC(7bd38b76) SHA1(d8490b4af839ef0802b8b2a47277fcd4091e4d37) )
4222 ROM_END
4223
4224
4225 /***************************************************************************
4226
4227 Super Real Mahjong PIV
4228
4229 (c)SETA 1993, System SSV
4230
4231 CPU : V60 (12MHz)
4232 Sound : Ensoniq OTTO
4233 Work RAM : 256Kbit (expandable to 1Mbitx2. SRMP7 requires this)
4234 Object RAM : 1Mbitx2
4235 Palette RAM: 256Kbitx3 (expandable to 1Mbitx3)
4236
4237 sx001-01.a0 \
4238 sx001-02.b0 |
4239 sx001-03.c0 |
4240 sx001-04.a1 |
4241 sx001-05.b1 |- Graphics (16M Mask)
4242 sx001-06.c1 |
4243 sx001-07.a2 |
4244 sx001-08.b2 |
4245 sx001-09.c2 /
4246
4247 sx001-10.sd0 - Sound - 16M Mask
4248
4249 sx001-11.prl - Main program (low) - 27c040
4250 sx001-12.prh - Main program (high) - 27c040
4251
4252 Custom chips
4253 ST-0004 (Video DAC)
4254 ST-0005 (Parallel I/O)
4255 ST-0006 (Video controller - 32768 palettes from 24bit color)
4256 ST-0007 (System controller)
4257
4258 ***************************************************************************/
4259
4260 ROM_START( srmp4 )
4261 ROM_REGION16_LE( 0x100000, REGION_USER1, 0 ) /* V60 Code */
4262 ROM_LOAD16_BYTE( "sx001-14.prl", 0x000000, 0x080000, CRC(19aaf46e) SHA1(0c0f5acc1880971c56e7e2c2e3ad7c2932b82d4b) )
4263 ROM_LOAD16_BYTE( "sx001-15.prh", 0x000001, 0x080000, CRC(dbd31399) SHA1(a77dc85f481454b10223d7f4e0395e07d2f8d4f3) )
4264
4265 ROM_REGION( 0x1800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4266 ROM_LOAD( "sx001-01.a0", 0x0000000, 0x200000, CRC(94ee9203) SHA1(a0e944a375f94e9dd668b06f15580384902d0fe1) )
4267 ROM_LOAD( "sx001-04.a1", 0x0200000, 0x200000, CRC(38c9c49a) SHA1(c392d1cf5d16a348bdaa7222f2420a61a831a50a) )
4268 ROM_LOAD( "sx001-07.a2", 0x0400000, 0x200000, CRC(ee66021e) SHA1(f4df2bdf8100a3bd39bb61f9bb4807ca9e13537a) )
4269
4270 ROM_LOAD( "sx001-02.b0", 0x0600000, 0x200000, CRC(adffb598) SHA1(fab372aebfbb12feaf7a7716a780cf2e5cc60731) )
4271 ROM_LOAD( "sx001-05.b1", 0x0800000, 0x200000, CRC(4c400a38) SHA1(42623d6134fb6d8ce9059f7774c6bf4d2ea5d2d9) )
4272 ROM_LOAD( "sx001-08.b2", 0x0a00000, 0x200000, CRC(36efd52c) SHA1(f51c6d9ceff02b9ee3f8e4ffa17f6c00ee9de905) )
4273
4274 ROM_LOAD( "sx001-03.c0", 0x0c00000, 0x200000, CRC(4336b037) SHA1(f42c5622e141e384efb52955f7f6a58a8ba8fc2c) )
4275 ROM_LOAD( "sx001-06.c1", 0x0e00000, 0x200000, CRC(6fe7229e) SHA1(e1432aa500460f79b5b78ee4b249d8fc9f566ce1) )
4276 ROM_LOAD( "sx001-09.c2", 0x1000000, 0x200000, CRC(91dd8218) SHA1(a500dca9eefbf93187b1dfde7ddff1d22b886d44) )
4277
4278 ROM_FILL( 0x1200000, 0x600000, 0 )
4279
4280 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
4281 ROM_LOAD16_WORD_SWAP( "sx001-10.sd0", 0x000000, 0x200000, CRC(45409ef1) SHA1(327d0a63deac6f0f8b9a408a321c03dd4e965569) )
4282 ROM_RELOAD( 0x200000, 0x200000 )
4283 ROM_END
4284
4285 ROM_START( srmp4o )
4286 ROM_REGION16_LE( 0x100000, REGION_USER1, 0 ) /* V60 Code */
4287 ROM_LOAD16_BYTE( "sx001-11.prl", 0x000000, 0x080000, CRC(dede3e64) SHA1(6fe998babfd2ad8f268c59bd365115a2d7cfc8f9) )
4288 ROM_LOAD16_BYTE( "sx001-12.prh", 0x000001, 0x080000, CRC(739c53c3) SHA1(68f12cf42177df208ff6499ccc7ccc1423e3ad5f) )
4289
4290 ROM_REGION( 0x1800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4291 ROM_LOAD( "sx001-01.a0", 0x0000000, 0x200000, CRC(94ee9203) SHA1(a0e944a375f94e9dd668b06f15580384902d0fe1) )
4292 ROM_LOAD( "sx001-04.a1", 0x0200000, 0x200000, CRC(38c9c49a) SHA1(c392d1cf5d16a348bdaa7222f2420a61a831a50a) )
4293 ROM_LOAD( "sx001-07.a2", 0x0400000, 0x200000, CRC(ee66021e) SHA1(f4df2bdf8100a3bd39bb61f9bb4807ca9e13537a) )
4294
4295 ROM_LOAD( "sx001-02.b0", 0x0600000, 0x200000, CRC(adffb598) SHA1(fab372aebfbb12feaf7a7716a780cf2e5cc60731) )
4296 ROM_LOAD( "sx001-05.b1", 0x0800000, 0x200000, CRC(4c400a38) SHA1(42623d6134fb6d8ce9059f7774c6bf4d2ea5d2d9) )
4297 ROM_LOAD( "sx001-08.b2", 0x0a00000, 0x200000, CRC(36efd52c) SHA1(f51c6d9ceff02b9ee3f8e4ffa17f6c00ee9de905) )
4298
4299 ROM_LOAD( "sx001-03.c0", 0x0c00000, 0x200000, CRC(4336b037) SHA1(f42c5622e141e384efb52955f7f6a58a8ba8fc2c) )
4300 ROM_LOAD( "sx001-06.c1", 0x0e00000, 0x200000, CRC(6fe7229e) SHA1(e1432aa500460f79b5b78ee4b249d8fc9f566ce1) )
4301 ROM_LOAD( "sx001-09.c2", 0x1000000, 0x200000, CRC(91dd8218) SHA1(a500dca9eefbf93187b1dfde7ddff1d22b886d44) )
4302
4303 ROM_FILL( 0x1200000, 0x600000, 0 )
4304
4305 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
4306 ROM_LOAD16_WORD_SWAP( "sx001-10.sd0", 0x000000, 0x200000, CRC(45409ef1) SHA1(327d0a63deac6f0f8b9a408a321c03dd4e965569) )
4307 ROM_RELOAD( 0x200000, 0x200000 )
4308 ROM_END
4309
4310
4311 /***************************************************************************
4312
4313 Super Real Mahjong P7 (Japan)
4314
4315 (c)1997 Seta, SSV system
4316
4317 ***************************************************************************/
4318
4319 ROM_START( srmp7 )
4320 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
4321 ROM_LOAD16_WORD( "sx015-10.dat", 0x000000, 0x200000, CRC(fad3ac6a) SHA1(9a4695c06bc74ca4de0c1a83bdf38f6651c0e2a1) )
4322 ROM_LOAD16_BYTE( "sx015-07.pr0", 0x200000, 0x080000, CRC(08d7f841) SHA1(67567acff0ce278576290a896005de0397605eef) )
4323 ROM_RELOAD( 0x300000, 0x080000 )
4324 ROM_LOAD16_BYTE( "sx015-08.pr1", 0x200001, 0x080000, CRC(90307825) SHA1(13b3f82c8854808684bd41deb0bbd442efe7b685) )
4325 ROM_RELOAD( 0x300001, 0x080000 )
4326
4327 ROM_REGION( 0x4000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4328 ROM_LOAD( "sx015-26.a0", 0x0000000, 0x400000, CRC(a997be9d) SHA1(37470af24531557113f953f727f6b8cab602a7d3) )
4329 ROM_LOAD( "sx015-25.a1", 0x0400000, 0x400000, CRC(29ac4211) SHA1(32edf3982b0e27077cc17cd38b67a27d36dc3ad8) )
4330 ROM_LOAD( "sx015-24.a2", 0x0800000, 0x400000, CRC(b8fea3da) SHA1(9c3a53348f72f39d84d078068c62b10920854cd0) )
4331 ROM_LOAD( "sx015-23.a3", 0x0c00000, 0x400000, CRC(9ec0b81e) SHA1(fe9550592852db8a0fc38f8af444c4c137b803eb) )
4332
4333 ROM_LOAD( "sx015-22.b0", 0x1000000, 0x400000, CRC(62c3df07) SHA1(2c2b7ccc53d0ccc78f599d0789d38296935c0316) )
4334 ROM_LOAD( "sx015-21.b1", 0x1400000, 0x400000, CRC(55b8a431) SHA1(ccdc70b27c7fc9efe2c20df23f01b96f3b542d72) )
4335 ROM_LOAD( "sx015-20.b2", 0x1800000, 0x400000, CRC(e84a64d7) SHA1(af7a04cebb1ccbbd76812f7b6f7bb79023aff291) )
4336 ROM_LOAD( "sx015-19.b3", 0x1c00000, 0x400000, CRC(994b5063) SHA1(0c44e94773160e75ef03f7ceb95ab1b123ae3ecf) )
4337
4338 ROM_LOAD( "sx015-18.c0", 0x2000000, 0x400000, CRC(72d43fd4) SHA1(96582adae0bf1cc8359dd1ecc0d00a42d306c565) )
4339 ROM_LOAD( "sx015-17.c1", 0x2400000, 0x400000, CRC(fdfd82f1) SHA1(005b60fd7bf9f61ecd16daa6e6bb213ed6a9875b) )
4340 ROM_LOAD( "sx015-16.c2", 0x2800000, 0x400000, CRC(86aa314b) SHA1(5cd238785f683d3a33f36c5a326d350805ef21ff) )
4341 ROM_LOAD( "sx015-15.c3", 0x2c00000, 0x400000, CRC(11f50e16) SHA1(4e26aa84bea8b7e73056b0cc70661332fa7d9473) )
4342
4343 ROM_LOAD( "sx015-14.d0", 0x3000000, 0x400000, CRC(186f83fa) SHA1(6f03056b766c223fef639627706c2476f9af378d) )
4344 ROM_LOAD( "sx015-13.d1", 0x3400000, 0x400000, CRC(ea6e5329) SHA1(614dd8d36d94a4c8b2b0c30ec96c6d183065561e) )
4345 ROM_LOAD( "sx015-12.d2", 0x3800000, 0x400000, CRC(80336523) SHA1(ec66e21fe1401fdb438e03657542a7b6b0cbc5ce) )
4346 ROM_LOAD( "sx015-11.d3", 0x3c00000, 0x400000, CRC(134c8e28) SHA1(669118b58f27d5e2e08052debe904f95d9ab32a3) )
4347
4348 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4349 ROM_LOAD16_BYTE( "sx015-06.s0", 0x000000, 0x200000, CRC(0d5a206c) SHA1(2fdaf2a56b6608f20a788eb79a8426102ff33e14) )
4350
4351 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4352 ROM_LOAD16_BYTE( "sx015-05.s1", 0x000000, 0x200000, CRC(bb8cebe2) SHA1(3691e5fb4e963f69c1fe01cb5d968433029c4833) )
4353
4354 ROM_REGION16_BE( 0x800000, REGION_SOUND3, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4355 ROM_LOAD16_BYTE( "sx015-04.s2", 0x000000, 0x200000, CRC(f6e933df) SHA1(7cb69515a0ffc62fbac2be3a5fb322538560bd38) )
4356 ROM_LOAD16_BYTE( "sx015-02.s4", 0x400000, 0x200000, CRC(6567bc3e) SHA1(e902f22f1499edc6a0e2c8b6cc26460d66a3bdbe) )
4357
4358 ROM_REGION16_BE( 0x800000, REGION_SOUND4, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4359 ROM_LOAD16_BYTE( "sx015-03.s3", 0x000000, 0x200000, CRC(5b51ab21) SHA1(cf3e86e41f7984208984d6486b04cec117dadc18) )
4360 ROM_LOAD16_BYTE( "sx015-01.s5", 0x400000, 0x200000, CRC(481b00ed) SHA1(2c3d158dd5be9af0ee57fd5dd94d2ec75e28b182) )
4361 ROM_END
4362
4363
4364 /***************************************************************************
4365
4366 Survival Arts
4367
4368 Manufacturer: Sammy USA
4369 System Type: System SSV
4370
4371 ----------------------
4372 System SSV (STA-0001)
4373 ----------------------
4374 CPU : NEC D70615GD-16 (V60)
4375 Sound: Ensoniq ES5506 (OTTOR2)
4376 OSC : 42.9545MHz(X2) 48.0000MHz(X3)
4377
4378 Custom chips:
4379 ST-0004 (Video DAC)
4380 ST-0005 (Parallel I/O)
4381 ST-0006 (Video controller)
4382 ST-0007 (System controller)
4383
4384 Program Work RAM : 256Kbitx2 (expandable to 1Mx2)
4385 Object Work RAM : 1Mbitx2
4386 Color Palette RAM : 256Kbitx3 (expandable to 1Mx3)
4387
4388 -------------------------
4389 SSV Subboard (SAM-5127)
4390 -------------------------
4391 ROMs:
4392 USA-PR-H.u3 - V60 Program (27C4001)
4393 USA-PR-L.u4 /
4394
4395 si001-10.s0 - Samples (16M-Mask)
4396 si001-12.s2 /
4397
4398 si001-11.s1 - Samples (8M-Mask)
4399 si001-13.s3 /
4400
4401 si001-01.a0 - Graphics (16M-Mask)
4402 si001-04.a1 |
4403 si001-05.a2 |
4404 si001-02.b0 |
4405 si001-05.b1 |
4406 si001-07.b2 |
4407 si001-03.c0 |
4408 si001-06.c1 |
4409 si001-09.c2 /
4410
4411 Empty Sockets:
4412 DATA --- 16M-Mask
4413 A3 |
4414 B3 |
4415 C3 |
4416 D0-D3 /
4417
4418 GAL:
4419 si003-14.u5 (16V8B)
4420
4421 MISC:
4422 Pin Header for P3 (used)
4423 Pin Header for P4 (unused)
4424
4425 ***************************************************************************/
4426
4427 ROM_START( survarts )
4428 ROM_REGION16_LE( 0x100000, REGION_USER1, 0 ) /* V60 Code */
4429 ROM_LOAD16_BYTE( "usa-pr-l.u4", 0x000000, 0x080000, CRC(fa328673) SHA1(f7217eaa2a8d3fb7f706fa1aecaaa5b1b8d5e32c) )
4430 ROM_LOAD16_BYTE( "usa-pr-h.u3", 0x000001, 0x080000, CRC(6bee2635) SHA1(a2d0517bf599331ef47beb8a902589039e4502e0) )
4431
4432 ROM_REGION( 0x1800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4433 ROM_LOAD( "si001-01.a0", 0x0000000, 0x200000, CRC(8b38fbab) SHA1(c4a67b24b33d4eef7b0f885bd69cae6c67bd3981) )
4434 ROM_LOAD( "si001-04.a1", 0x0200000, 0x200000, CRC(34248b54) SHA1(077198f8de1622b71c580e34d5ad1b6bf3229fe9) )
4435 ROM_LOAD( "si001-07.a2", 0x0400000, 0x200000, CRC(497d6151) SHA1(a9860c75943c0fd2991660ce2a9505edc6c2fa46) )
4436
4437 ROM_LOAD( "si001-02.b0", 0x0600000, 0x200000, CRC(cb4a2dbd) SHA1(26cdd1b54a3fa1dc3c3a8945d1a3562e9c62ace6) )
4438 ROM_LOAD( "si001-05.b1", 0x0800000, 0x200000, CRC(8f092381) SHA1(6c49f1f5b3c31bd7c6a93ba0450d9f64fd512633) )
4439 ROM_LOAD( "si001-08.b2", 0x0a00000, 0x200000, CRC(182b88c4) SHA1(a5b6a3e1fd67f036b1255385e81b6a3eb69f9f3f) )
4440
4441 ROM_LOAD( "si001-03.c0", 0x0c00000, 0x200000, CRC(92fdf652) SHA1(cf7aeb3a1e8ffe34cf24cb919a0ab3cc90202fa9) )
4442 ROM_LOAD( "si001-06.c1", 0x0e00000, 0x200000, CRC(9a62f532) SHA1(7e7ba1224e52b33a9bd14058230efc871178c4f8) )
4443 ROM_LOAD( "si001-09.c2", 0x1000000, 0x200000, CRC(0955e393) SHA1(0be9134190706eaee49177034b0536b05c4bc7ac) )
4444
4445 ROM_FILL( 0x1200000, 0x600000, 0 )
4446
4447 /* The chip seems to use REGION1 too, but produces no sound from there.*/
4448
4449 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4450 ROM_LOAD16_WORD_SWAP( "si001-10.s0", 0x000000, 0x100000, CRC(5642b333) SHA1(84936af8b3882e116b279e422075f35aabdd232f) )
4451 ROM_LOAD16_WORD_SWAP( "si001-11.s1", 0x100000, 0x100000, CRC(a81e6ea6) SHA1(499f070500895ed7b6785b42fb6bbf973fc6dc04) )
4452 ROM_LOAD16_WORD_SWAP( "si001-12.s2", 0x200000, 0x100000, CRC(e9b2b45b) SHA1(17fd27cdb8a0b9932cb1e71e0547c0d9d6fc7d06) )
4453 ROM_LOAD16_WORD_SWAP( "si001-13.s3", 0x300000, 0x100000, CRC(d66a7e26) SHA1(57b659daef00421b6742963f792bd5e020f625c9) )
4454 ROM_END
4455
4456 /*
4457
4458 Dynagears
4459 Sammy, 1993
4460
4461 This game runs on SSV hardware.
4462
4463 Game PCB Layout
4464 ---------------
4465
4466 SAM-5127
4467 |----------------------------------------|
4468 | SI002-10.U6 |
4469 | |
4470 | SI002-09.U7 |
4471 | |
4472 | SI002-08.U8 |
4473 | |
4474 | SI002-07.U9 |
4475 | |
4476 | |
4477 | |
4478 | |
4479 | |
4480 | |
4481 | |
4482 | |
4483 | SI002-05.U22 |
4484 | |
4485 | SI002-02.U23 |
4486 | |
4487 | |
4488 |SI002-PRH.U3 |
4489 | |
4490 |SI002-PRL.U4 |
4491 | |
4492 | SI002-06.U16 SI002-04.U26 |
4493 |PAL |
4494 |(SI002-14) SI002-03.U17 SI002-01.U27 |
4495 | |
4496 |----------------------------------------|
4497
4498 */
4499
4500 ROM_START( dynagear )
4501 ROM_REGION16_LE( 0x200000, REGION_USER1, 0 ) /* V60 Code */
4502 ROM_LOAD16_BYTE( "si002-prl.u4", 0x000000, 0x080000, CRC(71ba29c6) SHA1(ef43ab665daa4fc9ee01996d03f2f0b4c74c8435) )
4503 ROM_LOAD16_BYTE( "si002-prh.u3", 0x000001, 0x080000, CRC(d0947a12) SHA1(95b54ed9dc51c952ad123103b8633a821cde05e9) )
4504 ROM_LOAD16_BYTE( "si002-prl.u4", 0x100000, 0x080000, CRC(71ba29c6) SHA1(ef43ab665daa4fc9ee01996d03f2f0b4c74c8435) )
4505 ROM_LOAD16_BYTE( "si002-prh.u3", 0x100001, 0x080000, CRC(d0947a12) SHA1(95b54ed9dc51c952ad123103b8633a821cde05e9) )
4506
4507 ROM_REGION( 0x1000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4508 ROM_LOAD( "si002-01.u27", 0x0000000, 0x200000, CRC(0060a521) SHA1(10cdb967e6cb4fc7c23c1ac40b24e35262060f5c) )
4509 ROM_LOAD( "si002-04.u26", 0x0200000, 0x200000, CRC(6140f47d) SHA1(49dcebe724990acdac76746886efe88b68ce956f) )
4510
4511 ROM_LOAD( "si002-02.u23", 0x0400000, 0x200000, CRC(c22f2a41) SHA1(969affc8bac9a6024e7e5103384a40a6a2acf653) )
4512 ROM_LOAD( "si002-05.u22", 0x0600000, 0x200000, CRC(482412fd) SHA1(dfb896631b6999ce8ac6aeef84ff44150d67739a) )
4513
4514 ROM_LOAD( "si002-03.u17", 0x0800000, 0x200000, CRC(4261a6b8) SHA1(df163faa84a86f126d5d405aef316ff9dd3c05eb) )
4515 ROM_LOAD( "si002-06.u16", 0x0a00000, 0x200000, CRC(0e1f23f6) SHA1(ea35c75776b75131ef9133a16a36d95132dc6776) )
4516
4517 ROM_FILL( 0xc00000, 0x400000, 0 )
4518
4519 /* The chip seems to use REGION1 too, but produces no sound from there.*/
4520
4521 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4522 ROM_LOAD16_WORD_SWAP( "si002-07.u9", 0x000000, 0x100000, CRC(30d2bf11) SHA1(263e9a4e6a77aa451daf6d1225071cc1147a6541) )
4523 ROM_LOAD16_WORD_SWAP( "si002-08.u8", 0x100000, 0x100000, CRC(253704ee) SHA1(887ebca2af497fc59b274838cdf284223cc92c97) )
4524 ROM_LOAD16_WORD_SWAP( "si002-09.u7", 0x200000, 0x100000, CRC(1ea86db7) SHA1(e887ea5be99f753e73355a45e37dfddb2a1d6cf6) )
4525 ROM_LOAD16_WORD_SWAP( "si002-10.u6", 0x300000, 0x100000, CRC(e369c177) SHA1(646aad00a8f9eda847e9a51fb0a511bf49eb9fe2) )
4526 ROM_END
4527
4528
4529 /***************************************************************************
4530
4531 Pachinko Sexy Reaction (Japan)
4532
4533 (c)1998 Sammy, SSV system
4534
4535 P1-112C (ROM board)
4536
4537 Chips: DX-102 x2
4538 uPD7001C (ADC?)
4539 64k NVRAM
4540
4541 ***************************************************************************/
4542
4543 ROM_START( sxyreact )
4544 ROM_REGION16_LE( 0x200000, REGION_USER1, 0 ) /* V60 Code */
4545 ROM_LOAD16_BYTE( "ac414e00.u2", 0x000000, 0x080000, CRC(d5dd7593) SHA1(ad1c7c2f27e0423ab346172a5c91316c9c0b3620) )
4546 ROM_LOAD16_BYTE( "ac413e00.u1", 0x000001, 0x080000, CRC(f46aee4a) SHA1(8336304797987321903977373dec027cfca2e211) )
4547 ROM_LOAD16_BYTE( "ac416e00.u47", 0x100000, 0x080000, CRC(e0f7bba9) SHA1(5eafd72c9fa4588f18fa02113a93abdcaf8d8693) )
4548 ROM_LOAD16_BYTE( "ac415e00.u46", 0x100001, 0x080000, CRC(92de1b5f) SHA1(69e30ffc0c59e7dafe3f9c76bfee782028dab042) )
4549
4550 ROM_REGION( 0x2800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4551 ROM_LOAD( "ac1401m0.u6", 0x0000000, 0x400000, CRC(0b7b693c) SHA1(1e65c3f55cf3aa63d4229d30b5894c89b83cdf3e) )
4552 ROM_LOAD( "ac1402m0.u9", 0x0400000, 0x400000, CRC(9d593303) SHA1(c02037fabe8a74f01a25357ffdd3ce01b930008b) )
4553 ROM_LOAD( "ac1403m0.u12", 0x0800000, 0x200000, CRC(af433eca) SHA1(dfd83eba390171d93bc6888cc1d24a9a38d900bd) )
4554
4555 ROM_LOAD( "ac1404m0.u7", 0x0a00000, 0x400000, CRC(cdda2ccb) SHA1(c22ff59e1cf621e0288537be567e0b42bf8e9bcf) )
4556 ROM_LOAD( "ac1405m0.u10", 0x0e00000, 0x400000, CRC(e5e7a5df) SHA1(9ab32f2a1ef055825b6cd3f643af1bd62c53f46a) )
4557 ROM_LOAD( "ac1406m0.u13", 0x1200000, 0x200000, CRC(c7053409) SHA1(468527a24ea592dbd884431ca57d43790cbc2456) )
4558
4559 ROM_LOAD( "ac1407m0.u8", 0x1400000, 0x400000, CRC(28c83d5e) SHA1(abf4f0c1e2caa5cfa5a18fc95c025d73d6a8bc95) )
4560 ROM_LOAD( "ac1408m0.u11", 0x1800000, 0x400000, CRC(c45bab47) SHA1(d00802005e091088eabeb672a6428417db43cb66) )
4561 ROM_LOAD( "ac1409m0.u14", 0x1c00000, 0x200000, CRC(be1c66c2) SHA1(6d7b60d3b4286a768eac122c3d163e6e5287adc3) )
4562
4563 ROM_FILL( 0x1e00000, 0xa00000, 0 )
4564
4565 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
4566 ROM_LOAD16_WORD_SWAP( "ac1410m0.u41", 0x000000, 0x400000, CRC(2a880afc) SHA1(193235bccde28a7d693a1a1f0159260a3a63a7d5) )
4567
4568 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_SOUNDONLY ) /* Samples */
4569 ROM_LOAD16_WORD_SWAP( "ac1411m0.u42", 0x200000, 0x200000, CRC(2ba4ca43) SHA1(9cddf57094e68d3840a37f44fbdf2f43f539ba11) )
4570 ROM_CONTINUE( 0x000000, 0x200000 ) /* this will go in region 3*/
4571
4572 /* a few sparse samples are played from here*/
4573 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4574 ROM_COPY( REGION_SOUND2, 0x000000, 0x200000, 0x200000 )
4575 ROM_END
4576
4577
4578 /***************************************************************************
4579
4580 Storm Blade
4581 CPU : NEC D70615GD-16-S (V60)
4582 Sound: Ensoniq ES5506 (OTTOR2)
4583
4584
4585 Rom board 001B
4586 SSV mother board
4587
4588 U37, U33 = 27c040
4589 U22, U41, U35, U25, U21, U11, U7 = 16 MEG MASK ROMS
4590 U32, U18, U4 = 4 MEG MASK ROMS
4591 U26 = 8 MEG MASK ROM
4592
4593 There is a battery on the rom board @ BT1 (battery # CR2032 - 3 volts)
4594
4595 ***************************************************************************/
4596
4597 ROM_START( stmblade )
4598 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
4599 ROM_LOAD16_WORD( "sb-pd0.u26", 0x000000, 0x100000, CRC(91c4fbf7) SHA1(68e57ea2a9756a95a81c6688905352d631e9f2de) )
4600 ROM_LOAD16_BYTE( "s-blade.u37", 0x200000, 0x080000, CRC(a6a42cc7) SHA1(4bff79ff03b81a7ed96d3ad285242580146976be) )
4601 ROM_RELOAD( 0x300000, 0x080000 )
4602 ROM_LOAD16_BYTE( "s-blade.u33", 0x200001, 0x080000, CRC(16104ca6) SHA1(63835051c358dce33d92974d1de911b98835a3d9) )
4603 ROM_RELOAD( 0x300001, 0x080000 )
4604
4605 ROM_REGION( 0x1800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4606 ROM_LOAD( "sb-a0.u41", 0x0000000, 0x200000, CRC(2a327b51) SHA1(fb1e92b7f740a80cb0c977e106d0c4bfee092dad) )
4607 ROM_LOAD( "sb-a1.u35", 0x0200000, 0x200000, CRC(246f6f28) SHA1(09171f04452fbcf9e3333c135288fd6e5b8244f7) )
4608 ROM_LOAD( "sb-a2.u32", 0x0400000, 0x080000, CRC(2049acf3) SHA1(3982b4650921da0563336060887767627f8679ab) )
4609 ROM_LOAD( "sb-b0.u25", 0x0600000, 0x200000, CRC(b3aa3e68) SHA1(990be5925b6c8c0d0e83ca9064425d93853fe206) )
4610 ROM_LOAD( "sb-b1.u21", 0x0800000, 0x200000, CRC(e95b38e7) SHA1(9256f027e4c496e3bf96ecb65c0f3e69791e2755) )
4611 ROM_LOAD( "sb-b2.u18", 0x0a00000, 0x080000, CRC(d080e620) SHA1(a262b42214c09fccb8f4878d8566e2acd87dbd23) )
4612 ROM_LOAD( "sb-c0.u11", 0x0c00000, 0x200000, CRC(825dd8f1) SHA1(39d32f54c97e21f92598442f05fd91ae2403a0d2) )
4613 ROM_LOAD( "sb-c1.u7", 0x0e00000, 0x200000, CRC(744afcd7) SHA1(db716a1a2ad5864ebdb4865430cb637fb94ed34f) )
4614 ROM_LOAD( "sb-c2.u4", 0x1000000, 0x080000, CRC(fd1d2a92) SHA1(957a8a52b79e252c7f1a4b6383107ae609dce5ef) )
4615 ROM_FILL( 0x1200000, 0x600000, 0 )
4616
4617 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4618 ROM_LOAD16_BYTE( "sb-snd0.u22", 0x000000, 0x200000, CRC(4efd605b) SHA1(9c97be105c923c7db847d9b9aea37025edb685a0) )
4619 ROM_END
4620
4621
4622 /***************************************************************************
4623
4624 Twin Eagle II
4625
4626 ***************************************************************************/
4627
4628 ROM_START( twineag2 )
4629 ROM_REGION16_LE( 0x200000, REGION_USER1, 0 ) /* V60 Code */
4630 ROM_LOAD16_WORD( "sx002_12", 0x000000, 0x200000, CRC(846044dc) SHA1(c1c85de1c466fb7c3580824baa1571cd0fed6ec6) )
4631
4632 ROM_REGION( 0x1800000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4633 ROM_LOAD( "sx002_01", 0x0000000, 0x200000, CRC(6d6896b5) SHA1(e8efd29b9f951bff6664e47cb5fd67f1d8f40608) )
4634 ROM_LOAD( "sx002_02", 0x0200000, 0x200000, CRC(3f47e97a) SHA1(5b0fdc762cf704c8bd92c4a4a42dba4a127b3d49) )
4635 ROM_LOAD( "sx002_03", 0x0400000, 0x200000, CRC(544f18bf) SHA1(539e6df1ded4e9ac8974c697215cc1e5c5a40cda) )
4636
4637 ROM_LOAD( "sx002_04", 0x0600000, 0x200000, CRC(58c270e2) SHA1(7629ba978b18252f375bdc16ed62388d64a35ca1) )
4638 ROM_LOAD( "sx002_05", 0x0800000, 0x200000, CRC(3c310229) SHA1(9a8b81d5f17ce3078627a697aaf07f1b3ba6e08c) )
4639 ROM_LOAD( "sx002_06", 0x0a00000, 0x200000, CRC(46d5b1f3) SHA1(3ec03eddb159eb391ccdce5a0a867a54b3350150) )
4640
4641 ROM_LOAD( "sx002_07", 0x0c00000, 0x200000, CRC(c30fa397) SHA1(d4575868c1b63f9e94bf24539a3fd8a85df93d0b) )
4642 ROM_LOAD( "sx002_08", 0x0e00000, 0x200000, CRC(64edcefa) SHA1(55a71afe87da93e35c5ba291e970bdcd91b52a7a) )
4643 ROM_LOAD( "sx002_09", 0x1000000, 0x200000, CRC(51527c56) SHA1(378155a585e5b847bd8ae1f17cb651138d844e33) )
4644
4645 ROM_FILL( 0x1200000, 0x600000, 0 )
4646
4647 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4648 ROM_LOAD16_BYTE( "sx002_10", 0x000000, 0x200000, CRC(b0669dfa) SHA1(ff805f59864ac4ccee3e249c06804d844d3df59c) )
4649
4650 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4651 ROM_LOAD16_BYTE( "sx002_11", 0x000000, 0x200000, CRC(b8dd621a) SHA1(f9b43e018f2bb121e4f4e9554419cd32b870556b) )
4652
4653 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4654 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4655
4656 ROM_REGION16_BE( 0x400000, REGION_SOUND4, ROMREGION_SOUNDONLY ) /* Samples */
4657 ROM_COPY( REGION_SOUND2, 0x000000, 0x000000, 0x400000 )
4658 ROM_END
4659
4660
4661 /***************************************************************************
4662
4663 Ultra Keibitai / Ultra X Weapon
4664
4665 (c)1995 Banpresto (developed by Seta)
4666 Hardware is almost identical to SSV system
4667
4668 ****************************************************************************/
4669
4670 ROM_START( ultrax )
4671 ROM_REGION16_LE( 0x200000, REGION_USER1, 0 ) /* V60 Code */
4672 ROM_LOAD16_BYTE( "71047-11.u64", 0x000000, 0x080000, CRC(593b2678) SHA1(3b24b59a21386a4688502c5f0a2dd4eb0ec92544) )
4673 ROM_LOAD16_BYTE( "71047-09.u65", 0x000001, 0x080000, CRC(08ea8d91) SHA1(5d2672f6c96fbbe9d80bd6539c1400b62745892a) )
4674 ROM_LOAD16_BYTE( "71047-12.u62", 0x100000, 0x080000, CRC(76a77ab2) SHA1(0cf2f293defc23c807556ff92ea99f963fafed40) )
4675 ROM_LOAD16_BYTE( "71047-10.u63", 0x100001, 0x080000, CRC(7c79faf9) SHA1(40c1420eeae355efa628bbcfd69e0dd18d343fd9) )
4676
4677 ROM_REGION( 0xc00000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4678 ROM_LOAD( "71047-01.u73", 0x0000000, 0x200000, CRC(66662b08) SHA1(0cb683e5f85ffe21bd3367af4d3e48a484dbd4c3) )
4679 ROM_LOAD( "71047-02.u74", 0x0200000, 0x100000, CRC(6b00dc0c) SHA1(6af8ceed72d13f9979175c0d907a4a8c127ca1ad) )
4680 ROM_LOAD( "71047-03.u76", 0x0300000, 0x200000, CRC(00fcd6c2) SHA1(61d13cbafbc0fd6ff62cd08aa88591ed0fd0b182) )
4681 ROM_LOAD( "71047-04.u77", 0x0500000, 0x100000, CRC(d9e710d1) SHA1(063459a247f9ff81cb558802e9943b3ea8a2ea3a) )
4682 ROM_LOAD( "71047-05.u75", 0x0600000, 0x200000, CRC(10848193) SHA1(40b7ebb6011dc703bbf620cd22cd678c10ec67a4) )
4683 ROM_LOAD( "71047-06.u88", 0x0800000, 0x100000, CRC(b8ac2942) SHA1(3e85e8f5669d469dd3114455248546d32a642315) )
4684 ROM_FILL( 0x0900000, 0x300000, 0 )
4685
4686 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4687 ROM_LOAD16_BYTE( "71047-07.u59", 0x000000, 0x200000, CRC(d9828b62) SHA1(f66a388d7a00b3a45d386671c061f5b840453451) )
4688
4689 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4690 ROM_LOAD16_BYTE( "71047-08.u60", 0x000000, 0x200000, CRC(30ebff6d) SHA1(53824c1fc37e22b545fd68b59722f7968f0ca1e2) )
4691
4692 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4693 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4694
4695 ROM_REGION16_BE( 0x400000, REGION_SOUND4, ROMREGION_SOUNDONLY ) /* Samples */
4696 ROM_COPY( REGION_SOUND2, 0x000000, 0x000000, 0x400000 )
4697 ROM_END
4698
4699
4700 /***************************************************************************
4701
4702 Vasara / Vasara 2
4703 Visco Games, 2000 / 2001
4704 (info from the vasara 2 board but vasara should be the same)
4705
4706 This is a sub board that fits any standard SSV main board.
4707
4708 There's very little on the ROM board. Just 2x 27C040 EPROMs,
4709 4x 64Mbit SOP44 MASK ROMs, 3x 16Mbit SOP44 MASK ROMs,
4710 some logic and 2 PALs near the PROG & DATA ROMs.
4711
4712 The actual ROM PCB has the capability to accept SOP44 and
4713 TSOP48 type 1 SMT ROMs though many of the positions are unpopulated.
4714 It's likely this same ROM board could be used for other Visco games.
4715
4716 ROM PCB (PCB Number: SSV_SUB)
4717
4718 File Name Labeled as Loc. Printed* ROM Type
4719 -----------------------------------------------------------------------
4720 prg-h.u31 PRG-H U31 U31 PRG H | 27C040
4721 prg-l.u30 PRG-L U20 U30 PRG L /
4722 s1.u37 C DAT VASARA-1 U37 S1 \
4723 s0.u36 B DAT VASARA-1 U36 S0 | Surface Mounted 16Mbit SOP44 MASK ROMs
4724 data.u34 A SND 1 VASARA-1 U34 DATA ROM /
4725 d0.u4 VASARA-2-D0 U4 D0.D1 \
4726 c0.u3 VASARA-2-C0 U3 C0.C1 | Surface Mounted 64Mbit SOP44 MASK ROMs
4727 b0.u2 VASARA-2-B0 U2 B0.B1 |
4728 a0.u1 VASARA-2-A0 U1 A0.A1 /
4729
4730 2x GAL16V8D
4731
4732 Printed = Info silk-screened/printed on the actual PCB
4733
4734 ****************************************************************************/
4735
4736 ROM_START( vasara )
4737 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
4738 ROM_LOAD16_WORD( "data.u34", 0x000000, 0x200000, CRC(7704cc7e) SHA1(62bb018b7f0c7ee67fee37de17bb22a73bb9e420) )
4739 ROM_LOAD16_BYTE( "prg-l.u30", 0x200000, 0x080000, CRC(f0547886) SHA1(6a3717f8b89575d3cb4c7d56dd9df5052faa3c7f) )
4740 ROM_RELOAD( 0x300000, 0x080000 )
4741 ROM_LOAD16_BYTE( "prg-h.u31", 0x200001, 0x080000, CRC(6a39bba9) SHA1(05ede167150307d7bf59037f264b1d140f6646da) )
4742 ROM_RELOAD( 0x300001, 0x080000 )
4743
4744 ROM_REGION( 0x2000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4745 ROM_LOAD( "a0.u1", 0x0000000, 0x800000, CRC(673230a6) SHA1(a9d1a108c0737b709854bae199499577f5ae359e) )
4746 ROM_LOAD( "b0.u2", 0x0800000, 0x800000, CRC(31a2da7f) SHA1(5efec60affb2ed2b73a6694ac794d41375220609) )
4747 ROM_LOAD( "c0.u3", 0x1000000, 0x800000, CRC(d110dacf) SHA1(6f33bf6ce8c06f0b823b5478a56dc95095385181) )
4748 ROM_LOAD( "d0.u4", 0x1800000, 0x800000, CRC(82d0ca55) SHA1(5ac07df713504329fbc8e8b5374c04e53745230e) )
4749
4750 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4751 ROM_LOAD16_BYTE( "s0.u36", 0x000000, 0x200000, CRC(754fca02) SHA1(5b2810a36183e0d4f42f0fb4a09be033ad0db40d) )
4752
4753 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4754 ROM_LOAD16_BYTE( "s1.u37", 0x000000, 0x200000, CRC(5f303698) SHA1(bd6495f912aa9d761d245ef0a1566d9d7bdbb2ad) )
4755 ROM_END
4756
4757 ROM_START( vasara2 )
4758 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
4759 ROM_LOAD16_WORD( "data.u34", 0x000000, 0x200000, CRC(493d0103) SHA1(fda68fb089328cabb3bbd52f8703b445a9509bf1) )
4760 ROM_LOAD16_BYTE( "prg-l.u30", 0x200000, 0x080000, CRC(40e6f5f6) SHA1(05fee4535ffe8403e86ba92a58e5f2d040489c8e) )
4761 ROM_RELOAD( 0x300000, 0x080000 )
4762 ROM_LOAD16_BYTE( "prg-h.u31", 0x200001, 0x080000, CRC(c958e146) SHA1(568878526cef76ac0ce4feeaa46e7039291e5f77) )
4763 ROM_RELOAD( 0x300001, 0x080000 )
4764
4765 ROM_REGION( 0x2000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4766 ROM_LOAD( "a0.u1", 0x0000000, 0x800000, CRC(a6306c75) SHA1(bad715e53426a295d3571c025e0539d5f81ce5ab) )
4767 ROM_LOAD( "b0.u2", 0x0800000, 0x800000, CRC(227cbd9f) SHA1(a02787943b659508ce1589cdc7a372cc02826a10) )
4768 ROM_LOAD( "c0.u3", 0x1000000, 0x800000, CRC(54ede017) SHA1(4a7ff7ff8ec5843837016f35a588983b5ace06ff) )
4769 ROM_LOAD( "d0.u4", 0x1800000, 0x800000, CRC(4be8479d) SHA1(cbb5943dfae86f4d571459263199a63399dedc20) )
4770
4771 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4772 ROM_LOAD16_BYTE( "s0.u36", 0x000000, 0x200000, CRC(2b381b33) SHA1(b9dd13651e4b8d0b9e3bc4c592022f31ea634d19) )
4773
4774 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4775 ROM_LOAD16_BYTE( "s1.u37", 0x000000, 0x200000, CRC(11cd7098) SHA1(f75288b5c89df039dfb41d66bd275cda8605e75a) )
4776 ROM_END
4777
4778 ROM_START( vasara2a )
4779 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
4780 ROM_LOAD16_WORD( "data.u34", 0x000000, 0x200000, CRC(493d0103) SHA1(fda68fb089328cabb3bbd52f8703b445a9509bf1) )
4781 ROM_LOAD16_BYTE( "basara-l.u30", 0x200000, 0x080000, CRC(fd88b068) SHA1(a86e3ffc870e6f6f7f18273428b24d938d6b9c3d) )
4782 ROM_RELOAD( 0x300000, 0x080000 )
4783 ROM_LOAD16_BYTE( "basara-h.u31", 0x200001, 0x080000, CRC(91d641e6) SHA1(4987d1771a90c9f1ce45c2dd2de5b2922d5d19c5) )
4784 ROM_RELOAD( 0x300001, 0x080000 )
4785
4786 ROM_REGION( 0x2000000, REGION_GFX1, ROMREGION_DISPOSE ) /* Sprites */
4787 ROM_LOAD( "a0.u1", 0x0000000, 0x800000, CRC(a6306c75) SHA1(bad715e53426a295d3571c025e0539d5f81ce5ab) )
4788 ROM_LOAD( "b0.u2", 0x0800000, 0x800000, CRC(227cbd9f) SHA1(a02787943b659508ce1589cdc7a372cc02826a10) )
4789 ROM_LOAD( "c0.u3", 0x1000000, 0x800000, CRC(54ede017) SHA1(4a7ff7ff8ec5843837016f35a588983b5ace06ff) )
4790 ROM_LOAD( "d0.u4", 0x1800000, 0x800000, CRC(4be8479d) SHA1(cbb5943dfae86f4d571459263199a63399dedc20) )
4791
4792 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4793 ROM_LOAD16_BYTE( "s0.u36", 0x000000, 0x200000, CRC(2b381b33) SHA1(b9dd13651e4b8d0b9e3bc4c592022f31ea634d19) )
4794
4795 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_ERASE | ROMREGION_SOUNDONLY ) /* Samples */
4796 ROM_LOAD16_BYTE( "s1.u37", 0x000000, 0x200000, CRC(11cd7098) SHA1(f75288b5c89df039dfb41d66bd275cda8605e75a) )
4797 ROM_END
4798
4799 /***************************************************************************
4800
4801 Mobile Suit Gundam Final Shooting
4802 Banpresto, 1995
4803
4804 Uses main board STA-0001B SYSTEM SSV
4805
4806 Game Board Layout
4807 -----------------
4808
4809 VISCO (no other PCB numbers)
4810 |---------------------------------------------------------|
4811 | GAL16V8(2) |
4812 | VG004-01.U33 VG004-07.U39 |
4813 | VG004-02.U34 VG004-08.U40 |
4814 | VG004-03.U35 VG004-10.U45 TC514400|
4815 | VG004-04.U36 VG004-09.U43 |
4816 | VG004-05.U37 VG004-11.U48 TC514400|
4817 |D1 VG004-06.U38 |
4818 | 100MHz TC514400|
4819 | |
4820 | |--------------| TC514400|
4821 | TC551001 | | |
4822 |P |-------| GAL20V8 | | TC514400|
4823 | S2914 | SETA | GAL20V8 | SETA | |
4824 | |ST-0009| GAL20V8 | | TC514400|
4825 | | | | ST-0020 | |
4826 | |-------| | | TC514400|
4827 | TC551001 | | |
4828 | SSVV7.U16 |--------------| TC514400|
4829 | VG004-12.U4 |
4830 |C1 VG004-13.U5 TC514260 VG004-14.U3|
4831 | ADC0809 TC55257 GAL16V8(1) SSV2SET0.U1 |
4832 | TC55257 SSVSET1.U2 |
4833 |---------------------------------------------------------|
4834 Notes:
4835 D1 - 4 pin connector for power
4836 P - 10 pin connector
4837 C1 - 10 pin connector for analog controls
4838 ADC0809 - National Semiconductor ADC0809 8-Bit Microprocessor Compatible A/D Converter with 8-Channel Multiplexer (DIP28)
4839 S2914 - Seiko S2914 EEPROM (DIP8)
4840 TC551001 - Toshiba TC551001BFL-70L 128K x8 SRAM (SOP32)
4841 TC55257 - Toshiba TC55257N-70L 32K x8 SRAM (SOP28)
4842 TC514260 - Toshiba TC514260BJ-70 256K x16 DRAM (SOJ40)
4843 GAL16V8(1) - Lattice GAL16V8B stamped 'VG004-18' (DIP20)
4844 GAL16V8(2) - Lattice GAL16V8B stamped 'VG004-19' (DIP20)
4845 GAL20V8 - Lattice GAL20V8B all 3 stamped 'VG004-20' and have identical contents (DIP24)
4846 U16,U2,U1 - 4M MaskROM (DIP32)
4847 All other ROMs are 8M/16M MaskROM (DIP42)
4848 Custom Seta ICs -
4849 ST-0009 (QFP176)
4850 ST-0020 (QFP304, heatsinked)
4851
4852 ****************************************************************************/
4853
4854 ROM_START( gdfs )
4855 ROM_REGION16_LE( 0x400000, REGION_USER1, 0 ) /* V60 Code */
4856 ROM_LOAD16_WORD( "vg004-14.u3", 0x000000, 0x100000, CRC(d88254df) SHA1(ccdfd42e4ce3941018f83e300da8bf7a5950f65c) )
4857 ROM_RELOAD(0x100000,0x100000)
4858 ROM_LOAD16_BYTE( "ssv2set0.u1", 0x200000, 0x080000, CRC(c23b9e2c) SHA1(9026e065252981fb403255ddc5782359c0088e8a) )
4859 ROM_RELOAD(0x300000,0x80000)
4860 ROM_LOAD16_BYTE( "ssv2set1.u2", 0x200001, 0x080000, CRC(d7d52570) SHA1(12e7531519a0a4331e409991265908fb518286ef) )
4861 ROM_RELOAD(0x300001,0x80000)
4862
4863 ROM_REGION( 0x800000, REGION_GFX1, ROMREGION_DISPOSE )
4864 ROM_LOAD( "vg004-09.u43", 0x000000, 0x200000, CRC(b7382cfa) SHA1(df735470181c16f8aac0e3be76e1ed53a32dbb9c) )
4865 ROM_LOAD( "vg004-10.u45", 0x200000, 0x200000, CRC(b3c6b1cb) SHA1(c601213e35d8dfd1244921da5c093f82145706d2) )
4866 ROM_LOAD( "vg004-11.u48", 0x400000, 0x200000, CRC(1491def1) SHA1(344043302c81b4118cac4f692375b8af7ea68570) )
4867
4868 ROM_REGION( 0x1000000, REGION_GFX2, /*ROMREGION_DISPOSE*/ 0) /* Zooming Sprites, read by a blitter */
4869 ROM_LOAD( "vg004-01.u33", 0x0000000, 0x200000, CRC(aa9a81c2) SHA1(a7d005f9be199e317aa4c6aed8a2ab322fe82119) )
4870 ROM_LOAD( "vg004-02.u34", 0x0200000, 0x200000, CRC(fa40ecb4) SHA1(0513f3b6879dc7d207646d949d6ddb7251f77bcc) )
4871 ROM_LOAD( "vg004-03.u35", 0x0400000, 0x200000, CRC(90004023) SHA1(041edb77b34e6677ac5b85ce542d87a9bb1baf31) )
4872 ROM_LOAD( "vg004-04.u36", 0x0600000, 0x200000, CRC(fdafd289) SHA1(3ff1969a176d13bfa68a48c9ed582f5789b1047f) )
4873 ROM_LOAD( "vg004-06.u38", 0x0a00000, 0x200000, CRC(3402325f) SHA1(7ea169c1f8b01a37bd7dbb4d486d38bdac62be5b) )
4874 ROM_LOAD( "vg004-05.u37", 0x0800000, 0x200000, CRC(9ae488b0) SHA1(7823cc689c588f3dbcafe9bdc94c094d6e9cd605) )
4875 ROM_LOAD( "vg004-07.u39", 0x0c00000, 0x200000, CRC(5e89fcf9) SHA1(db727ec8117e84c98037c756715e28fd5e39972a) )
4876 ROM_LOAD( "vg004-08.u40", 0x0e00000, 0x200000, CRC(6b1746dc) SHA1(35e5ee02975474985a4a611dcc439fc3050b7f94) )
4877
4878 ROM_REGION( 0x80000, REGION_GFX3, ROMREGION_DISPOSE ) /* Tilemap */
4879 ROM_LOAD( "ssvv7.u16", 0x0000000, 0x080000, CRC(f1c3ab6f) SHA1(b7f54f7ae60650fee7570aa4dd4266c629149673) )
4880
4881 ROM_REGION16_BE( 0x400000, REGION_SOUND1, ROMREGION_SOUNDONLY ) /* Samples */
4882 ROM_LOAD16_BYTE( "vg004-12.u4", 0x000000, 0x200000, CRC(eb41a4ef) SHA1(f4d0844a3c00cf90faa59ae982744b7f0bcbe218) )
4883 ROM_LOAD16_BYTE( "vg004-13.u5", 0x000001, 0x200000, CRC(a4ed3977) SHA1(5843d56f69789e70ce0201a693ffae322b628459) )
4884
4885 ROM_REGION16_BE( 0x400000, REGION_SOUND2, ROMREGION_SOUNDONLY ) /* Samples */
4886 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4887
4888 ROM_REGION16_BE( 0x400000, REGION_SOUND3, ROMREGION_SOUNDONLY ) /* Samples */
4889 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4890
4891 ROM_REGION16_BE( 0x400000, REGION_SOUND4, ROMREGION_SOUNDONLY ) /* Samples */
4892 ROM_COPY( REGION_SOUND1, 0x000000, 0x000000, 0x400000 )
4893 ROM_END
4894
4895
4896 /***************************************************************************
4897
4898
4899 Game Drivers
4900
4901
4902 ***************************************************************************/
4903
4904 /* year rom clone machine inputs init monitor manufacturer title flags*/
4905
4906 GAMEX( 1993, keithlcy, 0, keithlcy, keithlcy, keithlcy, ROT0, "Visco", "Dramatic Adventure Quiz Keith and Lucy (Japan)", GAME_NO_COCKTAIL )
4907 GAMEX( 1993, srmp4, 0, srmp4, srmp4, srmp4, ROT0, "Seta", "Super Real Mahjong PIV (Japan)", GAME_NO_COCKTAIL )
4908 GAMEX( 1993, srmp4o, srmp4, srmp4, srmp4, srmp4, ROT0, "Seta", "Super Real Mahjong PIV (Japan, older set)", GAME_NO_COCKTAIL ) /* by the numbering of the program roms this should be older*/
4909 GAMEX( 1993, survarts, 0, survarts, survarts, survarts, ROT0, "American Sammy", "Survival Arts (USA)", GAME_NO_COCKTAIL )
4910 GAMEX( 1994, dynagear, 0, dynagear, dynagear, dynagear, ROT0, "Sammy" , "Dyna Gears", GAME_NO_COCKTAIL | GAME_IMPERFECT_GRAPHICS )
4911 GAMEX( 1994, drifto94, 0, drifto94, drifto94, drifto94, ROT0, "Visco", "Drift Out '94 - The Hard Order (Japan)", GAME_NO_COCKTAIL )
4912 GAMEX( 1995, hypreact, 0, hypreact, hypreact, hypreact, ROT0, "Sammy", "Mahjong Hyper Reaction (Japan)", GAME_NO_COCKTAIL | GAME_NOT_WORKING )
4913 GAMEX( 1994, twineag2, 0, twineag2, twineag2, twineag2, ROT270, "Seta", "Twin Eagle II - The Rescue Mission", GAME_NO_COCKTAIL )
4914 GAMEX( 1996, janjans1, 0, janjans1, janjans1, janjans1, ROT0, "Visco", "Lovely Pop Mahjong Jan Jan Shimasyo (Japan)", GAME_NO_COCKTAIL | GAME_IMPERFECT_GRAPHICS )
4915 GAMEX( 1996, meosism, 0, meosism, meosism, meosism, ROT0, "Sammy", "Meosis Magic (Japan)", GAME_NO_COCKTAIL )
4916 GAMEX( 1997, mslider, 0, mslider, mslider, mslider, ROT0, "Visco / Datt Japan", "Monster Slider (Japan)", GAME_NO_COCKTAIL )
4917 GAMEX( 1996, stmblade, 0, stmblade, stmblade, stmblade, ROT270, "Visco", "Storm Blade (US)", GAME_NO_COCKTAIL | GAME_IMPERFECT_GRAPHICS )
4918 GAMEX( 1997, hypreac2, 0, hypreac2, hypreac2, hypreac2, ROT0, "Sammy", "Mahjong Hyper Reaction 2 (Japan)", GAME_NO_COCKTAIL )
4919 GAMEX( 1997, koikois2, 0, janjans1, koikois2, janjans1, ROT0, "Visco", "Koi Koi Shimasyo 2 - Super Real Hanafuda (Japan)", GAME_NO_COCKTAIL )
4920 GAMEX( 1997, srmp7, 0, srmp7, srmp7, srmp7, ROT0, "Seta", "Super Real Mahjong P7 (Japan)", GAME_NO_COCKTAIL | GAME_IMPERFECT_SOUND )
4921 GAMEX( 1998, ryorioh, 0, ryorioh, ryorioh, ryorioh, ROT0, "Visco", "Gourmet Battle Quiz Ryohrioh CooKing (Japan)", GAME_NO_COCKTAIL )
4922 GAMEX( 1998, sxyreact, 0, sxyreact, sxyreact, sxyreact, ROT0, "Sammy", "Pachinko Sexy Reaction (Japan)", GAME_NO_COCKTAIL )
4923 GAMEX( 1999, cairblad, 0, sxyreact, cairblad, sxyreact, ROT270, "Sammy", "Change Air Blade (Japan)", GAME_NO_COCKTAIL )
4924 GAMEX( 2000, vasara, 0, ryorioh, vasara, vasara, ROT270, "Visco", "Vasara", GAME_NO_COCKTAIL )
4925 GAMEX( 2001, vasara2, 0, ryorioh, vasara2, vasara2, ROT270, "Visco", "Vasara 2 (set 1)", GAME_NO_COCKTAIL )
4926 GAMEX( 2001, vasara2a, vasara2, ryorioh, vasara2, vasara2, ROT270, "Visco", "Vasara 2 (set 2)", GAME_NO_COCKTAIL )
4927 GAMEX( 1995, ultrax, 0, ultrax, ultrax, ultrax, ROT270, "Banpresto + Tsuburaya Prod.", "Ultra X Weapons - Ultra Keibitai", GAME_NO_COCKTAIL | GAME_IMPERFECT_GRAPHICS )
4928 GAMEX( 1995, gdfs, 0, gdfs, gdfs, gdfs, ROT0, "Banpresto", "Mobile Suit Gundam Final Shooting (Japan)", GAME_NO_COCKTAIL ) /* title screen spells the title "Mobil" but standardized spelling is "Mobile" it also lists the company name as "Banprest" instead of "Banpresto" */
4929 GAMEX( 1994, eaglshot, 0, eaglshot, eaglshot, eaglshot, ROT0, "Sammy", "Eagle Shot Golf", GAME_NO_COCKTAIL | GAME_IMPERFECT_GRAPHICS )
4930 GAMEX( 1994, eaglshta, eaglshot, eaglshot, eaglshot, eaglshot, ROT0, "Sammy", "Eagle Shot Golf (alt)", GAME_NO_COCKTAIL | GAME_IMPERFECT_GRAPHICS )
4931
4932
4933 /* Games not working at all:*/
4934 GAMEX( 1997, jsk, 0, janjans1, janjans1, janjans1, ROT0, "Visco", "Joryuu Syougi Kyoushitsu (Japan)", GAME_NO_COCKTAIL | GAME_NOT_WORKING )
4935