diff options
Diffstat (limited to 'src/mame/drivers/ssv.cpp')
-rw-r--r-- | src/mame/drivers/ssv.cpp | 4889 |
1 files changed, 0 insertions, 4889 deletions
diff --git a/src/mame/drivers/ssv.cpp b/src/mame/drivers/ssv.cpp deleted file mode 100644 index 19495b28dce..00000000000 --- a/src/mame/drivers/ssv.cpp +++ /dev/null @@ -1,4889 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Luca Elia -/*************************************************************************** - - -= Seta, Sammy, Visco (SSV) System =- - - driver by Luca Elia (l.elia@tin.it) - - -CPU : NEC V60 - -Sound Chip : Ensoniq ES5506 (OTTOR2) - -Custom Chips : ST-0004 (Video DAC) - ST-0005 (Parallel I/O) - ST-0006 (Video controller) - ST-0007 (System controller) - -Others : Battery + MB3790 + LH5168D-10L (NVRAM) - DX-102 (I/O) - M62X42B (RTC) - ST010 - TA8210 (Audio AMP) - uPD71051/7001C (UART) - ------------------------------------------------------------------------------------ -Main Board ROM Board Year + Game By ------------------------------------------------------------------------------------ -STA-0001 STS-0001 93 Super Real Mahjong PIV Seta -STA-0001 STS-0001 93 Dramatic Adventure Quiz Keith & Lucy Visco -STA-0001 STS-0001 93 Pastel Island Visco -STA-0001 SAM-5127 93 Survival Arts Sammy -STA-0001 SAM-5127 93 Dyna Gears Sammy -STA-0001B VISCO-001B 94 Drift Out '94 Visco -STA-0001B GOLF ROM 94 Eagle Shot Golf Sammy -STA-0001B STS0003 94 Twin Eagle II - The Rescue Mission (1) Seta -STA-0001B VISCO 95 Mobil Suit Gundam Final Shooting (2) Banpresto -STA-0001B P1-102A 95 Mahjong Hyper Reaction Sammy -? ? 95 Ultra X Weapons / Ultra Keibitai Banpresto / Tsuburaya Prod. -STA-0001B VISCO-JJ1 96 Lovely Pop Mahjong JangJang Shimasho Visco -STA-0001B VISCO-001B 96 Storm Blade Visco -STA-0001B P1-105A 96? Meosis Magic Sammy -STA-0001B ? 97 Joryuu Syougi Kyoushitsu (3) Visco -STA-0001B VISCO-JJ1 97 Koi Koi Shimasho 2 Visco -STA-0001B P1-112A 97 Mahjong Hyper Reaction 2 Sammy -STA-0001B ? 97 Monster Slider Visco / Datt -STA-0001 ? 97 Super Real Mahjong P7 Seta -STA-0001B ? 98 Gourmet Battle Quiz Ryorioh CooKing Visco -STA-0001B P1-112C 98 Pachinko Sexy Reaction Sammy -STA-0001B B1-001A 99 Pachinko Sexy Reaction 2 Sammy -STA-0001B P1-112C 99 Change Air Blade Visco -STA-0001B VISCO-JJ1 00 Lovely Pop Mahjong JangJang Shimasho 2 Visco -STA-0001B SSV_SUB 00 Vasara Visco -STA-0001B SSV_SUB 01 Vasara 2 Visco ------------------------------------------------------------------------------------ - -(1) Uses ST010 MCU / Math chip -(2) Uses ST-0009 & ST-0020 & Light Gun -(3) Uses NEC V810 CPU as sub cpu for the AI (basically the same as the majinsen games on st0016) - -SSV Hardware Overview -Sammy/Seta/Visco, 1993-2001 - -SSV was a joint venture between "S"ammy, "S"eta and "V"isco to produce a high quality 32-bit -RISC-based hardware platform. - -The SSV main board contains all of the CPUs, RAM, custom ICs and sound chips. The lower PCB plugs -into 4x 64-pin connectors and contains the game software and any additional game-specific connectors -for controllers etc. The SSV games can be swapped by simply exchanging the lower (game) PCB onto any -SSV main board. There is an older main board STA-0001 which is not compatible with _some_ of the -newer games. The actual PCB will plug in, but the games will not boot up, instead displaying some -kind of debug screen full of numbers. This is known to occur on Vasara and Vasara 2 but may occur -with other games also. AFAIK, the actual PCBs look identical! - -PCB Layouts ------------ - -Main Board (common to all SSV-based games) - -STA-0001B SYSTEM SSV -|---------------------------------------------------------| -| 2066 VOL | -|TA8210 |--------| 74ALS245 x6 | -| TL072 |--------| | | | -|H |ENSONIQ | | ST0007 | JP1 | -| TL072 |ES5506 | | | |--------|JP2 | -| |OTTOR2 | |--------| | |74ALS74 | -|S |--------| | V60 | | -| D6376 74ALS08 | |74F32 | -| 74LS07 |--------| | -| TC4050 JP3 | -|J TD62064 | -|A 74ALS245 | -|M LM358 74ALS245 | -|M |------| 74ALS245 | -|A |ST0004| 681000 681000 | -| | | | -||------| |------| 43256 43256 43256 43256 43256 | -||ST0005| |--------| JP4 | -|| | 48MHz | | MB3771 | -||------|42.9545MHz 74AC245 | ST0006 | 74ALS273 | -| 74F245 | | 74F04 | -| DSW1(8) DSW2(8) |--------| | -|---------------------------------------------------------| -(Note All IC's Shown) - -Notes: - H - 3 pin connector for additional sound output - S - 5 pin connector for additional sound output - D6376 - NEC D6376 2-channel 16-bit D/A converter (SOIC16) - V60 - NEC D70615GD-16 V60 CPU, clock 16.000MHz [48/3] (QFP120) - ES5506 - Ensoniq ES5506 sound IC, clock 16.000MHz [48/3] (PLCC68) - LM358 - National Semiconductor LM358 Low Power Dual Operational Amplifier (DIP8) - 2066 - New Japan Radio NJM2066 Dual Operational Amplifier (DIP16) - TL072 - Texas Instruments TL072 Low Noise JFET-Input Operational Amplifier (DIP8) - TA8210 - Toshiba TA8210 20W 2-channel Audio Power Amplifier - 43256 - Sharp LH52B256-70LL 32K x8 SRAM (DIP28) - Note all sockets with 43256 can accept DIP32 128K x8 SRAM instead depending on - game requirements - 681000 - Samsung KM681000ALP-7L 128K x8 SRAM (DIP32) - JP1 - 3 pin jumper, hardwired on PCB to 2-3 - JP2 - 3 pin jumper, hardwired on PCB to 2-3 - JP3 - 3 pin jumper, hardwired on PCB to 1-3 - JP4 - 3 pin jumper, hardwired on PCB to 1-3 - - SETA custom IC's - - ST-0004 Video DAC (QFP64) - ST-0005 Parallel I/O (QFP100) - ST-0006 Video controller (QFP208, covered with large heatsink) - ST-0007 System controller (QFP160) - -To Do: - -- hypreac2 : communication with other units - -- janjans2 : Coin inputs don't register in the input test - -- jsk : Coin inputs don't register in the input test - -- mslider : Coin inputs don't register in the input test - -- srmp4 : Coin inputs don't register in the input test - -- srmp7 : Needs interrupts by the sound chip (not properly hooked up yet). Kludged to work. - -Notes: - -- gdfs : Hold 1P Start on startup to enter test mode - -- jsk : Push 1P Start and 2P Start to advance to sound test - - - code @ $e75cdc - - W: - 0x482000 - 0x482007 - values taken from obj table - 0x482040 - 0x482043 - write latch ? - - R: - 0x482022 - 0x482023 - result = direction, probably : 00 = down, 40 = left, 80 = up, c0 = right - 0x482042 - 0x482043 - protection status bits ? - -***************************************************************************/ - -#include "emu.h" -#include "includes/ssv.h" - -#include "cpu/v810/v810.h" -#include "cpu/v60/v60.h" -#include "machine/nvram.h" -#include "machine/watchdog.h" -#include "speaker.h" - - -/*************************************************************************** - - - Interrupts - - -***************************************************************************/ - -/* Update the IRQ state based on all possible causes */ -void ssv_state::update_irq_state() -{ - m_maincpu->set_input_line(0, (m_requested_int & m_irq_enable)? ASSERT_LINE : CLEAR_LINE); -} - -IRQ_CALLBACK_MEMBER(ssv_state::irq_callback) -{ - for (int i = 0; i <= 7; i++) - { - if (m_requested_int & (1 << i)) - { - uint16_t vector = m_irq_vectors[i * (16/2)] & 7; - return vector; - } - } - return 0; -} - -WRITE16_MEMBER(ssv_state::irq_ack_w) -{ - int level = ((offset * 2) & 0x70) >> 4; - - m_requested_int &= ~(1 << level); - - update_irq_state(); -} - -/* - IRQ Enable Register: - - drifto94: c at the start - hypreact: ff at the start - hypreac2: ff at the start - janjans1: 0,6c,60 - keithlcy: c at the start - meosism: ff at the start - mslider: c at the start - ryorioh: 0,c at the start - srmp4: 8 at the start - srmp7: 8 at the start, 28, 40 (seems related to 21000e writes) - survarts: 0,8 at the start - sxyreact: ff at the start - ultrax: 40,00 at the start then 42,4a - twineag2: 40,00 at the start then 42,4a -*/ -WRITE16_MEMBER(ssv_state::irq_enable_w) -{ - COMBINE_DATA(&m_irq_enable); -} - -TIMER_DEVICE_CALLBACK_MEMBER(ssv_state::interrupt) -{ - int scanline = param; - - if (scanline == 0) - { - if (m_interrupt_ultrax) - { - m_requested_int |= 1 << 1; // needed by ultrax to coin up, breaks cairblad - update_irq_state(); - } - } - else if ((scanline == 120) && m_raster_interrupt_enabled) - { - /* scanline can almost certainly be programmed, where is the register? (unless it's really just a 'half screen' interrupt) - this split position seems to be correct for pastelis 2 player mode, the end credits aren't quite right, but like the 'for japan' warning it seems to be - more based on polling vblank_read than the raster interrupt. - note, janjans1 and keithlcy and ryorioh might be using it too (they enable this IRQ level at least) */ - m_requested_int |= 1 << 2; - update_irq_state(); - //m_screen->update_partial(m_screen->vpos() - 1); - } - else if(scanline == 240) - { - m_requested_int |= 1 << 3; // vblank - update_irq_state(); - } -} - -WRITE_LINE_MEMBER(ssv_state::gdfs_adc_int_w) -{ - if (state) - { - m_requested_int |= 1 << 6; // reads lightgun (4 times for 4 axis) - update_irq_state(); - } -} - -/*************************************************************************** - - - Coins Lockout / Counter - - -***************************************************************************/ - -/* - drifto94: c3 - janjans1: c3 - keithlcy: c3 - mslider: c3, 83 in test mode - ryorioh: c3 - - hypreac2: 80 - hypreact: 80 - meosism: 83 - srmp4: 83, c0 in test mode (where only tilemap sprites are used) - srmp7: 80 - survarts: 83 - sxyreact: 80 -*/ -WRITE16_MEMBER(ssv_state::lockout_w) -{ -// popmessage("%02X",data & 0xff); - if (ACCESSING_BITS_0_7) - { - machine().bookkeeping().coin_lockout_w(1,~data & 0x01); - machine().bookkeeping().coin_lockout_w(0,~data & 0x02); - machine().bookkeeping().coin_counter_w(1, data & 0x04); - machine().bookkeeping().coin_counter_w(0, data & 0x08); -// data & 0x40? - enable_video(data & 0x80); - } -} - -/* Same as above but with inverted lockout lines */ -WRITE16_MEMBER(ssv_state::lockout_inv_w) -{ -// popmessage("%02X",data & 0xff); - if (ACCESSING_BITS_0_7) - { - machine().bookkeeping().coin_lockout_w(1, data & 0x01); - machine().bookkeeping().coin_lockout_w(0, data & 0x02); - machine().bookkeeping().coin_counter_w(1, data & 0x04); - machine().bookkeeping().coin_counter_w(0, data & 0x08); -// data & 0x40? - enable_video(data & 0x80); - } -} - -void ssv_state::machine_reset() -{ - m_requested_int = 0; -} - - -/*************************************************************************** - - - DSP - - -***************************************************************************/ - -void ssv_state::dsp_prg_map(address_map &map) -{ - map(0x0000, 0x3fff).rom().region("dspprg", 0); -} - -void ssv_state::dsp_data_map(address_map &map) -{ - map(0x0000, 0x07ff).rom().region("dspdata", 0); -} - -READ16_MEMBER(ssv_state::dsp_dr_r) -{ - return m_dsp->snesdsp_read(true); -} - -WRITE16_MEMBER(ssv_state::dsp_dr_w) -{ - m_dsp->snesdsp_write(true, data); -} - -READ16_MEMBER(ssv_state::dsp_r) -{ - uint16_t temp = m_dsp->dataram_r(offset/2); - uint16_t res; - - if (offset & 1) - { - res = temp>>8; - } - else - { - res = temp & 0xff; - } - - return res; -} - -WRITE16_MEMBER(ssv_state::dsp_w) -{ - uint16_t temp = m_dsp->dataram_r(offset/2); - - if (offset & 1) - { - temp &= 0xff; - temp |= data<<8; - } - else - { - temp &= 0xff00; - temp |= data; - } - - m_dsp->dataram_w(offset/2, temp); -} - -/*************************************************************************** - - - Memory Maps - - -***************************************************************************/ - -#ifdef UNUSED_FUNCTION -READ16_MEMBER(ssv_state::fake_r){ return ssv_scroll[offset]; } -#endif - -void ssv_state::ssv_map(address_map &map, u32 rom) -{ - map(0x000000, 0x00ffff).ram().share("mainram"); /* RAM */ - map(0x100000, 0x13ffff).ram().share("spriteram"); /* Sprites */ - map(0x140000, 0x15ffff).ram().w("palette", FUNC(palette_device::write16)).share("palette"); /* Palette */ - map(0x160000, 0x17ffff).ram(); /* */ - map(0x1c0000, 0x1c007f).ram().w(FUNC(ssv_state::scroll_w)).share("scroll"); /* Scroll */ - map(0x1c0000, 0x1c0001).r(FUNC(ssv_state::vblank_r)); /* Vblank? */ - map(0x210002, 0x210003).portr("DSW1"); - map(0x210004, 0x210005).portr("DSW2"); - map(0x210008, 0x210009).portr("P1"); - map(0x21000a, 0x21000b).portr("P2"); - map(0x21000c, 0x21000d).portr("SYSTEM"); - map(0x21000e, 0x21000f).nopr().w(FUNC(ssv_state::lockout_w)); /* Lockout */ - map(0x210010, 0x210011).nopw(); - map(0x230000, 0x230071).writeonly().share("irq_vectors"); /* IRQ Vec */ - map(0x240000, 0x240071).w(FUNC(ssv_state::irq_ack_w)); /* IRQ Ack */ - map(0x260000, 0x260001).w(FUNC(ssv_state::irq_enable_w)); /* IRQ En */ - map(0x300000, 0x30007f).rw("ensoniq", FUNC(es5506_device::read), FUNC(es5506_device::write)).umask16(0x00ff); /* Sound */ - map(rom, 0xffffff).rom().region("maincpu", 0); /* ROM */ -} - -/*************************************************************************** - Drift Out '94 -***************************************************************************/ - -READ16_MEMBER(ssv_state::drifto94_unknown_r) -{ - return machine().rand() & 0xffff; -} - -void ssv_state::drifto94_map(address_map &map) -{ - ssv_map(map, 0xc00000); -// map(0x210002, 0x210003).nopw(); // ? 1 at the start - map(0x400000, 0x47ffff).writeonly(); // ? - map(0x480000, 0x480001).rw(FUNC(ssv_state::dsp_dr_r), FUNC(ssv_state::dsp_dr_w)); - map(0x482000, 0x482fff).rw(FUNC(ssv_state::dsp_r), FUNC(ssv_state::dsp_w)); - map(0x483000, 0x485fff).nopw(); // ? - map(0x500000, 0x500001).nopw(); // ?? - map(0x510000, 0x510001).r(FUNC(ssv_state::drifto94_unknown_r)); // ?? - map(0x520000, 0x520001).r(FUNC(ssv_state::drifto94_unknown_r)); // ?? - map(0x580000, 0x5807ff).ram().share("nvram"); // NVRAM -} - - -/*************************************************************************** - Mobil Suit Gundam Final Shooting -***************************************************************************/ - -READ16_MEMBER(ssv_state::gdfs_eeprom_r) -{ - return m_adc->data_r() | (m_eeprom->do_read() << 8); -} - -WRITE16_MEMBER(ssv_state::gdfs_eeprom_w) -{ - if (data & ~0x7b00) - logerror("%s - Unknown EEPROM bit written %04X\n",machine().describe_context(),data); - - if ( ACCESSING_BITS_8_15 ) - { -// data & 0x8000 ? (near palette writes) -// data & 0x0001 ? - - // latch the bit - m_eeprom->di_write(BIT(data, 14)); - - // reset line asserted: reset. - m_eeprom->cs_write(BIT(data, 12) ? ASSERT_LINE : CLEAR_LINE); - - // clock line asserted: write latch or select next bit to read - m_eeprom->clk_write(BIT(data, 13) ? ASSERT_LINE : CLEAR_LINE); - - m_adc->address_w((data & 0x0700) >> 8); - m_adc->start_w(BIT(data, 11)); - } -} - - -void ssv_state::gdfs_map(address_map &map) -{ - ssv_map(map, 0xc00000); - map(0x400000, 0x41ffff).ram().w(FUNC(ssv_state::gdfs_tmapram_w)).share("gdfs_tmapram"); - map(0x420000, 0x43ffff).ram(); - map(0x440000, 0x44003f).ram().share("gdfs_tmapscroll"); - map(0x500000, 0x500001).w(FUNC(ssv_state::gdfs_eeprom_w)); - map(0x540000, 0x540001).r(FUNC(ssv_state::gdfs_eeprom_r)); - map(0x600000, 0x600fff).ram(); - map(0x800000, 0x87ffff).rw(m_gdfs_st0020, FUNC(st0020_device::sprram_r), FUNC(st0020_device::sprram_w)); - map(0x8c0000, 0x8c00ff).rw(m_gdfs_st0020, FUNC(st0020_device::regs_r), FUNC(st0020_device::regs_w)); - map(0x900000, 0x9fffff).rw(m_gdfs_st0020, FUNC(st0020_device::gfxram_r), FUNC(st0020_device::gfxram_w)); -} - - -/*************************************************************************** - Hyper Reaction -***************************************************************************/ - -/* - The game prints "backup ram ok" and there is code to test some ram - at 0x580000-0x5bffff. The test is skipped and this ram isn't used - though. I guess it's either a left-over or there are different - version with some battery backed RAM (which would indeed be on the - ROM board, AFAIK) -*/ - -READ16_MEMBER(ssv_state::hypreact_input_r) -{ - uint16_t input_sel = *m_input_sel; - - if (input_sel & 0x0001) return m_io_key[0]->read(); - if (input_sel & 0x0002) return m_io_key[1]->read(); - if (input_sel & 0x0004) return m_io_key[2]->read(); - if (input_sel & 0x0008) return m_io_key[3]->read(); - logerror("CPU #0 PC %06X: unknown input read: %04X\n",m_maincpu->pc(),input_sel); - return 0xffff; -} - -void ssv_state::hypreact_map(address_map &map) -{ - ssv_map(map, 0xf00000); - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); -// map(0x210002, 0x210003).nopw(); // ? 5 at the start - map(0x21000e, 0x21000f).w(FUNC(ssv_state::lockout_inv_w)); // Inverted lockout lines -// map(0x280000, 0x280001).nopr(); // ? read at the start, value not used - map(0xc00000, 0xc00001).r(FUNC(ssv_state::hypreact_input_r)); // Inputs - map(0xc00006, 0xc00007).ram().share("input_sel"); // - map(0xc00008, 0xc00009).noprw(); // -} - - -/*************************************************************************** - Hyper Reaction 2 -***************************************************************************/ - -void ssv_state::hypreac2_map(address_map &map) -{ - ssv_map(map, 0xe00000); - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); -// map(0x210002, 0x210003).nopw(); // ? 5 at the start - map(0x21000e, 0x21000f).w(FUNC(ssv_state::lockout_inv_w)); // Inverted lockout lines -// map(0x280000, 0x280001).nopr(); // ? read at the start, value not used - map(0x500000, 0x500001).r(FUNC(ssv_state::hypreact_input_r)); // Inputs - map(0x500002, 0x500003).r(FUNC(ssv_state::hypreact_input_r)); // (again?) - map(0x520000, 0x520001).writeonly().share("input_sel"); // Inputs -// 0x540000, 0x540003 communication with other units -} - - -/*************************************************************************** - Jan Jan Simasyo -***************************************************************************/ - - - -void ssv_state::janjans1_map(address_map &map) -{ - ssv_map(map, 0xc00000); - map(0x210000, 0x210001).nopw(); // koikois2 but not janjans1 -// map(0x210002, 0x210003).nopw(); // ? 1 at the start - map(0x210006, 0x210007).nopr(); - map(0x800000, 0x800001).writeonly().share("input_sel"); // Inputs - map(0x800002, 0x800003).r(FUNC(ssv_state::srmp4_input_r)); // Inputs -} - - -/*************************************************************************** - Keith & Lucy -***************************************************************************/ - -void ssv_state::keithlcy_map(address_map &map) -{ - ssv_map(map, 0xe00000); -// map(0x210002, 0x210003).nopw(); // ? 1 at the start - map(0x210010, 0x210011).nopw(); // - map(0x21000e, 0x21000f).nopr(); // - map(0x400000, 0x47ffff).writeonly(); // ? -} - - -/*************************************************************************** - Meosis Magic -***************************************************************************/ - -void ssv_state::meosism_map(address_map &map) -{ - ssv_map(map, 0xf00000); - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); -// map(0x210002, 0x210003).nopw(); // ? 5 at the start -// map(0x280000, 0x280001).nopr(); // ? read once, value not used -// map(0x500004, 0x500005).nopw(); // ? 0,58,18 - map(0x580000, 0x58ffff).ram().share("nvram"); // NVRAM -} - -/*************************************************************************** - Monster Slider -***************************************************************************/ - -/* Monster Slider needs the RAM mirrored for the gameplay logic to work correctly */ - -READ16_MEMBER(ssv_state::mainram_r) -{ - return m_mainram[offset]; -} - -WRITE16_MEMBER(ssv_state::mainram_w) -{ - COMBINE_DATA(&m_mainram[offset]); -} - -void ssv_state::mslider_map(address_map &map) -{ - ssv_map(map, 0xf00000); - map(0x010000, 0x01ffff).rw(FUNC(ssv_state::mainram_r), FUNC(ssv_state::mainram_w)); // RAM Mirror -// map(0x210002, 0x210003).nopw(); // ? 1 at the start - map(0x400000, 0x47ffff).writeonly(); // ? -// map(0x500000, 0x500001).nopw(); // ? ff at the start -} - - -/*************************************************************************** - Gourmet Battle Quiz Ryohrioh CooKing -***************************************************************************/ - -void ssv_state::ryorioh_map(address_map &map) -{ - ssv_map(map, 0xc00000); - map(0x210000, 0x210001).w("watchdog", FUNC(watchdog_timer_device::reset16_w)); -// map(0x210002, 0x210003).nopw(); // ? 1 at the start -} - - -/*************************************************************************** - Super Real Mahjong PIV -***************************************************************************/ - -READ16_MEMBER(ssv_state::srmp4_input_r) -{ - uint16_t input_sel = *m_input_sel; - - if (input_sel & 0x0002) return m_io_key[0]->read(); - if (input_sel & 0x0004) return m_io_key[1]->read(); - if (input_sel & 0x0008) return m_io_key[2]->read(); - if (input_sel & 0x0010) return m_io_key[3]->read(); - logerror("CPU #0 PC %06X: unknown input read: %04X\n",m_maincpu->pc(),input_sel); - return 0xffff; -} - -void ssv_state::srmp4_map(address_map &map) -{ - ssv_map(map, 0xf00000); - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); -// map(0x210002, 0x210003).nopw(); // ? 1,5 at the start - map(0xc0000a, 0xc0000b).r(FUNC(ssv_state::srmp4_input_r)); // Inputs - map(0xc0000e, 0xc0000f).writeonly().share("input_sel"); // Inputs - map(0xc00010, 0xc00011).nopw(); // -} - - -/*************************************************************************** - Super Real Mahjong P7 -***************************************************************************/ - -/* - Interrupts aren't supported by the chip emulator yet - (lev 5 in this case, I guess) -*/ -READ16_MEMBER(ssv_state::srmp7_irqv_r) -{ - return 0x0080; -} - -WRITE16_MEMBER(ssv_state::srmp7_sound_bank_w) -{ - if (ACCESSING_BITS_0_7) - { - int bank = 0x400000/2 * (data & 1); // uint16_t address - for (int voice = 0; voice < 32; voice++) - m_ensoniq->voice_bank_w(voice, bank); - } -// popmessage("%04X",data); -} - -READ16_MEMBER(ssv_state::srmp7_input_r) -{ - uint16_t input_sel = *m_input_sel; - - if (input_sel & 0x0002) return m_io_key[0]->read(); - if (input_sel & 0x0004) return m_io_key[1]->read(); - if (input_sel & 0x0008) return m_io_key[2]->read(); - if (input_sel & 0x0010) return m_io_key[3]->read(); - logerror("CPU #0 PC %06X: unknown input read: %04X\n",m_maincpu->pc(),input_sel); - return 0xffff; -} - -void ssv_state::srmp7_map(address_map &map) -{ - ssv_map(map, 0xc00000); - map(0x010000, 0x050faf).ram(); // More RAM - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); -// map(0x210002, 0x210003).nopw(); // ? 0,4 at the start - map(0x21000e, 0x21000f).w(FUNC(ssv_state::lockout_inv_w)); // Coin Counters / Lockouts - map(0x300076, 0x300077).r(FUNC(ssv_state::srmp7_irqv_r)); // Sound -// 0x540000, 0x540003, related to lev 5 irq? - map(0x580000, 0x580001).w(FUNC(ssv_state::srmp7_sound_bank_w)); // Sound Bank - map(0x600000, 0x600001).r(FUNC(ssv_state::srmp7_input_r)); // Inputs - map(0x680000, 0x680001).writeonly().share("input_sel"); // Inputs -} - - -/*************************************************************************** - Survival Arts -***************************************************************************/ - -void ssv_state::survarts_map(address_map &map) -{ - ssv_map(map, 0xf00000); - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); -// map(0x210002, 0x210003).nopw(); // ? 0,4 at the start -// map(0x290000, 0x290001).nopr(); // ? -// map(0x2a0000, 0x2a0001).nopr(); // ? - - map(0x400000, 0x43ffff).ram(); // dyna - - map(0x500008, 0x500009).portr("ADD_BUTTONS"); // Extra Buttons -} - - -/*************************************************************************** - Pachinko Sexy Reaction -***************************************************************************/ - - -READ16_MEMBER(ssv_state::sxyreact_ballswitch_r) -{ - return m_io_service.read_safe(0); -} - -READ16_MEMBER(ssv_state::sxyreact_dial_r) -{ - return ((m_sxyreact_serial >> 1) & 0x80); -} - - -WRITE16_MEMBER(ssv_state::sxyreact_dial_w) -{ - if (ACCESSING_BITS_0_7) - { - if (data & 0x20) - m_sxyreact_serial = m_io_paddle.read_safe(0) & 0xff; - - if ( (m_sxyreact_dial & 0x40) && !(data & 0x40) ) // $40 -> $00 - m_sxyreact_serial <<= 1; // shift 1 bit - - m_sxyreact_dial = data; - } -} - -WRITE16_MEMBER(ssv_state::sxyreact_motor_w) -{ -// popmessage("%04X",data); // 8 = motor on; 0 = motor off -} - -void ssv_state::sxyreact_map(address_map &map) -{ - ssv_map(map, 0xe00000); -// map(0x020000, 0x03ffff).rw(FUNC(ssv_state::mainram_r), FUNC(ssv_state::mainram_w)); // sxyreac2 reads / writes here, why? - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); -// map(0x210002, 0x210003).nopw(); // ? 1 at the start - map(0x21000e, 0x21000f).w(FUNC(ssv_state::lockout_inv_w)); // Inverted lockout lines - map(0x500002, 0x500003).r(FUNC(ssv_state::sxyreact_ballswitch_r)); // ? - map(0x500004, 0x500005).rw(FUNC(ssv_state::sxyreact_dial_r), FUNC(ssv_state::sxyreact_motor_w)); // Dial Value (serial) - map(0x520000, 0x520001).w(FUNC(ssv_state::sxyreact_dial_w)); // Dial Value (advance 1 bit) - map(0x580000, 0x58ffff).ram().share("nvram"); // NVRAM -} - - -/*************************************************************************** - Twin Eagle II -***************************************************************************/ - -/* comes as either a standalone board or a standard SSV ROM board (verified) */ - -void ssv_state::twineag2_map(address_map &map) -{ - ssv_map(map, 0xe00000); - map(0x010000, 0x03ffff).ram(); // More RAM - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); // Watchdog (also value is cmp.b with mem 8) - map(0x480000, 0x480001).rw(FUNC(ssv_state::dsp_dr_r), FUNC(ssv_state::dsp_dr_w)); - map(0x482000, 0x482fff).rw(FUNC(ssv_state::dsp_r), FUNC(ssv_state::dsp_w)); -} - - -/*************************************************************************** - Ultra X -***************************************************************************/ - -/* standalone board based on SSV hardware */ - -void ssv_state::ultrax_map(address_map &map) -{ - ssv_map(map, 0xe00000); - map(0x010000, 0x03ffff).ram(); // More RAM - map(0x210000, 0x210001).r("watchdog", FUNC(watchdog_timer_device::reset16_r)); // Watchdog (also value is cmp.b with memory address 8) -// map(0x210002, 0x210003).nopw(); // ? 2,6 at the start -} - -/*************************************************************************** - Joryuu Syougi Kyoushitsu -***************************************************************************/ - -/* from st0016.c */ - -READ32_MEMBER(ssv_state::latch32_r) -{ - if(!offset) - m_latches[2]&=~2; - return m_latches[offset]; -} - -WRITE32_MEMBER(ssv_state::latch32_w) -{ - if(!offset) - m_latches[2]|=1; - COMBINE_DATA(&m_latches[offset]); - machine().scheduler().synchronize(); -} - -READ16_MEMBER(ssv_state::latch16_r) -{ - if(!offset) - m_latches[2]&=~1; - return m_latches[offset]; -} - -WRITE16_MEMBER(ssv_state::latch16_w) -{ - if(!offset) - m_latches[2]|=2; - m_latches[offset]=data; - machine().scheduler().synchronize(); -} - -void ssv_state::jsk_map(address_map &map) -{ - ssv_map(map, 0xf00000); - map(0x050000, 0x05ffff).rw(FUNC(ssv_state::mainram_r), FUNC(ssv_state::mainram_w)); // RAM Mirror? - map(0x210000, 0x210001).w("watchdog", FUNC(watchdog_timer_device::reset16_w)); - map(0x400000, 0x47ffff).ram(); // RAM? - map(0x900000, 0x900007).rw(FUNC(ssv_state::latch16_r), FUNC(ssv_state::latch16_w)); -} - - -void ssv_state::jsk_v810_mem(address_map &map) -{ - map(0x00000000, 0x0001ffff).ram(); - map(0x80000000, 0x8001ffff).ram(); - map(0xc0000000, 0xc001ffff).ram(); - map(0x40000000, 0x4000000f).rw(FUNC(ssv_state::latch32_r), FUNC(ssv_state::latch32_w)); - map(0xfff80000, 0xffffffff).rom().region("sub", 0); -} - - -/*************************************************************************** - Eagle Shot Golf -***************************************************************************/ - -WRITE8_MEMBER(ssv_state::eaglshot_gfxrom_bank_w) -{ - membank("gfxrom")->set_entry(data < 6 ? data : 6); -} - -WRITE8_MEMBER(ssv_state::eaglshot_trackball_w) -{ - // All these get toggled during trackball reads; the precise arrangement is uncertain - m_upd4701->cs_w(!BIT(data, 6)); - m_upd4701->ul_w(BIT(data, 5)); - m_upd4701->xy_w(BIT(data, 4)); - m_upd4701->resetx_w(BIT(data, 3)); - m_upd4701->resety_w(BIT(data, 2)); -} - - - -READ16_MEMBER(ssv_state::eaglshot_gfxram_r) -{ - return m_eaglshot_gfxram[offset + (m_scroll[0x76/2] & 0xf) * 0x40000/2]; -} - -WRITE16_MEMBER(ssv_state::eaglshot_gfxram_w) -{ - offset += (m_scroll[0x76/2] & 0xf) * 0x40000/2; - COMBINE_DATA(&m_eaglshot_gfxram[offset]); - m_gfxdecode->gfx(0)->mark_dirty(offset / (16*8/2)); -} - - -void ssv_state::eaglshot_map(address_map &map) -{ - ssv_map(map, 0xf00000); - map(0x180000, 0x1bffff).rw(FUNC(ssv_state::eaglshot_gfxram_r), FUNC(ssv_state::eaglshot_gfxram_w)); - map(0x210000, 0x210001).nopr(); // .r("watchdog", FUNC(watchdog_timer_device::reset16_r)); // Watchdog -// map(0x210002, 0x210003).nopw(); // ? 0,4 at the start - map(0x21000e, 0x21000f).w(FUNC(ssv_state::lockout_inv_w)); // Inverted lockout lines - map(0x800000, 0x800000).w(FUNC(ssv_state::eaglshot_gfxrom_bank_w)); - map(0x900000, 0x900000).w(FUNC(ssv_state::eaglshot_trackball_w)); - map(0xa00000, 0xbfffff).bankr("gfxrom"); - map(0xc00000, 0xc007ff).ram().share("nvram"); // NVRAM - map(0xd00000, 0xd00000).r(m_upd4701, FUNC(upd4701_device::d_r)); -} - - - -/*************************************************************************** - - - Input Ports - - -***************************************************************************/ - - -/*************************************************************************** - Basic Coinage Settings -***************************************************************************/ - -#define SSV_COINAGE_BASIC( shift, default, name, diploc ) \ - PORT_DIPNAME( 0x0003 << (shift), (default) << (shift), (name) ) PORT_DIPLOCATION( (diploc) ) \ - PORT_DIPSETTING( 0x0001 << (shift), DEF_STR( 2C_1C ) ) \ - PORT_DIPSETTING( 0x0003 << (shift), DEF_STR( 1C_1C ) ) \ - PORT_DIPSETTING( 0x0000 << (shift), DEF_STR( 2C_3C ) ) \ - PORT_DIPSETTING( 0x0002 << (shift), DEF_STR( 1C_2C ) ) - -#define SSV_COINAGE_STANDARD( shift, default, name, diploc ) \ - PORT_DIPNAME( 0x0007 << (shift), (default) << (shift), (name) ) PORT_DIPLOCATION( (diploc) ) \ - PORT_DIPSETTING( 0x0005 << (shift), DEF_STR( 3C_1C ) ) \ - PORT_DIPSETTING( 0x0006 << (shift), DEF_STR( 2C_1C ) ) \ - PORT_DIPSETTING( 0x0007 << (shift), DEF_STR( 1C_1C ) ) \ - PORT_DIPSETTING( 0x0004 << (shift), DEF_STR( 1C_2C ) ) \ - PORT_DIPSETTING( 0x0003 << (shift), DEF_STR( 1C_3C ) ) \ - PORT_DIPSETTING( 0x0002 << (shift), DEF_STR( 1C_4C ) ) \ - PORT_DIPSETTING( 0x0001 << (shift), DEF_STR( 1C_5C ) ) \ - PORT_DIPSETTING( 0x0000 << (shift), DEF_STR( 1C_6C ) ) - -#define SSV_COINAGE_EXTENDED( shift, default, name, diploc ) \ - PORT_DIPNAME( 0x000f << (shift), (default) << (shift), (name) ) PORT_DIPLOCATION( (diploc) ) \ - PORT_DIPSETTING( 0x0007 << (shift), DEF_STR( 4C_1C ) ) \ - PORT_DIPSETTING( 0x0008 << (shift), DEF_STR( 3C_1C ) ) \ - PORT_DIPSETTING( 0x0009 << (shift), DEF_STR( 2C_1C ) ) \ - PORT_DIPSETTING( 0x000f << (shift), DEF_STR( 1C_1C ) ) \ - PORT_DIPSETTING( 0x0006 << (shift), DEF_STR( 2C_3C ) ) \ - PORT_DIPSETTING( 0x000e << (shift), DEF_STR( 1C_2C ) ) \ - PORT_DIPSETTING( 0x000d << (shift), DEF_STR( 1C_3C ) ) \ - PORT_DIPSETTING( 0x000c << (shift), DEF_STR( 1C_4C ) ) \ - PORT_DIPSETTING( 0x000b << (shift), DEF_STR( 1C_5C ) ) \ - PORT_DIPSETTING( 0x000a << (shift), DEF_STR( 1C_6C ) ) \ -/* "** ADDED MULTIPLE COIN FEATURE **" */ \ - PORT_DIPSETTING( 0x0005 << (shift), "Multiple Coin Feature A" ) \ -/* 2c-1c, 4c-2c, 5c-3c & 6c-4c */ \ - PORT_DIPSETTING( 0x0004 << (shift), "Multiple Coin Feature B" ) \ -/* 2c-1c, 4c-3c */ \ - PORT_DIPSETTING( 0x0003 << (shift), "Multiple Coin Feature C" ) \ -/* 1c-1c, 2c-2c, 3c-3c, 4c-4c, 5c-6c */ \ - PORT_DIPSETTING( 0x0002 << (shift), "Multiple Coin Feature D" ) \ -/* 1c-1c, 2c-2c, 3c-3c & 4c-5c */ \ - PORT_DIPSETTING( 0x0001 << (shift), "Multiple Coin Feature E" ) \ -/* 1c-1c, 2c-3c */ \ -/* Meaning of all "ON" varies between games so it's not included here */ - - -/*************************************************************************** - Common Joystick Inputs -***************************************************************************/ - -static INPUT_PORTS_START( ssv_joystick ) - PORT_START("DSW1") // IN0 - $210002 - PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Modified below */ - - PORT_START("DSW2") // IN1 - $210004 - PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Modified below */ - - PORT_START("P1") // IN2 - $210008 - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) - - PORT_START("P2") // IN3 - $21000a - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) - - PORT_START("SYSTEM") // IN4 - $21000c - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(10) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(10) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F1) - PORT_BIT( 0x00e0, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - - -/*************************************************************************** - Common Mahjong Inputs -***************************************************************************/ - -static INPUT_PORTS_START( ssv_mahjong ) - PORT_INCLUDE(ssv_joystick) - - PORT_START("KEY0") // IN5 - $800002(0) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_L ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_H ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_D ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY1") // IN6 - $800002(1) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_K ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_G ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_C ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY2") // IN7 - $800002(2) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_BET ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_N ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_J ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_F ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_B ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY3") // IN8 - $800002(3) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_M ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_I ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_E ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_A ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - - -/*************************************************************************** - Common Quiz Inputs -***************************************************************************/ - -static INPUT_PORTS_START( ssv_quiz ) - PORT_START("DSW1") // IN0 - $210002 - PORT_DIPUNUSED_DIPLOC( 0x0001, 0x0001, "DSW1:1" ) /* Manual states this dip is "Unused" */ - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW1:2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0004, IP_ACTIVE_LOW, "DSW1:3" ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW1:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - SSV_COINAGE_BASIC( 4, 0x03, DEF_STR( Coin_A ), "DSW1:5,6" ) - PORT_BIT( 0x00c0, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Modified below */ - - PORT_START("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) /* 15 sec */ - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) /* 12 sec */ - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) /* 10 sec */ - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) /* 8 sec */ - PORT_BIT( 0x00fc, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Modified below */ - - PORT_START("P1") // IN2 - $210008 - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - - PORT_START("P2") // IN3 - $21000a - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - - PORT_START("SYSTEM") // IN4 - $21000c - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(10) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(10) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - - -/*************************************************************************** - Change Air Blade -***************************************************************************/ - -static INPUT_PORTS_START( cairblad ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - SSV_COINAGE_STANDARD( 0, 0x07, DEF_STR( Coin_A ), "DSW1:1,2,3" ) - SSV_COINAGE_STANDARD( 3, 0x07, DEF_STR( Coin_B ), "DSW1:4,5,6" ) - PORT_DIPUNUSED_DIPLOC( 0x0040, 0x0040, "DSW1:7" ) /* Manual lists this dip as "Unused" */ - PORT_DIPUNUSED_DIPLOC( 0x0080, 0x0080, "DSW1:8" ) /* Manual lists this dip as "Unused" */ - - PORT_MODIFY("DSW2") // IN1 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:2" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( On ) ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:3,4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Free_Play ) ) PORT_DIPLOCATION( "DSW2:5" ) - PORT_DIPSETTING( 0x0010, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0060, 0x0060, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION( "DSW2:6,7" ) - PORT_DIPSETTING( 0x0040, "Every 2 Mil" ) - PORT_DIPSETTING( 0x0060, "2 Mil/6 Mil" ) - PORT_DIPSETTING( 0x0020, "4 Million" ) - PORT_DIPSETTING( 0x0000, DEF_STR( None ) ) - PORT_SERVICE_DIPLOC( 0x0080, IP_ACTIVE_LOW, "DSW2:8" ) -INPUT_PORTS_END - - -/*************************************************************************** - Drift Out '94 -***************************************************************************/ - -static INPUT_PORTS_START( drifto94 ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW1:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0002, IP_ACTIVE_LOW, "DSW1:2" ) - PORT_DIPNAME( 0x0004, 0x0004, "Sound Test" ) PORT_DIPLOCATION( "DSW1:3" ) - PORT_DIPSETTING( 0x0004, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW1:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - SSV_COINAGE_BASIC( 4, 0x03, DEF_STR( Coin_A ), "DSW1:5,6" ) - SSV_COINAGE_BASIC( 6, 0x03, DEF_STR( Coin_B ), "DSW1:7,8" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2" ) - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPUNKNOWN_DIPLOC( 0x0004, 0x0004, "DSW2:3" ) /* Manual lists these dips as "Unused" */ - PORT_DIPUNKNOWN_DIPLOC( 0x0008, 0x0008, "DSW2:4" ) - PORT_DIPNAME( 0x0010, 0x0010, "Music Volume" ) PORT_DIPLOCATION( "DSW2:5" ) - PORT_DIPSETTING( 0x0000, "Quiet" ) - PORT_DIPSETTING( 0x0010, "Loud" ) - PORT_DIPNAME( 0x0020, 0x0020, "Sound Volume" ) PORT_DIPLOCATION( "DSW2:6" ) - PORT_DIPSETTING( 0x0000, "Quiet" ) - PORT_DIPSETTING( 0x0020, "Loud" ) - PORT_DIPNAME( 0x0040, 0x0040, "Save Best Time" ) PORT_DIPLOCATION( "DSW2:7" ) - PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( Yes ) ) - PORT_DIPUNUSED_DIPLOC( 0x0080, 0x0080, "DSW2:8" ) /* Manual lists this dip as "Unused" */ -INPUT_PORTS_END - - -/*************************************************************************** - Dyna Gears -***************************************************************************/ - -static INPUT_PORTS_START( dynagear ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_EXTENDED( 0, 0x0f, DEF_STR( Coin_A ), "DSW1:1,2,3,4" ) - //PORT_DIPSETTING( 0x0000, "???" ) - No values listed for all "ON" - SSV_COINAGE_EXTENDED( 4, 0x0f, DEF_STR( Coin_B ), "DSW1:5,6,7,8" ) - //PORT_DIPSETTING( 0x0000, "???" ) - No values listed for all "ON" - - PORT_MODIFY("DSW2") // IN0 - $210004 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0000, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:3,4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Lives ) ) PORT_DIPLOCATION( "DSW2:5,6" ) - PORT_DIPSETTING( 0x0010, "1" ) - PORT_DIPSETTING( 0x0030, "2" ) - PORT_DIPSETTING( 0x0020, "3" ) - PORT_DIPSETTING( 0x0000, "4" ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Free_Play ) ) PORT_DIPLOCATION( "DSW2:7" ) - PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0080, 0x0080, "Health" ) PORT_DIPLOCATION( "DSW2:8" ) - PORT_DIPSETTING( 0x0000, "3 Hearts" ) - PORT_DIPSETTING( 0x0080, "4 Hearts" ) - - PORT_START("ADD_BUTTONS") // IN5 - $500008 - PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - -/*************************************************************************** - Pastel Island -***************************************************************************/ - -static INPUT_PORTS_START( pastelis ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unused ) ) PORT_DIPLOCATION( "DSW1:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW1:2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0004, IP_ACTIVE_LOW, "DSW1:3" ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW1:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Coin_A ) ) PORT_DIPLOCATION( "DSW1:5,6" ) - PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) ) - PORT_DIPSETTING( 0x0030, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x0020, DEF_STR( 1C_2C ) ) - PORT_DIPNAME( 0x00c0, 0x00c0, DEF_STR( Coin_B ) ) PORT_DIPLOCATION( "DSW1:7,8" ) - PORT_DIPSETTING( 0x0040, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( 2C_3C ) ) - PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x0080, DEF_STR( 1C_2C ) ) - - PORT_MODIFY("DSW2") // IN0 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Easy) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unused ) ) PORT_DIPLOCATION( "DSW2:3" ) - PORT_DIPSETTING( 0x0004, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unused ) ) PORT_DIPLOCATION( "DSW2:4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Lives ) ) PORT_DIPLOCATION( "DSW2:5,6" ) - PORT_DIPSETTING( 0x0020, "1" ) - PORT_DIPSETTING( 0x0030, "2" ) - PORT_DIPSETTING( 0x0010, "3" ) - PORT_DIPSETTING( 0x0000, "4" ) - PORT_DIPNAME( 0x00c0, 0x00c0, "Extend" ) PORT_DIPLOCATION( "DSW2:7,8" ) - PORT_DIPSETTING( 0x0000, "70000, every 90000" ) - PORT_DIPSETTING( 0x0040, "every 70000" ) - PORT_DIPSETTING( 0x0080, "50000, every 70000" ) - PORT_DIPSETTING( 0x00c0, "every 50000" ) - - PORT_START("ADD_BUTTONS") // IN5 - $500008 - PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - -/*************************************************************************** - Eagle Shot Golf -***************************************************************************/ - -static INPUT_PORTS_START( eaglshot ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_EXTENDED( 0, 0x0f, DEF_STR( Coinage ), "DSW1:1,2,3,4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Free_Play ) ) - PORT_DIPNAME( 0x0010, 0x0010, "Credits To Start" ) PORT_DIPLOCATION( "DSW1:5" ) - PORT_DIPSETTING( 0x0010, "1" ) - PORT_DIPSETTING( 0x0000, "2" ) - PORT_DIPNAME( 0x0020, 0x0000, DEF_STR( Controls ) ) PORT_DIPLOCATION( "DSW1:6" ) - PORT_DIPSETTING( 0x0020, DEF_STR( Trackball ) ) // trackball dosn't work yet - PORT_DIPSETTING( 0x0000, DEF_STR( Joystick ) ) - PORT_DIPNAME( 0x0040, 0x0040, "Trackball Type" ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0040, "24 Counts (USA)" ) - PORT_DIPSETTING( 0x0000, "12 Counts (Japan)" ) - PORT_DIPUNKNOWN_DIPLOC( 0x0080, 0x0080, "DSW1:8" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, "Number Of Holes" ) PORT_DIPLOCATION( "DSW2:1,2" ) - PORT_DIPSETTING( 0x0002, "2" ) - PORT_DIPSETTING( 0x0003, "3" ) - PORT_DIPSETTING( 0x0001, "4" ) - PORT_DIPSETTING( 0x0000, "5" ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:3,4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Hard ) ) - /*PORT_DIPSETTING( 0x0000, "???" ) - No listed value for ON & ON */ - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:5" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0010, DEF_STR( On ) ) - PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION( "DSW2:6" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0020, DEF_STR( On ) ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:7" ) - PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0080, IP_ACTIVE_LOW, "DSW2:8" ) - - PORT_START("TRACKX") // IN5 - trackball x ($d00000) - PORT_BIT( 0x0fff, 0x0000, IPT_TRACKBALL_X ) PORT_SENSITIVITY(30) PORT_KEYDELTA(30) PORT_RESET PORT_PLAYER(1) - - PORT_START("TRACKY") // IN6 - trackball y ($d00000) - PORT_BIT( 0x0fff, 0x0000, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(30) PORT_KEYDELTA(30) PORT_RESET PORT_PLAYER(1) -INPUT_PORTS_END - - -/*************************************************************************** - Mobil Suit Gundam Final Shooting -***************************************************************************/ - -static INPUT_PORTS_START( gdfs ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0001, 0x0000, DEF_STR( Controls ) ) PORT_DIPLOCATION( "DSW1:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Joystick ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Light_Gun ) ) - PORT_DIPNAME( 0x0002, 0x0002, "Light Gun Calibration" ) PORT_DIPLOCATION( "DSW1:2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Level_Select ) ) PORT_DIPLOCATION( "DSW1:3" ) /* Manual lists this dip as "Unused" */ - PORT_DIPSETTING( 0x0004, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0018, 0x0018, DEF_STR( Coinage ) ) PORT_DIPLOCATION( "DSW1:4,5" ) -// PORT_DIPSETTING( 0x0000, DEF_STR( 2C_1C ) ) /* 2 Coins to Start, 1 Coin to Continue??? */ - PORT_DIPSETTING( 0x0010, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0018, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( 1C_2C ) ) - PORT_DIPNAME( 0x0020, 0x0020, "Save Scores" ) PORT_DIPLOCATION( "DSW1:6" ) - PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) // Clear NVRAM on boot - PORT_DIPSETTING( 0x0020, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPUNUSED_DIPLOC( 0x0080, 0x0080, "DSW1:8" ) /* Manual lists this dip as "Unused" */ - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0001, 0x0001, "Invert X Axis" ) PORT_DIPLOCATION( "DSW2:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPUNUSED_DIPLOC( 0x0002, 0x0002, "DSW2:2" ) /* Manual lists this dip as "Unused" */ - PORT_DIPUNUSED_DIPLOC( 0x0004, 0x0004, "DSW2:3" ) /* Manual lists this dip as "Unused" */ - PORT_DIPNAME( 0x0008, 0x0000, DEF_STR( Language ) ) PORT_DIPLOCATION( "DSW2:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( English ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( Japanese ) ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:5" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0010, DEF_STR( On ) ) - PORT_DIPNAME( 0x0020, 0x0020, "Damage From Machine Gun" ) PORT_DIPLOCATION( "DSW2:6" ) // F76E34 - PORT_DIPSETTING( 0x0020, "Light" ) - PORT_DIPSETTING( 0x0000, "Heavy" ) - PORT_DIPNAME( 0x0040, 0x0040, "Damage From Beam Cannon" ) PORT_DIPLOCATION( "DSW2:7" ) // F77487 - PORT_DIPSETTING( 0x0040, "Light" ) - PORT_DIPSETTING( 0x0000, "Heavy" ) - PORT_DIPNAME( 0x0080, 0x0080, "Damage From Missle" ) PORT_DIPLOCATION( "DSW2:8" ) // F77255 - PORT_DIPSETTING( 0x0080, "Light" ) - PORT_DIPSETTING( 0x0000, "Heavy" ) - - PORT_START("GUNX1") // IN5 - $540000(0) - PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_SENSITIVITY(35) PORT_KEYDELTA(10) PORT_PLAYER(1) PORT_INVERT - - PORT_START("GUNY1") // IN6 - $540000(1) - PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_SENSITIVITY(35) PORT_KEYDELTA(10) PORT_PLAYER(1) - - PORT_START("GUNX2") // IN7 - $540000(2) - PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_SENSITIVITY(35) PORT_KEYDELTA(10) PORT_PLAYER(2) PORT_INVERT - - PORT_START("GUNY2") // IN8 - $540000(3) - PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_SENSITIVITY(35) PORT_KEYDELTA(10) PORT_PLAYER(2) -INPUT_PORTS_END - - -/*************************************************************************** - Hyper Reaction -***************************************************************************/ - -static INPUT_PORTS_START( hypreact ) - PORT_START("DSW1") // IN0 - $210002 - SSV_COINAGE_STANDARD( 0, 0x07, DEF_STR( Coin_A ), "DSWA:1,2,3" ) - SSV_COINAGE_STANDARD( 3, 0x07, DEF_STR( Coin_B ), "DSWA:4,5,6" ) - PORT_DIPNAME( 0x0040, 0x0040, "Half Coins To Continue" ) PORT_DIPLOCATION( "DSWA:7" ) - PORT_DIPSETTING( 0x0040, DEF_STR( No ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Free_Play ) ) PORT_DIPLOCATION( "DSWA:8" ) - PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - - PORT_START("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSWB:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSWB:2" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( On ) ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSWB:3,4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Controls ) ) PORT_DIPLOCATION( "DSWB:5" ) - PORT_DIPSETTING( 0x0010, "Keyboard" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Joystick ) ) - PORT_DIPNAME( 0x0020, 0x0020, "Multiple coins" ) PORT_DIPLOCATION( "DSWB:6" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0020, DEF_STR( On ) ) - PORT_DIPNAME( 0x0040, 0x0040, "Keep Status On Continue" ) PORT_DIPLOCATION( "DSWB:7" ) - PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( Yes ) ) - PORT_SERVICE_DIPLOC( 0x0080, IP_ACTIVE_LOW, "DSWB:8" ) - - PORT_START("P1") // IN2 - $210008 (used in joystick mode) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) PORT_NAME("P1 Mahjong Chi (Joy Mode)") - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) PORT_NAME("P1 Mahjong Pon (Joy Mode)") - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) PORT_NAME("P1 Mahjong Kan (Joy Mode)") - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) - - PORT_START("P2") // IN3 - $21000a (used in joystick mode) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) PORT_NAME("P1 Mahjong Reach (Joy Mode)") - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) PORT_NAME("P1 Mahjong Ron (Joy Mode)") - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_SCORE ) PORT_NAME("Tsumo")// Is this correct? - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("SYSTEM") // IN4 - $21000c - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(10) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(10) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) // service coin & bet - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x00f0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY0") // IN5 - $c00000(0) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_A ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_E ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_I ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_M ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0xffc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY1") // IN6 - $c00000(1) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_B ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_F ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_J ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_N ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_BET ) - PORT_BIT( 0xffc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY2") // IN7 - $c00000(2) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_C ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_G ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_K ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) - PORT_BIT( 0xffe0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY3") // IN8 - $c00000(3) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_D ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_H ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_L ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) - PORT_BIT( 0xfff0, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - - -/*************************************************************************** - Hyper Reaction 2 -***************************************************************************/ - -static INPUT_PORTS_START( hypreac2 ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_STANDARD( 0, 0x07, DEF_STR( Coin_A ), "DSWA:1,2,3" ) - SSV_COINAGE_STANDARD( 3, 0x07, DEF_STR( Coin_B ), "DSWA:4,5,6" ) - PORT_DIPNAME( 0x0040, 0x0040, "Half Coins To Continue" ) PORT_DIPLOCATION( "DSWA:7" ) - PORT_DIPSETTING( 0x0040, DEF_STR( No ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Free_Play ) ) PORT_DIPLOCATION( "DSWA:8" ) - PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSWB:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSWB:2" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( On ) ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSWB:3,4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Controls ) ) PORT_DIPLOCATION( "DSWB:5" ) - PORT_DIPSETTING( 0x0010, "Keyboard" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Joystick ) ) - PORT_DIPNAME( 0x0020, 0x0020, "Communication" ) PORT_DIPLOCATION( "DSWB:6" ) - PORT_DIPSETTING( 0x0020, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0040, 0x0040, "Communication Mode" ) PORT_DIPLOCATION( "DSWB:7" ) - PORT_DIPSETTING( 0x0040, "SLAVE" ) - PORT_DIPSETTING( 0x0000, "MASTER" ) - PORT_SERVICE_DIPLOC( 0x0080, IP_ACTIVE_LOW, "DSWB:8" ) - - PORT_START("KEY0") // IN5 - $500000(0) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_A ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_E ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_I ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_M ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0xffc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY1") // IN6 - $500000(1) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_B ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_F ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_J ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_N ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) - PORT_BIT( 0xffe0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY2") // IN7 - $500000(2) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_C ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_G ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_K ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) - PORT_BIT( 0xffe0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY3") // IN8 - $500000(3) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_MAHJONG_D ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_H ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_L ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) - PORT_BIT( 0xfff0, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - - -/*************************************************************************** - JangJang Shimasho -***************************************************************************/ - -static INPUT_PORTS_START( janjans1 ) - PORT_INCLUDE(ssv_mahjong) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPUNKNOWN_DIPLOC( 0x0001, 0x0001, "DSW1:1" ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW1:2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0004, IP_ACTIVE_LOW, "DSW1:3" ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW1:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - SSV_COINAGE_BASIC( 4, 0x03, DEF_STR( Coinage ), "DSW1:5,6" ) - PORT_DIPNAME( 0x0040, 0x0040, "Voice" ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( On ) ) - PORT_DIPUNKNOWN_DIPLOC( 0x0080, 0x0080, "DSW1:8" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0004, 0x0004, "Nudity" ) PORT_DIPLOCATION( "DSW2:3" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( On ) ) - PORT_DIPNAME( 0x0008, 0x0008, "Mini Game" ) PORT_DIPLOCATION( "DSW2:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - PORT_DIPNAME( 0x0030, 0x0030, "Initial Score" ) PORT_DIPLOCATION( "DSW2:5,6" ) - PORT_DIPSETTING( 0x0020, "1000" ) - PORT_DIPSETTING( 0x0030, "1500" ) - PORT_DIPSETTING( 0x0010, "2000" ) - PORT_DIPSETTING( 0x0000, "3000" ) - PORT_DIPNAME( 0x00c0, 0x00c0, "Communication" ) PORT_DIPLOCATION( "DSW2:7,8" ) -// PORT_DIPSETTING( 0x0080, "unused" ) - PORT_DIPSETTING( 0x00c0, DEF_STR( None ) ) - PORT_DIPSETTING( 0x0040, "Board 1 (Main)" ) - PORT_DIPSETTING( 0x0000, "Board 2 (Sub)" ) -INPUT_PORTS_END - - -/*************************************************************************** - JangJang Shimasho 2 -***************************************************************************/ - -static INPUT_PORTS_START( janjans2 ) - PORT_INCLUDE(ssv_mahjong) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPUNKNOWN_DIPLOC( 0x0001, 0x0001, "DSW1:1" ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW1:2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0004, IP_ACTIVE_LOW, "DSW1:3" ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW1:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - SSV_COINAGE_BASIC( 4, 0x03, DEF_STR( Coinage ), "DSW1:5,6" ) - PORT_DIPNAME( 0x0040, 0x0040, "Nudity" ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( On ) ) - PORT_DIPUNKNOWN_DIPLOC( 0x0080, 0x0080, "DSW1:8" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x000c, 0x000c, "Initial Score (vs player)") PORT_DIPLOCATION( "DSW2:3,4" ) - PORT_DIPSETTING( 0x0008, "10000" ) - PORT_DIPSETTING( 0x0004, "15000" ) - PORT_DIPSETTING( 0x000c, "20000" ) - PORT_DIPSETTING( 0x0000, "25000" ) - PORT_DIPNAME( 0x0030, 0x0030, "Initial Score (vs CPU)" ) PORT_DIPLOCATION( "DSW2:5,6" ) - PORT_DIPSETTING( 0x0020, "1000" ) - PORT_DIPSETTING( 0x0030, "1500" ) - PORT_DIPSETTING( 0x0010, "2000" ) - PORT_DIPSETTING( 0x0000, "3000" ) - PORT_DIPNAME( 0x00c0, 0x00c0, "Communication" ) PORT_DIPLOCATION( "DSW2:7,8" ) -// PORT_DIPSETTING( 0x0080, "unused" ) - PORT_DIPSETTING( 0x00c0, DEF_STR( None ) ) - PORT_DIPSETTING( 0x0040, "Transmitter" ) - PORT_DIPSETTING( 0x0000, "Receiver" ) -INPUT_PORTS_END - - -/*************************************************************************** - Joryuu Syougi Kyoushitsu -***************************************************************************/ - -static INPUT_PORTS_START( jsk ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coinage ) ) PORT_DIPLOCATION("DSW1:1,2,3") - PORT_DIPSETTING( 0x0000, DEF_STR( 5C_1C ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x0006, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x0005, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( 1C_4C ) ) - PORT_SERVICE_DIPLOC( 0x0008, IP_ACTIVE_LOW, "DSW1:4" ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("DSW1:5") - PORT_DIPSETTING( 0x0010, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSW1:6") - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0020, DEF_STR( On ) ) - PORT_DIPNAME( 0x00c0, 0x00c0, "Minutes" ) PORT_DIPLOCATION("DSW1:7,8") - PORT_DIPSETTING( 0x0080, "3" ) - PORT_DIPSETTING( 0x00c0, "4" ) - PORT_DIPSETTING( 0x0040, "5" ) - PORT_DIPSETTING( 0x0000, "6" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0007, 0x0007, "Difficulty A" ) PORT_DIPLOCATION("DSW2:1,2,3") - PORT_DIPSETTING( 0x0000, "1 (Novice)" ) // 8 fixed levels - PORT_DIPSETTING( 0x0001, "2" ) - PORT_DIPSETTING( 0x0002, "3" ) - PORT_DIPSETTING( 0x0003, "4" ) - PORT_DIPSETTING( 0x0007, "5 (Medium)" ) - PORT_DIPSETTING( 0x0006, "6" ) - PORT_DIPSETTING( 0x0005, "7" ) - PORT_DIPSETTING( 0x0004, "8 (expert)" ) - PORT_DIPNAME( 0x0008, 0x0008, "Difficulty Switch" ) PORT_DIPLOCATION("DSW2:4") - PORT_DIPSETTING( 0x0008, "A (8 Levels)" ) - PORT_DIPSETTING( 0x0000, "B (4 Levels)" ) - PORT_DIPNAME( 0x0030, 0x0030, "Difficulty B" ) PORT_DIPLOCATION("DSW2:5,6") - PORT_DIPSETTING( 0x0020, DEF_STR( Easy ) ) // 4 levels, and player can select 3 levels during game - PORT_DIPSETTING( 0x0030, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0010, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0040, 0x0040, "Campaign" ) PORT_DIPLOCATION("DSW2:7") - PORT_DIPSETTING( 0x0040, "Available" ) - PORT_DIPSETTING( 0x0000, "Finished" ) - PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:8") - PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) -INPUT_PORTS_END - - -/*************************************************************************** - Keith & Lucy -***************************************************************************/ - -static INPUT_PORTS_START( keithlcy ) - PORT_INCLUDE(ssv_quiz) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_BASIC( 6, 0x03, DEF_STR( Coin_B ), "DSW1:7,8" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Lives ) ) PORT_DIPLOCATION( "DSW2:3,4" ) - PORT_DIPSETTING( 0x0008, "2" ) - PORT_DIPSETTING( 0x000c, "3" ) - PORT_DIPSETTING( 0x0004, "4" ) - PORT_DIPSETTING( 0x0000, "5" ) - PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION( "DSW2:5,6" ) - PORT_DIPSETTING( 0x0030, "Every 100k" ) //100 - PORT_DIPSETTING( 0x0020, "Every 150k" ) //150 - PORT_DIPSETTING( 0x0010, "100k & Every 200K" ) //100 - PORT_DIPSETTING( 0x0000, "Every 200k" ) //200 - PORT_DIPUNUSED_DIPLOC( 0x0040, 0x0040, "DSW2:7" ) /* Manual lists these dips as "Unused" */ - PORT_DIPUNUSED_DIPLOC( 0x0080, 0x0080, "DSW2:8" ) /* Manual lists these dips as "Unused" */ -INPUT_PORTS_END - - -/*************************************************************************** - Koi Koi Simasho 2 -***************************************************************************/ - -static INPUT_PORTS_START( koikois2 ) - PORT_INCLUDE(ssv_mahjong) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPUNKNOWN_DIPLOC( 0x0001, 0x0001, "DSW1:1" ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW1:2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0004, IP_ACTIVE_LOW, "DSW1:3" ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW1:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - SSV_COINAGE_BASIC( 4, 0x03, DEF_STR( Coinage ), "DSW1:5,6" ) - PORT_DIPNAME( 0x0040, 0x0040, "Voice" ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( On ) ) - PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Controls ) ) PORT_DIPLOCATION( "DSW1:8" ) - PORT_DIPSETTING( 0x0080, DEF_STR( Joystick ) ) - PORT_DIPSETTING( 0x0000, "Keyboard" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0004, 0x0004, "Nudity" ) PORT_DIPLOCATION( "DSW2:3" ) - PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Yes ) ) - PORT_DIPUNKNOWN_DIPLOC( 0x0008, 0x0008, "DSW2:4" ) - PORT_DIPUNKNOWN_DIPLOC( 0x0010, 0x0010, "DSW2:5" ) - PORT_DIPUNKNOWN_DIPLOC( 0x0020, 0x0020, "DSW2:6" ) - PORT_DIPNAME( 0x00c0, 0x00c0, "Communication" ) PORT_DIPLOCATION( "DSW2:7,8" ) -// PORT_DIPSETTING( 0x0080, "unused" ) - PORT_DIPSETTING( 0x00c0, DEF_STR( None ) ) - PORT_DIPSETTING( 0x0040, "Board 1 (Main)" ) - PORT_DIPSETTING( 0x0000, "Board 2 (Sub)" ) -INPUT_PORTS_END - - -/*************************************************************************** - Meosis Magic -***************************************************************************/ - -static INPUT_PORTS_START( meosism ) - PORT_START("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Coinage ) ) PORT_DIPLOCATION( "DSW1:1,2" ) - PORT_DIPSETTING( 0x0003, "1 Medal/1 Credit" ) - PORT_DIPSETTING( 0x0001, "1 Medal/5 Credits" ) - PORT_DIPSETTING( 0x0002, "1 Medal/10 Credits" ) - PORT_DIPSETTING( 0x0000, "1 Medal/20 Credits" ) - PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW1:3" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( On ) ) - PORT_DIPNAME( 0x0008, 0x0008, "Attendant Pay" ) PORT_DIPLOCATION( "DSW1:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x0010, 0x0010, "Medals Payout" ) PORT_DIPLOCATION( "DSW1:5" ) - PORT_DIPSETTING( 0x0010, "400" ) - PORT_DIPSETTING( 0x0000, "800" ) - PORT_DIPNAME( 0x0020, 0x0020, "Max Credits" ) PORT_DIPLOCATION( "DSW1:6" ) - PORT_DIPSETTING( 0x0020, "5000" ) - PORT_DIPSETTING( 0x0000, "9999" ) - PORT_DIPNAME( 0x0040, 0x0040, "Hopper" ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x0080, 0x0080, "Reel Speed" ) PORT_DIPLOCATION( "DSW1:8" ) - PORT_DIPSETTING( 0x0080, DEF_STR( Low ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( High ) ) - - PORT_START("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, "Game Rate" ) PORT_DIPLOCATION( "DSW2:1,2" ) - PORT_DIPSETTING( 0x0000, "80%" ) - PORT_DIPSETTING( 0x0002, "85%" ) - PORT_DIPSETTING( 0x0003, "90%" ) - PORT_DIPSETTING( 0x0001, "95%" ) - PORT_DIPUNKNOWN_DIPLOC( 0x0004, 0x0004, "DSW2:3" ) - PORT_DIPUNKNOWN_DIPLOC( 0x0008, 0x0008, "DSW2:4" ) - PORT_DIPUNKNOWN_DIPLOC( 0x0010, 0x0010, "DSW2:5" ) - PORT_DIPNAME( 0x0020, 0x0000, DEF_STR( Controls ) ) PORT_DIPLOCATION( "DSW2:6" ) - PORT_DIPSETTING( 0x0020, "Simple" ) - PORT_DIPSETTING( 0x0000, "Complex" ) - PORT_DIPNAME( 0x0040, 0x0000, "Coin Sensor" ) PORT_DIPLOCATION( "DSW2:7" ) - PORT_DIPSETTING( 0x0040, "Active High" ) - PORT_DIPSETTING( 0x0000, "Active Low" ) - PORT_DIPNAME( 0x0080, 0x0080, "Hopper Sensor" ) PORT_DIPLOCATION( "DSW2:8" ) - PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - - PORT_START("P1") // IN2 - $210008 - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) //bet - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON3 ) //stop/r - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON2 ) //stop/c - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 ) //stop/l - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) //no - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) //yes - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START1 ) //start - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) //- - - PORT_START("P2") // IN3 - $21000a - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) //- - PORT_SERVICE_NO_TOGGLE( 0x0002, IP_ACTIVE_LOW ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) //- - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE3 ) PORT_NAME("Payout") //payout - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) //- - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_TILT ) //reset - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) //- - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) //- - - PORT_START("SYSTEM") // IN4 - $21000c - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(10) -// PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(10) // Should work but doesn't - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) //service coin - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Analyzer") //analyzer - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON5 ) //max bet - PORT_BIT( 0x00e2, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - - -/*************************************************************************** - Monster Slider -***************************************************************************/ - -static INPUT_PORTS_START( mslider ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_STANDARD( 0, 0x07, DEF_STR( Coin_A ), "DSW1:1,2,3" ) - SSV_COINAGE_STANDARD( 3, 0x07, DEF_STR( Coin_B ), "DSW1:4,5,6" ) - PORT_SERVICE_DIPLOC( 0x0040, IP_ACTIVE_LOW, "DSW1:7" ) - PORT_DIPUNUSED_DIPLOC( 0x0080, 0x0080, "DSW1:8" ) /* Manual lists this dip as "Unused" */ - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0001, 0x0000, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( On ) ) // service mode calls this OFF - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) // and this ON, TODO: check if it's an error in the video code, or a mistake in the game - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:2" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( On ) ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:3,4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0030, 0x0030, "Rounds (Vs Mode)" ) PORT_DIPLOCATION( "DSW2:5,6" ) - PORT_DIPSETTING( 0x0000, "1" ) - PORT_DIPSETTING( 0x0030, "2" ) - PORT_DIPSETTING( 0x0020, "3" ) - PORT_DIPSETTING( 0x0010, "4" ) - PORT_DIPUNUSED_DIPLOC( 0x0040, 0x0040, "DSW2:7" ) /* Manual lists these dips as "Unused" */ - PORT_DIPUNUSED_DIPLOC( 0x0080, 0x0080, "DSW2:8" ) -INPUT_PORTS_END - - -/*************************************************************************** - Gourmet Battle Quiz Ryohrioh CooKing -***************************************************************************/ - -static INPUT_PORTS_START( ryorioh ) - PORT_INCLUDE(ssv_quiz) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPUNUSED_DIPLOC( 0x0040, 0x0040, "DSW1:7" ) /* Manual states this dip is "Unused" */ - PORT_DIPUNKNOWN_DIPLOC( 0x0080, 0x0080, "DSW1:8" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPUNUSED_DIPLOC( 0x0004, 0x0004, "DSW2:3" ) /* Manual states dips 3-8 are "Unused" */ - PORT_DIPUNUSED_DIPLOC( 0x0008, 0x0008, "DSW2:4" ) - PORT_DIPUNUSED_DIPLOC( 0x0010, 0x0010, "DSW2:5" ) - PORT_DIPUNUSED_DIPLOC( 0x0020, 0x0020, "DSW2:6" ) - PORT_DIPUNUSED_DIPLOC( 0x0040, 0x0040, "DSW2:7" ) - PORT_DIPUNUSED_DIPLOC( 0x0080, 0x0080, "DSW2:8" ) -INPUT_PORTS_END - - -/*************************************************************************** - Super Real Mahjong PIV -***************************************************************************/ - -static INPUT_PORTS_START( srmp4 ) - PORT_INCLUDE(ssv_mahjong) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) ) PORT_DIPLOCATION( "DSW1:1,2,3" ) - PORT_DIPSETTING( 0x0000, DEF_STR( 5C_1C ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x0006, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x0005, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( 1C_4C ) ) - PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) ) PORT_DIPLOCATION( "DSW1:4,5,6" ) - PORT_DIPSETTING( 0x0000, DEF_STR( 5C_1C ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x0010, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x0018, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x0030, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x0028, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x0020, DEF_STR( 1C_4C ) ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Free_Play ) ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPUNKNOWN_DIPLOC( 0x0080, 0x0080, "DSW1:8" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2,3" ) - PORT_DIPSETTING( 0x0006, DEF_STR( Easiest ) ) - PORT_DIPSETTING( 0x0005, DEF_STR( Easier ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0007, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Medium ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Harder ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:5" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0010, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0020, IP_ACTIVE_LOW, "DSW2:6" ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION( "DSW2:7" ) - PORT_DIPSETTING( 0x0000, DEF_STR( No ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( Yes ) ) - PORT_DIPUNKNOWN_DIPLOC( 0x0080, 0x0080, "DSW2:8" ) -INPUT_PORTS_END - - -/*************************************************************************** - Super Real Mahjong P7 -***************************************************************************/ - -static INPUT_PORTS_START( srmp7 ) - PORT_START("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coinage ) ) PORT_DIPLOCATION( "DSW1:1,2,3" ) - PORT_DIPSETTING( 0x0000, DEF_STR( 5C_1C ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x0006, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x0005, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( 1C_4C ) ) - PORT_DIPUNKNOWN_DIPLOC( 0x0008, 0x0008, "DSW1:4" ) - PORT_DIPUNKNOWN_DIPLOC( 0x0010, 0x0010, "DSW1:5" ) - PORT_DIPUNKNOWN_DIPLOC( 0x0020, 0x0020, "DSW1:6" ) - PORT_DIPNAME( 0x0040, 0x0040, "Re-cloth" ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( On ) ) - PORT_DIPNAME( 0x0080, 0x0080, "Nudity" ) PORT_DIPLOCATION( "DSW1:8" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0080, DEF_STR( On ) ) - - PORT_START("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2,3" ) - PORT_DIPSETTING( 0x0006, DEF_STR( Easiest ) ) - PORT_DIPSETTING( 0x0005, DEF_STR( Easier ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0007, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Medium ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Harder ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0008, 0x0008, "Kuitan" ) PORT_DIPLOCATION( "DSW2:4" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION( "DSW2:5" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0010, DEF_STR( On ) ) - PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:6" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0020, DEF_STR( On ) ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:7" ) - PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0080, IP_ACTIVE_LOW, "DSW2:8" ) - - PORT_START("P1") // IN2 - $210008 - PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("P2") // IN3 - $21000a - PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("SYSTEM") // IN4 - $21000c - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(10) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(10) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) // tested - PORT_BIT( 0x00e0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY0") // IN6 - $600000(0) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_K ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_G ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_C ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY1") // IN7 - $600000(1) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_N ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_J ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_F ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_B ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY2") // IN8 - $600000(2) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_M ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_I ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_E ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_A ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("KEY3") // IN5 - $600000(3) - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_MAHJONG_L ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_MAHJONG_H ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_MAHJONG_D ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - - -/*************************************************************************** - Storm Blade -***************************************************************************/ - -static INPUT_PORTS_START( stmblade ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_STANDARD( 0, 0x07, DEF_STR( Coin_A ), "DSW1:1,2,3" ) - SSV_COINAGE_STANDARD( 3, 0x07, DEF_STR( Coin_B ), "DSW1:4,5,6" ) - PORT_DIPUNUSED_DIPLOC( 0x0040, 0x0040, "DSW1:7" ) - PORT_DIPNAME( 0x0080, 0x0080, "Rapid Fire" ) PORT_DIPLOCATION( "DSW1:8" ) - PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0001, 0x0000, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:1" ) /* works opposite of expected, emulation issue?? */ - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:2" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( On ) ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:3,4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Lives ) ) PORT_DIPLOCATION( "DSW2:5,6" ) - PORT_DIPSETTING( 0x0020, "1" ) - PORT_DIPSETTING( 0x0010, "2" ) - PORT_DIPSETTING( 0x0030, "3" ) - PORT_DIPSETTING( 0x0000, "4" ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION( "DSW2:7" ) - PORT_DIPSETTING( 0x0040, "600000" ) - PORT_DIPSETTING( 0x0000, "800000" ) - PORT_SERVICE_DIPLOC( 0x0080, IP_ACTIVE_LOW, "DSW2:8" ) -INPUT_PORTS_END - - -/*************************************************************************** - Survival Arts -***************************************************************************/ - -static INPUT_PORTS_START( survarts ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_EXTENDED( 0, 0x09, DEF_STR( Coin_A ), "DSW1:1,2,3,4" ) - PORT_DIPSETTING( 0x0000, "2 Credits Start, 1 to continue" ) - SSV_COINAGE_EXTENDED( 4, 0x09, DEF_STR( Coin_B ), "DSW1:5,6,7,8" ) - PORT_DIPSETTING( 0x0000, "2 Credits Start, 1 to continue" ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0000, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:2" ) - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0004, 0x0004, "Timer Speed" ) PORT_DIPLOCATION( "DSW2:3" ) - PORT_DIPSETTING( 0x0004, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0000, "Fast" ) - PORT_DIPNAME( 0x0008, 0x0008, "Damage Level" ) PORT_DIPLOCATION( "DSW2:4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( High ) ) - PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:5,6" ) - PORT_DIPSETTING( 0x0010, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0030, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0020, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x00c0, 0x00c0, "Fatal Damage" ) PORT_DIPLOCATION( "DSW2:7,8" ) - PORT_DIPSETTING( 0x0040, "Light" ) - PORT_DIPSETTING( 0x00c0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0080, "Heavy" ) - PORT_DIPSETTING( 0x0000, "Heaviest" ) - - PORT_START("ADD_BUTTONS") // IN5 - $500008 - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(2) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) -INPUT_PORTS_END - - -/*************************************************************************** - Pachinko Sexy Reaction -***************************************************************************/ - -static INPUT_PORTS_START( sxyreact ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_STANDARD( 0, 0x07, DEF_STR( Coin_A ), "DSW1:1,2,3" ) - PORT_DIPUNUSED_DIPLOC( 0x0008, 0x0008, "DSW1:4" ) - PORT_DIPUNUSED_DIPLOC( 0x0010, 0x0010, "DSW1:5" ) - PORT_DIPUNUSED_DIPLOC( 0x0020, 0x0020, "DSW1:6" ) - //SSV_COINAGE_STANDARD( 3, 0x07, DEF_STR( Coin_B ), "DSW1:4,5,6" ) - PORT_DIPNAME( 0x0040, 0x0040, "Credits To Play" ) PORT_DIPLOCATION( "DSW1:7" ) - PORT_DIPSETTING( 0x0040, "1" ) - PORT_DIPSETTING( 0x0000, "2" ) - PORT_DIPNAME( 0x0080, 0x0080, "Buy Balls With Credits" ) PORT_DIPLOCATION( "DSW1:8" ) // press start - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0080, DEF_STR( On ) ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:1" ) - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION( "DSW2:2" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( On ) ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:3,4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Very_Hard ) ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Controls ) ) PORT_DIPLOCATION( "DSW2:5" ) - PORT_DIPSETTING( 0x0010, "Dial" ) - PORT_DIPSETTING( 0x0000, DEF_STR( Joystick ) ) - PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Free_Play ) ) PORT_DIPLOCATION( "DSW2:6" ) - PORT_DIPSETTING( 0x0020, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0040, IP_ACTIVE_LOW, "DSW2:7" ) - PORT_DIPUNUSED_DIPLOC( 0x0080, 0x0080, "DSW2:8" ) - - PORT_START("SERVICE") // IN5 - $500002 - PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_SERVICE2 ) // ball switch on -> handle motor off - - PORT_START("PADDLE") // IN6 - $500004 - PORT_BIT( 0xff, 0x00, IPT_PADDLE ) PORT_MINMAX(0,0xcf) PORT_SENSITIVITY(15) PORT_KEYDELTA(15) PORT_CENTERDELTA(0) PORT_CODE_DEC(KEYCODE_N) PORT_CODE_INC(KEYCODE_M) -INPUT_PORTS_END - - -/*************************************************************************** - Twin Eagle II -***************************************************************************/ - -static INPUT_PORTS_START( twineag2 ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - SSV_COINAGE_EXTENDED( 0, 0x0f, DEF_STR( Coin_A ), "DSW1:1,2,3,4" ) - //PORT_DIPSETTING( 0x0000, "???" ) - No values listed for all "ON" - SSV_COINAGE_EXTENDED( 4, 0x0f, DEF_STR( Coin_B ), "DSW1:5,6,7,8" ) - //PORT_DIPSETTING( 0x0000, "???" ) - No values listed for all "ON" - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Difficulty ) ) PORT_DIPLOCATION( "DSW2:1,2,3" ) - PORT_DIPSETTING( 0x0006, DEF_STR( Easiest ) ) - PORT_DIPSETTING( 0x0005, DEF_STR( Easier ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0007, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Medium ) ) - PORT_DIPSETTING( 0x0002, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Harder ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Free_Play ) ) PORT_DIPLOCATION( "DSW2:4" ) - PORT_DIPSETTING( 0x0008, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Lives ) ) PORT_DIPLOCATION( "DSW2:5" ) - PORT_DIPSETTING( 0x0000, "2" ) - PORT_DIPSETTING( 0x0010, "3" ) - PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Pause ) ) PORT_DIPLOCATION( "DSW2:6" ) - PORT_DIPSETTING( 0x0020, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION( "DSW2:7" ) - PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0080, IP_ACTIVE_LOW, "DSW2:8" ) - -// Not shown in service mode I/O or show any function in game. Valid? -// PORT_MODIFY("SYSTEM") // IN4 - $21000c -// PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE2 ) -// PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_SERVICE4 ) -// PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START3 ) -// PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START4 ) - -INPUT_PORTS_END - - -/*************************************************************************** - Ultra X -***************************************************************************/ - -static INPUT_PORTS_START( ultrax ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x000f, 0x000f, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("DSW1:1,2,3,4") - PORT_DIPSETTING( 0x0008, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x0009, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x000f, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x000e, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x000d, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x000c, DEF_STR( 1C_4C ) ) - PORT_DIPSETTING( 0x000b, DEF_STR( 1C_5C ) ) - PORT_DIPSETTING( 0x000a, DEF_STR( 1C_6C ) ) - PORT_DIPNAME( 0x00f0, 0x00f0, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("DSW1:5,6,7,8") - PORT_DIPSETTING( 0x0080, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x0090, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x00f0, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x00e0, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x00d0, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x00c0, DEF_STR( 1C_4C ) ) - PORT_DIPSETTING( 0x00b0, DEF_STR( 1C_5C ) ) - PORT_DIPSETTING( 0x00a0, DEF_STR( 1C_6C ) ) - - PORT_MODIFY("DSW2") // IN1 - $210004 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("DSW2:1,2") - PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) //$140 - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) //$190 - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) //$200 - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) //$300 - PORT_DIPNAME( 0x0014, 0x0004, DEF_STR( Region ) ) PORT_DIPLOCATION("DSW2:3,5") - PORT_DIPSETTING( 0x0000, DEF_STR( China ) ) - PORT_DIPSETTING( 0x0014, DEF_STR( Japan ) ) -//PORT_DIPSETTING( 0x0010, DEF_STR( Japan ) ) - PORT_DIPSETTING( 0x0004, DEF_STR( World ) ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Free_Play ) ) PORT_DIPLOCATION("DSW2:4") - PORT_DIPSETTING( 0x0008, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - // country 0x0010 - PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSW2:6") - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0020, DEF_STR( On ) ) - PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("DSW2:7") - PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0080, IP_ACTIVE_LOW, "DSW2:8" ) -INPUT_PORTS_END - - -/*************************************************************************** - Vasara -***************************************************************************/ - -static INPUT_PORTS_START( vasara ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("SYSTEM") // IN4 - $21000c - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Free_Play ) ) PORT_DIPLOCATION("DSW1:1") - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("DSW1:2") - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0004, IP_ACTIVE_LOW, "DSW1:3" ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSW1:4") - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - SSV_COINAGE_BASIC( 4, 0x03, DEF_STR( Coin_A ), "DSW1:5,6" ) - SSV_COINAGE_BASIC( 6, 0x03, DEF_STR( Coin_B ), "DSW1:7,8" ) - - PORT_MODIFY("DSW2") // IN1 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("DSW2:1,2") - PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x000c, 0x000c, "Bomber Stock" ) PORT_DIPLOCATION("DSW2:3,4") - PORT_DIPSETTING( 0x0000, "0" ) - PORT_DIPSETTING( 0x0004, "1" ) - PORT_DIPSETTING( 0x000c, "2" ) - PORT_DIPSETTING( 0x0008, "3" ) - PORT_DIPNAME( 0x0030, 0x0030, DEF_STR( Lives )) PORT_DIPLOCATION("DSW2:5,6") - PORT_DIPSETTING( 0x0000, "1" ) - PORT_DIPSETTING( 0x0010, "2" ) - PORT_DIPSETTING( 0x0030, "3" ) - PORT_DIPSETTING( 0x0020, "5" ) - PORT_DIPNAME( 0x0040, 0x0040, "Game Voice" ) PORT_DIPLOCATION("DSW2:7") - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( On ) ) - PORT_DIPNAME( 0x0080, 0x0000, "English Subtitles" ) PORT_DIPLOCATION("DSW2:8") - PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) -INPUT_PORTS_END - -/*************************************************************************** - Vasara 2 -***************************************************************************/ - -static INPUT_PORTS_START( vasara2 ) - PORT_INCLUDE(ssv_joystick) - - PORT_MODIFY("SYSTEM") // IN4 - $21000c - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_MODIFY("DSW1") // IN0 - $210002 - PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Free_Play ) ) PORT_DIPLOCATION("DSW1:1") - PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("DSW1:2") - PORT_DIPSETTING( 0x0002, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x0004, IP_ACTIVE_LOW, "DSW1:3" ) - PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSW1:4") - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0008, DEF_STR( On ) ) - SSV_COINAGE_BASIC( 4, 0x03, DEF_STR( Coin_A ), "DSW1:5,6" ) - SSV_COINAGE_BASIC( 6, 0x03, DEF_STR( Coin_B ), "DSW1:7,8" ) - - PORT_MODIFY("DSW2") // IN1 - PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("DSW2:1,2") - PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x0001, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x000c, 0x000c, DEF_STR( Lives ) ) PORT_DIPLOCATION("DSW2:3,4") - PORT_DIPSETTING( 0x0000, "1" ) - PORT_DIPSETTING( 0x0004, "2" ) - PORT_DIPSETTING( 0x000c, "3" ) - PORT_DIPSETTING( 0x0008, "5" ) - PORT_DIPNAME( 0x0010, 0x0010, "Game Voice" ) PORT_DIPLOCATION("DSW2:5") - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0010, DEF_STR( On ) ) - PORT_DIPNAME( 0x0020, 0x0020, "Vasara Stock" ) PORT_DIPLOCATION("DSW2:6") - PORT_DIPSETTING( 0x0020, "2" ) - PORT_DIPSETTING( 0x0000, "3" ) - PORT_DIPNAME( 0x0040, 0x0040, "English Subtitles" ) PORT_DIPLOCATION("DSW2:7") - PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0040, DEF_STR( On ) ) - PORT_DIPNAME( 0x0080, 0x0080, "Secret Character" ) PORT_DIPLOCATION("DSW2:8") - PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) -INPUT_PORTS_END - - - -/*************************************************************************** - - - Graphics Layouts - - -***************************************************************************/ - -/* 16 x 8 tiles. Depth is 8 bits, but can be decreased to 6 (and maybe - less) at runtime. */ - -static const gfx_layout layout_16x8x8 = -{ - 16,8, - RGN_FRAC(1,4), - 8, - { RGN_FRAC(3,4)+8, RGN_FRAC(3,4)+0, - RGN_FRAC(2,4)+8, RGN_FRAC(2,4)+0, - RGN_FRAC(1,4)+8, RGN_FRAC(1,4)+0, - RGN_FRAC(0,4)+8, RGN_FRAC(0,4)+0 }, - { STEP8(0,1), STEP8(16,1) }, - { STEP8(0,16*2) }, - 16*8*2 -}; - -static GFXDECODE_START( gfx_ssv ) - GFXDECODE_ENTRY( "gfx1", 0, layout_16x8x8, 0, 0x8000/64 ) // [0] Sprites (256 colors) -GFXDECODE_END - -static const gfx_layout layout_16x8x8_ram = -{ - 16,8, - 0x40000 * 16 / (16 * 8), - 8, - { STEP8(0,1) }, - { STEP16(0,8) }, - { STEP8(0,16*8) }, - 16*8*8 -}; - -static GFXDECODE_START( gfx_eaglshot ) - GFXDECODE_ENTRY( nullptr, 0, layout_16x8x8_ram, 0, 0x8000/64 ) // [0] Sprites (256 colors, decoded from RAM) -GFXDECODE_END - -static const gfx_layout layout_16x16x8 = -{ - 16,16, - RGN_FRAC(1,1), - 8, - { STEP8(0,1) }, - { STEP16(0,8) }, - { STEP16(0,16*8) }, - 16*16*8 -}; - -static GFXDECODE_START( gfx_gdfs ) - GFXDECODE_ENTRY( "gfx1", 0, layout_16x8x8, 0, 0x8000/64 ) // [0] Sprites (256 colors) - GFXDECODE_ENTRY( "gfx3", 0, layout_16x16x8, 0, 0x8000/256 ) // [3] Tilemap -GFXDECODE_END - -/*************************************************************************** - - - Machine Drivers - - -***************************************************************************/ - -/*************************************************************************** - - Some games (e.g. hypreac2) oddly map the high bits of the tile code - to the gfx ROMs: arranging the ROMs accordingly would waste tens of - megabytes. So we use a look-up table. - - We also need to set up game specific offsets for sprites and layers - (at least until the CRT controlled will be emulated). - -***************************************************************************/ - -void ssv_state::init_ssv() -{ - for (int i = 0; i < 16; i++) - m_tile_code[i] = bitswap<4>(i,0,1,2,3) << 16; - - enable_video(1); - m_interrupt_ultrax = 0; - - save_item(NAME(m_requested_int)); - save_item(NAME(m_irq_enable)); -} - -void ssv_state::init_ssv_tilescram() -{ - init_ssv(); - - for (int i = 0; i < 16; i++) - m_tile_code[i] = i << 16; -} - - -// srmp4 -// ((uint16_t *)memregion("maincpu")->base())[0x2b38/2] = 0x037a; /* patch to see gal test mode */ - -void ssv_state::init_sexy() -{ - init_ssv_tilescram(); - save_item(NAME(m_sxyreact_serial)); - save_item(NAME(m_sxyreact_dial)); -} - -void ssv_state::init_eaglshot() -{ - init_ssv_tilescram(); - membank("gfxrom")->configure_entries(0, 6+1, memregion("gfxdata")->base(), 0x200000); -} - -void ssv_state::init_jsk() -{ - init_ssv(); - save_item(NAME(m_latches)); -} - -void ssv_state::init_pastelis() -{ - init_ssv(); - m_raster_interrupt_enabled = true; -} - -void ssv_state::init_ssv_irq1() -{ - init_ssv(); - m_interrupt_ultrax = 1; -} - - -#define SSV_MASTER_CLOCK XTAL(48'000'000)/3 - -#define SSV_PIXEL_CLOCK XTAL(42'954'545)/6 -#define SSV_HTOTAL 0x1c6 -#define SSV_HBEND 0 -#define SSV_HBSTART 0x150 -#define SSV_VTOTAL 0x106 -#define SSV_VBEND 0 -#define SSV_VBSTART 0xf0 - -void ssv_state::ssv(machine_config &config) -{ - /* basic machine hardware */ - V60(config, m_maincpu, SSV_MASTER_CLOCK); /* Based on STA-0001 & STA-0001B System boards */ - m_maincpu->set_irq_acknowledge_callback(FUNC(ssv_state::irq_callback)); - - TIMER(config, "scantimer").configure_scanline(FUNC(ssv_state::interrupt), "screen", 0, 1); - - /* video hardware */ - SCREEN(config, m_screen, SCREEN_TYPE_RASTER); - m_screen->set_raw(SSV_PIXEL_CLOCK,SSV_HTOTAL,SSV_HBEND,SSV_HBSTART,SSV_VTOTAL,SSV_VBEND,SSV_VBSTART); - m_screen->set_screen_update(FUNC(ssv_state::screen_update)); - m_screen->set_palette(m_palette); - //m_screen->set_video_attributes(VIDEO_UPDATE_SCANLINE); - - GFXDECODE(config, m_gfxdecode, m_palette, gfx_ssv); - PALETTE(config, m_palette).set_format(palette_device::xRGB_888, 0x8000); - - /* sound hardware */ - SPEAKER(config, "lspeaker").front_left(); - SPEAKER(config, "rspeaker").front_right(); - - ES5506(config, m_ensoniq, SSV_MASTER_CLOCK); - m_ensoniq->set_region0("ensoniq.0"); - m_ensoniq->set_region1("ensoniq.1"); - m_ensoniq->set_region2("ensoniq.2"); - m_ensoniq->set_region3("ensoniq.3"); - m_ensoniq->set_channels(1); - m_ensoniq->add_route(0, "lspeaker", 0.1); - m_ensoniq->add_route(1, "rspeaker", 0.1); -} - -void ssv_state::drifto94(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::drifto94_map); - - UPD96050(config, m_dsp, 10000000); /* TODO: correct? */ - m_dsp->set_addrmap(AS_PROGRAM, &ssv_state::dsp_prg_map); - m_dsp->set_addrmap(AS_DATA, &ssv_state::dsp_data_map); - - config.set_perfect_quantum(m_maincpu); - - NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); - - /* video hardware */ - m_screen->set_visarea(0, (0xcd-0x25)*2-1, 0, (0x101-0x13)-1); -} - -void ssv_state::gdfs(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::gdfs_map); - - EEPROM_93C46_16BIT(config, m_eeprom); - - ADC0809(config, m_adc, 1000000); // unknown clock - m_adc->in_callback<0>().set_ioport("GUNX1"); - m_adc->in_callback<1>().set_ioport("GUNY1"); - m_adc->in_callback<2>().set_ioport("GUNX2"); - m_adc->in_callback<3>().set_ioport("GUNY2"); - m_adc->eoc_callback().set(FUNC(ssv_state::gdfs_adc_int_w)); - - /* video hardware */ - m_screen->set_visarea(0, (0xd5-0x2c)*2-1, 0, (0x102-0x12)-1); - m_screen->set_screen_update(FUNC(ssv_state::screen_update_gdfs)); - - ST0020_SPRITES(config, m_gdfs_st0020, 0); - m_gdfs_st0020->set_palette(m_palette); - - m_gfxdecode->set_info(gfx_gdfs); - - MCFG_VIDEO_START_OVERRIDE(ssv_state,gdfs) -} - -void ssv_state::hypreact(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::hypreact_map); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xcb-0x22)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::hypreac2(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::hypreac2_map); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xcb-0x22)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::janjans1(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::janjans1_map); - - /* video hardware */ - m_screen->set_visarea(0, (0xcb-0x23)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::keithlcy(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::keithlcy_map); - - /* video hardware */ - m_screen->set_visarea(0, (0xcd-0x25)*2-1, 0, (0x101 - 0x13)-1); -} - -void ssv_state::meosism(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::meosism_map); - - NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xd5-0x2c)*2-1, 0, (0xfe - 0x12)-1); -} - -void ssv_state::mslider(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::mslider_map); - - /* video hardware */ - m_screen->set_visarea(0, (0xd6-0x26)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::ryorioh(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::ryorioh_map); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xcb-0x23)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::vasara(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::ryorioh_map); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xcc-0x24)*2-1, 0,(0xfe - 0x0e)-1); -} - -void ssv_state::srmp4(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::srmp4_map); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xd4-0x2c)*2-1, 0, (0x102 - 0x12)-1); -} - -void ssv_state::srmp7(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::srmp7_map); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xd4-0x2c)*2-1, 0, (0xfd - 0x0e)-1); -} - -void ssv_state::stmblade(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::drifto94_map); - - UPD96050(config, m_dsp, 10000000); - m_dsp->set_addrmap(AS_PROGRAM, &ssv_state::dsp_prg_map); - m_dsp->set_addrmap(AS_DATA, &ssv_state::dsp_data_map); - - /* don't need this, game just does a simple check at boot then the DSP stalls into a tight loop. */ - //config.set_perfect_quantum(m_maincpu); - - NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); - - /* video hardware */ - m_screen->set_visarea(0, (0xd6-0x26)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::survarts(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::survarts_map); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xd4-0x2c)*2-1, 0, (0x102 - 0x12)-1); -} - -void ssv_state::dynagear(machine_config &config) -{ - survarts(config); - - /* video hardware */ - m_screen->set_visarea(0, (0xd4-0x2c)*2-1, 0, (0x102 - 0x12)-1); -} - -void ssv_state::eaglshot(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::eaglshot_map); - - NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); - - UPD4701A(config, m_upd4701); - m_upd4701->set_portx_tag("TRACKX"); - m_upd4701->set_porty_tag("TRACKY"); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xca - 0x2a)*2-1, 0, (0xf6 - 0x16)-1); - m_screen->set_screen_update(FUNC(ssv_state::screen_update_eaglshot)); - - m_gfxdecode->set_info(gfx_eaglshot); - - MCFG_VIDEO_START_OVERRIDE(ssv_state,eaglshot) -} - -void ssv_state::sxyreact(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::sxyreact_map); - - NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xcb - 0x22)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::sxyreac2(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::sxyreact_map); - - NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xcb - 0x23)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::cairblad(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::sxyreact_map); - - NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xcb - 0x22)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::twineag2(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::twineag2_map); - - UPD96050(config, m_dsp, 10000000); - m_dsp->set_addrmap(AS_PROGRAM, &ssv_state::dsp_prg_map); - m_dsp->set_addrmap(AS_DATA, &ssv_state::dsp_data_map); - - config.set_perfect_quantum(m_maincpu); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xd4 - 0x2c)*2-1, 0, (0x102 - 0x12)-1); -} - -void ssv_state::ultrax(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::ultrax_map); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xd4 - 0x2c)*2-1, 0, (0x102 - 0x12)-1); -} - -void ssv_state::jsk(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::jsk_map); - - V810(config, "sub", 25000000).set_addrmap(AS_PROGRAM, &ssv_state::jsk_v810_mem); - - WATCHDOG_TIMER(config, "watchdog"); - - /* video hardware */ - m_screen->set_visarea(0, (0xca - 0x22)*2-1, 0, (0xfe - 0x0e)-1); -} - -void ssv_state::pastelis(machine_config &config) -{ - ssv(config); - - /* basic machine hardware */ - m_maincpu->set_addrmap(AS_PROGRAM, &ssv_state::keithlcy_map); - - /* video hardware */ - m_screen->set_visarea(0, (0xd6-0x26)*2-1, 0, (0xfe - 0x0e)-1); -} - -/*************************************************************************** - - - ROMs Loading - - -***************************************************************************/ - - -/*************************************************************************** - - Change Air Blade (Japan) - -Change Air Blade -Sammy, 1999 - -ROM board for use with System SSV Main Board -PCB No: P1-112C - -Fairly sparsely populated board containing not much except.... - -RAM : 6262 (x1) -OTHER : 3.6V Ni-Cd Battery -PALs : (x1, labelled AC412G00) - -ROMs : (Filename = ROM Label) - (Extension = PCB Location) ------------------------------- -AC1801M01.U6 32M Mask -AC1802M01.U9 32M Mask - -AC1805M01.U8 32M Mask -AC1806M01.U11 32M Mask - -AC1803M01.U7 32M Mask -AC1804M01.U10 32M Mask - -AC1807M01.U41 32M Mask -AC1810E01.U32 27C160 - - -***************************************************************************/ - -ROM_START( cairblad ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "ac1810e0.u32", 0x000000, 0x200000, CRC(13a0b4c2) SHA1(3498303e9b186ab329ee761cee9d4cb8ed552455) ) // AC1810E01.U32 27C160 - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "ac1801m0.u6", 0x0000000, 0x400000, CRC(1b2b6943) SHA1(95c5dc0ed1d533b2285452c8546346d96a90d097) ) // AC1801M01.U6 32M Mask - ROM_LOAD( "ac1802m0.u9", 0x0400000, 0x400000, CRC(e053b087) SHA1(9569e79c6363e8f97c27aacaa29d25cf32c4b4c1) ) // AC1802M01.U9 32M Mask - - ROM_LOAD( "ac1803m0.u7", 0x0800000, 0x400000, CRC(45484866) SHA1(5e2f06743906be298202eafc233b76762d60d8aa) ) // AC1803M01.U7 32M Mask - ROM_LOAD( "ac1804m0.u10", 0x0c00000, 0x400000, CRC(5e0b2285) SHA1(b3b8f249c1b1b2e9438ebc3a669f3ebfb5aa5feb) ) // AC1804M01.U10 32M Mask - - ROM_LOAD( "ac1805m0.u8", 0x1000000, 0x400000, CRC(19771f43) SHA1(d6a05392c58d3f60d666e08b3a82f06fa2c8e3a3) ) // AC1805M01.U8 32M Mask - ROM_LOAD( "ac1806m0.u11", 0x1400000, 0x400000, CRC(816b97dc) SHA1(3737cb37a4db720901661fa9b4e30c44181efb94) ) // AC1806M01.U11 32M Mask - - ROM_FILL( 0x1800000, 0x800000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "ac1410m0.u41", 0x000000, 0x400000, CRC(ecf1f255) SHA1(984b1529b8f0c7d94ea713c85d71df00f54eba79) ) // AC1807M01.U41 32M Mask -ROM_END - - -/*************************************************************************** - - Drift Out '94 - The hard order - ----------------------- -System SSV (STA-0001B) ----------------------- -CPU : NEC D70615GD-16-S (V60) -Sound: Ensoniq ES5506 (OTTOR2) -OSC : 42.9545MHz(X2) 48.0000MHz(X3) - -Custom chips: -ST-0004 (Video DAC?) -ST-0005 (Parallel I/O?) -ST-0006 (Video controller) -ST-0007 (System controller) - -Program Work RAM : 256Kbitx2 (expandable to 1Mx2) -Object Work RAM : 1Mbitx2 -Color Palette RAM : 256Kbitx3 (expandable to 1Mx3) - -------------------------- -SSV Subboard (VISCO-001B) -------------------------- -ROMs: -visco-33.bin - Main programs (27c4000) -visco-37.bin / - -vg003-19.u26 - Data? (mask, read as 27c160) - -vg003-17.u22 - Samples (mask, read as 27c160) -vg003-18.u15 / - -vg003-01.a0 - Graphics (mask, read as 27c160) -vg003-05.a1 | -vg003-09.a2 | -vg009-13.a3 | -vg009-02.b0 | -vg003-06.b1 | -vg003-10.b2 | -vg003-14.b3 | -vg003-03.c0 | -vg003-07.c1 | -vg003-11.c2 | -vg003-15.c3 | -vg003-04.d0 | -vg003-08.d1 | -vg003-12.d2 | -vg003-16.d3 / - -VISCO-001B -|-----------------------|CN1|-| -| | -| VG003-16.D3 L | -| VG003-12.D2 o | -| VG003-18.U15 VG003-08.D1 g | -| VG003-17.U22 VG003-04.D0 i | -| VG003-15.C3 c | -| VG003-11.C2 | -| VG003-07.C1 c | -| uPD4701AC VG003-03.C0 h | -| ADC0809 VG003-14.B3 i | -| VG003-19.U26 VG003-10.B2 p | -| VISCO-33.U33 VG003-06.B1 s | -| VISCO-37.U37 VG003-02.B0 | -|6264 VG003-22 VG003-13.A3 x | -| ST010 VG003-09.A2 | -| VG003-05.A1 1 | -|3790 BT2* BT1 VG003-01.A0 7 | -| | -|-----------------------------| - - VG003-22: GAL16V8B (undumped) at U29 -SETA ST010: Custom programmed uPD96050 MCU used for math caculations -ADC0809CCN: 8bit microprocessor compatible A/D converters with 8-Channel Multiplexer - uPD4701AC: X, Y 2-axis Incremental Encoder Counter - CN1: 5-pin male header/connector - 3790: MB3790 Bi-CMOS Battery Backup IC - 6264: Sharp LH5168D-10L 8K x 8bit CMOS SRAM - BT1: CR2032 3v battery - -***************************************************************************/ - -ROM_START( drifto94 ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "vg003-19.u26", 0x000000, 0x200000, CRC(238e5e2b) SHA1(fe58f571857804263642d7d089df962327a007b6) ) // "SoundDriverV1.1a" - ROM_LOAD16_BYTE( "visco-37.u37", 0x200000, 0x080000, CRC(78fa3ccb) SHA1(0c79ff1aa31e7ca1eeb14fbef7774278fa83ba44) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "visco-33.u33", 0x200001, 0x080000, CRC(88351146) SHA1(1decce44b5d244b57676177f417e4937d7088124) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "vg003-01.a0", 0x0000000, 0x200000, CRC(2812aa1a) SHA1(5046fe51a4ea50051a19cfeeb091c87f0f217fb8) ) - ROM_LOAD( "vg003-05.a1", 0x0200000, 0x200000, CRC(1a1dd910) SHA1(f2252e4cd1b6269036ed02cec9d5a224736c1bce) ) - ROM_LOAD( "vg003-09.a2", 0x0400000, 0x200000, CRC(198f1c06) SHA1(7df5d51aa62f0b609cd1d296a3cfeeb38fbcd9d0) ) - ROM_LOAD( "vg003-13.a3", 0x0600000, 0x200000, CRC(b45b2267) SHA1(66828efcca2050bc1cdca6bbf2e8cf015ff937a8) ) - - ROM_LOAD( "vg003-02.b0", 0x0800000, 0x200000, CRC(d7402027) SHA1(32af6d611ea277a860ee10e98f4eee5c4458ef7a) ) - ROM_LOAD( "vg003-06.b1", 0x0a00000, 0x200000, CRC(518c509f) SHA1(e4bcbe1d8644490a58670add40d2908c7acdf989) ) - ROM_LOAD( "vg003-10.b2", 0x0c00000, 0x200000, CRC(c1ee9d8b) SHA1(7425cf92225cd1c8d764aa47db6219a6d8b090a5) ) - ROM_LOAD( "vg003-14.b3", 0x0e00000, 0x200000, CRC(645b672b) SHA1(26dfde289679cd780bc65f4f6783a6a0f8b87818) ) - - ROM_LOAD( "vg003-03.c0", 0x1000000, 0x200000, CRC(1ca7163d) SHA1(d8c5fd0054a1bc1fbad5866216f6d83c42436ecd) ) - ROM_LOAD( "vg003-07.c1", 0x1200000, 0x200000, CRC(2ff113bb) SHA1(a482ddd3c86633a79d18a03193d70fc8f0f157d8) ) - ROM_LOAD( "vg003-11.c2", 0x1400000, 0x200000, CRC(f924b105) SHA1(079ad0fc3b34c31a67dd88a442088237a2c03fdd) ) - ROM_LOAD( "vg003-15.c3", 0x1600000, 0x200000, CRC(83623b01) SHA1(026654303fb58958bc7f7be86aeb4fdd08e8be7b) ) - - ROM_LOAD( "vg003-04.d0", 0x1800000, 0x200000, CRC(6be9bc62) SHA1(c0b49a558786b50f04c1cd87a11e111ad31b85d9) ) - ROM_LOAD( "vg003-08.d1", 0x1a00000, 0x200000, CRC(a7113cdb) SHA1(74d8bfee7e816d53e60d4e54a2584643562a1ee5) ) - ROM_LOAD( "vg003-12.d2", 0x1c00000, 0x200000, CRC(ac0fd855) SHA1(992ae0d02bcefaa2fad7462b211a49fbd1338b62) ) - ROM_LOAD( "vg003-16.d3", 0x1e00000, 0x200000, CRC(1a5fd312) SHA1(1e67ffa51408de107be75c9c63df6fd1bb6ce6b1) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "vg003-17.u22", 0x000000, 0x200000, CRC(6f9294ce) SHA1(b097defd95eb1d8f00e107d7669f9d33148e75c1) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "vg003-18.u15", 0x000000, 0x200000, CRC(511b3e93) SHA1(09eda175c8f1b21c18645519cc6e89c6ca1fc5de) ) - - ROM_REGION( 0x11000, "st010", 0) - ROM_LOAD( "st010.bin", 0x00000, 0x11000, CRC(aa11ee2d) SHA1(cc1984e989cb94e3dcbb5f99e085b5414e18a017) ) // BPMicro-compatible dump - ROM_REGION32_BE( 0x10000, "dspprg", 0) - ROM_COPY( "st010", 0x00000, 0x00000, 0x10000 ) - ROM_REGION16_BE( 0x01000, "dspdata", 0) - ROM_COPY( "st010", 0x10000, 0x00000, 0x01000 ) -ROM_END - - -/*************************************************************************** - -Eagle Shot Golf -Sammy, 1994 - -GOLF ROM -|----------------------------------------| -| 514400 GAL SI3-11 | -| GAL SI3-12 | -| 514400 | -| SI003-06.u31 SI003-09.u18 | -| 514400 | -| | -| 514400 SI003-05.u30 SI003-10.u20 | -| | -| 514400 | -| SI003-04.u10 | -| 514400 | -| | -| 514400 SI003-03.u11 | -| | -| 514400 | -| SI003-02.u12 | -| | -| | -| SI003-01.u13 SI003-07.U23 | -| | -| | -| SI003-08.U24 | -| | -| uPD4701 | -| | -| mc14584b | -| | -| P1 | -|-------------------------------||||||---| - - mc14584b - Motorola HEX Schmitt Trigger - uPD4701 - Mouse/Trackball interface by NEC - 514400 - Hatachi HM514400BS7 1M x 4 DRAM (4 Megs of RAM) - GAL - GAL16V8B - P1 - 6 Pin trackball connector (same pinout as Golden Tee 9x series) - -Lower PCB -PCB Number: GOLF ROM PCB -RAM : HM514400 (x8) -PALs : GAL16V8 (x2) labelled SI3-11 & SI3-12 -OTHER : NEC D4701AC - Controls probably trackball, has 6 pin connector hooked up to a - mc14584b Logic IC. Joystick appears to be used also for selecting - stance, club and direction. - -ROMs : U18 & U20 are used for main program. - All rest are 16M Mask - U23 & U24 are sound related, all others for GFX. - -Loc ROMs Use & EPROM type ------------------------------------------ -U18 si003-09.prl - V60 Program (27C4001) -U20 si003-10.prh / - -U23 si003-07.s0 - Samples (16M-Mask) -U24 si003-08.s1 / - -U13 si003-01.d0 - Graphics (16M-Mask) -U12 si003-02.d1 | -U11 si003-03.d2 | -U10 si003-04.d3 | -U30 si003-05.d4 | -U31 si003-06.d5 / - -NOTE: The "s" and "d" designations above are silk-screened on the ROM PCB. - -Chips of note: mc14584b - Motorola HEX Schmitt Trigger - -This chip is used for the trackball trigger / reading / converting values - -***************************************************************************/ - -ROM_START( eaglshot ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "si003-09.u18", 0x000000, 0x080000, CRC(219c71ce) SHA1(4f8996b4c5b267a90073d67857358147732f8c0d) ) - ROM_LOAD16_BYTE( "si003-10.u20", 0x000001, 0x080000, CRC(c8872e48) SHA1(c8e1e712d5fa380f8fc1447502f21d2ae592811a) ) - - ROM_REGION16_LE( 0xe00000, "gfxdata", ROMREGION_ERASEFF ) /* Sprites - Read by the CPU */ - ROM_LOAD( "si003-01.u13", 0x0000000, 0x200000, CRC(d7df0d52) SHA1(d7b79a186f4272334c2297666c52f32c05787c29) ) - ROM_LOAD( "si003-02.u12", 0x0200000, 0x200000, CRC(92b4d50d) SHA1(9dc2f2961b088824d8370ac83dff796345fe4158) ) - ROM_LOAD( "si003-03.u11", 0x0400000, 0x200000, CRC(6ede4012) SHA1(6663990c6ee8e500cb8c51ad2102761ee0b3351d) ) - ROM_LOAD( "si003-04.u10", 0x0600000, 0x200000, CRC(4c65d1a1) SHA1(165f16d08813d2c989ddce4bb23b3a3652003bd5) ) - ROM_LOAD( "si003-05.u30", 0x0800000, 0x200000, CRC(daf52d56) SHA1(108419ef7d3716a3890b0d8bcbfddc1585daaae8) ) - ROM_LOAD( "si003-06.u31", 0x0a00000, 0x200000, CRC(449f9ae5) SHA1(b3e664eb88d14d1e25a0cfc8dcccc8270ca778c9) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "si003-07.u23", 0x000000, 0x200000, CRC(81679fd6) SHA1(ca3b07a87781278b5c7c85951728bbe5dfcbe042) ) - ROM_LOAD16_WORD_SWAP( "si003-08.u24", 0x200000, 0x200000, CRC(d0122ba2) SHA1(96230fb690cf144cd873f7d51c0304736a698316) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.3", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) -ROM_END - -ROM_START( eaglshotj ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "sammygolf.u18", 0x000000, 0x080000, CRC(b6d6869c) SHA1(7528751fad783e9b0fd217d2fac2ab408814a583) ) // handwritten labels on prg ROMs, other ROMS had no labels. - ROM_LOAD16_BYTE( "sammygolf.u20", 0x000001, 0x080000, CRC(c8872e48) SHA1(c8e1e712d5fa380f8fc1447502f21d2ae592811a) ) - - ROM_REGION16_LE( 0xe00000, "gfxdata", ROMREGION_ERASEFF ) /* Sprites - Read by the CPU */ - ROM_LOAD( "si003-01.u13", 0x0000000, 0x200000, CRC(d7df0d52) SHA1(d7b79a186f4272334c2297666c52f32c05787c29) ) - ROM_LOAD( "si003-02.u12", 0x0200000, 0x200000, CRC(92b4d50d) SHA1(9dc2f2961b088824d8370ac83dff796345fe4158) ) - ROM_LOAD( "si003-03.u11", 0x0400000, 0x200000, CRC(6ede4012) SHA1(6663990c6ee8e500cb8c51ad2102761ee0b3351d) ) - ROM_LOAD( "si003-04.u10", 0x0600000, 0x200000, CRC(4c65d1a1) SHA1(165f16d08813d2c989ddce4bb23b3a3652003bd5) ) - ROM_LOAD( "si003-05.u30", 0x0800000, 0x200000, CRC(daf52d56) SHA1(108419ef7d3716a3890b0d8bcbfddc1585daaae8) ) - ROM_LOAD( "si003-06.u31", 0x0a00000, 0x200000, CRC(449f9ae5) SHA1(b3e664eb88d14d1e25a0cfc8dcccc8270ca778c9) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "si003-07.u23", 0x000000, 0x200000, CRC(81679fd6) SHA1(ca3b07a87781278b5c7c85951728bbe5dfcbe042) ) - ROM_LOAD16_WORD_SWAP( "si003-08.u24", 0x200000, 0x200000, CRC(d0122ba2) SHA1(96230fb690cf144cd873f7d51c0304736a698316) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.3", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) -ROM_END - - - -/*************************************************************************** - - (Mahjong) Hyper Reaction (Japan) - -(c)1995 Sammy, SSV system - -P1-102A (ROM board) - -***************************************************************************/ - -ROM_START( hypreact ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "s14-1-02.u2", 0x000000, 0x080000, CRC(d90a383c) SHA1(9945f60ce6e1f50c24c2ae3c2c5d0df9ec3b8926) ) - ROM_LOAD16_BYTE( "s14-1-01.u1", 0x000001, 0x080000, CRC(80481401) SHA1(4b1b7050893b6659762297d0f6496c7193ea6c4e) ) - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "s14-1-07.u7", 0x0000000, 0x200000, CRC(6c429fd0) SHA1(de1bbcd4a20410328d88a3b246afa8e1a6a6f232) ) - ROM_LOAD( "s14-1-05.u13", 0x0200000, 0x200000, CRC(2ff72f98) SHA1(92bd5042e19e1dae1252305413684f9cff4bd0ac) ) - ROM_LOAD( "s14-1-06.u10", 0x0400000, 0x200000, CRC(f470ec42) SHA1(f31e9c3f3daa212226b9eea14aa1d01367fa348f) ) - - ROM_LOAD( "s14-1-10.u6", 0x0600000, 0x200000, CRC(fdd706ba) SHA1(893ead529c1ef62002dcff97092ff9fa51ced938) ) - ROM_LOAD( "s14-1-08.u12", 0x0800000, 0x200000, CRC(5bb9bb0d) SHA1(1874375cbe79663ff1b5181a1c16fa597a6b55f7) ) - ROM_LOAD( "s14-1-09.u9", 0x0a00000, 0x200000, CRC(d1dda65f) SHA1(b4bbd5c9da08b4d4fedb48cfe2dea4f27895c2fd) ) - - ROM_LOAD( "s14-1-13.u8", 0x0c00000, 0x200000, CRC(971caf11) SHA1(7cfc8bed4431467da53e19056402aa2409be5d88) ) - ROM_LOAD( "s14-1-11.u14", 0x0e00000, 0x200000, CRC(6d8e7bae) SHA1(93258663ceb6174917560bb66d72a42ba0f96c0e) ) - ROM_LOAD( "s14-1-12.u11", 0x1000000, 0x200000, CRC(233a8e23) SHA1(0c813ec80ac63aa342c8ea57d9e38cada74456d9) ) - - ROM_FILL( 0x1200000, 0x600000, 0x000000 ) - -// The chip seems to use REGION1 too, but produces no sound from there. - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "s14-1-04.u4", 0x000000, 0x200000, CRC(a5955336) SHA1(1ac0f5d27224e93acfe449d8ca5c3ab3b7f5dd8c) ) - ROM_LOAD16_WORD_SWAP( "s14-1-03.u5", 0x200000, 0x200000, CRC(283a6ec2) SHA1(766c685384ea8d801c53a2ae36b4980318aff06b) ) -ROM_END - - -/*************************************************************************** - - (Mahjong) Hyper Reaction 2 (Japan) - -(c)1997 Sammy,SSV system - -P1-112A (ROM board) - -***************************************************************************/ - -ROM_START( hypreac2 ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "u2.bin", 0x000000, 0x080000, CRC(05c93266) SHA1(0833e80f67ccb4ac17e771fa04dc6f433554a34f) ) - ROM_LOAD16_BYTE( "u1.bin", 0x000001, 0x080000, CRC(80cf9e59) SHA1(7025321539891e1a3354ca233255f5395d716933) ) - ROM_LOAD16_BYTE( "u47.bin", 0x100000, 0x080000, CRC(a3e9bfee) SHA1(1e897646bafd07ab48eda2883926506c6bedab87) ) - ROM_LOAD16_BYTE( "u46.bin", 0x100001, 0x080000, CRC(68c41235) SHA1(6ec32aa6ab6074a8db63a76a3d1a0ec2dc8f8aae) ) - - ROM_REGION( 0x2800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "s16-1-16.u6", 0x0000000, 0x400000, CRC(b308ac34) SHA1(409652bc5a537650cab1f3709a2c2be206f72a78) ) - ROM_LOAD( "s16-1-15.u9", 0x0400000, 0x400000, CRC(2c8e381e) SHA1(a8681620809d3d9dc62b443232b6e4c4c4209248) ) - ROM_LOAD( "s16-1-14.u12", 0x0800000, 0x200000, CRC(afe9d187) SHA1(802df8b1bbb94e4451a6b97c852fa555a6cf5837) ) - - ROM_LOAD( "s16-1-10.u7", 0x0a00000, 0x400000, CRC(86a10cbd) SHA1(7c15da7c3ffebff058e78439c64f6c0386e4d55b) ) - ROM_LOAD( "s16-1-09.u10", 0x0e00000, 0x400000, CRC(6b8e4d92) SHA1(a58c02d3fe595ab654b267cebcb1c6e8ec0b20c4) ) - ROM_LOAD( "s16-1-08.u13", 0x1200000, 0x200000, CRC(b355f45d) SHA1(7e0fe81825745555b9627716bfdf1132f20e88f0) ) - - ROM_LOAD( "s16-1-13.u8", 0x1400000, 0x400000, CRC(89869af2) SHA1(46a8eec18327b515a33c6e01d35fb9b947fcab1f) ) - ROM_LOAD( "s16-1-12.u11", 0x1800000, 0x400000, CRC(87d9c748) SHA1(1332db901e50e2fd25d3323920f99e0ef0b0533d) ) - ROM_LOAD( "s16-1-11.u14", 0x1c00000, 0x200000, CRC(70b3c0a0) SHA1(009e2f2f292ed6f10a9d54557861294156664e72) ) - - ROM_FILL( 0x1e00000,0x0a00000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "s16-1-06.u41", 0x000000, 0x400000, CRC(626e8a81) SHA1(45ef5b630aed575acd160ede1413e0370f4f9761) ) - - ROM_REGION16_BE( 0x600000, "ensoniq.1", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "s16-1-07.u42", 0x200000, 0x400000, CRC(42bcb41b) SHA1(060312b19bd52770410cec1f77e5d8d6478d80eb) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "s16-1-07.u42", 0x000000, 0x400000, CRC(42bcb41b) SHA1(060312b19bd52770410cec1f77e5d8d6478d80eb) ) -ROM_END - - -/*************************************************************************** - - Lovely Pop Mahjong Jangjang Shimasho (Japan) - -(c)1996 Visco, SSV System - -***************************************************************************/ - -ROM_START( janjans1 ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "jj1-data.bin", 0x000000, 0x200000, CRC(6734537e) SHA1(a40f84479141a6f33ce465e66ba9313b54915002) ) - ROM_LOAD16_BYTE( "jj1-prol.bin", 0x200000, 0x080000, CRC(4231d928) SHA1(820d1233cd1a8d0c4ece15b94bd9be976b383fe2) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "jj1-proh.bin", 0x200001, 0x080000, CRC(651383c6) SHA1(8291f86b230eee3a2ebcc926a8370777ee21ec47) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x2800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "jj1-a0.bin", 0x0000000, 0x400000, CRC(39bbbc46) SHA1(77c6b5e9d4315671ea79ec838baa7ae043bcd8c4) ) - ROM_LOAD( "jj1-a1.bin", 0x0400000, 0x400000, CRC(26020133) SHA1(32c834655d885431d466f25a729aee2d589ade1b) ) - ROM_LOAD( "jj1-a2.bin", 0x0800000, 0x200000, CRC(e993251e) SHA1(6cea12bbfc170ad4ecdc09c1728f88ec7534270a) ) - - ROM_LOAD( "jj1-b0.bin", 0x0a00000, 0x400000, CRC(8ee66b0a) SHA1(f5a641d54a3040b67d9b6e9533c4e1ed3dbc9e12) ) - ROM_LOAD( "jj1-b1.bin", 0x0e00000, 0x400000, CRC(048719b3) SHA1(b81198d58afbc7ef2f7dc71cfef11d269bc1608f) ) - ROM_LOAD( "jj1-b2.bin", 0x1200000, 0x200000, CRC(6e95af3f) SHA1(c4336a3f169143d5ab828ea527c08dcac27654c3) ) - - ROM_LOAD( "jj1-c0.bin", 0x1400000, 0x400000, CRC(9df28afc) SHA1(98ee75b028257614c3354d5ec7b3d4b27be75595) ) - ROM_LOAD( "jj1-c1.bin", 0x1800000, 0x400000, CRC(eb470ed3) SHA1(ac0601eb57283c3ebb2daf20d07a2c350804b8e6) ) - ROM_LOAD( "jj1-c2.bin", 0x1c00000, 0x200000, CRC(aaf72c2d) SHA1(774e713bbc4c2ed7ff7c9fb49a06246d97c33bad) ) - - ROM_LOAD( "jj1-d0.bin", 0x1e00000, 0x400000, CRC(2b3bd591) SHA1(0619b2779bd4bc19a5259040ccce0fdbefecf1d0) ) - ROM_LOAD( "jj1-d1.bin", 0x2200000, 0x400000, CRC(f24c0d36) SHA1(212969b456bfd7cc00081f65c03c1e167186891a) ) - ROM_LOAD( "jj1-d2.bin", 0x2600000, 0x200000, CRC(481b3be8) SHA1(cd1bcaca8c236cebba72d315e759b2e9d243aca8) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "jj1-snd0.bin", 0x000000, 0x200000, CRC(4f7d620a) SHA1(edded130ce7bb0f37e1f59b2771ae6a10a061f9e) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "jj1-snd1.bin", 0x000000, 0x200000, CRC(9b3a7ae5) SHA1(193743fcce779c4a8a73a44c54b5391d08116331) ) -ROM_END - -/*************************************************************************** - - Lovely Pop Mahjong JangJang Shimasho 2 (Japan) - -(c)1996-2000 Visco - -This game runs on SSV hardware. The game PCB is VISCO-JJ1 -The game PCB contains mostly just ROMs and logic, plus.... -NEC D71051 (DIP28) -8MHz OSC TI 75175 (DIP8) -2x PALs (near program ROMs) -2x 8-pin connectors for extra controls - -***************************************************************************/ - -ROM_START( janjans2 ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "jan2-dat.u28", 0x000000, 0x200000, CRC(0c9c62bf) SHA1(17c6eea7cec05860c238cc22706fec1a8e3d9263) ) - ROM_LOAD16_BYTE( "jan2-prol.u26", 0x200000, 0x080000, CRC(758a7249) SHA1(1126e8527bad000bdfbd59da46d72ed256cb0fa9) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "jan2-proh.u27", 0x200001, 0x080000, CRC(fcd5da62) SHA1(e0243e41e4ec25e82b0316f1189ed069c369e7b1) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "jan2-a0.u13", 0x0000000, 0x400000, CRC(37869bea) SHA1(6259e8584775ca702ef4e9e460c6d874980ffecb) ) - ROM_LOAD( "jan2-a1.u14", 0x0400000, 0x400000, CRC(8189e74f) SHA1(ea083a7ef0858dac59e14a77f10a9900b20447f3) ) - - ROM_LOAD( "jan2-b0.u16", 0x0800000, 0x400000, CRC(19877c5c) SHA1(5faaf3b862ca544589b46cf52d5fdb73287ceb6f) ) - ROM_LOAD( "jan2-b1.u17", 0x0c00000, 0x400000, CRC(8d0f7190) SHA1(d06b53d627f7629bda4de7e130eae2be14c18a5a) ) - - ROM_LOAD( "jan2-c0.u21", 0x1000000, 0x400000, CRC(8bdff3d5) SHA1(be3d2f72abae620f8855d5443dae62880f58f7c6) ) - ROM_LOAD( "jan2-c1.u22", 0x1400000, 0x400000, CRC(f7ea5934) SHA1(1767a0206fc35dc2800c9b5b061f704828571452) ) - - ROM_LOAD( "jan2-d0.u34", 0x1800000, 0x400000, CRC(479fdb54) SHA1(667d89518877a3b501a87c9c765b85b9a0b23517) ) - ROM_LOAD( "jan2-d1.u35", 0x1c00000, 0x400000, CRC(c0148895) SHA1(f89482a6ef475ca44d570332d05201b34887afbb) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "jan2-snd0.u29", 0x000000, 0x200000, CRC(22cc054e) SHA1(4926dd9f8f85880d6c1d14f93d68f330898b473a) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "jan2-snd1.u33", 0x000000, 0x200000, CRC(cbcac4a6) SHA1(f0c57fa6784e910bdb94f046d09e58e26921773b) ) -ROM_END - - -/*************************************************************************** - -Joryuu Syougi Kyoushitsu -(c)1997 Visco, System SSV ROM board - -CPU : NEC JAPAN D70732GD-25 (C)NEC1991 V810 9651MK007 -OSC : 48.0000MHz - -ROMs: -JSK-U4 .BIN [ec22fb41] - (27c1001) -JSK-U24.BIN [1fa6e156] | -JSK-U38.BIN [8e5c0de3] | -JSK-U52.BIN [b11aef0c] / - -JSK-U71.BIN [f6774fba] - (27c040) -JSK-U72.BIN [db6b2554] / - -JSK-S0.U65 [8d1a9aeb] - (16M mask) - -JSK-A0.BIN [4bac3196] - (16M mask) -JSK-B0.BIN [40664e5a] | -JSK-C0.BIN [2a230e64] | -JSK-D0.BIN [911e53a6] / - -GAL (not dumped): -U53.BIN [--------] - GAL16V8B -U70.BIN [--------] / - -dumped by sayu - -Note, in the old bad dump u52 had a few different bytes: - -ROM_LOAD32_BYTE( "jsk-u52.bin", 0x00000, 0x20000, CRC(19cc585f) SHA1(b53138e93d40c0cf03aee838d7653f5665d9cf35) ) - -addr old this -1FF8F: FF 00 -1FF97: FF 00 -1FFB7: FF 00 -1FFCF: FF 00 -1FFD7: FF 00 -1FFF7: FF 00 - -***************************************************************************/ - -ROM_START( jsk ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD16_BYTE( "jsk-u72.bin", 0x00000, 0x80000, CRC(db6b2554) SHA1(c4c6617461e1d3f8660a2b97fd2c38ef245f0d4a) ) - ROM_LOAD16_BYTE( "jsk-u71.bin", 0x00001, 0x80000, CRC(f6774fba) SHA1(3a74e5091d9d72e4f92c7c637cfe5c0dcc60bbe1) ) - - ROM_REGION( 0x20000*4, "sub", 0 ) - ROM_LOAD32_BYTE( "jsk-u52.bin", 0x00000, 0x20000, CRC(b11aef0c) SHA1(37c0fedd6454a05b647513600f1b0998c572c7a5) ) - ROM_LOAD32_BYTE( "jsk-u38.bin", 0x00001, 0x20000, CRC(8e5c0de3) SHA1(54c5dfd858086b0eb7ffa82c19fb1dfd7752d50e) ) - ROM_LOAD32_BYTE( "jsk-u24.bin", 0x00002, 0x20000, CRC(1fa6e156) SHA1(4daedf660d89c185c945d4a526312f6528fe7b17) ) - ROM_LOAD32_BYTE( "jsk-u4.bin", 0x00003, 0x20000, CRC(ec22fb41) SHA1(c0d6b0a92075214a91da78be52d273771cb9f646) ) - - ROM_REGION( 0x1000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "jsk-a0.bin", 0x0000000, 0x400000, CRC(18981a19) SHA1(b4bf93f38099963350b9e5e64890ce7adc1bc983) ) - ROM_LOAD( "jsk-b0.bin", 0x0400000, 0x400000, CRC(f6df0ff9) SHA1(d7736e4ae6e099aef320a59668d7f17590c346b9) ) - ROM_LOAD( "jsk-c0.bin", 0x0800000, 0x400000, CRC(b8282939) SHA1(d041fb013e5011bf6b9d9bc2c816b2f3969723b7) ) - ROM_LOAD( "jsk-d0.bin", 0x0c00000, 0x400000, CRC(fc733e0c) SHA1(951060f6600b8b677ad2f41f59071c375ea9d4cf) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE ) /* Samples */ - ROM_LOAD16_BYTE( "jsk-s0.u65", 0x000000, 0x200000, CRC(8d1a9aeb) SHA1(37316bd3e8cbe2a84239e1a11a56d4fe4723ae1a) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.3", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) -ROM_END - - -/*************************************************************************** - - Dramatic Adventure Quiz Keith & Lucy (Japan) - -(c)1993 Visco, SSV system - -STS-0001 (ROM board) - -***************************************************************************/ - -ROM_START( keithlcy ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "vg002-07.u28", 0x000000, 0x100000, CRC(57f80ff5) SHA1(9dcc35a79d3799407190d113e0f1b57864d6c56a) ) // "SETA SoundDriver" - ROM_LOAD16_BYTE( "kl-p0l.u26", 0x100000, 0x080000, CRC(d7b177fb) SHA1(2a3533b952a7b2404720916662743c144e870c0b) ) - ROM_LOAD16_BYTE( "kl-p0h.u27", 0x100001, 0x080000, CRC(9de7add4) SHA1(16f4405b12734cb6a83cff8be21d03bb3c2e2266) ) - - ROM_REGION( 0x800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "vg002-01.u13", 0x000000, 0x200000, CRC(b44d85b2) SHA1(cf78d46f9f2594a23af08a898afbf5dd609abcec) ) - ROM_LOAD( "vg002-02.u16", 0x200000, 0x200000, CRC(aa05fd14) SHA1(9144e9668788fcd45bd6c8464f9b4f865397f783) ) - ROM_LOAD( "vg002-03.u21", 0x400000, 0x200000, CRC(299a8a7d) SHA1(b24d8ffba01d345f48f47f92e58e9b2a9ec62526) ) - ROM_LOAD( "vg002-04.u34", 0x600000, 0x200000, CRC(d3633f9b) SHA1(250a25b75a4810a676a02c390bb597b6f1cd7494) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "vg002-05.u29", 0x000000, 0x200000, CRC(66aecd79) SHA1(7735034b8fb35ad5e7916acd0c2e224a7c62e195) ) - ROM_LOAD16_WORD_SWAP( "vg002-06.u33", 0x200000, 0x200000, CRC(75d8c8ea) SHA1(545768ac6d8953cd3044680953476276337a94b9) ) -ROM_END - -/*************************************************************************** - - Pastel Island - -STS-0001 (ROM board) - -***************************************************************************/ - -ROM_START( pastelis ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD( "data.u28", 0x000000, 0x200000, CRC(e71dcc02) SHA1(38a66255c8fbf8f1a49a2180719bfaf26fd37ccf) ) // 27c160 - 1ST AND 2ND HALF IDENTICAL (but correct, 2nd half unused) - ROM_LOAD16_BYTE( "prg_l.u26", 0x100000, 0x080000, CRC(96c9d4d7) SHA1(27ba8218f667ae12f8d1b14db259c0797220126f) ) // 27c040 - ROM_LOAD16_BYTE( "prg_h.u27", 0x100001, 0x080000, CRC(a513733b) SHA1(c3caeb0d1b9c56a61552865815cddf67b649d435) ) // 27c040 - - ROM_REGION( 0x0a00000, "gfx1", ROMREGION_ERASEFF ) /* Sprites */ - ROM_LOAD( "a0.u13", 0x0000000, 0x200000, CRC(61688d29) SHA1(e5cb96ea9190bc20ad9c10e9d0773350f7defc3f) ) // 27c160 - ROM_LOAD( "a1.u14", 0x0200000, 0x080000, CRC(d38b9805) SHA1(3b573f7e6b70ce68389001c1e119d4d8dd1cde3d) ) // 27c4100 - ROM_LOAD( "b0.u16", 0x0280000, 0x200000, CRC(fc93f7bb) SHA1(86baddd1809adc9b4a48919db58ddd008af3aa99) ) // 27c160 - ROM_LOAD( "b1.u17", 0x0480000, 0x080000, CRC(b85f4933) SHA1(00b13a8ffd4d5fa6e9c399ff4e369e2563761a42) ) // 27c4100 - ROM_LOAD( "c0.u21", 0x0500000, 0x200000, CRC(7128bc51) SHA1(a858d4de3a2acedf7e1257a607a482781ac490e8) ) // 27c160 - ROM_LOAD( "c1.u22", 0x0700000, 0x080000, CRC(2462206b) SHA1(35071e629877b77d23c865b407fd3dd824fbb8be) ) // 27c4100 - ROM_LOAD( "d0.u34", 0x0780000, 0x200000, CRC(4f79415a) SHA1(af70656f5a0f46f773a238260e53f646efb2d238) ) // 27c160 - ROM_LOAD( "d1.u35", 0x0980000, 0x080000, CRC(d3c75994) SHA1(08ff739181e4316f55f3ba50513f8fdb16db7116) ) // 27c4100 - FIXED BITS (xxxxxxxx00000000) (but correct, just lower bpp) (used for startup logo animation only) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "snd_0.u29", 0x000000, 0x200000, CRC(8bc0dde9) SHA1(4dffef4d709da02d6dfd15b5266ed529e148c024) ) // 27c160 - ROM_LOAD16_WORD_SWAP( "snd_1.u33", 0x200000, 0x200000, CRC(f958e0ea) SHA1(699ea44a0ef9f9a969e4eb692592b07d629923d1) ) // 27c160 - - ROM_REGION( 0x117, "pals", 0 ) - ROM_LOAD( "u25.bin", 0x000, 0x117, CRC(e9d28bdf) SHA1(b83b798ce5a46bcda05e82fa1dd0d24260c9b5cc) ) - ROM_LOAD( "u36.bin", 0x000, 0x117, CRC(6b5d083e) SHA1(1f127944c7b1f1e3c3e53f1091f8641f8d454445) ) -ROM_END - - -/*************************************************************************** - - Koi Koi Shimasho 2 (Japan) - -(c)1997 Visco, SSV System - -VISCO-JJ1 (same board as janjans1) - -OSC :8.00000MHz - -KK2_A0.BIN [0c89a9ae] GFX (32M mask) -KK2_A1.BIN [3f85ff19] | -KK2_B0.BIN [4d028972] | -KK2_B1.BIN [16e085f7] | -KK2_C0.BIN [34b699d9] | -KK2_C1.BIN [896fbb6f] | -KK2_D0.BIN [0e3005a4] | -KK2_D1.BIN [0116a5fb] / - -U26.BIN [4be937a1] Programs (27c4001) (PROL) -U27.BIN [25f39d93] / (PROH) - -KK2_SND0.BIN [b27eaa94] Sound (16M mask) -KK2_SND1.BIN [e5a963e1] / - -(socket for DATA ROM is empty) - -***************************************************************************/ - -ROM_START( koikois2 ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ -// socket for DATA ROM is empty - ROM_LOAD16_BYTE( "u26.bin", 0x200000, 0x080000, CRC(4be937a1) SHA1(b2c22ec12fc110984bd1914f8e3e16a8cb866816) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "u27.bin", 0x200001, 0x080000, CRC(25f39d93) SHA1(a36bc2fe5657f6ceada724fd42843e19408b39b8) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "kk2-a0.bin", 0x0000000, 0x400000, CRC(b94b76c2) SHA1(07ce3e3946669c1bd2f022da9861164625be9c1b) ) - ROM_LOAD( "kk2-a1.bin", 0x0400000, 0x200000, CRC(a7c99f56) SHA1(de341e99f76446fab4d7f09c2d8a6f18554b5d2f) ) - - ROM_LOAD( "kk2-b0.bin", 0x0800000, 0x400000, CRC(4d028972) SHA1(732c874d3511c7bce006436d557ec24e54df0166) ) - ROM_LOAD( "kk2-b1.bin", 0x0c00000, 0x200000, CRC(778ec9fb) SHA1(5983f0292e274e3da098b461355e2c001f4881b3) ) - - ROM_LOAD( "kk2-c0.bin", 0x1000000, 0x400000, CRC(34b699d9) SHA1(b5208d5f70f21725e54c9dc59de73f1a5646a72c) ) - ROM_LOAD( "kk2-c1.bin", 0x1400000, 0x200000, CRC(ab451e88) SHA1(0c4d6c0c758f2ab4210c201605dd573661b6c553) ) - - ROM_LOAD( "kk2-d0.bin", 0x1800000, 0x400000, CRC(0e3005a4) SHA1(fa8da58308d58bb6b2e8beb8ee8f7ea08b18f4d9) ) - ROM_LOAD( "kk2-d1.bin", 0x1c00000, 0x200000, CRC(17a02252) SHA1(c7aa61e27f197b3c497a65a9369e3a6a20c9f82a) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "kk2_snd0.bin", 0x000000, 0x200000, CRC(b27eaa94) SHA1(05baaef683a1fcd9eb8a7cfd5b280c05108e832f) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "kk2_snd1.bin", 0x000000, 0x200000, CRC(e5a963e1) SHA1(464ffd53ac2e6db62225b18d12bfea93160771ec) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.3", 0 ) /* Samples */ - ROM_COPY( "ensoniq.1", 0x000000, 0x000000, 0x400000 ) -ROM_END - - -/*************************************************************************** - - Meosis Magic (Japan, BET?) - -(c)1996 Sammy, SSV System - -P1-105A - -Custom: DX-102 (I/O) -Others: M62X42B (RTC?) - 64k SRAM (Back up) - Ni-Cd Battery - -***************************************************************************/ - -ROM_START( meosism ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "s15-2-2.u47", 0x000000, 0x080000, CRC(2ab0373f) SHA1(826aec3b9698ec5db5d7a72c3a24b1ef779fb227) ) - ROM_LOAD16_BYTE( "s15-2-1.u46", 0x000001, 0x080000, CRC(a4bce148) SHA1(17ec4d91e215bd38258329b1a71e7f135c5733ad) ) - - ROM_REGION( 0x800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "s15-1-7.u7", 0x000000, 0x200000, CRC(ec5023cb) SHA1(3406f5143a40c8dcd2d45b44ea91c737810ab05b) ) - ROM_LOAD( "s15-1-8.u6", 0x200000, 0x200000, CRC(f04b0836) SHA1(83678427cd0ed0d68ff770baa2693226b391f6c8) ) - ROM_LOAD( "s15-1-5.u9", 0x400000, 0x200000, CRC(c0414b97) SHA1(3ca8423e04f606981d158065e38431f2509e1daa) ) - ROM_LOAD( "s15-1-6.u8", 0x600000, 0x200000, CRC(d721aeb6) SHA1(3bef7e027a0e14fbf589aee32a6d9cab779da7d4) ) - -// The chip seems to use REGION1 too, but produces no sound from there. - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "s15-1-4.u45", 0x000000, 0x200000, CRC(0c6738a7) SHA1(acf9056bb052db7a11cf903d77ab16425d813835) ) - ROM_LOAD16_WORD_SWAP( "s15-1-3.u43", 0x200000, 0x200000, CRC(d7e83178) SHA1(74e5c09f6d3b2c8e1c1cc2b0eab0490b5bbc9099) ) -ROM_END - - -/*************************************************************************** - - Monster Slider (Japan) - -(c)1997 Visco/PATT, System SSV - -ms-pl.bin - V60 main program (27c4000, low) -ms-ph.bin - V60 main program (27c4000, high) - -ms-snd0.bin \ - |- sound data (read as 27c160) -ms-snd1.bin / - -ms-a0.bin \ -ms-b0.bin |- Graphics (read as 27c160) -ms-c0.bin / - -ms-a1.bin \ -ms-b1.bin |- Graphics (27c4100) -ms-c1.bin / - -vg001-14 \ - |- (GAL16V8. not dumped) -vg001-15 / - -Other parts: uPD71051 - OSC 8.0000MHz - -***************************************************************************/ - -ROM_START( mslider ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "ms-pl.bin", 0x000000, 0x080000, CRC(70b2a05d) SHA1(387cf67e3e505c4cc1b5cd0b6c9fb3bc27d07e24) ) - ROM_LOAD16_BYTE( "ms-ph.bin", 0x000001, 0x080000, CRC(34a64e9f) SHA1(acf3d8490f3ec99b6171e71328a991fcc9c5a8b1) ) - - ROM_REGION( 0xa00000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "ms-a0.bin", 0x000000, 0x200000, CRC(7ed38ccc) SHA1(9c584a5f6b3aad8646d155a56e4070cfed4af540) ) - ROM_LOAD( "ms-a1.bin", 0x200000, 0x080000, CRC(83f5995f) SHA1(33ae99a96702d4aba422eaf454b86c96aaf88426) ) - - ROM_LOAD( "ms-b0.bin", 0x280000, 0x200000, CRC(faa076e1) SHA1(cca583c617e5d4ab995605dd16280931893991c7) ) - ROM_LOAD( "ms-b1.bin", 0x480000, 0x080000, CRC(ef9748db) SHA1(34ab4524ec81b81ae2540f7d69e0f8254fd1b8f4) ) - - ROM_LOAD( "ms-c0.bin", 0x500000, 0x200000, CRC(f9d3e052) SHA1(4cdde756b24ee980f3c79a35a1fe071861fdeef9) ) - ROM_LOAD( "ms-c1.bin", 0x700000, 0x080000, CRC(7f910c5a) SHA1(23ea13b6c07d3d31a25c21704d6a3e506578b199) ) - - ROM_FILL( 0x780000, 0x280000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "ms-snd0.bin", 0x000000, 0x200000, CRC(cda6e3a5) SHA1(28ad8f34bc4f907654582f3522b377b97234eba8) ) - ROM_LOAD16_WORD_SWAP( "ms-snd1.bin", 0x200000, 0x200000, CRC(8f484b35) SHA1(cbf3ee7ec6337915f9d90a5b43d2de1eaa5537d0) ) -ROM_END - - -/*************************************************************************** - - Gourmet Battle Quiz Ryohrioh CooKing (Japan) - -(c)1998 Visco, SSV System - -***************************************************************************/ - -ROM_START( ryorioh ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD( "ryorioh.dat", 0x000000, 0x200000, CRC(d1335a6a) SHA1(a5670ab3c399736232baaabc59573bdb3bf762da) ) - ROM_LOAD16_BYTE( "ryorioh.l", 0x200000, 0x080000, CRC(9ad60e7d) SHA1(572b84bab08eb8293d93e03182d9871d8973b7dd) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "ryorioh.h", 0x200001, 0x080000, CRC(0655fcff) SHA1(2c088e42323f87e01b65f9f523e258f881d4e773) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "ryorioh.a0", 0x0000000, 0x400000, CRC(f76ee003) SHA1(04022238dcfd5cf0e4f97c3c3b24df574ec6b609) ) - ROM_LOAD( "ryorioh.a1", 0x0400000, 0x400000, CRC(ca44d66d) SHA1(d5ed2bbc9831182b212533bd67bb3831f655110a) ) - - ROM_LOAD( "ryorioh.b0", 0x0800000, 0x400000, CRC(daa134f4) SHA1(c3dce66b2c67061ae980374f7559b2bb8ef2502d) ) - ROM_LOAD( "ryorioh.b1", 0x0c00000, 0x400000, CRC(7611697c) SHA1(febb0bc5f3bc8766be4377092c8443a489379bca) ) - - ROM_LOAD( "ryorioh.c0", 0x1000000, 0x400000, CRC(20eb49cf) SHA1(13c201e28be17cdfc7e6266a6d1fb41cfbe04b53) ) - ROM_LOAD( "ryorioh.c1", 0x1400000, 0x400000, CRC(1370c75e) SHA1(30dfe37f3fab0e3e94df4a6d45f1291ad41e0147) ) - - ROM_LOAD( "ryorioh.d0", 0x1800000, 0x400000, CRC(ffa14ef1) SHA1(22a6992f6217d8ef2140e72063290fa34cb45683) ) - ROM_LOAD( "ryorioh.d1", 0x1c00000, 0x400000, CRC(ae6055e8) SHA1(ee20a7b3c4f899404ca259991509728d3a0f96b9) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "ryorioh.snd", 0x000000, 0x200000, CRC(7bd38b76) SHA1(d8490b4af839ef0802b8b2a47277fcd4091e4d37) ) -ROM_END - - -/*************************************************************************** - - Super Real Mahjong PIV - -(c)SETA 1993, System SSV - -CPU : V60 (12MHz) -Sound : Ensoniq OTTO -Work RAM : 256Kbit (expandable to 1Mbitx2. SRMP7 requires this) -Object RAM : 1Mbitx2 -Palette RAM: 256Kbitx3 (expandable to 1Mbitx3) - -sx001-01.a0 \ -sx001-02.b0 | -sx001-03.c0 | -sx001-04.a1 | -sx001-05.b1 |- Graphics (16M Mask) -sx001-06.c1 | -sx001-07.a2 | -sx001-08.b2 | -sx001-09.c2 / - -sx001-10.sd0 - Sound - 16M Mask - -sx001-11.prl - Main program (low) - 27c040 -sx001-12.prh - Main program (high) - 27c040 - -Custom chips -ST-0004 (Video DAC) -ST-0005 (Parallel I/O) -ST-0006 (Video controller - 32768 palettes from 24bit color) -ST-0007 (System controller) - -***************************************************************************/ - -ROM_START( srmp4 ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "sx001-14.prl", 0x000000, 0x080000, CRC(19aaf46e) SHA1(0c0f5acc1880971c56e7e2c2e3ad7c2932b82d4b) ) - ROM_LOAD16_BYTE( "sx001-15.prh", 0x000001, 0x080000, CRC(dbd31399) SHA1(a77dc85f481454b10223d7f4e0395e07d2f8d4f3) ) - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "sx001-01.a0", 0x0000000, 0x200000, CRC(94ee9203) SHA1(a0e944a375f94e9dd668b06f15580384902d0fe1) ) - ROM_LOAD( "sx001-04.a1", 0x0200000, 0x200000, CRC(38c9c49a) SHA1(c392d1cf5d16a348bdaa7222f2420a61a831a50a) ) - ROM_LOAD( "sx001-07.a2", 0x0400000, 0x200000, CRC(ee66021e) SHA1(f4df2bdf8100a3bd39bb61f9bb4807ca9e13537a) ) - - ROM_LOAD( "sx001-02.b0", 0x0600000, 0x200000, CRC(adffb598) SHA1(fab372aebfbb12feaf7a7716a780cf2e5cc60731) ) - ROM_LOAD( "sx001-05.b1", 0x0800000, 0x200000, CRC(4c400a38) SHA1(42623d6134fb6d8ce9059f7774c6bf4d2ea5d2d9) ) - ROM_LOAD( "sx001-08.b2", 0x0a00000, 0x200000, CRC(36efd52c) SHA1(f51c6d9ceff02b9ee3f8e4ffa17f6c00ee9de905) ) - - ROM_LOAD( "sx001-03.c0", 0x0c00000, 0x200000, CRC(4336b037) SHA1(f42c5622e141e384efb52955f7f6a58a8ba8fc2c) ) - ROM_LOAD( "sx001-06.c1", 0x0e00000, 0x200000, CRC(6fe7229e) SHA1(e1432aa500460f79b5b78ee4b249d8fc9f566ce1) ) - ROM_LOAD( "sx001-09.c2", 0x1000000, 0x200000, CRC(91dd8218) SHA1(a500dca9eefbf93187b1dfde7ddff1d22b886d44) ) - - ROM_FILL( 0x1200000, 0x600000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "sx001-10.sd0", 0x000000, 0x200000, CRC(45409ef1) SHA1(327d0a63deac6f0f8b9a408a321c03dd4e965569) ) - ROM_RELOAD( 0x200000, 0x200000) -ROM_END - -ROM_START( srmp4o ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "sx001-11.prl", 0x000000, 0x080000, CRC(dede3e64) SHA1(6fe998babfd2ad8f268c59bd365115a2d7cfc8f9) ) - ROM_LOAD16_BYTE( "sx001-12.prh", 0x000001, 0x080000, CRC(739c53c3) SHA1(68f12cf42177df208ff6499ccc7ccc1423e3ad5f) ) - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "sx001-01.a0", 0x0000000, 0x200000, CRC(94ee9203) SHA1(a0e944a375f94e9dd668b06f15580384902d0fe1) ) - ROM_LOAD( "sx001-04.a1", 0x0200000, 0x200000, CRC(38c9c49a) SHA1(c392d1cf5d16a348bdaa7222f2420a61a831a50a) ) - ROM_LOAD( "sx001-07.a2", 0x0400000, 0x200000, CRC(ee66021e) SHA1(f4df2bdf8100a3bd39bb61f9bb4807ca9e13537a) ) - - ROM_LOAD( "sx001-02.b0", 0x0600000, 0x200000, CRC(adffb598) SHA1(fab372aebfbb12feaf7a7716a780cf2e5cc60731) ) - ROM_LOAD( "sx001-05.b1", 0x0800000, 0x200000, CRC(4c400a38) SHA1(42623d6134fb6d8ce9059f7774c6bf4d2ea5d2d9) ) - ROM_LOAD( "sx001-08.b2", 0x0a00000, 0x200000, CRC(36efd52c) SHA1(f51c6d9ceff02b9ee3f8e4ffa17f6c00ee9de905) ) - - ROM_LOAD( "sx001-03.c0", 0x0c00000, 0x200000, CRC(4336b037) SHA1(f42c5622e141e384efb52955f7f6a58a8ba8fc2c) ) - ROM_LOAD( "sx001-06.c1", 0x0e00000, 0x200000, CRC(6fe7229e) SHA1(e1432aa500460f79b5b78ee4b249d8fc9f566ce1) ) - ROM_LOAD( "sx001-09.c2", 0x1000000, 0x200000, CRC(91dd8218) SHA1(a500dca9eefbf93187b1dfde7ddff1d22b886d44) ) - - ROM_FILL( 0x1200000, 0x600000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "sx001-10.sd0", 0x000000, 0x200000, CRC(45409ef1) SHA1(327d0a63deac6f0f8b9a408a321c03dd4e965569) ) - ROM_RELOAD( 0x200000, 0x200000) -ROM_END - - -/*************************************************************************** - - Super Real Mahjong P7 (Japan) - -(c)1997 Seta, SSV system - -***************************************************************************/ - -ROM_START( srmp7 ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "sx015-10.dat", 0x000000, 0x200000, CRC(fad3ac6a) SHA1(9a4695c06bc74ca4de0c1a83bdf38f6651c0e2a1) ) - ROM_LOAD16_BYTE( "sx015-07.pr0", 0x200000, 0x080000, CRC(08d7f841) SHA1(67567acff0ce278576290a896005de0397605eef) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "sx015-08.pr1", 0x200001, 0x080000, CRC(90307825) SHA1(13b3f82c8854808684bd41deb0bbd442efe7b685) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x4000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "sx015-26.a0", 0x0000000, 0x400000, CRC(a997be9d) SHA1(37470af24531557113f953f727f6b8cab602a7d3) ) - ROM_LOAD( "sx015-25.a1", 0x0400000, 0x400000, CRC(29ac4211) SHA1(32edf3982b0e27077cc17cd38b67a27d36dc3ad8) ) - ROM_LOAD( "sx015-24.a2", 0x0800000, 0x400000, CRC(b8fea3da) SHA1(9c3a53348f72f39d84d078068c62b10920854cd0) ) - ROM_LOAD( "sx015-23.a3", 0x0c00000, 0x400000, CRC(9ec0b81e) SHA1(fe9550592852db8a0fc38f8af444c4c137b803eb) ) - - ROM_LOAD( "sx015-22.b0", 0x1000000, 0x400000, CRC(62c3df07) SHA1(2c2b7ccc53d0ccc78f599d0789d38296935c0316) ) - ROM_LOAD( "sx015-21.b1", 0x1400000, 0x400000, CRC(55b8a431) SHA1(ccdc70b27c7fc9efe2c20df23f01b96f3b542d72) ) - ROM_LOAD( "sx015-20.b2", 0x1800000, 0x400000, CRC(e84a64d7) SHA1(af7a04cebb1ccbbd76812f7b6f7bb79023aff291) ) - ROM_LOAD( "sx015-19.b3", 0x1c00000, 0x400000, CRC(994b5063) SHA1(0c44e94773160e75ef03f7ceb95ab1b123ae3ecf) ) - - ROM_LOAD( "sx015-18.c0", 0x2000000, 0x400000, CRC(72d43fd4) SHA1(96582adae0bf1cc8359dd1ecc0d00a42d306c565) ) - ROM_LOAD( "sx015-17.c1", 0x2400000, 0x400000, CRC(fdfd82f1) SHA1(005b60fd7bf9f61ecd16daa6e6bb213ed6a9875b) ) - ROM_LOAD( "sx015-16.c2", 0x2800000, 0x400000, CRC(86aa314b) SHA1(5cd238785f683d3a33f36c5a326d350805ef21ff) ) - ROM_LOAD( "sx015-15.c3", 0x2c00000, 0x400000, CRC(11f50e16) SHA1(4e26aa84bea8b7e73056b0cc70661332fa7d9473) ) - - ROM_LOAD( "sx015-14.d0", 0x3000000, 0x400000, CRC(186f83fa) SHA1(6f03056b766c223fef639627706c2476f9af378d) ) - ROM_LOAD( "sx015-13.d1", 0x3400000, 0x400000, CRC(ea6e5329) SHA1(614dd8d36d94a4c8b2b0c30ec96c6d183065561e) ) - ROM_LOAD( "sx015-12.d2", 0x3800000, 0x400000, CRC(80336523) SHA1(ec66e21fe1401fdb438e03657542a7b6b0cbc5ce) ) - ROM_LOAD( "sx015-11.d3", 0x3c00000, 0x400000, CRC(134c8e28) SHA1(669118b58f27d5e2e08052debe904f95d9ab32a3) ) - - ROM_REGION16_BE( 0x800000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "sx015-06.s0", 0x000000, 0x200000, CRC(0d5a206c) SHA1(2fdaf2a56b6608f20a788eb79a8426102ff33e14) ) - ROM_RELOAD( 0x400000, 0x200000) - - ROM_REGION16_BE( 0x800000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "sx015-05.s1", 0x000000, 0x200000, CRC(bb8cebe2) SHA1(3691e5fb4e963f69c1fe01cb5d968433029c4833) ) - ROM_RELOAD( 0x400000, 0x200000) - - ROM_REGION16_BE( 0x800000, "ensoniq.2", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "sx015-04.s2", 0x000000, 0x200000, CRC(f6e933df) SHA1(7cb69515a0ffc62fbac2be3a5fb322538560bd38) ) - ROM_LOAD16_BYTE( "sx015-02.s4", 0x400000, 0x200000, CRC(6567bc3e) SHA1(e902f22f1499edc6a0e2c8b6cc26460d66a3bdbe) ) - - ROM_REGION16_BE( 0x800000, "ensoniq.3", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "sx015-03.s3", 0x000000, 0x200000, CRC(5b51ab21) SHA1(cf3e86e41f7984208984d6486b04cec117dadc18) ) - ROM_LOAD16_BYTE( "sx015-01.s5", 0x400000, 0x200000, CRC(481b00ed) SHA1(2c3d158dd5be9af0ee57fd5dd94d2ec75e28b182) ) -ROM_END - - -/*************************************************************************** - - Survival Arts - -Sammy USA, 1994 - -This game runs on SSV hardware. - -Game PCB Layout ---------------- - -SAM-5127 -|----------------------------------------| -| SI001-13.U6 4P 3P | -| | -| SI001-12.U7 | -| | -| SI001-11.U8 | -| | -| SI001-10.U9 | -| | -| | -| | -| | -| | -| | -| SI001-08.U21 | -| | -| SI001-05.U22 | -| | -| SI001-02.U23 | -| | -| | -|USA-PR-H.U3 | -| | -|USA-PR-L.U4 SI001-09.U15 SI001-07.U25 | -| | -| SI001-06.U16 SI001-04.U26 | -|PAL | -|(SI001-14) SI001-03.U17 SI001-01.U27 | -| | -|----------------------------------------| - - Manufacturer: Sammy USA - System Type: System SSV - - ---------------------- - System SSV (STA-0001) - ---------------------- - CPU : NEC D70615GD-16 (V60) - Sound: Ensoniq ES5506 (OTTOR2) - OSC : 42.9545MHz(X2) 48.0000MHz(X3) - - Custom chips: - ST-0004 (Video DAC) - ST-0005 (Parallel I/O) - ST-0006 (Video controller) - ST-0007 (System controller) - - Program Work RAM : 256Kbitx2 (expandable to 1Mx2) - Object Work RAM : 1Mbitx2 - Color Palette RAM : 256Kbitx3 (expandable to 1Mx3) - - ------------------------- - SSV Subboard (SAM-5127) - ------------------------- - ROMs: - USA-PR-H.u3 - V60 Program (27C4001) - USA-PR-L.u4 / - - si001-10.s0 - Samples (16M-Mask) - si001-12.s2 / - - si001-11.s1 - Samples (8M-Mask) - si001-13.s3 / - - si001-01.a0 - Graphics (16M-Mask) - si001-04.a1 | - si001-05.a2 | - si001-02.b0 | - si001-05.b1 | - si001-07.b2 | - si001-03.c0 | - si001-06.c1 | - si001-09.c2 / - - Empty Sockets: - DATA --- 16M-Mask - A3 | - B3 | - C3 | - D0-D3 / - - GAL: - si003-14.u5 (16V8B) - - MISC: - P3 10 Pin Header for Buttons 4-6 (Kick) for each player - P4 10 Pin Header (unused) - -***************************************************************************/ - -ROM_START( survarts ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "prl-r6.u4", 0x000000, 0x080000, CRC(ef5f6e17) SHA1(1857beb15d2214c7ecb60b59e696ba24b2791734) ) - ROM_LOAD16_BYTE( "prh-r5.u3", 0x000001, 0x080000, CRC(d446f010) SHA1(fb6c349edb2e6d1fcf8ed360dbe82be6d74f91d2) ) - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "si001-01.u27", 0x0000000, 0x200000, CRC(8b38fbab) SHA1(c4a67b24b33d4eef7b0f885bd69cae6c67bd3981) ) /* A0 */ - ROM_LOAD( "si001-04.u26", 0x0200000, 0x200000, CRC(34248b54) SHA1(077198f8de1622b71c580e34d5ad1b6bf3229fe9) ) /* A1 */ - ROM_LOAD( "si001-07.u25", 0x0400000, 0x200000, CRC(497d6151) SHA1(a9860c75943c0fd2991660ce2a9505edc6c2fa46) ) /* A2 */ - - ROM_LOAD( "si001-02.u23", 0x0600000, 0x200000, CRC(cb4a2dbd) SHA1(26cdd1b54a3fa1dc3c3a8945d1a3562e9c62ace6) ) /* B0 */ - ROM_LOAD( "si001-05.u22", 0x0800000, 0x200000, CRC(8f092381) SHA1(6c49f1f5b3c31bd7c6a93ba0450d9f64fd512633) ) /* B1 */ - ROM_LOAD( "si001-08.u21", 0x0a00000, 0x200000, CRC(182b88c4) SHA1(a5b6a3e1fd67f036b1255385e81b6a3eb69f9f3f) ) /* B2 */ - - ROM_LOAD( "si001-03.u17", 0x0c00000, 0x200000, CRC(92fdf652) SHA1(cf7aeb3a1e8ffe34cf24cb919a0ab3cc90202fa9) ) /* C0 */ - ROM_LOAD( "si001-06.u16", 0x0e00000, 0x200000, CRC(9a62f532) SHA1(7e7ba1224e52b33a9bd14058230efc871178c4f8) ) /* C1 */ - ROM_LOAD( "si001-09.u15", 0x1000000, 0x200000, CRC(0955e393) SHA1(0be9134190706eaee49177034b0536b05c4bc7ac) ) /* C2 */ - - ROM_FILL( 0x1200000, 0x600000, 0x000000) - -// The chip seems to use REGION1 too, but produces no sound from there. - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "si001-10.u9", 0x000000, 0x100000, CRC(5642b333) SHA1(84936af8b3882e116b279e422075f35aabdd232f) ) /* S0 */ - ROM_LOAD16_WORD_SWAP( "si001-11.u8", 0x100000, 0x100000, CRC(a81e6ea6) SHA1(499f070500895ed7b6785b42fb6bbf973fc6dc04) ) /* S1 */ - ROM_LOAD16_WORD_SWAP( "si001-12.u7", 0x200000, 0x100000, CRC(e9b2b45b) SHA1(17fd27cdb8a0b9932cb1e71e0547c0d9d6fc7d06) ) /* S2 */ - ROM_LOAD16_WORD_SWAP( "si001-13.u6", 0x300000, 0x100000, CRC(d66a7e26) SHA1(57b659daef00421b6742963f792bd5e020f625c9) ) /* S3 */ - - ROM_REGION( 0x0200, "plds", 0 ) - ROM_LOAD( "gal16v8b.u5", 0x0000, 0x0117, CRC(378ce368) SHA1(cc068c9b63e6f91165f9caec581645ad45b2d3d0) ) -ROM_END - -ROM_START( survartsu ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "usa-pr-l.u4", 0x000000, 0x080000, CRC(fa328673) SHA1(f7217eaa2a8d3fb7f706fa1aecaaa5b1b8d5e32c) ) - ROM_LOAD16_BYTE( "usa-pr-h.u3", 0x000001, 0x080000, CRC(6bee2635) SHA1(a2d0517bf599331ef47beb8a902589039e4502e0) ) - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "si001-01.u27", 0x0000000, 0x200000, CRC(8b38fbab) SHA1(c4a67b24b33d4eef7b0f885bd69cae6c67bd3981) ) /* A0 */ - ROM_LOAD( "si001-04.u26", 0x0200000, 0x200000, CRC(34248b54) SHA1(077198f8de1622b71c580e34d5ad1b6bf3229fe9) ) /* A1 */ - ROM_LOAD( "si001-07.u25", 0x0400000, 0x200000, CRC(497d6151) SHA1(a9860c75943c0fd2991660ce2a9505edc6c2fa46) ) /* A2 */ - - ROM_LOAD( "si001-02.u23", 0x0600000, 0x200000, CRC(cb4a2dbd) SHA1(26cdd1b54a3fa1dc3c3a8945d1a3562e9c62ace6) ) /* B0 */ - ROM_LOAD( "si001-05.u22", 0x0800000, 0x200000, CRC(8f092381) SHA1(6c49f1f5b3c31bd7c6a93ba0450d9f64fd512633) ) /* B1 */ - ROM_LOAD( "si001-08.u21", 0x0a00000, 0x200000, CRC(182b88c4) SHA1(a5b6a3e1fd67f036b1255385e81b6a3eb69f9f3f) ) /* B2 */ - - ROM_LOAD( "si001-03.u17", 0x0c00000, 0x200000, CRC(92fdf652) SHA1(cf7aeb3a1e8ffe34cf24cb919a0ab3cc90202fa9) ) /* C0 */ - ROM_LOAD( "si001-06.u16", 0x0e00000, 0x200000, CRC(9a62f532) SHA1(7e7ba1224e52b33a9bd14058230efc871178c4f8) ) /* C1 */ - ROM_LOAD( "si001-09.u15", 0x1000000, 0x200000, CRC(0955e393) SHA1(0be9134190706eaee49177034b0536b05c4bc7ac) ) /* C2 */ - - ROM_FILL( 0x1200000, 0x600000, 0x000000) - -// The chip seems to use REGION1 too, but produces no sound from there. - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "si001-10.u9", 0x000000, 0x100000, CRC(5642b333) SHA1(84936af8b3882e116b279e422075f35aabdd232f) ) /* S0 */ - ROM_LOAD16_WORD_SWAP( "si001-11.u8", 0x100000, 0x100000, CRC(a81e6ea6) SHA1(499f070500895ed7b6785b42fb6bbf973fc6dc04) ) /* S1 */ - ROM_LOAD16_WORD_SWAP( "si001-12.u7", 0x200000, 0x100000, CRC(e9b2b45b) SHA1(17fd27cdb8a0b9932cb1e71e0547c0d9d6fc7d06) ) /* S2 */ - ROM_LOAD16_WORD_SWAP( "si001-13.u6", 0x300000, 0x100000, CRC(d66a7e26) SHA1(57b659daef00421b6742963f792bd5e020f625c9) ) /* S3 */ -ROM_END - -ROM_START( survartsj ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "jpn-pr-l.u4", 0x000000, 0x080000, CRC(e5a52e8c) SHA1(0a51c16d23d99c3e6a12f8a96c62fe8c72179a22) ) - ROM_LOAD16_BYTE( "jan-pr-h.u3", 0x000001, 0x080000, CRC(051c9bca) SHA1(b8a7c5e4cb12cb0f05b5ba15394bd1fcf0476bf0) ) // jan typo on sticker - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "si001-01.u27", 0x0000000, 0x200000, CRC(8b38fbab) SHA1(c4a67b24b33d4eef7b0f885bd69cae6c67bd3981) ) /* A0 */ - ROM_LOAD( "si001-04.u26", 0x0200000, 0x200000, CRC(34248b54) SHA1(077198f8de1622b71c580e34d5ad1b6bf3229fe9) ) /* A1 */ - ROM_LOAD( "si001-07.u25", 0x0400000, 0x200000, CRC(497d6151) SHA1(a9860c75943c0fd2991660ce2a9505edc6c2fa46) ) /* A2 */ - - ROM_LOAD( "si001-02.u23", 0x0600000, 0x200000, CRC(cb4a2dbd) SHA1(26cdd1b54a3fa1dc3c3a8945d1a3562e9c62ace6) ) /* B0 */ - ROM_LOAD( "si001-05.u22", 0x0800000, 0x200000, CRC(8f092381) SHA1(6c49f1f5b3c31bd7c6a93ba0450d9f64fd512633) ) /* B1 */ - ROM_LOAD( "si001-08.u21", 0x0a00000, 0x200000, CRC(182b88c4) SHA1(a5b6a3e1fd67f036b1255385e81b6a3eb69f9f3f) ) /* B2 */ - - ROM_LOAD( "si001-03.u17", 0x0c00000, 0x200000, CRC(92fdf652) SHA1(cf7aeb3a1e8ffe34cf24cb919a0ab3cc90202fa9) ) /* C0 */ - ROM_LOAD( "si001-06.u16", 0x0e00000, 0x200000, CRC(9a62f532) SHA1(7e7ba1224e52b33a9bd14058230efc871178c4f8) ) /* C1 */ - ROM_LOAD( "si001-09.u15", 0x1000000, 0x200000, CRC(0955e393) SHA1(0be9134190706eaee49177034b0536b05c4bc7ac) ) /* C2 */ - - ROM_FILL( 0x1200000, 0x600000, 0x000000) - -// The chip seems to use REGION1 too, but produces no sound from there. - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "si001-10.u9", 0x000000, 0x100000, CRC(5642b333) SHA1(84936af8b3882e116b279e422075f35aabdd232f) ) /* S0 */ - ROM_LOAD16_WORD_SWAP( "si001-11.u8", 0x100000, 0x100000, CRC(a81e6ea6) SHA1(499f070500895ed7b6785b42fb6bbf973fc6dc04) ) /* S1 */ - ROM_LOAD16_WORD_SWAP( "si001-12.u7", 0x200000, 0x100000, CRC(e9b2b45b) SHA1(17fd27cdb8a0b9932cb1e71e0547c0d9d6fc7d06) ) /* S2 */ - ROM_LOAD16_WORD_SWAP( "si001-13.u6", 0x300000, 0x100000, CRC(d66a7e26) SHA1(57b659daef00421b6742963f792bd5e020f625c9) ) /* S3 */ -ROM_END - -/*************************************************************************** - - Dynagears -Sammy, 1993 - -This game runs on SSV hardware. - -Game PCB Layout ---------------- - -SAM-5127 -|----------------------------------------| -| SI002-10.U6 | -| | -| SI002-09.U7 | -| | -| SI002-08.U8 | -| | -| SI002-07.U9 | -| | -| | -| | -| | -| | -| | -| | -| | -| SI002-05.U22 | -| | -| SI002-02.U23 | -| | -| | -|SI002-PRH.U3 | -| | -|SI002-PRL.U4 | -| | -| SI002-06.U16 SI002-04.U26 | -|PAL | -|(SI002-14) SI002-03.U17 SI002-01.U27 | -| | -|----------------------------------------| - -***************************************************************************/ - -ROM_START( dynagear ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "si002-prl.u4", 0x000000, 0x080000, CRC(71ba29c6) SHA1(ef43ab665daa4fc9ee01996d03f2f0b4c74c8435) ) - ROM_LOAD16_BYTE( "si002-prh.u3", 0x000001, 0x080000, CRC(d0947a12) SHA1(95b54ed9dc51c952ad123103b8633a821cde05e9) ) - - ROM_REGION( 0x1000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "si002-01.u27", 0x0000000, 0x200000, CRC(0060a521) SHA1(10cdb967e6cb4fc7c23c1ac40b24e35262060f5c) ) - ROM_LOAD( "si002-04.u26", 0x0200000, 0x200000, CRC(6140f47d) SHA1(49dcebe724990acdac76746886efe88b68ce956f) ) - - ROM_LOAD( "si002-02.u23", 0x0400000, 0x200000, CRC(c22f2a41) SHA1(969affc8bac9a6024e7e5103384a40a6a2acf653) ) - ROM_LOAD( "si002-05.u22", 0x0600000, 0x200000, CRC(482412fd) SHA1(dfb896631b6999ce8ac6aeef84ff44150d67739a) ) - - ROM_LOAD( "si002-03.u17", 0x0800000, 0x200000, CRC(4261a6b8) SHA1(df163faa84a86f126d5d405aef316ff9dd3c05eb) ) - ROM_LOAD( "si002-06.u16", 0x0a00000, 0x200000, CRC(0e1f23f6) SHA1(ea35c75776b75131ef9133a16a36d95132dc6776) ) - - ROM_FILL( 0xc00000, 0x400000, 0x000000) - -// The chip seems to use REGION1 too, but produces no sound from there. - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "si002-07.u9", 0x000000, 0x100000, CRC(30d2bf11) SHA1(263e9a4e6a77aa451daf6d1225071cc1147a6541) ) - ROM_LOAD16_WORD_SWAP( "si002-08.u8", 0x100000, 0x100000, CRC(253704ee) SHA1(887ebca2af497fc59b274838cdf284223cc92c97) ) - ROM_LOAD16_WORD_SWAP( "si002-09.u7", 0x200000, 0x100000, CRC(1ea86db7) SHA1(e887ea5be99f753e73355a45e37dfddb2a1d6cf6) ) - ROM_LOAD16_WORD_SWAP( "si002-10.u6", 0x300000, 0x100000, CRC(e369c177) SHA1(646aad00a8f9eda847e9a51fb0a511bf49eb9fe2) ) -ROM_END - - -/*************************************************************************** - - Pachinko Sexy Reaction (Japan) - -(c)1998 Sammy, SSV system - -P1-112C (ROM board) - -Chips: DX-102 x2 - uPD7001C (ADC?) - 64k NVRAM - -***************************************************************************/ - -ROM_START( sxyreact ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "ac414e00.u2", 0x000000, 0x080000, CRC(d5dd7593) SHA1(ad1c7c2f27e0423ab346172a5c91316c9c0b3620) ) - ROM_LOAD16_BYTE( "ac413e00.u1", 0x000001, 0x080000, CRC(f46aee4a) SHA1(8336304797987321903977373dec027cfca2e211) ) - ROM_LOAD16_BYTE( "ac416e00.u47", 0x100000, 0x080000, CRC(e0f7bba9) SHA1(5eafd72c9fa4588f18fa02113a93abdcaf8d8693) ) - ROM_LOAD16_BYTE( "ac415e00.u46", 0x100001, 0x080000, CRC(92de1b5f) SHA1(69e30ffc0c59e7dafe3f9c76bfee782028dab042) ) - - ROM_REGION( 0x2800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "ac1401m0.u6", 0x0000000, 0x400000, CRC(0b7b693c) SHA1(1e65c3f55cf3aa63d4229d30b5894c89b83cdf3e) ) - ROM_LOAD( "ac1402m0.u9", 0x0400000, 0x400000, CRC(9d593303) SHA1(c02037fabe8a74f01a25357ffdd3ce01b930008b) ) - ROM_LOAD( "ac1403m0.u12", 0x0800000, 0x200000, CRC(af433eca) SHA1(dfd83eba390171d93bc6888cc1d24a9a38d900bd) ) - - ROM_LOAD( "ac1404m0.u7", 0x0a00000, 0x400000, CRC(cdda2ccb) SHA1(c22ff59e1cf621e0288537be567e0b42bf8e9bcf) ) - ROM_LOAD( "ac1405m0.u10", 0x0e00000, 0x400000, CRC(e5e7a5df) SHA1(9ab32f2a1ef055825b6cd3f643af1bd62c53f46a) ) - ROM_LOAD( "ac1406m0.u13", 0x1200000, 0x200000, CRC(c7053409) SHA1(468527a24ea592dbd884431ca57d43790cbc2456) ) - - ROM_LOAD( "ac1407m0.u8", 0x1400000, 0x400000, CRC(28c83d5e) SHA1(abf4f0c1e2caa5cfa5a18fc95c025d73d6a8bc95) ) - ROM_LOAD( "ac1408m0.u11", 0x1800000, 0x400000, CRC(c45bab47) SHA1(d00802005e091088eabeb672a6428417db43cb66) ) - ROM_LOAD( "ac1409m0.u14", 0x1c00000, 0x200000, CRC(be1c66c2) SHA1(6d7b60d3b4286a768eac122c3d163e6e5287adc3) ) - - ROM_FILL( 0x1e00000, 0xa00000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "ac1410m0.u41", 0x000000, 0x400000, CRC(2a880afc) SHA1(193235bccde28a7d693a1a1f0159260a3a63a7d5) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "ac1411m0.u42", 0x200000, 0x200000, CRC(2ba4ca43) SHA1(9cddf57094e68d3840a37f44fbdf2f43f539ba11) ) - ROM_CONTINUE( 0x000000, 0x200000 ) // this will go in region 3 - - // a few sparse samples are played from here - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.1", 0x000000, 0x200000, 0x200000 ) -ROM_END - -/*************************************************************************** - - Pachinko Sexy Reaction 2 (Japan) - -Pachinko Sexy Reaction 2 -Sammy, 1999 - -SAMMY B1-001A -|---------------------------------------------------------| -| | -| | -| | -| | -| U12 AC1702T00.U9 | -| AC1701T00.U6 | -| | -| | -| | -|CN8 AC1704T00.U10 AC1706T00.U11 | -| U13 AC1703T00.U7 U14 AC1705T00.U8| -| | -| | -| | -| | -| AC1708T00.U42 | -|CN3 AC1707T00.U41 | -| BATT | -| AC1714E00.U32 U55 | -| CN5 U47 U46 U2 U1 U35 | -| D7001C 8464 GAL16V8 | -| | -|---------------------------------------------------------| -Notes: - 6264 - Fujitsu MB8464A-10LL-SK 8K x8 SRAM (DIP28) - D7001C - NEC D7001C UART (DIP16) - BATT - 3.6V NICD Battery - CN5 - 3 pin connector - CN3 - 10 pin connector - CN8 - 9 pin connector - U12,U13, \ - U14 / Locations for SOP44 surface mounted ROMs, unpopulated - U47,U46, \ - U2,U1 / Locations for DIP32 ROMs, unpopulated - U35 - Location for NEC D71051GU, unpopulated - U55 - Location for MSM62X42B Real Time Clock, unpopulated - GAL16V8 - Lattice GAL16V8D stamped 'AC1709G00' (DIP20) - U41,U42, \ - U7,U8, \ - U10,U11 / OKI M27C3252CZ 32MBit SOP44 surface mounted maskROMs - - U32 - ST Microelectronics M27C160 16MBit EPROM (DIP42) - -***************************************************************************/ - -ROM_START( sxyreac2 ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "ac1714e00.u32", 0x000000, 0x200000, CRC(78075d70) SHA1(05c84bb32c6f97fceb5436d192c14cac79d9ab07) ) - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "ac1701t00.u6", 0x0000000, 0x400000, CRC(e14611c2) SHA1(0eaf28b27b879b6ce99bea03b286717a2d6f60f4) ) - ROM_LOAD( "ac1702t00.u9", 0x0400000, 0x400000, CRC(2c8b07f8) SHA1(e4128075c207d03206085f58b5aa8ebd28d3c2a9) ) - - ROM_LOAD( "ac1703t00.u7", 0x0800000, 0x400000, CRC(d6c7e861) SHA1(b4c17829222f5b9430e96183f77fa49ec040061e) ) - ROM_LOAD( "ac1704t00.u10", 0x0c00000, 0x400000, CRC(5fa7ccf0) SHA1(9972e3e689024505739eeaefcc12670918e2cbd8) ) - - ROM_LOAD( "ac1705t00.u8", 0x1000000, 0x400000, CRC(2dff0652) SHA1(3c68ec3b233f248208ea80e4799a9504318b4e7c) ) - ROM_LOAD( "ac1706t00.u11", 0x1400000, 0x400000, CRC(e7a168e0) SHA1(b4e19cc3a1fd0f18db7476ebe7cbb397c60e01b3) ) - - ROM_FILL( 0x1800000, 0x800000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "ac1707t00.u41", 0x000000, 0x400000, CRC(28999bc4) SHA1(4cddaa4a155cc03d456e6edb20dd207f7ff3d9c4) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", 0 ) /* Samples */ - ROM_LOAD16_WORD_SWAP( "ac1708t00.u42", 0x200000, 0x200000, CRC(7001eec0) SHA1(cc568ef90ec7201a73e9dc217d72cfbc3860e6b8) ) - ROM_CONTINUE( 0x000000, 0x200000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.1", 0x000000, 0x200000, 0x200000 ) -ROM_END - - -/*************************************************************************** - - Storm Blade - ----------------------- -System SSV (STA-0001B) ----------------------- -CPU : NEC D70615GD-16-S (V60) -Sound: Ensoniq ES5506 (OTTOR2) -OSC : 42.9545MHz(X2) 48.0000MHz(X3) - -Custom chips: -ST-0004 (Video DAC?) -ST-0005 (Parallel I/O?) -ST-0006 (Video controller) -ST-0007 (System controller) - -Program Work RAM : 256Kbitx2 (expandable to 1Mx2) -Object Work RAM : 1Mbitx2 -Color Palette RAM : 256Kbitx3 (expandable to 1Mx3) - -------------------------- -SSV Subboard (VISCO-001B) -------------------------- - -VISCO-001B -|-----------------------|CN1|-| -| | -| D3.U2* L | -| D2.U5* o | -| U15* D1.U8* g | -| SB-SND0.U22 D0.U12* i | -| C3.U1* c | -| SB-C2.U4 | -| SB-C1.U7 c | -| uPD4701AC SB-C0.U11 h | -| ADC0809 B3.U14* i | -| SB-PD0.U26 SB-B2.U18 p | -| U33J.U33 SB-B1.U21 s | -| U37J.U37 SB-B0.U25 | -|6264 VG003-22 A3.U28* x | -| ST010 SB-A2.U32 | -| SB-A1.U35 1 | -|3790 BT2* BT1 SB-A0.U41 7 | -| | -|-----------------------------| - - VG003-22: GAL16V8B (undumped) at U29 (same GAL as Drift Out '94 - The Hard Order) -SETA ST010: Custom programmed uPD96050 MCU used for math caculations -ADC0809CCN: 8bit microprocessor compatible A/D converters with 8-Channel Multiplexer - uPD4701AC: X, Y 2-axis Incremental Encoder Counter - CN1: 5-pin male header/connector - 3790: MB3790 Bi-CMOS Battery Backup IC - 6264: Sharp LH5168D-10L 8K x 8bit CMOS SRAM - BT1: CR2032 3v battery - -* Denotes unpopulated component - -U37, U33 = 27c040 -U22, U41, U35, U25, U21, U11, U7 = 16 meg mask ROMS -U32, U18, U4 = 4 meg mask ROMS -U26 = 8 meg mask ROM - -***************************************************************************/ - -ROM_START( stmblade ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "sb-pd0.u26", 0x000000, 0x100000, CRC(91c4fbf7) SHA1(68e57ea2a9756a95a81c6688905352d631e9f2de) ) - ROM_LOAD16_BYTE( "s-blade.u37", 0x200000, 0x080000, CRC(a6a42cc7) SHA1(4bff79ff03b81a7ed96d3ad285242580146976be) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "s-blade.u33", 0x200001, 0x080000, CRC(16104ca6) SHA1(63835051c358dce33d92974d1de911b98835a3d9) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "sb-a0.u41", 0x0000000, 0x200000, CRC(2a327b51) SHA1(fb1e92b7f740a80cb0c977e106d0c4bfee092dad) ) - ROM_LOAD( "sb-a1.u35", 0x0200000, 0x200000, CRC(246f6f28) SHA1(09171f04452fbcf9e3333c135288fd6e5b8244f7) ) - ROM_LOAD( "sb-a2.u32", 0x0400000, 0x080000, CRC(2049acf3) SHA1(3982b4650921da0563336060887767627f8679ab) ) - ROM_LOAD( "sb-b0.u25", 0x0600000, 0x200000, CRC(b3aa3e68) SHA1(990be5925b6c8c0d0e83ca9064425d93853fe206) ) - ROM_LOAD( "sb-b1.u21", 0x0800000, 0x200000, CRC(e95b38e7) SHA1(9256f027e4c496e3bf96ecb65c0f3e69791e2755) ) - ROM_LOAD( "sb-b2.u18", 0x0a00000, 0x080000, CRC(d080e620) SHA1(a262b42214c09fccb8f4878d8566e2acd87dbd23) ) - ROM_LOAD( "sb-c0.u11", 0x0c00000, 0x200000, CRC(825dd8f1) SHA1(39d32f54c97e21f92598442f05fd91ae2403a0d2) ) - ROM_LOAD( "sb-c1.u7", 0x0e00000, 0x200000, CRC(744afcd7) SHA1(db716a1a2ad5864ebdb4865430cb637fb94ed34f) ) - ROM_LOAD( "sb-c2.u4", 0x1000000, 0x080000, CRC(fd1d2a92) SHA1(957a8a52b79e252c7f1a4b6383107ae609dce5ef) ) - ROM_FILL( 0x1200000, 0x600000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "sb-snd0.u22", 0x000000, 0x200000, CRC(4efd605b) SHA1(9c97be105c923c7db847d9b9aea37025edb685a0) ) - - ROM_REGION( 0x11000, "st010", 0) - ROM_LOAD( "st010.bin", 0x00000, 0x11000, CRC(aa11ee2d) SHA1(cc1984e989cb94e3dcbb5f99e085b5414e18a017) ) // BPMicro-compatible dump - ROM_REGION32_BE( 0x10000, "dspprg", 0) - ROM_COPY( "st010", 0x00000, 0x00000, 0x10000 ) - ROM_REGION16_BE( 0x01000, "dspdata", 0) - ROM_COPY( "st010", 0x10000, 0x00000, 0x01000 ) -ROM_END - -ROM_START( stmbladej ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "sb-pd0.u26", 0x000000, 0x100000, CRC(91c4fbf7) SHA1(68e57ea2a9756a95a81c6688905352d631e9f2de) ) - ROM_LOAD16_BYTE( "u37j.u37", 0x200000, 0x080000, CRC(dce20df8) SHA1(d589bf7bebbf6b3c76ddb4b1f8d0c7d6bee34561) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "u33j.u33", 0x200001, 0x080000, CRC(12f68940) SHA1(c50caee87cdcbb3a4af3a139234ed12942cfab72) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "sb-a0.u41", 0x0000000, 0x200000, CRC(2a327b51) SHA1(fb1e92b7f740a80cb0c977e106d0c4bfee092dad) ) - ROM_LOAD( "sb-a1.u35", 0x0200000, 0x200000, CRC(246f6f28) SHA1(09171f04452fbcf9e3333c135288fd6e5b8244f7) ) - ROM_LOAD( "sb-a2.u32", 0x0400000, 0x080000, CRC(2049acf3) SHA1(3982b4650921da0563336060887767627f8679ab) ) - ROM_LOAD( "sb-b0.u25", 0x0600000, 0x200000, CRC(b3aa3e68) SHA1(990be5925b6c8c0d0e83ca9064425d93853fe206) ) - ROM_LOAD( "sb-b1.u21", 0x0800000, 0x200000, CRC(e95b38e7) SHA1(9256f027e4c496e3bf96ecb65c0f3e69791e2755) ) - ROM_LOAD( "sb-b2.u18", 0x0a00000, 0x080000, CRC(d080e620) SHA1(a262b42214c09fccb8f4878d8566e2acd87dbd23) ) - ROM_LOAD( "sb-c0.u11", 0x0c00000, 0x200000, CRC(825dd8f1) SHA1(39d32f54c97e21f92598442f05fd91ae2403a0d2) ) - ROM_LOAD( "sb-c1.u7", 0x0e00000, 0x200000, CRC(744afcd7) SHA1(db716a1a2ad5864ebdb4865430cb637fb94ed34f) ) - ROM_LOAD( "sb-c2.u4", 0x1000000, 0x080000, CRC(fd1d2a92) SHA1(957a8a52b79e252c7f1a4b6383107ae609dce5ef) ) - ROM_FILL( 0x1200000, 0x600000, 0x000000) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "sb-snd0.u22", 0x000000, 0x200000, CRC(4efd605b) SHA1(9c97be105c923c7db847d9b9aea37025edb685a0) ) - - ROM_REGION( 0x11000, "st010", 0) - ROM_LOAD( "st010.bin", 0x00000, 0x11000, CRC(aa11ee2d) SHA1(cc1984e989cb94e3dcbb5f99e085b5414e18a017) ) // BPMicro-compatible dump - ROM_REGION32_BE( 0x10000, "dspprg", 0) - ROM_COPY( "st010", 0x00000, 0x00000, 0x10000 ) - ROM_REGION16_BE( 0x01000, "dspdata", 0) - ROM_COPY( "st010", 0x10000, 0x00000, 0x01000 ) -ROM_END - - -/*************************************************************************** - - Twin Eagle II -SETA, 1994 - -STS0003 TWIN EAGLE -|-------------------------------------| -| | -| | -| SX002-09.u2 | -| | -| SX002-08.u3 | -| | -| SX002-11.u7 SX002-07.u6 | -| | -| | -| SX002-10.u14 SX002-06.u13 | -| | -| SX002-05.u16 | -| | -| SX002-12.u22 SX002-04.u19 | -| | -| SX002-13 | -| SX002-03.u22 | -| | -| SX002-02.u28 | -| | -| SX002-01.u32 | -| SETA ST010 | -|-------------------------------------| - - SX002-13: GAL16V8B (undumped) -SETA ST010: Custom programmed uPD96050 MCU used for math caculations -All ROMs are 16M mask ROMs - -***************************************************************************/ - -ROM_START( twineag2 ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "sx002-12.u22", 0x000000, 0x200000, CRC(846044dc) SHA1(c1c85de1c466fb7c3580824baa1571cd0fed6ec6) ) - - ROM_REGION( 0x1800000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "sx002-01.u32", 0x0000000, 0x200000, CRC(6d6896b5) SHA1(e8efd29b9f951bff6664e47cb5fd67f1d8f40608) ) /* A0 */ - ROM_LOAD( "sx002-02.u28", 0x0200000, 0x200000, CRC(3f47e97a) SHA1(5b0fdc762cf704c8bd92c4a4a42dba4a127b3d49) ) /* A1 */ - ROM_LOAD( "sx002-03.u25", 0x0400000, 0x200000, CRC(544f18bf) SHA1(539e6df1ded4e9ac8974c697215cc1e5c5a40cda) ) /* A2, A3 is unpopulated */ - - ROM_LOAD( "sx002-04.u19", 0x0600000, 0x200000, CRC(58c270e2) SHA1(7629ba978b18252f375bdc16ed62388d64a35ca1) ) /* B0 */ - ROM_LOAD( "sx002-05.u16", 0x0800000, 0x200000, CRC(3c310229) SHA1(9a8b81d5f17ce3078627a697aaf07f1b3ba6e08c) ) /* B1 */ - ROM_LOAD( "sx002-06.u13", 0x0a00000, 0x200000, CRC(46d5b1f3) SHA1(3ec03eddb159eb391ccdce5a0a867a54b3350150) ) /* B2, B3 is unpopulated */ - - ROM_LOAD( "sx002-07.u6", 0x0c00000, 0x200000, CRC(c30fa397) SHA1(d4575868c1b63f9e94bf24539a3fd8a85df93d0b) ) /* C0 */ - ROM_LOAD( "sx002-08.u3", 0x0e00000, 0x200000, CRC(64edcefa) SHA1(55a71afe87da93e35c5ba291e970bdcd91b52a7a) ) /* C1 */ - ROM_LOAD( "sx002-09.u2", 0x1000000, 0x200000, CRC(51527c56) SHA1(378155a585e5b847bd8ae1f17cb651138d844e33) ) /* C2, C3 is unpopulated */ - - ROM_FILL( 0x1200000, 0x600000, 0x000000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "sx002-10.u14", 0x000000, 0x200000, CRC(b0669dfa) SHA1(ff805f59864ac4ccee3e249c06804d844d3df59c) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "sx002-11.u7", 0x000000, 0x200000, CRC(b8dd621a) SHA1(f9b43e018f2bb121e4f4e9554419cd32b870556b) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.3", 0 ) /* Samples */ - ROM_COPY( "ensoniq.1", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION( 0x11000, "st010", 0) - ROM_LOAD( "st010.bin", 0x00000, 0x11000, CRC(aa11ee2d) SHA1(cc1984e989cb94e3dcbb5f99e085b5414e18a017) ) // BPMicro-compatible dump - ROM_REGION32_BE( 0x10000, "dspprg", 0) - ROM_COPY( "st010", 0x00000, 0x00000, 0x10000 ) - ROM_REGION16_BE( 0x01000, "dspdata", 0) - ROM_COPY( "st010", 0x10000, 0x00000, 0x01000 ) -ROM_END - - -/*************************************************************************** - - Ultra Keibitai / Ultra X Weapon - -(c)1995 Banpresto (developed by Seta) -Hardware is almost identical to SSV system - -****************************************************************************/ - -ROM_START( ultrax ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "71047-11.u64", 0x000000, 0x080000, CRC(593b2678) SHA1(3b24b59a21386a4688502c5f0a2dd4eb0ec92544) ) - ROM_LOAD16_BYTE( "71047-09.u65", 0x000001, 0x080000, CRC(08ea8d91) SHA1(5d2672f6c96fbbe9d80bd6539c1400b62745892a) ) - ROM_LOAD16_BYTE( "71047-12.u62", 0x100000, 0x080000, CRC(76a77ab2) SHA1(0cf2f293defc23c807556ff92ea99f963fafed40) ) - ROM_LOAD16_BYTE( "71047-10.u63", 0x100001, 0x080000, CRC(7c79faf9) SHA1(40c1420eeae355efa628bbcfd69e0dd18d343fd9) ) - - ROM_REGION( 0xc00000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "71047-01.u73", 0x0000000, 0x200000, CRC(66662b08) SHA1(0cb683e5f85ffe21bd3367af4d3e48a484dbd4c3) ) - ROM_LOAD( "71047-02.u74", 0x0200000, 0x100000, CRC(6b00dc0c) SHA1(6af8ceed72d13f9979175c0d907a4a8c127ca1ad) ) - ROM_LOAD( "71047-03.u76", 0x0300000, 0x200000, CRC(00fcd6c2) SHA1(61d13cbafbc0fd6ff62cd08aa88591ed0fd0b182) ) - ROM_LOAD( "71047-04.u77", 0x0500000, 0x100000, CRC(d9e710d1) SHA1(063459a247f9ff81cb558802e9943b3ea8a2ea3a) ) - ROM_LOAD( "71047-05.u75", 0x0600000, 0x200000, CRC(10848193) SHA1(40b7ebb6011dc703bbf620cd22cd678c10ec67a4) ) - ROM_LOAD( "71047-06.u88", 0x0800000, 0x100000, CRC(b8ac2942) SHA1(3e85e8f5669d469dd3114455248546d32a642315) ) - ROM_FILL( 0x0900000, 0x300000, 0x000000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "71047-07.u59", 0x000000, 0x200000, CRC(d9828b62) SHA1(f66a388d7a00b3a45d386671c061f5b840453451) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "71047-08.u60", 0x000000, 0x200000, CRC(30ebff6d) SHA1(53824c1fc37e22b545fd68b59722f7968f0ca1e2) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.3", 0 ) /* Samples */ - ROM_COPY( "ensoniq.1", 0x000000, 0x000000, 0x400000 ) -ROM_END - - -ROM_START( ultraxg ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_BYTE( "sx010-11.5h", 0x000000, 0x080000, CRC(58554bdd) SHA1(4b35fbaca0cb458e3b21c43e4b4dfd708a7b9397) ) /* hand written label with date 2/27 & checksum "44B4" */ - ROM_LOAD16_BYTE( "sx010-09.5c", 0x000001, 0x080000, CRC(153e79b2) SHA1(e0278267e345ebd81f66fbb9d262cbd78df2d01b) ) /* hand written label with date 2/27 & checksum "449B" */ - ROM_LOAD16_BYTE( "sx010-12.5k", 0x100000, 0x080000, CRC(14ad58c9) SHA1(d6be82044a22eb21cac8f7e961a198e369743962) ) /* hand written label with date 2/27 & checksum "3CCF" */ - ROM_LOAD16_BYTE( "sx010-10.5d", 0x100001, 0x080000, CRC(7e64473e) SHA1(2444ac4d95563b18c8aec077e742b0f84fd38f43) ) /* hand written label with date 2/27 & checksum "0CC5" */ - - ROM_REGION( 0xc00000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "71047-01.u73", 0x0000000, 0x200000, CRC(66662b08) SHA1(0cb683e5f85ffe21bd3367af4d3e48a484dbd4c3) ) - ROM_LOAD( "71047-02.u74", 0x0200000, 0x100000, CRC(6b00dc0c) SHA1(6af8ceed72d13f9979175c0d907a4a8c127ca1ad) ) - ROM_LOAD( "71047-03.u76", 0x0300000, 0x200000, CRC(00fcd6c2) SHA1(61d13cbafbc0fd6ff62cd08aa88591ed0fd0b182) ) - ROM_LOAD( "71047-04.u77", 0x0500000, 0x100000, CRC(d9e710d1) SHA1(063459a247f9ff81cb558802e9943b3ea8a2ea3a) ) - ROM_LOAD( "71047-05.u75", 0x0600000, 0x200000, CRC(10848193) SHA1(40b7ebb6011dc703bbf620cd22cd678c10ec67a4) ) - ROM_LOAD( "71047-06.u88", 0x0800000, 0x100000, CRC(b8ac2942) SHA1(3e85e8f5669d469dd3114455248546d32a642315) ) - ROM_FILL( 0x0900000, 0x300000, 0x000000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "71047-07.u59", 0x000000, 0x200000, CRC(d9828b62) SHA1(f66a388d7a00b3a45d386671c061f5b840453451) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "71047-08.u60", 0x000000, 0x200000, CRC(30ebff6d) SHA1(53824c1fc37e22b545fd68b59722f7968f0ca1e2) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.3", 0 ) /* Samples */ - ROM_COPY( "ensoniq.1", 0x000000, 0x000000, 0x400000 ) -ROM_END - -/*************************************************************************** - - Vasara / Vasara 2 - -Visco Games, 2000 / 2001 -(info from the vasara 2 board but vasara should be the same) - -This is a sub board that fits any standard SSV main board. - -There's very little on the ROM board. Just 2x 27C040 EPROMs, -4x 64Mbit SOP44 mask ROMs, 3x 16Mbit SOP44 mask ROMs, -some logic and 2 PALs near the PROG & DATA ROMs. - -The actual ROM PCB has the capability to accept SOP44 and -TSOP48 type 1 SMT ROMs though many of the positions are unpopulated. -It's likely this same ROM board could be used for other Visco games. - -ROM PCB (PCB Number: SSV_SUB) - -SSV-SUB -|-------------------------------------------| -| | -| logic chips (x14) | -| | -| | -| | -| U4 U8 U3 U7 U2 U6 U1 U5 | -| | -| | -| | -| | -| U12 U11 logic (x3) U10 U9 | -| | -| | -| | -| | -| | -| | -| U38 U34 | -| U37 U36 U30 U31 PAL PAL | -| U39 U35 | -| | -| | -|-------------------------------------------| -Notes: -LOC Vasara Vasara 2 Device ----------------------------------------------------------------------- -U4 VASARA-1-D0 VASARA-2-D0 64M SOP44 MaskROM -U3 VASARA-1-C0 VASARA-2-C0 64M SOP44 MaskROM -U2 VASARA-1-B0 VASARA-2-B0 64M SOP44 MaskROM -U1 VASARA-1-A0 VASARA-2-A0 64M SOP44 MaskROM -U37 VASARA-1 SND1 VASARA-1 SND1 Macronix MX29F1610 SOP44 MaskROM -U36 VASARA-1 SND0 VASARA-1 SND0 Macronix MX29F1610 SOP44 MaskROM -U30 PRG-L U30 PRG-L U30 TMS 27C040 EPROM -U31 PRG-H U31 PRG-H U31 TMS 27C040 EPROM -U34 VASARA-1 DAT VASARA-1 DAT Macronix MX29F1610 MaskROM - -Locations U5, U6, U7 &U8 wired for Macronix MX29F1610 SOP44 but not populated. -Locations U9, U10, U11, U12, U35, U38 & U39 wired for Macronix MX29F1610 TSOP48 but not populated. - - -File Name Labeled as Loc. Printed* ROM Type ------------------------------------------------------------------------ -prg-h.u31 PRG-H U31 U31 PRG H | 27C040 -prg-l.u30 PRG-L U20 U30 PRG L / -s1.u37 C DAT VASARA-1 U37 S1 \ -s0.u36 B DAT VASARA-1 U36 S0 | Surface Mounted 16Mbit SOP44 mask ROMs -data.u34 A SND 1 VASARA-1 U34 DATA ROM / -d0.u4 VASARA-2-D0 U4 D0.D1 \ -c0.u3 VASARA-2-C0 U3 C0.C1 | Surface Mounted 64Mbit SOP44 mask ROMs -b0.u2 VASARA-2-B0 U2 B0.B1 | -a0.u1 VASARA-2-A0 U1 A0.A1 / - -2x GAL16V8D - -Printed = Info silk-screened/printed on the actual PCB - -Vasara 2 has a secret character code like the Raizing games: - - Insert Coin, UP UP UP DOWN DOWN DOWN UP UP UP UP UP UP UP (Up x3, Down x3, Up x7) - - Using this code will add a fifth selectable character called Saiga Magoichi - To enable this character full time, set dip 8 of switch 2 - -****************************************************************************/ - -ROM_START( vasara ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "data.u34", 0x000000, 0x200000, CRC(7704cc7e) SHA1(62bb018b7f0c7ee67fee37de17bb22a73bb9e420) ) - ROM_LOAD16_BYTE( "prg-l.u30", 0x200000, 0x080000, CRC(f0547886) SHA1(6a3717f8b89575d3cb4c7d56dd9df5052faa3c7f) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "prg-h.u31", 0x200001, 0x080000, CRC(6a39bba9) SHA1(05ede167150307d7bf59037f264b1d140f6646da) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "a0.u1", 0x0000000, 0x800000, CRC(673230a6) SHA1(a9d1a108c0737b709854bae199499577f5ae359e) ) - ROM_LOAD( "b0.u2", 0x0800000, 0x800000, CRC(31a2da7f) SHA1(5efec60affb2ed2b73a6694ac794d41375220609) ) - ROM_LOAD( "c0.u3", 0x1000000, 0x800000, CRC(d110dacf) SHA1(6f33bf6ce8c06f0b823b5478a56dc95095385181) ) - ROM_LOAD( "d0.u4", 0x1800000, 0x800000, CRC(82d0ca55) SHA1(5ac07df713504329fbc8e8b5374c04e53745230e) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "s0.u36", 0x000000, 0x200000, CRC(754fca02) SHA1(5b2810a36183e0d4f42f0fb4a09be033ad0db40d) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "s1.u37", 0x000000, 0x200000, CRC(5f303698) SHA1(bd6495f912aa9d761d245ef0a1566d9d7bdbb2ad) ) -ROM_END - -ROM_START( vasara2 ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "data.u34", 0x000000, 0x200000, CRC(493d0103) SHA1(fda68fb089328cabb3bbd52f8703b445a9509bf1) ) - ROM_LOAD16_BYTE( "prg-l.u30", 0x200000, 0x080000, CRC(40e6f5f6) SHA1(05fee4535ffe8403e86ba92a58e5f2d040489c8e) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "prg-h.u31", 0x200001, 0x080000, CRC(c958e146) SHA1(568878526cef76ac0ce4feeaa46e7039291e5f77) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "a0.u1", 0x0000000, 0x800000, CRC(a6306c75) SHA1(bad715e53426a295d3571c025e0539d5f81ce5ab) ) - ROM_LOAD( "b0.u2", 0x0800000, 0x800000, CRC(227cbd9f) SHA1(a02787943b659508ce1589cdc7a372cc02826a10) ) - ROM_LOAD( "c0.u3", 0x1000000, 0x800000, CRC(54ede017) SHA1(4a7ff7ff8ec5843837016f35a588983b5ace06ff) ) - ROM_LOAD( "d0.u4", 0x1800000, 0x800000, CRC(4be8479d) SHA1(cbb5943dfae86f4d571459263199a63399dedc20) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "s0.u36", 0x000000, 0x200000, CRC(2b381b33) SHA1(b9dd13651e4b8d0b9e3bc4c592022f31ea634d19) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "s1.u37", 0x000000, 0x200000, CRC(11cd7098) SHA1(f75288b5c89df039dfb41d66bd275cda8605e75a) ) -ROM_END - -ROM_START( vasara2a ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "data.u34", 0x000000, 0x200000, CRC(493d0103) SHA1(fda68fb089328cabb3bbd52f8703b445a9509bf1) ) - ROM_LOAD16_BYTE( "basara-l.u30", 0x200000, 0x080000, CRC(fd88b068) SHA1(a86e3ffc870e6f6f7f18273428b24d938d6b9c3d) ) - ROM_RELOAD( 0x300000, 0x080000) - ROM_LOAD16_BYTE( "basara-h.u31", 0x200001, 0x080000, CRC(91d641e6) SHA1(4987d1771a90c9f1ce45c2dd2de5b2922d5d19c5) ) - ROM_RELOAD( 0x300001, 0x080000) - - ROM_REGION( 0x2000000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "a0.u1", 0x0000000, 0x800000, CRC(a6306c75) SHA1(bad715e53426a295d3571c025e0539d5f81ce5ab) ) - ROM_LOAD( "b0.u2", 0x0800000, 0x800000, CRC(227cbd9f) SHA1(a02787943b659508ce1589cdc7a372cc02826a10) ) - ROM_LOAD( "c0.u3", 0x1000000, 0x800000, CRC(54ede017) SHA1(4a7ff7ff8ec5843837016f35a588983b5ace06ff) ) - ROM_LOAD( "d0.u4", 0x1800000, 0x800000, CRC(4be8479d) SHA1(cbb5943dfae86f4d571459263199a63399dedc20) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "s0.u36", 0x000000, 0x200000, CRC(2b381b33) SHA1(b9dd13651e4b8d0b9e3bc4c592022f31ea634d19) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", ROMREGION_ERASE | 0 ) /* Samples */ - ROM_LOAD16_BYTE( "s1.u37", 0x000000, 0x200000, CRC(11cd7098) SHA1(f75288b5c89df039dfb41d66bd275cda8605e75a) ) -ROM_END - -/*************************************************************************** - -Mobile Suit Gundam Final Shooting -Banpresto, 1995 - -Uses main board STA-0001B SYSTEM SSV - -Game Board Layout ------------------ - -VISCO (no other PCB numbers) -|---------------------------------------------------------| -| GAL16V8(2) | -| VG004-01.U33 VG004-07.U39 | -| VG004-02.U34 VG004-08.U40 | -| VG004-03.U35 VG004-10.U45 TC514400| -| VG004-04.U36 VG004-09.U43 | -| VG004-05.U37 VG004-11.U48 TC514400| -|D1 VG004-06.U38 | -| 100MHz TC514400| -| | -| |--------------| TC514400| -| TC551001 | | | -|P |-------| GAL20V8 | | TC514400| -| S2914 | SETA | GAL20V8 | SETA | | -| |ST-0009| GAL20V8 | | TC514400| -| | | | ST-0020 | | -| |-------| | | TC514400| -| TC551001 | | | -| SSVV7.U16 |--------------| TC514400| -| VG004-12.U4 | -|C1 VG004-13.U5 TC514260 VG004-14.U3| -| ADC0809 TC55257 GAL16V8(1) SSV2SET0.U1 | -| TC55257 SSVSET1.U2 | -|---------------------------------------------------------| -Notes: - D1 - 4 pin connector for power - P - 10 pin connector - C1 - 10 pin connector for analog controls - ADC0809 - National Semiconductor ADC0809 8-Bit Microprocessor Compatible A/D Converter with 8-Channel Multiplexer (DIP28) - S2914 - Seiko S2914 EEPROM (DIP8) - TC551001 - Toshiba TC551001BFL-70L 128K x8 SRAM (SOP32) - TC55257 - Toshiba TC55257N-70L 32K x8 SRAM (SOP28) - TC514260 - Toshiba TC514260BJ-70 256K x16 DRAM (SOJ40) - GAL16V8(1) - Lattice GAL16V8B stamped 'VG004-18' (DIP20) - GAL16V8(2) - Lattice GAL16V8B stamped 'VG004-19' (DIP20) - GAL20V8 - Lattice GAL20V8B all 3 stamped 'VG004-20' and have identical contents (DIP24) - U16,U2,U1 - 4M MaskROM (DIP32) - All other ROMs are 8M/16M MaskROM (DIP42) - Custom Seta ICs - - ST-0009 (QFP176) - ST-0020 (QFP304, heatsinked) - -****************************************************************************/ - -ROM_START( gdfs ) - ROM_REGION( 0x400000, "maincpu", 0 ) /* V60 Code */ - ROM_LOAD16_WORD( "vg004-14.u3", 0x000000, 0x100000, CRC(d88254df) SHA1(ccdfd42e4ce3941018f83e300da8bf7a5950f65c) ) - ROM_RELOAD( 0x100000, 0x100000) - ROM_LOAD16_BYTE( "ssv2set0.u1", 0x200000, 0x080000, CRC(c23b9e2c) SHA1(9026e065252981fb403255ddc5782359c0088e8a) ) - ROM_RELOAD( 0x300000, 0x80000) - ROM_LOAD16_BYTE( "ssv2set1.u2", 0x200001, 0x080000, CRC(d7d52570) SHA1(12e7531519a0a4331e409991265908fb518286ef) ) - ROM_RELOAD( 0x300001, 0x80000) - - ROM_REGION( 0x800000, "gfx1", 0 ) - ROM_LOAD( "vg004-09.u43", 0x000000, 0x200000, CRC(b7382cfa) SHA1(df735470181c16f8aac0e3be76e1ed53a32dbb9c) ) - ROM_LOAD( "vg004-10.u45", 0x200000, 0x200000, CRC(b3c6b1cb) SHA1(c601213e35d8dfd1244921da5c093f82145706d2) ) - ROM_LOAD( "vg004-11.u48", 0x400000, 0x200000, CRC(1491def1) SHA1(344043302c81b4118cac4f692375b8af7ea68570) ) - - ROM_REGION( 0x1000000, "st0020_spr", /*0*/0 ) // Zooming Sprites, read by a blitter - ROM_LOAD( "vg004-01.u33", 0x0000000, 0x200000, CRC(aa9a81c2) SHA1(a7d005f9be199e317aa4c6aed8a2ab322fe82119) ) - ROM_LOAD( "vg004-02.u34", 0x0200000, 0x200000, CRC(fa40ecb4) SHA1(0513f3b6879dc7d207646d949d6ddb7251f77bcc) ) - ROM_LOAD( "vg004-03.u35", 0x0400000, 0x200000, CRC(90004023) SHA1(041edb77b34e6677ac5b85ce542d87a9bb1baf31) ) - ROM_LOAD( "vg004-04.u36", 0x0600000, 0x200000, CRC(fdafd289) SHA1(3ff1969a176d13bfa68a48c9ed582f5789b1047f) ) - ROM_LOAD( "vg004-06.u38", 0x0a00000, 0x200000, CRC(3402325f) SHA1(7ea169c1f8b01a37bd7dbb4d486d38bdac62be5b) ) - ROM_LOAD( "vg004-05.u37", 0x0800000, 0x200000, CRC(9ae488b0) SHA1(7823cc689c588f3dbcafe9bdc94c094d6e9cd605) ) - ROM_LOAD( "vg004-07.u39", 0x0c00000, 0x200000, CRC(5e89fcf9) SHA1(db727ec8117e84c98037c756715e28fd5e39972a) ) - ROM_LOAD( "vg004-08.u40", 0x0e00000, 0x200000, CRC(6b1746dc) SHA1(35e5ee02975474985a4a611dcc439fc3050b7f94) ) - - ROM_REGION( 0x80000, "gfx3", 0 ) // Tilemap - ROM_LOAD( "ssvv7.u16", 0x0000000, 0x080000, CRC(f1c3ab6f) SHA1(b7f54f7ae60650fee7570aa4dd4266c629149673) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.0", 0 ) /* Samples */ - ROM_LOAD16_BYTE( "vg004-12.u4", 0x000000, 0x200000, CRC(eb41a4ef) SHA1(f4d0844a3c00cf90faa59ae982744b7f0bcbe218) ) - ROM_LOAD16_BYTE( "vg004-13.u5", 0x000001, 0x200000, CRC(a4ed3977) SHA1(5843d56f69789e70ce0201a693ffae322b628459) ) - - ROM_REGION16_BE( 0x400000, "ensoniq.1", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.2", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) - - ROM_REGION16_BE( 0x400000, "ensoniq.3", 0 ) /* Samples */ - ROM_COPY( "ensoniq.0", 0x000000, 0x000000, 0x400000 ) -ROM_END - -/*************************************************************************** - - - Game Drivers - - -***************************************************************************/ - -// year rom clone machine inputs init monitor manufacturer title flags - -GAME( 1993, dynagear, 0, dynagear, dynagear, ssv_state, init_ssv, ROT0, "Sammy", "Dyna Gear", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) - -GAME( 1993, keithlcy, 0, keithlcy, keithlcy, ssv_state, init_ssv, ROT0, "Visco", "Dramatic Adventure Quiz Keith & Lucy (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1993, pastelis, 0, pastelis, pastelis, ssv_state, init_pastelis, ROT0, "Visco", "Pastel Island (Japan, prototype)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) // imperfect raster effects in ending credits and shadows - -GAME( 1993, srmp4, 0, srmp4, srmp4, ssv_state, init_ssv, ROT0, "Seta", "Super Real Mahjong PIV (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1993, srmp4o, srmp4, srmp4, srmp4, ssv_state, init_ssv, ROT0, "Seta", "Super Real Mahjong PIV (Japan, older set)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) // by the numbering of the program ROMs this should be older - -GAME( 1993, survarts, 0, survarts, survarts, ssv_state, init_ssv, ROT0, "Sammy", "Survival Arts (World)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1993, survartsu, survarts, survarts, survarts, ssv_state, init_ssv, ROT0, "American Sammy", "Survival Arts (USA)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 1993, survartsj, survarts, survarts, survarts, ssv_state, init_ssv, ROT0, "Sammy", "Survival Arts (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1994, drifto94, 0, drifto94, drifto94, ssv_state, init_ssv, ROT0, "Visco", "Drift Out '94 - The Hard Order (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1994, eaglshot, 0, eaglshot, eaglshot, ssv_state, init_eaglshot, ROT0, "Sammy", "Eagle Shot Golf (US)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1994, eaglshotj, eaglshot, eaglshot, eaglshot, ssv_state, init_eaglshot, ROT0, "Sammy", "Eagle Shot Golf (Japan, bootleg?)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) // from a bootleg ROM board with no proper Seta / Sammy markings, possibly original ROM tho? - -GAME( 1995, hypreact, 0, hypreact, hypreact, ssv_state, init_ssv, ROT0, "Sammy", "Mahjong Hyper Reaction (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1994, twineag2, 0, twineag2, twineag2, ssv_state, init_ssv_irq1, ROT270, "Seta", "Twin Eagle II - The Rescue Mission", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1995, gdfs, 0, gdfs, gdfs, ssv_state, init_ssv, ROT0, "Banpresto", "Mobile Suit Gundam Final Shooting (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) // title screen spells the title "Mobil" but standardized spelling is "Mobile" it also lists the company name as "Banprest" instead of "Banpresto" - -// Ultra X Weapon: "developed by Seta" in ending screen -GAME( 1995, ultrax, 0, ultrax, ultrax, ssv_state, init_ssv_irq1, ROT270, "Banpresto / Tsuburaya Productions / Seta", "Ultra X Weapons / Ultra Keibitai", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) // 95-01-30 13:27:15 on startup -GAME( 1995, ultraxg, ultrax, ultrax, ultrax, ssv_state, init_ssv_irq1, ROT270, "Banpresto / Tsuburaya Productions / Seta", "Ultra X Weapons / Ultra Keibitai (GAMEST review build)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) // 95-02-16 15:30:24 on startup (newer, but could have pause functionality due to being a review build so left as clone) - -GAME( 1996, janjans1, 0, janjans1, janjans1, ssv_state, init_ssv, ROT0, "Visco", "Lovely Pop Mahjong JangJang Shimasho (Japan)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) - -GAME( 1996?, meosism, 0, meosism, meosism, ssv_state, init_ssv, ROT0, "Sammy", "Meosis Magic (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1996, stmblade, 0, stmblade, stmblade, ssv_state, init_ssv, ROT270, "Visco", "Storm Blade (US)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1996, stmbladej, stmblade, stmblade, stmblade, ssv_state, init_ssv, ROT270, "Visco", "Storm Blade (Japan)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) - -GAME( 1997, hypreac2, 0, hypreac2, hypreac2, ssv_state, init_ssv_tilescram, ROT0, "Sammy", "Mahjong Hyper Reaction 2 (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1997, jsk, 0, jsk, jsk, ssv_state, init_jsk, ROT0, "Visco", "Joryuu Syougi Kyoushitsu (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1997, koikois2, 0, janjans1, koikois2, ssv_state, init_ssv, ROT0, "Visco", "Koi Koi Shimasho 2 - Super Real Hanafuda (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1997, mslider, 0, mslider, mslider, ssv_state, init_ssv, ROT0, "Visco / Datt Japan", "Monster Slider (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1997, srmp7, 0, srmp7, srmp7, ssv_state, init_ssv, ROT0, "Seta", "Super Real Mahjong P7 (Japan)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) - -GAME( 1998, ryorioh, 0, ryorioh, ryorioh, ssv_state, init_ssv, ROT0, "Visco", "Gourmet Battle Quiz Ryohrioh CooKing (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1998, sxyreact, 0, sxyreact, sxyreact, ssv_state, init_sexy, ROT0, "Sammy", "Pachinko Sexy Reaction (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1999, sxyreac2, 0, sxyreac2, sxyreact, ssv_state, init_sexy, ROT0, "Sammy", "Pachinko Sexy Reaction 2 (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 1999, cairblad, 0, cairblad, cairblad, ssv_state, init_ssv_tilescram, ROT270, "Sammy", "Change Air Blade (Japan)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 2000, janjans2, 0, janjans1, janjans2, ssv_state, init_ssv, ROT0, "Visco", "Lovely Pop Mahjong JangJang Shimasho 2 (Japan)", MACHINE_NO_COCKTAIL | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) - -GAME( 2000, vasara, 0, vasara, vasara, ssv_state, init_ssv, ROT270, "Visco", "Vasara", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) - -GAME( 2001, vasara2, 0, vasara, vasara2, ssv_state, init_ssv, ROT270, "Visco", "Vasara 2 (set 1)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) -GAME( 2001, vasara2a, vasara2, vasara, vasara2, ssv_state, init_ssv, ROT270, "Visco", "Vasara 2 (set 2)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE ) |