New systems marked not working

------------------------------
Chaoji Daheng 6th [Mr. Kong]
Dokidoki Kingyo Sukui [Darksoft, TeamEurope]
Hello Kitty Koi no Shugoshin Uranai [Darksoft, TeamEurope]
Katori Attack [Darksoft, TeamEurope]
Keroro Gunsou - Hacha Mecha Yakyu Taikai de Arimasu!! [Darksoft, TeamEurope]
Kotekitai Slot [Darksoft, TeamEurope]
Shatekids [Darksoft, TeamEurope]

- bmc/bmcpoker.cpp: added Oki ROM banking and mahjong controls for xyddzhh

- neogeo/neogeo.cpp: documentation update [JacKc]

- sigma/sigmab98.cpp: dumped BIOS version 1.0 for the Sammy medal games [Darksoft, TeamEurope]
This commit is contained in:
Ivan Vangelista 2025-04-15 19:50:34 +02:00
parent f6d743b937
commit 32437c6a22
10 changed files with 229 additions and 139 deletions

View File

@ -18,8 +18,8 @@ TODO:
dispensed" than the number of coins/tickets the games are supposed to
pay out.
* dbshahb: Implement different video chip, different memory map
* xyddzhh: Hook up mahjong-style inputs and improve DSW definitions
* xyddzhh: Add Oki banking
* xyddzhh: Verify mahjong-style inputs and improve DSW definitions
* xyddzhh: Verify Oki banking
***************************************************************************/
@ -48,14 +48,15 @@ public:
driver_device(mconfig, type, tag),
m_maincpu(*this,"maincpu"),
m_hopper(*this,"hopper"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
m_oki(*this, "oki"),
m_videoram(*this, "videoram_%u", 1U),
m_scrollram(*this, "scrollram_%u", 1U),
m_pixram(*this, "pixram"),
m_priority(*this, "priority"),
m_layerctrl(*this, "layerctrl"),
m_backpen(*this, "backpen"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
m_dsw(*this, "DSW%u", 1U),
m_key(*this, "KEY%u", 1U),
m_inputs(*this, "INPUTS")
@ -75,17 +76,18 @@ protected:
virtual void video_start() override ATTR_COLD;
private:
// Devices
required_device<m68000_device> m_maincpu;
required_device<ticket_dispenser_device> m_hopper;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
required_device<okim6295_device> m_oki;
required_shared_ptr_array<uint16_t, 2> m_videoram;
required_shared_ptr_array<uint16_t, 3> m_scrollram;
required_shared_ptr<uint16_t> m_pixram;
required_shared_ptr<uint16_t> m_priority;
required_shared_ptr<uint16_t> m_layerctrl;
required_shared_ptr<uint16_t> m_backpen;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
// Protection
uint16_t m_prot_val = 0;
@ -102,9 +104,9 @@ private:
optional_ioport_array<5> m_key;
required_ioport m_inputs;
void mux_w(offs_t offset, uint8_t data, uint8_t mem_mask = ~0);
uint16_t mahjong_key_r();
uint16_t dsw_r();
uint16_t mjmaglmp_dsw_r();
uint16_t mjmaglmp_key_r();
uint16_t xyddzhh_dsw_r();
// Interrupts
@ -386,10 +388,11 @@ void bmcpokr_state::mux_w(offs_t offset, uint8_t data, uint8_t mem_mask)
m_hopper->motor_w(BIT(data, 0)); // hopper motor
machine().bookkeeping().coin_counter_w(1, BIT(data, 1)); // coin-in / key-in
machine().bookkeeping().coin_counter_w(2, BIT(data, 2)); // pay-out
m_oki->set_rom_bank(BIT(data, 3));
// data & 0x60 // DSW mux
// data & 0x80 // ? always on
// popmessage("mux %04x", m_mux);
// popmessage("mux %04x", m_mux);
}
uint16_t bmcpokr_state::dsw_r()
{
@ -459,7 +462,7 @@ void bmcpokr_state::bmcpokr_mem(address_map &map)
map(0x380001, 0x380001).w(FUNC(bmcpokr_state::mux_w));
map(0x390000, 0x390003).w("ymsnd", FUNC(ym2413_device::write)).umask16(0x00ff);
map(0x398001, 0x398001).rw("oki", FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0x398001, 0x398001).rw(m_oki, FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0x3b0000, 0x3b0001).portr("INPUTS2");
}
@ -477,6 +480,7 @@ void bmcpokr_state::xyddzhh_map(address_map &map)
map(0x330000, 0x330001).r(FUNC(bmcpokr_state::xyddzhh_prot_r));
map(0x340009, 0x340009).lr8(NAME([] () -> uint8_t { return 0xff; })); // andi.b #$7f, so returning 0x00 stops it from working
map(0x360000, 0x360001).r(FUNC(bmcpokr_state::xyddzhh_dsw_r));
map(0x370000, 0x370001).r(FUNC(bmcpokr_state::mahjong_key_r));
}
@ -492,7 +496,7 @@ uint16_t bmcpokr_state::mjmaglmp_dsw_r()
return 0xff << 8;
}
uint16_t bmcpokr_state::mjmaglmp_key_r()
uint16_t bmcpokr_state::mahjong_key_r()
{
uint16_t key = 0x3f;
switch ((m_mux >> 4) & 7)
@ -528,10 +532,10 @@ void bmcpokr_state::mjmaglmp_map(address_map &map)
map(0x390000, 0x390001).r(FUNC(bmcpokr_state::mjmaglmp_dsw_r));
map(0x398000, 0x398001).r(FUNC(bmcpokr_state::mjmaglmp_key_r));
map(0x398000, 0x398001).r(FUNC(bmcpokr_state::mahjong_key_r));
map(0x3c8800, 0x3c8803).w("ymsnd", FUNC(ym2413_device::write)).umask16(0x00ff);
map(0x3c9001, 0x3c9001).rw("oki", FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0x3c9001, 0x3c9001).rw(m_oki, FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0x3c9801, 0x3c9801).w("ramdac", FUNC(ramdac_device::index_w));
map(0x3c9803, 0x3c9803).w("ramdac", FUNC(ramdac_device::pal_w));
@ -566,7 +570,7 @@ void bmcpokr_state::shendeng_map(address_map &map)
map(0x320000, 0x320003).ram().share(m_layerctrl);
map(0x330000, 0x330001).rw(FUNC(bmcpokr_state::shendeng_prot_r), FUNC(bmcpokr_state::prot_w));
map(0x340000, 0x340001).r(FUNC(bmcpokr_state::mjmaglmp_key_r));
map(0x340000, 0x340001).r(FUNC(bmcpokr_state::mahjong_key_r));
map(0x350000, 0x350001).r(FUNC(bmcpokr_state::mjmaglmp_dsw_r));
map(0x360001, 0x360001).w(FUNC(bmcpokr_state::mux_w));
map(0x370000, 0x370001).ram(); // 370001.b, rw
@ -582,7 +586,7 @@ void bmcpokr_state::shendeng_map(address_map &map)
map(0x380003, 0x380003).w("ramdac", FUNC(ramdac_device::pal_w));
map(0x380005, 0x380005).w("ramdac", FUNC(ramdac_device::mask_w));
map(0x390000, 0x390003).w("ymsnd", FUNC(ym2413_device::write)).umask16(0x00ff);
map(0x3a0001, 0x3a0001).rw("oki", FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0x3a0001, 0x3a0001).rw(m_oki, FUNC(okim6295_device::read), FUNC(okim6295_device::write));
}
void bmcpokr_state::fengyunh_map(address_map &map)
@ -596,6 +600,43 @@ void bmcpokr_state::fengyunh_map(address_map &map)
Input Ports
***************************************************************************/
#define MAHJONG_KEYS_COMMON(port, mask) \
PORT_START("KEY1") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_A ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_E ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_I ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_M ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_START("KEY2") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_B ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_F ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_J ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_N ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_BET ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_START("KEY3") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_C ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_G ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_K ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_START("KEY4") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_D ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_H ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_L ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_START("KEY5") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_SCORE ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_DOUBLE_UP) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_BIG ) PORT_CONDITION(port, mask, EQUALS, mask) \
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_SMALL ) PORT_CONDITION(port, mask, EQUALS, mask)
static INPUT_PORTS_START( bmcpokr )
PORT_START("INPUTS")
// Poker controls:
@ -736,45 +777,7 @@ static INPUT_PORTS_START( mjmaglmp )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00) // 1P E3 (select)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN1 ) // COIN
PORT_START("KEY1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_A ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_E ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_I ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_M ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_START("KEY2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_B ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_F ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_J ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_N ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_BET ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_START("KEY3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_C ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_G ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_K ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_START("KEY4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_D ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_H ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_L ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_START("KEY5")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_SCORE ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_DOUBLE_UP) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_BIG ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_SMALL ) PORT_CONDITION("DSW2",0x01,EQUALS,0x01)
MAHJONG_KEYS_COMMON("DSW2", 0x01)
PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DIP1:1")
@ -884,46 +887,7 @@ static INPUT_PORTS_START( fengyunh )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_CONDITION("DSW3",0x01,EQUALS,0x00) // 1P E3 (select)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN1 ) // COIN
PORT_START("KEY1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_A ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_E ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_I ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_M ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_START("KEY2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_B ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_F ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_J ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_N ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_BET ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_START("KEY3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_C ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_G ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_K ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_START("KEY4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_D ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_H ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_L ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_START("KEY5")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_SCORE ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_DOUBLE_UP) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_BIG ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_SMALL ) PORT_CONDITION("DSW3",0x01,EQUALS,0x01)
MAHJONG_KEYS_COMMON("DSW3", 0x01)
PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x01, "Max Bet" ) PORT_DIPLOCATION("DIP4:1") // 最大押分
@ -1126,24 +1090,24 @@ INPUT_PORTS_END
static INPUT_PORTS_START( xyddzhh )
PORT_START("INPUTS")
// Entertainment controls:
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON1 ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00) // choose
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Pay Out") PORT_CODE(KEYCODE_O) // PAY // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00) // choose
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT )
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Pay Out") PORT_CODE(KEYCODE_O)
PORT_BIT( 0x0200, IP_ACTIVE_HIGH,IPT_CUSTOM ) PORT_READ_LINE_MEMBER(FUNC(bmcpokr_state::hopper_r)) // TODO: verify?
PORT_SERVICE_NO_TOGGLE( 0x0400, IP_ACTIVE_LOW ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_SERVICE1 ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_UNUSED ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00) // no effect in test mode
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON2 ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00) // pass
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN1 ) // PORT_CONDITION("DSW2",0x01,EQUALS,0x00) PORT_IMPULSE(5)
PORT_SERVICE_NO_TOGGLE( 0x0400, IP_ACTIVE_LOW )
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00) // no effect in test mode
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00)
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_CONDITION("DSW2",0x01,EQUALS,0x00) // pass
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN1 )
// TODO: Mahjong controls:
MAHJONG_KEYS_COMMON("DSW2", 0x01)
PORT_START("INPUTS2")
PORT_BIT( 0xffff, IP_ACTIVE_LOW, IPT_UNUSED )
@ -1331,7 +1295,7 @@ void bmcpokr_state::bmcpokr(machine_config &config)
YM2413(config, "ymsnd", 42_MHz_XTAL / 12).add_route(ALL_OUTPUTS, "mono", 1.00); // UM3567 @3.50MHz (42/12)
OKIM6295(config, "oki", 42_MHz_XTAL / 40, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 1.00); // M6295 @1.05MHz (42/40)
OKIM6295(config, m_oki, 42_MHz_XTAL / 40, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 1.00); // M6295 @1.05MHz (42/40)
}
void bmcpokr_state::fengyunh(machine_config &config)

