summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/konami/xmen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/konami/xmen.cpp')
-rw-r--r--src/mame/konami/xmen.cpp34
1 files changed, 16 insertions, 18 deletions
diff --git a/src/mame/konami/xmen.cpp b/src/mame/konami/xmen.cpp
index 9ee01cd69b1..013ea020b4b 100644
--- a/src/mame/konami/xmen.cpp
+++ b/src/mame/konami/xmen.cpp
@@ -49,9 +49,9 @@ likewise a 2 screen game.
// configurable logging
-#define LOG_EEPROMW (1U << 1)
-#define LOG_SOUNDIRQ (1U << 2)
-#define LOG_OKI (1U << 3)
+#define LOG_EEPROMW (1U << 1)
+#define LOG_SOUNDIRQ (1U << 2)
+#define LOG_OKI (1U << 3)
//#define VERBOSE (LOG_GENERAL | LOG_EEPROMW | LOG_SOUNDIRQ | LOG_OKI)
@@ -143,7 +143,7 @@ public:
void xmen6p(machine_config &config);
- DECLARE_READ_LINE_MEMBER(frame_r);
+ int frame_r();
protected:
virtual void video_start() override;
@@ -155,14 +155,12 @@ private:
uint16_t *m_k053247_ram;
template <uint8_t Which> uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- DECLARE_WRITE_LINE_MEMBER(screen_vblank);
+ void screen_vblank(int state);
void main_map(address_map &map);
};
-// video
-
/***************************************************************************
Callbacks for the K052109
@@ -277,7 +275,7 @@ uint32_t xmen6p_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap
}
// my lefts and rights are mixed up in several places..
-WRITE_LINE_MEMBER(xmen6p_state::screen_vblank)
+void xmen6p_state::screen_vblank(int state)
{
// rising edge
if (state)
@@ -338,8 +336,6 @@ WRITE_LINE_MEMBER(xmen6p_state::screen_vblank)
}
-// machine
-
/***************************************************************************
EEPROM
@@ -558,7 +554,7 @@ static INPUT_PORTS_START( xmen2p )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_serial_er5911_device, cs_write)
INPUT_PORTS_END
-READ_LINE_MEMBER(xmen6p_state::frame_r)
+int xmen6p_state::frame_r()
{
return m_screen->frame_number() & 1;
}
@@ -730,7 +726,9 @@ void xmen6p_state::xmen6p(machine_config &config)
// video hardware
config.set_default_layout(layout_dualhsxs);
- SCREEN(config.replace(), m_screen, SCREEN_TYPE_RASTER);
+ config.device_remove("screen");
+
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
m_screen->set_refresh_hz(60);
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0));
m_screen->set_size(64*8, 32*8);
@@ -1218,26 +1216,26 @@ ROM_START( xmenabl )
ROM_LOAD16_BYTE( "rom1", 0x00000, 0x80000, CRC(c895fdc1) SHA1(e7e6908374310ef0e71d9541402a18818ea10134) )
ROM_LOAD16_BYTE( "rom2", 0x00001, 0x80000, CRC(50d56da7) SHA1(7ae0748f65d9de62be8c0cd1b41dceb1ea91ba3e) )
- ROM_REGION( 0x200000, "k052109", 0 ) // tiles, k052109 non really present
+ ROM_REGION( 0x200000, "k052109", 0 ) // tiles, k052109 not really present
ROM_LOAD32_WORD( "gfx15l", 0x000000, 0x100000, CRC(6b649aca) SHA1(2595f314517738e8614facf578cc951a6c36a180) )
ROM_LOAD32_WORD( "gfx16l", 0x000002, 0x100000, CRC(c5dc8fc4) SHA1(9887cb002c8b72be7ce933cb397f00cdc5506c8c) )
- ROM_REGION( 0x400000, "k053246", 0 ) // graphics (addressable by the main CPU), k053246 non really present
+ ROM_REGION( 0x400000, "k053246", 0 ) // graphics (addressable by the main CPU), k053246 not really present
ROM_LOAD64_WORD( "gfx2h", 0x000000, 0x100000, CRC(ea05d52f) SHA1(7f2c14f907355856fb94e3a67b73aa1919776835) ) // sprites
ROM_LOAD64_WORD( "gfx2l", 0x000002, 0x100000, CRC(96b91802) SHA1(641943557b59b91f0edd49ec8a73cef7d9268b32) )
ROM_LOAD64_WORD( "gfx1h", 0x000004, 0x100000, CRC(321ed07a) SHA1(5b00ed676daeea974bdce6701667cfe573099dad) )
ROM_LOAD64_WORD( "gfx1l", 0x000006, 0x100000, CRC(46da948e) SHA1(168ac9178ee5bad5931557fb549e1237971d7839) )
ROM_REGION( 0x100000, "oki", 0 )
- ROM_LOAD( "oki1", 0x00000, 0x80000, CRC(ded562e0) SHA1(e67daae3e8e4a3a4979d3debf085f9c332404dd4) ) // xx1xxxxxxxxxxxxxxxx = 0xFF
+ ROM_LOAD( "oki1", 0x00000, 0x80000, CRC(2967436b) SHA1(44d4bf4c38e340169577098d958a09877067e119) )
ROM_LOAD( "oki2", 0x80000, 0x80000, CRC(74a12d1e) SHA1(b5e23e8efea2cf19385c081cfe8088bead132c21) )
ROM_REGION( 0x80, "eeprom", 0 )
ROM_LOAD( "xmen_aea.nv", 0x0000, 0x0080, CRC(d73d4f20) SHA1(b39906eb59ecf8f1e8141b467021e0a581186d47) )
ROM_REGION( 0x400, "plds", 0 )
- ROM_LOAD( "gal16v8b", 0x000, 0x117, NO_DUMP ) // near the sprite hw and ROMs
- ROM_LOAD( "gal16v8d", 0x200, 0x117, NO_DUMP ) // near the M6295
+ ROM_LOAD( "gal16v8b", 0x000, 0x117, CRC(af9802f9) SHA1(173466314d8672232fa6ed7ad7ec0a3b6aeae85a) ) // near the sprite hw and ROMs
+ ROM_LOAD( "gal16v8d", 0x200, 0x117, CRC(5f0f86a3) SHA1(bcc78bf37ed8f11f76759a50e7639bb9b063bc29) ) // near the M6295
ROM_END
} // anonymous namespace
@@ -1262,7 +1260,7 @@ GAME( 1992, xmenj, xmen, xmen, xmen, xmen_state, empty_init, ROT0, "Kon
GAME( 1992, xmenja, xmen, xmen, xmen, xmen_state, empty_init, ROT0, "Konami", "X-Men (4 Players ver JEA)", MACHINE_SUPPORTS_SAVE )
GAME( 1992, xmena, xmen, xmen, xmen, xmen_state, empty_init, ROT0, "Konami", "X-Men (4 Players ver AEA)", MACHINE_SUPPORTS_SAVE )
GAME( 1992, xmenaa, xmen, xmen, xmen, xmen_state, empty_init, ROT0, "Konami", "X-Men (4 Players ver ADA)", MACHINE_SUPPORTS_SAVE )
-GAME( 1992, xmenabl, xmen, xmenabl, xmen, xmen_state, empty_init, ROT0, "bootleg", "X-Men (4 Players ver AEA, bootleg)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // sprites are wrong, one oki ROM may be bad or the banking not correct (or both)
+GAME( 1992, xmenabl, xmen, xmenabl, xmen, xmen_state, empty_init, ROT0, "bootleg", "X-Men (4 Players ver AEA, bootleg)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // sprites are wrong, Oki banking not correct (doubtful it can be this bad, even being a bootleg)
GAME( 1992, xmen2pe, xmen, xmen, xmen2p, xmen_state, empty_init, ROT0, "Konami", "X-Men (2 Players ver EAA)", MACHINE_SUPPORTS_SAVE )
GAME( 1992, xmen2pu, xmen, xmen, xmen2p, xmen_state, empty_init, ROT0, "Konami", "X-Men (2 Players ver UAB)", MACHINE_SUPPORTS_SAVE )