View File

@ -3380,6 +3380,26 @@ ROM_START( extradrw ) // IGS PCB 0326-05-DV-1
ROM_LOAD( "igs s3002.u18", 0x00000, 0x200000, CRC(48601c32) SHA1(8ef3bad80931f4b1badf0598463e15508602f104) ) // BADADDR --xxxxxxxxxxxxxxxxxxx
ROM_END
ROM_START( cjdh6th ) // IGS PCB 0226-03. While sharing mask ROMs with extradrw, this PCB doesn't have a second PPI
ROM_REGION( 0x04000, "maincpu", 0 )
// Internal rom of IGS027A ARM based MCU
ROM_LOAD( "igs027a.u24", 0x00000, 0x4000, NO_DUMP )
ROM_REGION32_LE( 0x80000, "user1", ROMREGION_ERASEFF ) // external ARM data / prg
ROM_LOAD( "u5", 0x00000, 0x40000, CRC(76db4f1c) SHA1(df625f20c1743c205181bf1d5053085f4761ac69) )
ROM_RELOAD( 0x40000, 0x40000 )
ROM_REGION( 0x080000, "igs017_igs031:tilemaps", 0 )
ROM_LOAD( "igs_m3004.u9", 0x000000, 0x080000, CRC(d161f8f7) SHA1(4b495197895fd805979c5d5c5a4b7f07a68f4171) )
ROM_REGION( 0x200000, "igs017_igs031:sprites", 0 )
ROM_LOAD( "igs_m3001.u19", 0x000000, 0x200000, CRC(642247fb) SHA1(69c01c3551551120a3786522b28a80621a0d5082) ) // 1xxxxxxxxxxxxxxxxxxxx = 0xFF
// u21 unpopulated socket
ROM_REGION( 0x80000, "oki", 0 )
ROM_LOAD( "igs s3002.u6", 0x00000, 0x80000, CRC(74b64969) SHA1(faaf1765f0982259382657665b82f0b1fb8ad8af) ) // matches the Extra Draw one when split
ROM_END
ROM_START( ccly ) // IGS PCB-0415-05-GD - no XA, contrary to the other regions sets in igs_m027xa.cpp
ROM_REGION( 0x04000, "maincpu", 0 )
// Internal rom of IGS027A ARM based MCU
@ -3710,5 +3730,6 @@ GAME( 200?, luckycrs, 0, m027_1ppi<false>, base, igs_m027_state
GAME( 2003, amazoni2, 0, m027_1ppi<false>, base, igs_m027_state, init_amazoni2, ROT0, "IGS", "Amazonia King II (V202BR)", MACHINE_NOT_WORKING )
GAME( 2002, sdwx, 0, m027_1ppi<false>, base, igs_m027_state, init_sdwx, ROT0, "IGS", "Sheng Dan Wu Xian", MACHINE_NOT_WORKING ) // aka Christmas 5 Line? (or Amazonia King II, shares roms at least?)
GAME( 200?, klxyj, 0, m027_1ppi<false>, base, igs_m027_state, init_klxyj, ROT0, "IGS", "Kuai Le Xi You Ji", MACHINE_NOT_WORKING )
GAME( 2001, cjdh6th, 0, m027_1ppi<false>, base, igs_m027_state, init_extradrw, ROT0, "IGS", "Chaoji Daheng 6th", MACHINE_NOT_WORKING )
// these have an IGS025 protection device instead of the 8255
GAME( 200?, gonefsh2, 0, m027_noppi<false>,base, igs_m027_state, init_gonefsh2, ROT0, "IGS", "Gone Fishing 2", MACHINE_NOT_WORKING )

View File

@ -20577,6 +20577,7 @@ cjddzp
cjddzps
cjddzs
cjddzsa
cjdh6th
cjtljp
extradrw
fruitpar
@ -29178,6 +29179,7 @@ dojokkot
fishbatl
hhunter
itazurac
katori
mmhammer
rodeokng
shpchamp
@ -42383,11 +42385,14 @@ gocowboy
gunkids
haekaka
itazuram
kingyosu
kotekita
lufykzku
mnrockman
pepsiman
pyenaget
sammymdl
shatekds
sushimar
tbeastw2
tdoboon
@ -42578,6 +42583,7 @@ cmcwa
cscaoysd
dbzbgck
gyakyu
kghmytda
satoyama
unkbpmed
youkai
@ -44310,6 +44316,7 @@ dariusu
@source:taito/dinoking.cpp
dkbattle
dkkids
hkuranai
@source:taito/exzisus.cpp
exzisus

View File

@ -789,7 +789,7 @@ static INPUT_PORTS_START( chkndraw )
PORT_DIPSETTING( 0x10, "1" )
PORT_DIPNAME( 0x20, 0x00, "Players" ) PORT_DIPLOCATION("SW1:6")
PORT_DIPSETTING( 0x20, "One Player" )
PORT_DIPSETTING( 0x00, "Two Plaerys" )
PORT_DIPSETTING( 0x00, "Two Players" )
PORT_DIPNAME( 0xc0, 0x00, "Maximum Bet" ) PORT_DIPLOCATION("SW1:7,8")
PORT_DIPSETTING( 0x40, "1 Point Per Hand" )
PORT_DIPSETTING( 0xc0, "10" )

View File

@ -455,7 +455,7 @@ void meritm_state::crt250_questions_bank_w(uint8_t data)
}
else
{
if (m_region_extra->bytes() == 0xc0000)
if (!BIT(data, 7))
{
switch(data)
{
@ -474,7 +474,7 @@ void meritm_state::crt250_questions_bank_w(uint8_t data)
default: logerror( "crt250_questions_bank_w: unknown data = %02x\n", data ); return;
}
}
else if (m_region_extra->bytes() == 0x180000)
else
{
switch(data)
{

View File

@ -34,7 +34,7 @@
KE4004-0 - Zenigata Ponta -
KF4004-0 - Rodeo King -
KG4004-0 - Dojokko Tsukami -
*** KH4004-0 - Katori Attack -
KH4004-0 - Katori Attack -
*** KI4004-0 - ??? (maybe unreleased) - ???
KJ4004-0 - Shippe Champion -
*** KK4004-0 - ??? (maybe unreleased) - ???
@ -198,10 +198,12 @@
#include "machine/ram.h"
#include "machine/timer.h"
#include "sound/okim9810.h"
#include "emupal.h"
#include "screen.h"
#include "speaker.h"
namespace {
class amuzy_state : public driver_device
@ -516,12 +518,24 @@ ROM_START( itazurac ) // HA9022-0
ROM_LOAD( "u3", 0x000000, 0x200000, CRC(76ce7b79) SHA1(749bc519cf66c0aec615881824e417719af78d2b) )
ROM_END
ROM_START( katori ) // HA9020-0
ROM_REGION(0x80000, "maincpu", 0)
ROM_LOAD16_WORD_SWAP( "29f400.u1", 0x000000, 0x080000, CRC(34b03727) SHA1(16d18ff7d322f1c1b297de89de3737d407c5a27e) ) // 1xxxxxxxxxxxxxxxxxx = 0xFF
ROM_REGION(0x1000000, "oki", ROMREGION_ERASEFF )
ROM_LOAD( "29f016.u2", 0x000000, 0x200000, CRC(ee7f2bb6) SHA1(1638d5196499fd3669a97fc9e64adacf59bc6108) ) // 1xxxxxxxxxxxxxxxxxxxx = 0x00
ROM_REGION(0x200000, "gfx", 0 )
ROM_LOAD( "mx29lv160.u3", 0x000000, 0x200000, CRC(f57c33f6) SHA1(3d5dd858e94156c4c7b1f6b8934b0f7667fd66ad) ) // 1xxxxxxxxxxxxxxxxxxxx = 0x00
ROM_END
} // anonymous namespace
GAME( 2005, boobood, 0, amuzy, amuzy, amuzy_state, empty_init, ROT0, "Amuzy Corporation", "Boo Boo Donpatchi (Japan, ver 1.01)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
GAME( 2005, dojokkot, 0, amuzy, amuzy, amuzy_state, empty_init, ROT0, "Amuzy Corporation", "Dojokko Tsukami (Japan, ver 1.02)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
GAME( 2005, fishbatl, 0, amuzy, amuzy, amuzy_state, empty_init, ROT0, "Amuzy Corporation", "Fisherman Battle (Japan, ver 1.03)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
GAME( 2005, hhunter, 0, amuzy, amuzy, amuzy_state, empty_init, ROT0, "Amuzy Corporation", "Haunted Hunter (Japan, ver 1.00)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
GAME( 2005, katori, 0, amuzy, amuzy, amuzy_state, empty_init, ROT0, "Amuzy Corporation", "Katori Attack (Japan, ver 1.03)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
GAME( 2005, rodeokng, 0, amuzy, amuzy, amuzy_state, empty_init, ROT0, "Amuzy Corporation", "Rodeo King (Japan, ver 1.00)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
GAME( 2005, wanpunch, 0, amuzy, amuzy, amuzy_state, empty_init, ROT0, "Amuzy Corporation", "Wanikko Punch (Japan, ver 1.20)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
GAME( 2005, zenponta, 0, amuzy, amuzy, amuzy_state, empty_init, ROT0, "Amuzy Corporation", "Zenigata Ponta (Japan, ver 1.02)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )

View File

@ -3688,6 +3688,7 @@ ROM_END
NEO-MVS PROG42G / NEO-MVS CHA42G
. NGH-018
NEO-AEG PROG42G / NEO-AEG CHA42G
NEO-AEG PROG42G-1 / NEO-AEG CHA42-G1
. prototype
NEO-AEG PROG-EP / NEO-AEG CHA-EP
****************************************/
@ -4169,6 +4170,7 @@ ROM_END
. ??M-029
NEO-MVS PROG42G-1 / NEO-MVS CHA42G-1
. ??H-029
NEO-AEG PROG42G / NEO-AEG CHA42G
****************************************/
ROM_START( legendos )
@ -4972,6 +4974,7 @@ ROM_END
NEO-MVS PROG-G2 / NEO-MVS CHA42G-1
NEO-MVS PROG 4096 / NEO-MVS CHA 42G-2
. AIH-051
NEO-AEG PROG16 / NEO-AEG CHA42G-1
****************************************/
ROM_START( viewpoin )
@ -5052,7 +5055,7 @@ ROM_END
NEO-MVS PROG16 / NEO-MVS CHA42G-1
. ALH-005
NEO-AEG PROG16 / NEO-AEG CHA42G-1
NEO-AEG PROG-G2 / NEO-AEG CHA42G-2C
NEO-AEG PROG-G2 (SNK-9201) / NEO-AEG CHA42G-2C
****************************************/
ROM_START( wh1 ) /* MVS VERSION */
@ -5198,6 +5201,7 @@ ROM_END
ROM_START( aof2a ) /* AES VERSION */
ROM_REGION( 0x100000, "cslot1:maincpu", ROMREGION_BE|ROMREGION_16BIT )
/* Also found AES sets with P1 and SP2 on maskrom; chip label are 056-P1 and 056-SP2G */
ROM_LOAD16_WORD_SWAP( "056-p1.p1", 0x000000, 0x100000, CRC(a3b1d021) SHA1(ee42f3ca4516226b0088d0303ed28e3ecdabcd71) ) /* TC538200 */
/* the rom below acts as a patch to the program rom in the cart, replacing the first 512kb */
ROM_LOAD16_WORD_SWAP( "056-epr.ep1", 0x000000, 0x80000, CRC(75d6301c) SHA1(e72d15fba55f96be7b4fa29e705a7b78f56edf7d) ) /* M27C4002 */
@ -5213,6 +5217,7 @@ ROM_START( aof2a ) /* AES VERSION */
ROM_LOAD( "056-v3.v3", 0x400000, 0x100000, CRC(d168c301) SHA1(969273d1d11943e81560959359a2c4e69522af0e) ) /* TC538200 */
ROM_REGION( 0x1000000, "cslot1:sprites", 0 )
/* Different layout with 4xC (32mbit) also exists; chip labels are 056-C13, 056-C24, 056-C57 and 056-C68 */
ROM_LOAD16_BYTE( "056-c1.c1", 0x000000, 0x200000, CRC(17b9cbd2) SHA1(1eee81e02763d384bd1c10a6012473ca931e4093) ) /* Plane 0,1 */ /* TC5316200 */
ROM_LOAD16_BYTE( "056-c2.c2", 0x000001, 0x200000, CRC(5fd76b67) SHA1(11925a41a53b53c6df4a5ebd28f98300950f743b) ) /* Plane 2,3 */ /* TC5316200 */
ROM_LOAD16_BYTE( "056-c3.c3", 0x400000, 0x200000, CRC(d2c88768) SHA1(22e2d84aa0c095944190e249ce87ef50d3f7b8ce) ) /* Plane 0,1 */ /* TC5316200 */
@ -6425,6 +6430,7 @@ ROM_END
ID-0089
. NGM-089
NEO-MVS PROGBK1 / NEO-MVS CHA256
NEO-MVS PROGBK1 / NEO-MVS CHA256B
. NGH-089
NEO-AEG PROGBK1Y / NEO-AEG CHA256RY
****************************************/
@ -6433,6 +6439,7 @@ ROM_START( pulstar )
ROM_REGION( 0x300000, "cslot1:maincpu", ROMREGION_BE|ROMREGION_16BIT )
ROM_LOAD16_WORD_SWAP( "089-p1.p1", 0x000000, 0x100000, CRC(5e5847a2) SHA1(b864d0ec4184b785569ddbf67c2115b5ab86ee3e) ) /* mask rom TC538200 */
ROM_LOAD16_WORD_SWAP( "089-p2.sp2", 0x100000, 0x200000, CRC(028b774c) SHA1(fc5da2821a5072f2b78245fc59b6e3eeef116d16) ) /* mask rom TC5316200 */
/* also found MVS sets with EP1 / EP2 on M27C4002 eprom with sticker and P1 / SP2 on TC578200D eprom with sticker; chip label are 089-P1, 089-SP2, EP1 and EP2 */
NEO_SFIX_128K( "089-s1.s1", CRC(c79fc2c8) SHA1(914c224fb3c461a68d7425cae724cf22bd5f985d) ) /* mask rom TC531000 */
@ -7655,6 +7662,7 @@ ROM_END
. SUM-225
NEO-MVS PROGBK1 / NEO-MVS CHA256B
. SUH-225
NEO-AEG PROGBK1Y / NEO-AEG CHA256RY
****************************************/
ROM_START( wakuwak7 )
@ -9120,7 +9128,10 @@ ROM_END
Non SMA protected version found on:
NEO-MVS PROGBK1 / NEO-MVS CHAFIO (1999.6.14) (NEO-CMC 7042)
. NGH-2560
SMA protected version found on:
NEO-AEG PROGLBA (1999.7.6) (NEO-SMA)(LBA-SUB) / NEO-AEG CHAFIO (1999.8.10) (NEO-CMC 7042)
Non SMA protected version found on:
NEO-AEG PROGBK1F / NEO-AEG CHAFIO (1999.8.10) (NEO-CMC 7042)
****************************************/
ROM_START( mslug3 ) /* Original Version - Encrypted Code & GFX */ /* revision 2000.4.1 */ /* MVS VERSION */
@ -9609,7 +9620,7 @@ ROM_END
. NGM-264?
NEO-MVS PROGBK2 (2000.3.21) (NEO-PCM2 SNK) / NEO-MVS CHAFIO (1999.6.14) (NEO-CMC 7050)
. NGH-2641
NEO-AEG PROGBK2 (2002.4.1) (NEO-PCM2 SNK) / NEO-AEG CHAFIO (1999.8.10) (NEO-CMC 7050)
NEO-AEG PROGBK2 (2002.4.1) (NEO-PCM2 PLAYMORE) / NEO-AEG CHAFIO (1999.8.10) (NEO-CMC 7050)
- Distribution by BrezzaSoft
****************************************/
@ -9682,9 +9693,9 @@ ROM_END
/****************************************
ID-0265
. NGM-2650
NEO-MVS PROGBK2 (2000.3.21) (NEO-PCM2 PLAYMORE) / NEO-MVS CHAFIO (1999.6.14) (NEO-CMC 7050)
NEO-MVS PROGBK2 (2000.3.21) (NEO-PCM2 SNK) / NEO-MVS CHAFIO (1999.6.14) (NEO-CMC 7050)
. NGH-2650
NEO-AEG PROGBK2 (NEO-PCM2 PLAYMORE) / NEO-AEG CHAFIO (1999.8.10) (NEO-CMC 7050)
NEO-AEG PROGBK2 (2002.4.1) (NEO-PCM2 PLAYMORE) / NEO-AEG CHAFIO (1999.8.10) (NEO-CMC 7050)
****************************************/
ROM_START( kof2002 ) /* Encrypted Set */ /* MVS AND AES VERSION */
@ -9723,7 +9734,7 @@ ROM_END
/****************************************
ID-0266
. NGM-2660
NEO-MVS PROGBK2 (2000.3.21) (NEO-PCM2 PLAYMORE) / NEO-MVS CHAFIO (1999.6.14) (NEO-CMC 7050)
NEO-MVS PROGBK2 (2000.3.21) (NEO-PCM2 SNK) / NEO-MVS CHAFIO (1999.6.14) (NEO-CMC 7050)
. NGH-2660
NEO-AEG PROGBK2 (2002.4.1) (NEO-PCM2 PLAYMORE) / NEO-AEG CHAFIO (1999.8.10) (NEO-CMC 7050)
****************************************/
@ -9896,9 +9907,9 @@ ROM_END
/****************************************
ID-0269
. NGM-2690
NEO-MVS PROGBK3R (2003.9.2) (NEO-PCM2 PLAYMORE) (NEO-PVC) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
NEO-MVS PROGBK3R (2003.9.2) (NEO-PCM2 SNKPLAYMORE) (NEO-PVC) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
. NGH-2690
NEO-AEG PROGBK3R (2003.8.29) (NEO-PCM2 PLAYMORE) (NEO-PVC) / NEO-AEG CHAFIO (2003.7.24) (NEO-CMC 7050)
NEO-AEG PROGBK3R (2003.8.29) (NEO-PCM2 SNKPLAYMORE) (NEO-PVC) / NEO-AEG CHAFIO (2003.7.24) (NEO-CMC 7050)
****************************************/
ROM_START( svc ) /* Encrypted Set */ /* MVS AND AES VERSION */
@ -9937,9 +9948,9 @@ ROM_END
/****************************************
ID-0270
. NGM-2700
NEO-MVS PROGBK2R (2003.8.26) (NEO-PCM2 PLAYMORE) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
NEO-MVS PROGBK2R (2003.8.26) (NEO-PCM2 SNKPLAYMORE) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
. NGH-2700
NEO-AEG PROGBK2S (2003.10.16) (NEO-PCM2 PLAYMORE) / NEO-AEG CHAFIO (2003.7.24) (NEO-CMC 7050)
NEO-AEG PROGBK2S (2003.10.16) (NEO-PCM2 SNKPLAYMORE) / NEO-AEG CHAFIO (2003.7.24) (NEO-CMC 7050)
****************************************/
ROM_START( samsho5 ) /* Encrypted Set */ /* MVS VERSION, Build Date: Tue Aug 26 22:27:30 2003 */
@ -10048,9 +10059,9 @@ ROM_END
/****************************************
ID-0271
. NGM-2710
NEO-MVS PROGBK3S (2003.10.1) (NEO-PCM2 PLAYMORE) (NEO-PVC) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
NEO-MVS PROGBK3S (2003.10.1) (NEO-PCM2 SNKPLAYMORE) (NEO-PVC) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
. NGH-2710
NEO-AEG PROGBK3S (2003.10.6) (NEO-PCM2 PLAYMORE) (NEO-PVC) / NEO-AEG CHAFIO (2003.7.24) (NEO-CMC 7050)
NEO-AEG PROGBK3S (2003.10.6) (NEO-PCM2 SNKPLAYMORE) (NEO-PVC) / NEO-AEG CHAFIO (2003.7.24) (NEO-CMC 7050)
****************************************/
ROM_START( kof2003 ) /* Encrypted Code + Sound + GFX Roms */ /* MVS VERSION */
@ -10125,9 +10136,9 @@ ROM_END
/****************************************
ID-0272
. NGM-2720
NEO-MVS PROGBK2S (2003.10.18) (NEO-PCM2 PLAYMORE) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
NEO-MVS PROGBK2S (2003.10.18) (NEO-PCM2 SNKPLAYMORE) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
. NGH-2720
NEO-AEG PROGBK2S (2003.10.16) (NEO-PCM2 PLAYMORE) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
NEO-AEG PROGBK2S (2003.10.16) (NEO-PCM2 SNKPLAYMORE) / NEO-MVS CHAFIO (2003.7.24) (NEO-CMC 7050)
****************************************/
ROM_START( samsh5sp ) /* Encrypted Set */ /* MVS VERSION */

View File

@ -52,26 +52,26 @@ is "Treasure Fall" (despite the cart label is "Treasure Hall").
Dumped games:
1999 Dokidoki Kingyo Sukui https://youtu.be/Z0tOjG_tteU
1999 Shatekids https://youtu.be/aWzYlvm6uIs
2000 Animal Catch https://youtu.be/U4L5EwWbxqw
2000 Itazura Monkey https://youtu.be/GHxiqUQRpV8
2000 Pye-nage Taikai https://youtu.be/oL2OIbrv-KI
2000 Taihou de Doboon https://youtu.be/loPP3jt0Ob0
2001 Hae Hae Ka Ka Ka https://youtu.be/37IxYCg0tic
2001 Kotekitai Slot https://youtu.be/IohrnGIma4A
2002 Gun Kids
2003 Go Go Cowboy (EN, prize) https://youtu.be/rymtzmSXjuA
2003 Wantouchable https://youtu.be/aRcTCdZZLRo
Games with the same cabinet, or in the Treasure Fall series, which might be on the same hardware:
1999 Shatekids https://youtu.be/aWzYlvm6uIs
1999 Otakara Locomo https://youtu.be/J0NwMWO3SdY
1999 Dokidoki Kingyosukui https://youtu.be/Z0tOjG_tteU
2000 Otoshicha Ottotto https://youtu.be/AybhPHTFvMo
2001 Mushitori Meijin
2001 Morino Dodgeball Senshuken https://youtu.be/k98KIRjTYbY
2001 Waiwai Wanage https://youtu.be/4GmwPTk_Er4
2001 Zarigani Tsuri https://youtu.be/NppRdebkUaQ
2001 Kotekitai Slot https://youtu.be/IohrnGIma4A
2002 Shateki Yokochou https://youtu.be/LPZLWP1x5o8
2002 Ipponzuri Slot
2002 Karateman https://youtu.be/EIrVHEAv3Sc
@ -2099,9 +2099,11 @@ ROM_END
#define SAMMYMDL_BIOS \
ROM_REGION( 0x80000, "mainbios", 0 ) \
ROM_SYSTEM_BIOS( 0, "v5", "IPL Ver. 5.0" ) /* (c)2003 */ \
ROMX_LOAD( "vm1211l01.u2", 0x000000, 0x080000, CRC(c3c74dc5) SHA1(07352e6dba7514214e778ba39e1ca773e4698858), ROM_BIOS(0) ) \
ROMX_LOAD( "vm1211l01.u2", 0x000000, 0x080000, CRC(c3c74dc5) SHA1(07352e6dba7514214e778ba39e1ca773e4698858), ROM_BIOS(0) ) \
ROM_SYSTEM_BIOS( 1, "v4", "IPL Ver. 4.0" ) /* (c)2000, ROM patches not correct for this BIOS */ \
ROMX_LOAD( "mt201l04.u012", 0x000000, 0x080000, CRC(c8c6d25f) SHA1(5be39fa72b65f2e455ccc146dbab58d24ab46505), ROM_BIOS(1) )
ROMX_LOAD( "mt201l04.u012", 0x000000, 0x080000, CRC(c8c6d25f) SHA1(5be39fa72b65f2e455ccc146dbab58d24ab46505), ROM_BIOS(1) ) \
ROM_SYSTEM_BIOS( 2, "v1", "IPL Ver. 1.0" ) /* (c)1999, ROM patches not correct for this BIOS */ \
ROMX_LOAD( "vm1201l01.u012", 0x000000, 0x080000, CRC(21b2ccbd) SHA1(c3ceea196e5c1c6a9e03cf3a22e9f25f0099a38e), ROM_BIOS(2) )
ROM_START( sammymdl )
SAMMYMDL_BIOS
@ -2163,6 +2165,19 @@ ROM_START( wantouch ) // ワンタッチャブル
ROM_LOAD( "vx2301l01.u016", 0x00000, 0x200000, CRC(cd8d4478) SHA1(224e8e0e9a49f10515e0ebf9a5e97d8adc7eed13) )
ROM_END
ROM_START( kotekita ) // こてき隊(たい)スロット
SAMMYMDL_BIOS
ROM_REGION( 0x1000000, "oki", ROMREGION_ERASEFF )
ROM_LOAD( "vx2302l01.u021", 0x00000, 0x200000, CRC(37faa4a9) SHA1(619135d74052fb2272ce78976c2aa59a65244f12) )
ROM_REGION( 0x40000, "maincpu", 0 )
ROM_COPY( "oki", 0x1c0000, 0x00000, 0x40000 )
ROM_REGION( 0x200000, "sprites", 0 )
ROM_LOAD( "vx2301l01.u016", 0x00000, 0x200000, CRC(e471c1ef) SHA1(4ddf3261d8736888ebbdbd0d755aad75987b3b3d) )
ROM_END
void sammymdl_state::init_animalc()
{
uint8_t *rom = memregion("mainbios")->base();
@ -2346,6 +2361,32 @@ void sammymdl_state::init_haekaka()
rom[0x005ac] = 0xc3;
}
ROM_START( kingyosu )
SAMMYMDL_BIOS
ROM_REGION( 0x1000000, "oki", ROMREGION_ERASEFF )
ROM_LOAD( "vx1302l02.u021", 0x00000, 0x200000, CRC(45e43e3c) SHA1(71ada38c1f65738ca75ca75d2272f310ba43c72c) )
ROM_REGION( 0x40000, "maincpu", 0 )
ROM_COPY( "oki", 0x1c0000, 0x00000, 0x40000 )
ROM_REGION( 0x200000, "sprites", 0 )
ROM_LOAD( "vx1301l01.u016", 0x00000, 0x200000, CRC(25dfbf4c) SHA1(8f9552cf54bdf7490055ebdb23fa758f5cddafb5) )
ROM_END
ROM_START( shatekds )
SAMMYMDL_BIOS
ROM_REGION( 0x1000000, "oki", ROMREGION_ERASEFF )
ROM_LOAD( "29f016a.u015", 0x00000, 0x200000, CRC(7c779286) SHA1(db688ac2cad14c642e6da770212217a466e1bb64) )
ROM_REGION( 0x40000, "maincpu", 0 )
ROM_COPY( "oki", 0x1c0000, 0x00000, 0x40000 )
ROM_REGION( 0x200000, "sprites", 0 )
ROM_LOAD( "mx29f1610tc.u016", 0x00000, 0x200000, CRC(6e7d2c7d) SHA1(747d54eee26631966a91fd26b8b4beb32b67ddb7) )
ROM_END
} // anonymous namespace
@ -2368,12 +2409,15 @@ GAME( 2000, dashhero, 0, sigmab98, sigma_1b, sigmab98_state, init_dashher
GAME( 2001, lufykzku, 0, lufykzku, lufykzku, lufykzku_state, init_lufykzku, ROT0, "Banpresto / Eiichiro Oda / Shueisha - Fuji TV - Toho Animation", "Otakara Itadaki Luffy Kaizoku-Dan! (Japan, v1.02)", 0 )
GAME( 2002, mnrockman,0, rockman, lufykzku, lufykzku_state, init_rockman, ROT0, "Banpresto / Capcom / Shogakukan / ShoPro / TV Tokyo", "Medal Network: Rockman EXE", 0 )
// Sammy Medal Games:
GAME( 2000, sammymdl, 0, sammymdl, sammymdl, sammymdl_state, init_animalc, ROT0, "Sammy", "Sammy Medal Game System BIOS", MACHINE_IS_BIOS_ROOT )
GAME( 1999, sammymdl, 0, sammymdl, sammymdl, sammymdl_state, init_animalc, ROT0, "Sammy", "Sammy Medal Game System BIOS", MACHINE_IS_BIOS_ROOT )
GAME( 1999, kingyosu, sammymdl, itazuram, sammymdl, sammymdl_state, init_animalc, ROT0, "Sammy", "Dokidoki Kingyo Sukui", 0 )
GAME( 1999, shatekds, sammymdl, animalc, sammymdl, sammymdl_state, init_animalc, ROT0, "Sammy", "Shatekids", 0 )
GAME( 2000, animalc, sammymdl, animalc, sammymdl, sammymdl_state, init_animalc, ROT0, "Sammy", "Animal Catch", 0 )
GAME( 2000, itazuram, sammymdl, itazuram, sammymdl, sammymdl_state, init_itazuram, ROT0, "Sammy", "Itazura Monkey", 0 )
GAME( 2000, pyenaget, sammymdl, pyenaget, sammymdl, sammymdl_state, init_haekaka, ROT0, "Sammy", "Pye-nage Taikai", 0 )
GAME( 2000, tdoboon, sammymdl, tdoboon, haekaka, sammymdl_state, init_haekaka, ROT0, "Sammy", "Taihou de Doboon", 0 )
GAME( 2001, haekaka, sammymdl, haekaka, haekaka, sammymdl_state, init_haekaka, ROT0, "Sammy", "Hae Hae Ka Ka Ka", 0 )
GAME( 2001, kotekita, sammymdl, haekaka, sammymdl, sammymdl_state, init_haekaka, ROT0, "Sammy", "Kotekitai Slot", 0 )
GAME( 2002, gunkids, sammymdl, animalc, sammymdl, sammymdl_state, init_animalc, ROT0, "Sammy", "Hayauchi Gun Kids", 0 )
GAME( 2003, wantouch, sammymdl, animalc, sammymdl, sammymdl_state, init_animalc, ROT0, "Sammy", "Wantouchable", 0 )
GAME( 2003, gocowboy, 0, gocowboy, gocowboy, sammymdl_state, empty_init, ROT0, "Sammy", "Go Go Cowboy (English, prize)", 0 )

View File

@ -32,7 +32,7 @@ Banpresto "Chara Medal Island" series:
BP-05 - Chibi Maruko-chan - Wanage de Asobo!! - !!
** BP-06 - Doraemon - SOS! Itazura Nezumi wo Yattsukero!! - SOS!!!
** BP-07 - GeGeGe no Kitarou - Taose! Seiyou Youkai Gundan - 西
** BP-08 - Keroro Gunsou - Hacha Mecha Yakyu Taikai de Arimasu!! - !!
BP-08 - Keroro Gunsou - Hacha Mecha Yakyu Taikai de Arimasu!! - !!
almost surely more
Takara / Tomy "VS medal" series (games show produced by Amodio and Tomy copyright on title screen):
@ -153,7 +153,7 @@ ROM_START( dbzbgck )
ROM_LOAD( "bp03-s_ver1.0.ic4", 0x000000, 0x100000, CRC(0cbf97b4) SHA1(c39106e4414cf55bd3b9aaf7d3c37de7fc14b48f) )
ROM_END
ROM_START( cmcwa)
ROM_START( cmcwa )
ROM_REGION( 0x400000, "maincpu", 0 )
ROM_LOAD16_WORD_SWAP( "bp05-p_ver1.1.ic5", 0x000000, 0x400000, CRC(f5efd28c) SHA1(a565de1bbb88d949af20150c93db850523ac3c85) ) // 111xxxxxxxxxxxxxxxxxxx = 0xFF
@ -164,6 +164,17 @@ ROM_START( cmcwa)
ROM_LOAD( "bp05-s_ver1.0.ic4", 0x000000, 0x100000, CRC(5ee334cc) SHA1(6cbc237980d2aadb28970bd5eecec3c2cf9f873f) )
ROM_END
ROM_START( kghmytda )
ROM_REGION( 0x400000, "maincpu", 0 )
ROM_LOAD16_WORD_SWAP( "bp08-p_ver1.0.ic5", 0x000000, 0x400000, CRC(d8d49df1) SHA1(7060094305bea6ee9f58ff42c23c64961fc825a9) ) // 111xxxxxxxxxxxxxxxxxxx = 0xFF
ROM_REGION( 0x400000, "gfx", 0 )
ROM_LOAD( "bp08-g_ver1.0.ic6", 0x000000, 0x400000, CRC(8a3a3b1c) SHA1(b3c635e0d61a41c3b492b604e77d8bb492ac39e6) )
ROM_REGION( 0x100000, "oki", 0 )
ROM_LOAD( "bp08-s_ver1.0.ic4", 0x000000, 0x100000, CRC(b30b9f44) SHA1(98c60021c70524dcf9d55bb0d55be78071f85969) )
ROM_END
ROM_START( zoids )
ROM_REGION( 0x400000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "tm03-p_ver1.0.ic5", 0x000000, 0x080000, CRC(becd0060) SHA1(68b72a3e7270f3416935db018b6feeaaa8e4aeae) )
@ -236,6 +247,7 @@ ROM_END
GAME( 2006, cscaoysd, 0, base, base, banpresto_tomy_h8s_state, empty_init, ROT0, "Banpresto", "Crayon Shin-chan - Arashi o Yobu! Sushitori Daigassen", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2006, dbzbgck, 0, base, base, banpresto_tomy_h8s_state, empty_init, ROT0, "Banpresto", "Dragon Ball Z - Bucchigiri no Chou Kessen", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2007, cmcwa, 0, base, base, banpresto_tomy_h8s_state, empty_init, ROT0, "Banpresto", "Chibi Maruko-chan - Wanage de Asobo!!", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2007, kghmytda, 0, base, base, banpresto_tomy_h8s_state, empty_init, ROT0, "Banpresto", "Keroro Gunsou - Hacha Mecha Yakyu Taikai de Arimasu!!", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2005, zoids, 0, base, base, banpresto_tomy_h8s_state, empty_init, ROT0, "Amodio / Tomy", "Zoids", MACHINE_NO_SOUND | MACHINE_NOT_WORKING ) // title to be verified
GAME( 2007, youkai, 0, base, base, banpresto_tomy_h8s_state, empty_init, ROT0, "Amodio / Tomy", "Youkai VS Uchuujin", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2007, satoyama, 0, base, base, banpresto_tomy_h8s_state, empty_init, ROT0, "Amodio / Tomy", "Satoyama Grand Prix", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )

View File

@ -11,7 +11,8 @@ TODO:
Taito mid-2000s medal hardware
Currently two games are dumped:
Currently these games are dumped:
Hello Kitty Koi no Shugoshin Uranai - (2003) - K11J0958C - F19 ROM code
Dinoking Kids - (2004) - K11J0985A - F39 ROM code
Dinoking Battle - (2005) - K11J0998A - F54 ROM code
@ -171,6 +172,21 @@ void dinoking_state::dinoking(machine_config &config)
}
ROM_START( hkuranai ) // slightly different PCB, but mostly same components. Adds a printer.
ROM_REGION16_BE( 0x200000, "maincpu", 0 )
ROM_LOAD16_WORD_SWAP( "f19-04.ic28", 0x000000, 0x200000, CRC(2e8e409f) SHA1(5845c4e5ea1d95d57f2a31bc590b98e09d74c5b4) ) // silkscreened PRG M27C160-120F1 on PCB
ROM_REGION( 0x200000, "gfx", 0 )
ROM_LOAD( "f19-01.ic18", 0x000000, 0x200000, CRC(260213f9) SHA1(128b21a7288d5386e286358d0bc57c4c6494f56a) ) // silkscreened CG-ROM1 MSM27C1602CZ on PCB
// empty socket marked as CG-ROM2 MSM27C1602CZ on PCB at ic19
ROM_REGION( 0x200000, "oki", 0 )
ROM_LOAD( "f19-03.ic20", 0x000000, 0x200000, CRC(5e844985) SHA1(6e31cab29d7e6754e345dac94551b59a700356db) ) // silkscreened PCM MSM27C1602CZ on PCB
ROM_REGION( 0x100000, "printer_font", 0 ) // on ALPS PTCBL11/21-MAIN PCB
ROM_LOAD( "165-02.u1", 0x000000, 0x100000, CRC(5a9e98ac) SHA1(fc7dd89abebbc32cd833f3abd3bbb10c5f5b790e) )
ROM_END
ROM_START( dkkids )
ROM_REGION16_BE( 0x200000, "maincpu", 0 )
ROM_LOAD16_WORD_SWAP( "f39-03.ic3", 0x000000, 0x200000, CRC(061ea9e6) SHA1(9a6957a24e228aa1f44bf91c635894ecd4871623) ) // ST-M27C160-100
@ -196,5 +212,6 @@ ROM_END
} // anonymous namespace
GAME( 2004, dkkids, 0, dinoking, dinoking, dinoking_state, empty_init, ROT0, "Taito Corporation", "Dinoking Kids", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2005, dkbattle, 0, dinoking, dinoking, dinoking_state, empty_init, ROT0, "Taito Corporation", "Dinoking Battle", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2003, hkuranai, 0, dinoking, dinoking, dinoking_state, empty_init, ROT0, "Taito Corporation", "Hello Kitty Koi no Shugoshin Uranai", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2004, dkkids, 0, dinoking, dinoking, dinoking_state, empty_init, ROT0, "Taito Corporation", "Dinoking Kids", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )
GAME( 2005, dkbattle, 0, dinoking, dinoking, dinoking_state, empty_init, ROT0, "Taito Corporation", "Dinoking Battle", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )