more generic cart slot conversions. nw.

This commit is contained in:
Fabio Priuli 2014-10-01 05:48:35 +00:00
parent e35f0bfd5c
commit 0eae106793
6 changed files with 324 additions and 401 deletions

View File

@ -164,27 +164,17 @@ TODO:
*
*******************************************/
TIMER_CALLBACK_MEMBER( saturn_state::stv_bankswitch_state )
{
static const char *const banknames[] = { "game0", "game1", "game2", "game3" };
UINT8* game_region;
if(m_prev_bankswitch != param)
{
game_region = memregion(banknames[param])->base();
if (game_region)
memcpy(memregion("abus")->base(), game_region, 0x3000000);
else
memset(memregion("abus")->base(), 0x00, 0x3000000);
m_prev_bankswitch = param;
}
}
void saturn_state::stv_select_game(int gameno)
{
machine().scheduler().timer_set(attotime::zero, timer_expired_delegate(FUNC(saturn_state::stv_bankswitch_state),this), gameno);
if (m_prev_bankswitch != gameno)
{
if (m_cart_reg[gameno] && m_cart_reg[gameno]->base())
memcpy(memregion("abus")->base(), m_cart_reg[gameno]->base(), 0x3000000);
else
memset(memregion("abus")->base(), 0x00, 0x3000000);
m_prev_bankswitch = gameno;
}
}
/********************************************

View File

@ -74,7 +74,8 @@ Sonic Hedgehog 2 171-6215A 837-6963-62 610-0239-62 MPR
#include "rendlay.h"
#include "includes/megadriv.h"
#include "imagedev/cartslot.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
#define MASTER_CLOCK 53693100
@ -83,16 +84,18 @@ Sonic Hedgehog 2 171-6215A 837-6963-62 610-0239-62 MPR
class mtech_state : public md_base_state
{
public:
enum
{
TIMER_Z80_RUN_STATE,
TIMER_Z80_STOP_STATE
};
mtech_state(const machine_config &mconfig, device_type type, const char *tag)
: md_base_state(mconfig, type, tag),
m_vdp1(*this, "vdp1"),
m_bioscpu(*this, "mtbios")
m_vdp1(*this, "vdp1"),
m_cart1(*this, "mt_slot1"),
m_cart2(*this, "mt_slot2"),
m_cart3(*this, "mt_slot3"),
m_cart4(*this, "mt_slot4"),
m_cart5(*this, "mt_slot5"),
m_cart6(*this, "mt_slot6"),
m_cart7(*this, "mt_slot7"),
m_cart8(*this, "mt_slot8"),
m_bioscpu(*this, "mtbios")
{ }
DECLARE_WRITE_LINE_MEMBER( snd_int_callback );
@ -118,14 +121,21 @@ public:
DECLARE_DRIVER_INIT(mt_crt);
DECLARE_DRIVER_INIT(mt_slot);
DECLARE_MACHINE_RESET(megatech);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(megatech_cart);
int load_cart(device_image_interface &image, generic_slot_device *slot, int gameno);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart1 ) { return load_cart(image, m_cart1, 0); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart2 ) { return load_cart(image, m_cart2, 1); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart3 ) { return load_cart(image, m_cart3, 2); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart4 ) { return load_cart(image, m_cart4, 3); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart5 ) { return load_cart(image, m_cart5, 4); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart6 ) { return load_cart(image, m_cart6, 5); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart7 ) { return load_cart(image, m_cart7, 6); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( mt_cart8 ) { return load_cart(image, m_cart8, 7); }
UINT32 screen_update_main(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
UINT32 screen_update_menu(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void screen_eof_main(screen_device &screen, bool state);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
private:
UINT8 m_mt_cart_select_reg;
UINT32 m_bios_port_ctrl;
@ -139,15 +149,24 @@ private:
void set_genz80_as_md();
void set_genz80_as_sms();
TIMER_CALLBACK_MEMBER(z80_run_state);
TIMER_CALLBACK_MEMBER(z80_stop_state);
void switch_cart(int gameno);
UINT8* m_banked_ram;
UINT8* sms_mainram;
UINT8* sms_rom;
required_device<sega315_5124_device> m_vdp1;
optional_device<generic_slot_device> m_cart1;
optional_device<generic_slot_device> m_cart2;
optional_device<generic_slot_device> m_cart3;
optional_device<generic_slot_device> m_cart4;
optional_device<generic_slot_device> m_cart5;
optional_device<generic_slot_device> m_cart6;
optional_device<generic_slot_device> m_cart7;
optional_device<generic_slot_device> m_cart8;
required_device<cpu_device> m_bioscpu;
memory_region *m_cart_reg[8];
};
@ -284,21 +303,6 @@ READ8_MEMBER(mtech_state::cart_select_r )
return m_mt_cart_select_reg;
}
void mtech_state::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
{
switch (id)
{
case TIMER_Z80_RUN_STATE:
z80_run_state(ptr, param);
break;
case TIMER_Z80_STOP_STATE:
z80_stop_state(ptr, param);
break;
default:
assert_always(FALSE, "Unknown id in mtech_state::device_timer");
}
}
READ8_MEMBER(mtech_state::sms_count_r)
{
address_space &prg = m_z80snd->space(AS_PROGRAM);
@ -403,42 +407,9 @@ void mtech_state::set_genz80_as_md()
}
TIMER_CALLBACK_MEMBER(mtech_state::z80_run_state )
void mtech_state::switch_cart(int gameno)
{
char tempname[20];
UINT8* game_region;
sprintf(tempname, "game%d", param);
game_region = memregion(tempname)->base();
memcpy(memregion("maincpu")->base(), game_region, 0x400000);
if (!m_cart_is_genesis[param])
{
logerror("enabling SMS Z80\n");
m_current_game_is_sms = 1;
set_genz80_as_sms();
//m_z80snd->set_input_line(INPUT_LINE_HALT, CLEAR_LINE);
m_z80snd->set_input_line(INPUT_LINE_RESET, CLEAR_LINE);
}
else
{
logerror("disabling SMS Z80\n");
m_current_game_is_sms = 0;
set_genz80_as_md();
m_maincpu->set_input_line(INPUT_LINE_RESET, CLEAR_LINE);
//m_maincpu->set_input_line(INPUT_LINE_HALT, CLEAR_LINE);
}
}
TIMER_CALLBACK_MEMBER(mtech_state::z80_stop_state )
{
UINT8* game_region;
char tempname[20];
logerror("select game %d\n", param + 1);
sprintf(tempname, "game%d", param);
game_region = memregion(tempname)->base();
logerror("select game %d\n", gameno + 1);
m_maincpu->set_input_line(INPUT_LINE_RESET, ASSERT_LINE);
m_z80snd->set_input_line(INPUT_LINE_RESET, ASSERT_LINE);
@ -450,18 +421,32 @@ TIMER_CALLBACK_MEMBER(mtech_state::z80_stop_state )
m_vdp->reset();
/* if the regions exist we're fine */
if (game_region)
if (m_cart_reg[gameno])
{
timer_set(attotime::zero, TIMER_Z80_RUN_STATE, param);
memcpy(memregion("maincpu")->base(), m_cart_reg[gameno]->base(), 0x400000);
if (!m_cart_is_genesis[gameno])
{
logerror("enabling SMS Z80\n");
m_current_game_is_sms = 1;
set_genz80_as_sms();
//m_z80snd->set_input_line(INPUT_LINE_HALT, CLEAR_LINE);
m_z80snd->set_input_line(INPUT_LINE_RESET, CLEAR_LINE);
}
else
{
logerror("disabling SMS Z80\n");
m_current_game_is_sms = 0;
set_genz80_as_md();
m_maincpu->set_input_line(INPUT_LINE_RESET, CLEAR_LINE);
//m_maincpu->set_input_line(INPUT_LINE_HALT, CLEAR_LINE);
}
}
else
else /* else, no cart.. */
{
/* no cart.. */
memset(memregion("mtbios")->base() + 0x8000, 0x00, 0x8000);
memset(memregion("maincpu")->base(), 0x00, 0x400000);
}
return;
}
WRITE8_MEMBER(mtech_state::cart_select_w )
@ -471,7 +456,7 @@ WRITE8_MEMBER(mtech_state::cart_select_w )
because it always seems to show the
same instructions ... */
m_mt_cart_select_reg = data;
timer_set(attotime::zero, TIMER_Z80_STOP_STATE, m_mt_cart_select_reg);
switch_cart(m_mt_cart_select_reg);
}
@ -609,7 +594,7 @@ DRIVER_INIT_MEMBER(mtech_state,mt_slot)
m_banked_ram = auto_alloc_array(machine(), UINT8, 0x1000*8);
DRIVER_INIT_CALL(megadriv);
// this gets set in DEVICE_IMAGE_LOAD
memset(m_cart_is_genesis, 0, sizeof(m_cart_is_genesis));
}
@ -656,7 +641,28 @@ MACHINE_RESET_MEMBER(mtech_state, megatech)
{
m_mt_bank_addr = 0;
MACHINE_RESET_CALL_MEMBER(megadriv);
timer_set(attotime::zero, TIMER_Z80_STOP_STATE, 0);
astring region_tag;
if (m_cart1)
m_cart_reg[0] = memregion(region_tag.cpy(m_cart1->tag()).cat(GENERIC_ROM_REGION_TAG));
else
m_cart_reg[0] = memregion("cart");
if (m_cart2)
m_cart_reg[1] = memregion(region_tag.cpy(m_cart2->tag()).cat(GENERIC_ROM_REGION_TAG));
if (m_cart3)
m_cart_reg[2] = memregion(region_tag.cpy(m_cart3->tag()).cat(GENERIC_ROM_REGION_TAG));
if (m_cart4)
m_cart_reg[3] = memregion(region_tag.cpy(m_cart4->tag()).cat(GENERIC_ROM_REGION_TAG));
if (m_cart5)
m_cart_reg[4] = memregion(region_tag.cpy(m_cart5->tag()).cat(GENERIC_ROM_REGION_TAG));
if (m_cart6)
m_cart_reg[5] = memregion(region_tag.cpy(m_cart6->tag()).cat(GENERIC_ROM_REGION_TAG));
if (m_cart7)
m_cart_reg[6] = memregion(region_tag.cpy(m_cart7->tag()).cat(GENERIC_ROM_REGION_TAG));
if (m_cart8)
m_cart_reg[7] = memregion(region_tag.cpy(m_cart8->tag()).cat(GENERIC_ROM_REGION_TAG));
switch_cart(0);
}
UINT32 mtech_state::screen_update_menu(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
@ -719,50 +725,18 @@ static MACHINE_CONFIG_START( megatech, mtech_state )
MACHINE_CONFIG_END
struct megatech_cart_region
int mtech_state::load_cart(device_image_interface &image, generic_slot_device *slot, int gameno)
{
const char *tag;
int slot;
const char *region;
};
// we keep old region tags for compatibility with older macros... this might be changed at a later stage
static const struct megatech_cart_region megatech_cart_table[] =
{
{ ":cart1", 0, ":game0" },
{ ":cart2", 1, ":game1" },
{ ":cart3", 2, ":game2" },
{ ":cart4", 3, ":game3" },
{ ":cart5", 4, ":game4" },
{ ":cart6", 5, ":game5" },
{ ":cart7", 6, ":game6" },
{ ":cart8", 7, ":game7" },
{ 0 }
};
DEVICE_IMAGE_LOAD_MEMBER( mtech_state, megatech_cart )
{
const struct megatech_cart_region *mt_cart = &megatech_cart_table[0], *this_cart;
UINT8 *ROM;
const char *pcb_name;
/* First, determine where this cart has to be loaded */
while (mt_cart->tag)
{
if (strcmp(mt_cart->tag, image.device().tag()) == 0)
break;
mt_cart++;
}
this_cart = mt_cart;
UINT32 size = slot->common_get_size("rom");
if (image.software_entry() == NULL)
return IMAGE_INIT_FAIL;
UINT8 *ROM = image.device().memregion(this_cart->region)->base();
UINT32 length = image.get_software_region_length("rom");
memcpy(ROM, image.get_software_region("rom"), length);
slot->rom_alloc(size, GENERIC_ROM8_WIDTH, ENDIANNESS_LITTLE);
ROM = slot->get_rom_base();
memcpy(ROM, image.get_software_region("rom"), size);
if ((pcb_name = image.get_feature("pcb_type")) == NULL)
return IMAGE_INIT_FAIL;
@ -770,45 +744,38 @@ DEVICE_IMAGE_LOAD_MEMBER( mtech_state, megatech_cart )
{
if (!core_stricmp("genesis", pcb_name))
{
osd_printf_debug("%s is genesis\n", mt_cart->tag);
m_cart_is_genesis[this_cart->slot] = 1;
osd_printf_debug("cart%d is genesis\n", gameno + 1);
m_cart_is_genesis[gameno] = 1;
}
else if (!core_stricmp("sms", pcb_name))
{
osd_printf_debug("%s is sms\n", mt_cart->tag);
m_cart_is_genesis[this_cart->slot] = 0;
osd_printf_debug("cart%d is sms\n", gameno + 1);
m_cart_is_genesis[gameno] = 0;
}
else
{
osd_printf_debug("%s is invalid\n", mt_cart->tag);
}
osd_printf_debug("cart%d is invalid\n", gameno + 1);
}
return IMAGE_INIT_PASS;
}
#define MCFG_MEGATECH_CARTSLOT_ADD(_tag) \
MCFG_CARTSLOT_ADD(_tag) \
MCFG_CARTSLOT_INTERFACE("megatech_cart") \
MCFG_CARTSLOT_LOAD(mtech_state, megatech_cart)
MACHINE_CONFIG_FRAGMENT( megatech_cartslot )
MCFG_MEGATECH_CARTSLOT_ADD("cart1")
MCFG_MEGATECH_CARTSLOT_ADD("cart2")
MCFG_MEGATECH_CARTSLOT_ADD("cart3")
MCFG_MEGATECH_CARTSLOT_ADD("cart4")
MCFG_MEGATECH_CARTSLOT_ADD("cart5")
MCFG_MEGATECH_CARTSLOT_ADD("cart6")
MCFG_MEGATECH_CARTSLOT_ADD("cart7")
MCFG_MEGATECH_CARTSLOT_ADD("cart8")
MCFG_SOFTWARE_LIST_ADD("cart_list","megatech")
MACHINE_CONFIG_END
#define MCFG_MEGATECH_CARTSLOT_ADD(_tag, _load) \
MCFG_GENERIC_CARTSLOT_ADD(_tag, generic_plain_slot, "megatech_cart") \
MCFG_GENERIC_LOAD(mtech_state, _load)
static MACHINE_CONFIG_DERIVED( megatech_slot, megatech )
MCFG_FRAGMENT_ADD( megatech_cartslot )
// add cart slots
MCFG_MEGATECH_CARTSLOT_ADD("mt_slot1", mt_cart1)
MCFG_MEGATECH_CARTSLOT_ADD("mt_slot2", mt_cart2)
MCFG_MEGATECH_CARTSLOT_ADD("mt_slot3", mt_cart3)
MCFG_MEGATECH_CARTSLOT_ADD("mt_slot4", mt_cart4)
MCFG_MEGATECH_CARTSLOT_ADD("mt_slot5", mt_cart5)
MCFG_MEGATECH_CARTSLOT_ADD("mt_slot6", mt_cart6)
MCFG_MEGATECH_CARTSLOT_ADD("mt_slot7", mt_cart7)
MCFG_MEGATECH_CARTSLOT_ADD("mt_slot8", mt_cart8)
MCFG_SOFTWARE_LIST_ADD("cart_list","megatech")
MACHINE_CONFIG_END
@ -826,16 +793,6 @@ MACHINE_CONFIG_END
/* no games */
ROM_START( megatech )
MEGATECH_BIOS
// empty memory areas, to copy data into
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "game1", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "game2", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "game3", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "game4", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "game5", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "game6", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "game7", ROMREGION_ERASE00 )
ROM_END
@ -843,7 +800,7 @@ ROM_END
ROM_START( mt_beast ) /* Altered Beast */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12538.ic1", 0x000000, 0x080000, CRC(3bea3dce) SHA1(ec72e4fde191dedeb3f148f132603ed3c23f0f86) )
ROM_LOAD16_BYTE( "epr-12368-01.ic2", 0x300001, 0x08000, CRC(40cb0088) SHA1(e1711532c29f395a35a1cb34d789015881b5a1ed) )
@ -855,7 +812,7 @@ ROM_END
ROM_START( mt_shar2 ) /* Space Harrier 2 */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp11934.ic1", 0x000000, 0x080000, CRC(932daa09) SHA1(a2d7a76f3604c6227d43229908bfbd02b0ef5fd9) )
ROM_LOAD16_BYTE( "epr-12368-02.ic2", 0x300001, 0x08000, CRC(c129c66c) SHA1(e7c0c97db9df9eb04e2f9ff561b64305219b8f1f) )
@ -867,7 +824,7 @@ ROM_END
ROM_START( mt_stbld ) /* Super Thunder Blade */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp11996f.ic1", 0x000000, 0x080000, CRC(9355c34e) SHA1(26ff91c2921408673c644b0b1c8931d98524bf63) )
ROM_LOAD16_BYTE( "epr-12368-03.ic2", 0x300001, 0x08000, CRC(1ba4ac5d) SHA1(9bde57d70189d159ebdc537a9026001abfd0deae) )
@ -880,7 +837,7 @@ ROM_END
ROM_START( mt_ggolf ) /* Great Golf */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp11129f.ic1", 0x000000, 0x020000, CRC(c6611c84) SHA1(eab0eed872dd26b13bcf0b2dd74fcbbc078812c9) )
ROM_LOAD16_BYTE( "epr-12368-04.ic2", 0x300001, 0x08000, CRC(62e5579b) SHA1(e1f531be5c40a1216d4192baeda9352384444410) )
@ -892,7 +849,7 @@ ROM_END
ROM_START( mt_gsocr ) /* Great Soccer */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp10747f.ic1", 0x000000, 0x020000, BAD_DUMP CRC(9cf53703) SHA1(c6b4d1de56bd5bf067ec7fc80449c07686d01337) )
ROM_LOAD16_BYTE( "epr-12368-05.ic2", 0x300001, 0x08000, CRC(bab91fcc) SHA1(a160c9d34b253e93ac54fdcef33f95f44d8fa90c) )
@ -904,7 +861,7 @@ ROM_END
ROM_START( mt_orun ) /* Out Run */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-11078.ic1", 0x000000, 0x040000, CRC(5589d8d2) SHA1(4f9b61b24f0d9fee0448cdbbe8fc05411dbb1102) )
ROM_LOAD16_BYTE( "epr-12368-06.ic2", 0x300001, 0x08000, CRC(c7c74429) SHA1(22ee261a653e10d66e0d6703c988bb7f236a7571) )
@ -916,7 +873,7 @@ ROM_END
ROM_START( mt_asyn ) /* Alien Syndrome */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-11194.ic1", 0x000000, 0x040000, CRC(4cc11df9) SHA1(5d786476b275de34efb95f576dd556cf4b335a83) )
ROM_LOAD16_BYTE( "epr-12368-07.ic2", 0x300001, 0x08000, CRC(14f4a17b) SHA1(0fc010ac95762534892f1ae16986dbf1c25399d3) )
@ -928,7 +885,7 @@ ROM_END
ROM_START( mt_shnbi ) /* Shinobi */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp11706.ic1", 0x000000, 0x040000, CRC(0C6FAC4E) SHA1(7C0778C055DC9C2B0AAE1D166DBDB4734E55B9D1) )
ROM_LOAD16_BYTE( "epr-12368-08.ic2", 0x300001, 0x08000, CRC(103A0459) SHA1(D803DDF7926B83785E8503C985B8C78E7CCB5DAC) )
@ -942,7 +899,7 @@ ROM_END
ROM_START( mt_fz ) /* Fantasy Zone */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-10118.ic1", 0x000000, 0x020000, CRC(65d7e4e0) SHA1(0278cd120dc3a7707eda9314c46c7f27f9e8fdda) )
ROM_LOAD16_BYTE( "epr-12368-09.bin", 0x300001, 0x08000, CRC(373d2a70) SHA1(c39dd1003d71a417b12a359126bfef64c7a2fd00) )
@ -955,7 +912,7 @@ ROM_END
ROM_START( mt_aftrb ) /* Afterburner */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp11271.ic1", 0x000000, 0x080000, CRC(1C951F8E) SHA1(51531DF038783C84640A0CAB93122E0B59E3B69A) )
ROM_LOAD16_BYTE( "epr-12368-10.ic2", 0x300001, 0x08000, CRC(2A7CB590) SHA1(2236963BDDC89CA9045B530259CC7B5CCF889EAF) )
@ -967,7 +924,7 @@ ROM_END
ROM_START( mt_tfor2 ) /* Thunder Force II */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12559.ic1", 0x000000, 0x080000, CRC(b093bee3) SHA1(0bf6194c3d228425f8cf1903ed70d8da1b027b6a) )
ROM_LOAD16_BYTE( "epr-12368-11.ic2", 0x300001, 0x08000, CRC(f4f27e8d) SHA1(ae1a2823deb416c53838115966f1833d5dac72d4) )
@ -979,7 +936,7 @@ ROM_END
ROM_START( mt_astro ) /* Astro Warrior */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "ep13817.ic2", 0x000000, 0x20000, CRC(299cbb74) SHA1(901697a3535ad70190647f34ad5b30b695d54542) )
ROM_LOAD16_BYTE( "epr-12368-13.ic1", 0x300001, 0x08000, CRC(4038cbd1) SHA1(696bc1efce45d9f0052b2cf0332a232687c8d6ab) )
@ -991,7 +948,7 @@ ROM_END
ROM_START( mt_gfoot ) /* Great Football */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-10576f.ic1", 0x000000, 0x020000, CRC(2055825f) SHA1(a768f44ce7e50083ffe8c4b5e3ac93ceb7bd3266) )
ROM_LOAD16_BYTE( "epr-12368-19.ic2", 0x300001, 0x08000, CRC(e27cb37a) SHA1(2b6259957e86d033a5689fd716a9efcfeff7d5ba) )
@ -1003,7 +960,7 @@ ROM_END
ROM_START( mt_lastb ) /* Last Battle */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12578f.ic1", 0x000000, 0x080000, CRC(531191a0) SHA1(f6bc26e975c01a3e10ab4033e4c5f494627a1e2f) )
ROM_LOAD16_BYTE( "epr-12368-20.ic2", 0x300001, 0x08000, CRC(e1a71c91) SHA1(c250da18660d8aea86eb2abace41ba46130dabc8) )
@ -1015,7 +972,7 @@ ROM_END
ROM_START( mt_wcsoc ) /* World Championship Soccer */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12607b.ic1", 0x000000, 0x080000, CRC(bc591b30) SHA1(55e8577171c0933eee53af1dabd0f4c6462d5fc8) )
ROM_LOAD16_BYTE( "epr-12368-21.ic2", 0x300001, 0x08000, CRC(028ee46b) SHA1(cd8f81d66e5ae62107eb20e0ca5db4b66d4b2987) )
@ -1027,7 +984,7 @@ ROM_END
ROM_START( mt_tetri ) /* Tetris */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_BYTE( "mpr-12356f.ic1", 0x000001, 0x020000, CRC(1e71c1a0) SHA1(44b2312792e49d46d71e0417a7f022e5ffddbbfe) )
ROM_LOAD16_BYTE( "mpr-12357f.ic2", 0x000000, 0x020000, CRC(d52ca49c) SHA1(a9159892eee2c0cf28ebfcfa99f81f80781851c6) )
ROM_LOAD16_BYTE( "epr-12368-22.ic3", 0x300001, 0x08000, CRC(1c1b6468) SHA1(568a38f4186167486e39ab4aa2c1ceffd0b81156) )
@ -1040,7 +997,7 @@ ROM_END
ROM_START( mt_gng ) /* Ghouls and Ghosts */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12605.ic1", 0x000000, 0x020000, CRC(1066C6AB) SHA1(C30E4442732BDB38C96D780542F8550A94D127B0) )
ROM_LOAD16_WORD_SWAP( "mpr12606.ic2", 0x080000, 0x020000, CRC(D0BE7777) SHA1(A44B2A3D427F6973B5C1A3DCD8D1776366ACB9F7) )
ROM_CONTINUE(0x020000,0x60000)
@ -1054,7 +1011,7 @@ ROM_END
ROM_START( mt_shang ) /* Super Hang-On */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-12640.ic1", 0x000000, 0x080000, CRC(2fe2cf62) SHA1(4728bcc847deb38b16338cbd0154837cd4a07b7d) )
ROM_LOAD16_BYTE( "epr-12368-24.ic2", 0x300001, 0x08000, CRC(6c2db7e3) SHA1(8de0a10ed9185c9e98f17784811a79d3ce8c4c03) )
@ -1066,7 +1023,7 @@ ROM_END
ROM_START( mt_gaxe ) /* Golden Axe */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "12806.ic1", 0x000000, 0x080000, CRC(43456820) SHA1(2f7f1fcd979969ac99426f11ab99999a5494a121) )
ROM_LOAD16_BYTE( "epr-12368-25.ic2", 0x300001, 0x08000, CRC(1f07ed28) SHA1(9d54192f4c6c1f8a51c38a835c1dd1e4e3e8279e) )
@ -1079,7 +1036,7 @@ ROM_END
ROM_START( mt_fwrld ) /* Forgotten Worlds */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD( "mpr-12672-h.ic1", 0x000000, 0x080000, CRC(d0ee6434) SHA1(8b9a37c206c332ef23dc71f09ec40e1a92b1f83a) )
ROM_LOAD16_BYTE( "epr-12368-26.ic2", 0x300001, 0x08000, CRC(4623b573) SHA1(29df4a5c5de66cd9cb7519e4f30000f7dddc2138) )
@ -1091,7 +1048,7 @@ ROM_END
ROM_START( mt_mystd ) /* Mystic Defender */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12707.1", 0x000000, 0x080000, CRC(4f2c513d) SHA1(f9bb548b3688170fe18bb3f1b5b54182354143cf) )
ROM_LOAD16_BYTE( "epr-12368-27.ic2", 0x300001, 0x08000, CRC(caf46f78) SHA1(a9659e86a6a223646338cd8f29c346866e4406c7) )
@ -1103,7 +1060,7 @@ ROM_END
ROM_START( mt_revsh ) /* The Revenge Of Shinobi */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12675.ic1", 0x000000, 0x080000, CRC(672A1D4D) SHA1(5FD0AF14C8F2CF8CEAB1AE61A5A19276D861289A) )
ROM_LOAD16_BYTE( "epr-12368-28.ic2", 0x300001, 0x08000, CRC(0D30BEDE) SHA1(73A090D84B78A570E02FB54A33666DCADA52849B) )
@ -1115,7 +1072,7 @@ ROM_END
ROM_START( mt_parlg ) /* Parlour Games */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp11404.ic1", 0x000000, 0x020000, CRC(E030E66C) SHA1(06664DAF208F07CB00B603B12ECCFC3F01213A17) )
ROM_LOAD16_BYTE( "epr-12368-29.ic2", 0x300001, 0x08000, CRC(534151e8) SHA1(219238d90c1d3ac07ff64c9a2098b490fff68f04) )
@ -1127,7 +1084,7 @@ ROM_END
ROM_START( mt_tgolf ) /* Arnold Palmer Tournament Golf */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12645f.ic1", 0x000000, 0x080000, CRC(c07ef8d2) SHA1(9d111fdc7bb92d52bfa048cd134aa488b4f475ef) )
ROM_LOAD16_BYTE( "epr-12368-31.ic2", 0x300001, 0x08000, CRC(30af7e4a) SHA1(baf91d527393dc90aba9371abcb1e690bcc83c7e) )
@ -1140,7 +1097,7 @@ ROM_END
ROM_START( mt_srbb ) /* Super Real Basketball */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD( "mpr-12904f.ic1", 0x000000, 0x080000, CRC(4346e11a) SHA1(c86725780027ef9783cb7884c8770cc030b0cd0d) )
ROM_LOAD16_BYTE( "epr-12368-32.ic2", 0x300001, 0x08000, CRC(f70adcbe) SHA1(d4412a7cd59fe282a1c6619aa1051a2a2e00e1aa) )
@ -1152,7 +1109,7 @@ ROM_END
ROM_START( mt_tlbba ) /* Tommy Lasorda Baseball */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp12706.ic1", 0x000000, 0x080000, CRC(8901214f) SHA1(f5ec166be1cf9b86623b9d7a78ec903b899da32a) )
ROM_LOAD16_BYTE( "epr-12368-35.ic2", 0x300001, 0x08000, CRC(67bbe482) SHA1(6fc283b22e68befabb44b2cc61a7f82a71d6f029) )
@ -1164,7 +1121,7 @@ ROM_END
ROM_START( mt_cols ) /* Columns */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp13193-t.ic1", 0x000000, 0x080000, CRC(8c770e2f) SHA1(02a3626025c511250a3f8fb3176eebccc646cda9) )
ROM_LOAD16_BYTE( "epr-12368-36.ic3", 0x300001, 0x008000, CRC(a4b29bac) SHA1(c9be866ac96243897d09612fe17562e0481f66e3) )
@ -1176,7 +1133,7 @@ ROM_END
ROM_START( mt_eswat ) /* ESWAT */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp13192-h.ic1", 0x000000, 0x080000, CRC(82f458ef) SHA1(58444b783312def71ecffc4ad021b72a609685cb) )
ROM_LOAD16_BYTE( "epr-12368-38.ic2", 0x300001, 0x08000, CRC(43c5529b) SHA1(104f85adea6da1612c0aa96d553efcaa387d7aaf) )
@ -1188,7 +1145,7 @@ ROM_END
ROM_START( mt_smgp ) /* Super Monaco Grand Prix */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "13250.ic1", 0x000000, 0x080000, CRC(189b885f) SHA1(31c06ffcb48b1604989a94e584261457de4f1f46) )
ROM_LOAD16_BYTE( "epr-12368-39.ic2", 0x300001, 0x08000, CRC(64b3ce25) SHA1(83a9f2432d146a712b037f96f261742f7dc810bb) )
@ -1200,7 +1157,7 @@ ROM_END
ROM_START( mt_mwalk ) /* Moon Walker */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp13285a.ic1", 0x000000, 0x080000, CRC(189516e4) SHA1(2a79e07da2e831832b8d448cae87a833c85e67c9) )
ROM_LOAD16_BYTE( "epr-12368-40.ic2", 0x300001, 0x08000, CRC(0482378c) SHA1(734772f3ddb5ff82b76c3514d18a464b2bce8381) )
@ -1212,7 +1169,7 @@ ROM_END
ROM_START( mt_crack ) /* Crackdown */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp13578a-s.ic1", 0x000000, 0x080000, CRC(23f19893) SHA1(09aca793871e2246af4dc24925bc1eda8ff34446) )
ROM_LOAD16_BYTE( "epr-12368-41.ic2", 0x300001, 0x08000, CRC(3014acec) SHA1(07953e9ae5c23fc7e7d08993b215f4dfa88aa5d7) )
@ -1224,7 +1181,7 @@ ROM_END
ROM_START( mt_shado ) /* Shadow Dancer */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-13571-s.ic1", 0x000000, 0x080000, CRC(56a29310) SHA1(55836177e4a1e2deb68408976b29d0282cf661a9) )
ROM_LOAD16_BYTE( "epr-12368-43.ic2", 0x300001, 0x08000, CRC(1116cbc7) SHA1(ba6dd21ceadeedf730b71b67acbd20d9067114f3) )
@ -1236,7 +1193,7 @@ ROM_END
ROM_START( mt_arrow ) /* Arrow Flash */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr13396h.ic1", 0x000000, 0x080000, CRC(091226e3) SHA1(cb15c6277314f3c4a86b5ae5823f72811d5d269d) )
ROM_LOAD16_BYTE( "epr-12368-44.ic2", 0x300001, 0x08000, CRC(e653065d) SHA1(96b014fc4df8eb2188ac94ed0a778d974fe6dcad) )
@ -1248,7 +1205,7 @@ ROM_END
ROM_START( mt_astrm ) /* Alien Storm */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp13941.ic1", 0x000000, 0x080000, CRC(D71B3EE6) SHA1(05F272DAD243D132D517C303388248DC4C0482ED) )
ROM_LOAD16_BYTE( "epr-12368-47.ic2", 0x300001, 0x08000, CRC(31FB683D) SHA1(E356DA020BBF817B97FB10C27F75CF5931EDF4FC) )
@ -1260,7 +1217,7 @@ ROM_END
ROM_START( mt_wwar ) /* Wrestle War */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-14025-f.ic1", 0x000000, 0x080000, CRC(26e899fe) SHA1(6d28e154ae2e4196097a2aa96c5acd5dfe7e3d2b) )
ROM_LOAD16_BYTE( "epr-12368-48.ic2", 0x300001, 0x08000, CRC(25817bc2) SHA1(ba1bbb952aff12fb4d3ecfb10d82c54128439395) )
@ -1272,7 +1229,7 @@ ROM_END
ROM_START( mt_bbros ) /* Bonanza Bros. */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp13905a.ic1", 0x000000, 0x100000, CRC(68a88d60) SHA1(2f56e8a2b0999de4fa0d14a1527f4e1df0f9c7a2) )
ROM_LOAD16_BYTE( "epr-12368-49.ic2", 0x300001, 0x08000, CRC(c5101da2) SHA1(636f30043e2e9291e193ef9a2ead2e97a0bf7380) )
@ -1284,7 +1241,7 @@ ROM_END
ROM_START( mt_srage ) /* Streets of Rage */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-14125-s.ic1", 0x000000, 0x080000, CRC(db4ac746) SHA1(c7cc24e2329f279574513fa32bbf79f72f75aeea) )
ROM_LOAD16_BYTE( "epr-12368-51.ic2", 0x300001, 0x08000, CRC(49b7d6f4) SHA1(96e69851c92715e7daf35b184cf374147a8d2880) )
@ -1296,7 +1253,7 @@ ROM_END
ROM_START( mt_sonic ) /* Sonic The Hedgehog */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp13913.ic1", 0x000000, 0x080000, CRC(480b4b5c) SHA1(ab1dc1f738e3b2d0898a314b123fa71182bf572e) )
ROM_LOAD16_BYTE( "epr-12368-52.ic2", 0x300001, 0x8000, CRC(6a69d20c) SHA1(e483b39ff6eca37dc192dc296d004049e220554a) )
@ -1307,7 +1264,7 @@ ROM_END
ROM_START( mt_sonia ) /* Sonic (alt)*/
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp13933.ic1", 0x000000, 0x080000, CRC(13775004) SHA1(5decfd35944a2d0e7b996b9a4a12b616a309fd5e) )
ROM_LOAD16_BYTE( "epr-12368-52.ic2", 0x300001, 0x8000, CRC(6a69d20c) SHA1(e483b39ff6eca37dc192dc296d004049e220554a) )
@ -1323,7 +1280,7 @@ ROM_END
ROM_START( mt_fshrk ) /* Fire Shark */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp14341.ic1", 0x000000, 0x080000, CRC(04d65ebc) SHA1(24338aecdc52b6f416548be722ca475c83dbae96) )
ROM_LOAD16_BYTE( "epr-12368-53.ic2", 0x300001, 0x08000, CRC(4fa61044) SHA1(7810deea221c10b0b2f5233443d81f4f1998ee58) )
@ -1335,7 +1292,7 @@ ROM_END
ROM_START( mt_spman ) /* Spiderman */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp14027-sm.ic1", 0x000000, 0x080000, CRC(e2c08a06) SHA1(39e592eafd47e2aa6edbb4845d44750057bff890) )
ROM_LOAD16_BYTE( "epr-12368-54.ic2", 0x300001, 0x08000, CRC(30b68988) SHA1(04eeb0fad732a791b6bc0c0846306d567573649f) )
@ -1347,7 +1304,7 @@ ROM_END
ROM_START( mt_calga ) /* California Games */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_BYTE( "epr-14494.ic1", 0x000001, 0x040000, CRC(cbe58b1b) SHA1(ea067fc08e644c993f8d13731425c9296c1a2a75) )
ROM_LOAD16_BYTE( "epr-14495.ic2", 0x000000, 0x040000, CRC(cb956f4f) SHA1(3574c496b79aefdec7d02975490ebe3bb373bc60) )
ROM_LOAD16_BYTE( "epr-12368-55.ic3", 0x300001, 0x08000, CRC(6f7dd8f5) SHA1(a6cb1aa8c3635738dd9e4d3e0d729d089fd9b599) )
@ -1360,7 +1317,7 @@ ROM_END
ROM_START( mt_gaxe2 ) /* Golden Axe 2 */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp14272.ic1", 0x000000, 0x080000, CRC(d4784cae) SHA1(b6c286027d06fd850016a2a1ee1f1aeea080c3bb) )
ROM_LOAD16_BYTE( "epr-12368-57.ic2", 0x300001, 0x08000, CRC(dc9b4433) SHA1(efd3a598569010cdc4bf38ecbf9ed1b4e14ffe36) )
@ -1372,7 +1329,7 @@ ROM_END
ROM_START( mt_stf ) /* Sports Talk Football */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp14356a-f.ic1", 0x000000, 0x100000, CRC(20cf32f6) SHA1(752314346a7a98b3808b3814609e024dc0a4108c) )
ROM_LOAD16_BYTE( "epr-12368-58.ic2", 0x300001, 0x08000, CRC(dce2708e) SHA1(fcebb1899ee11468f6bda705899f074e7de9d723) )
@ -1384,7 +1341,7 @@ ROM_END
ROM_START( mt_mlh ) /* Mario Lemieux Hockey */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mpr-14376-h.ic1", 0x000000, 0x80000, CRC(aa9be87e) SHA1(dceed94eaeb30e534f6953a4bc25ff37673b1e6b) )
ROM_LOAD16_BYTE( "epr-12368-59.ic2", 0x300001, 0x08000, CRC(6d47b438) SHA1(0a145f6438e4e55c957ae559663c37662b685246) )
@ -1396,7 +1353,7 @@ ROM_END
ROM_START( mt_kcham ) /* Kid Chameleon */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp14557.ic1", 0x000000, 0x100000, CRC(e1a889a4) SHA1(a2768eacafc47d371e5276f0cce4b12b6041337a) )
ROM_LOAD16_BYTE( "epr-12368-60.ic2", 0x300001, 0x08000, CRC(a8e4af18) SHA1(dfa49f6ec4047718f33dba1180f6204dbaff884c) )
@ -1411,7 +1368,7 @@ ROM_END
ROM_START( mt_tout ) /* Turbo Outrun */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "epr-14674.ic1", 0x000000, 0x080000, CRC(453712a2) SHA1(5d2c8430a9a14aac7f19c22617539b0503ab92cd) )
ROM_LOAD16_BYTE( "epr-12368-61.ic2", 0x300001, 0x08000, CRC(4aa0b2a2) SHA1(bce03f88d6cfd02683d51c28058f6229fda13b49) )
@ -1423,7 +1380,7 @@ ROM_END
ROM_START( mt_soni2 ) /* Sonic The Hedgehog 2 */
MEGATECH_BIOS
ROM_REGION16_BE( 0x400000, "game0", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x400000, "cart", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "mp15000a-f.ic1", 0x000000, 0x100000, CRC(679ebb49) SHA1(557482064677702454562f753460993067ef9e16) )
ROM_LOAD16_BYTE( "epr-12368-62.ic2", 0x300001, 0x08000, CRC(14a8566f) SHA1(d1d14162144bf068ddd19e9736477ff98fb43f9e) )

View File

@ -49,7 +49,6 @@
#include "machine/smpc.h"
#include "includes/stv.h"
#include "imagedev/chd_cd.h"
#include "imagedev/cartslot.h"
#include "coreutil.h"
@ -450,7 +449,7 @@ DRIVER_INIT_MEMBER(stv_state,magzun)
/* Program ROM patches, don't understand how to avoid these two checks ... */
{
UINT32 *ROM = (UINT32 *)memregion("game0")->base();
UINT32 *ROM = (UINT32 *)memregion("cart")->base();
ROM[0x90054/4] = 0x00e00001; // END error
@ -1188,16 +1187,17 @@ static MACHINE_CONFIG_DERIVED( batmanfr, stv )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MACHINE_CONFIG_END
#define MCFG_STV_CARTSLOT_ADD(_tag) \
MCFG_CARTSLOT_ADD(_tag) \
MCFG_CARTSLOT_INTERFACE("stv_cart") \
MCFG_CARTSLOT_LOAD(stv_state,stv_cart)
#define MCFG_STV_CARTSLOT_ADD(_tag, _load) \
MCFG_GENERIC_CARTSLOT_ADD(_tag, generic_plain_slot, "stv_cart") \
MCFG_GENERIC_LOAD(stv_state, _load)
MACHINE_CONFIG_FRAGMENT( stv_cartslot )
MCFG_STV_CARTSLOT_ADD("cart1")
MCFG_STV_CARTSLOT_ADD("cart2")
MCFG_STV_CARTSLOT_ADD("cart3")
MCFG_STV_CARTSLOT_ADD("cart4")
MCFG_STV_CARTSLOT_ADD("stv_slot1", stv_cart1)
MCFG_STV_CARTSLOT_ADD("stv_slot2", stv_cart2)
MCFG_STV_CARTSLOT_ADD("stv_slot3", stv_cart3)
MCFG_STV_CARTSLOT_ADD("stv_slot4", stv_cart4)
MCFG_SOFTWARE_LIST_ADD("cart_list","stv")
MACHINE_CONFIG_END
@ -1207,22 +1207,6 @@ static MACHINE_CONFIG_DERIVED( stv_slot, stv )
MACHINE_CONFIG_END
struct stv_cart_region
{
const char *tag;
int slot;
const char *region;
};
static const struct stv_cart_region stv_cart_table[] =
{
{ ":cart1", 0, ":game0" },
{ ":cart2", 1, ":game1" },
{ ":cart3", 2, ":game2" },
{ ":cart4", 3, ":game3" },
{ 0 }
};
MACHINE_RESET_MEMBER(stv_state,stv)
{
m_scsp_last_line = 0;
@ -1232,6 +1216,18 @@ MACHINE_RESET_MEMBER(stv_state,stv)
m_audiocpu->set_input_line(INPUT_LINE_RESET, ASSERT_LINE);
m_scudsp->set_input_line(INPUT_LINE_RESET, ASSERT_LINE);
astring region_tag;
if (m_cart1)
m_cart_reg[0] = memregion(region_tag.cpy(m_cart1->tag()).cat(GENERIC_ROM_REGION_TAG));
else
m_cart_reg[0] = memregion("cart");
if (m_cart2)
m_cart_reg[1] = memregion(region_tag.cpy(m_cart2->tag()).cat(GENERIC_ROM_REGION_TAG));
if (m_cart3)
m_cart_reg[2] = memregion(region_tag.cpy(m_cart3->tag()).cat(GENERIC_ROM_REGION_TAG));
if (m_cart4)
m_cart_reg[3] = memregion(region_tag.cpy(m_cart4->tag()).cat(GENERIC_ROM_REGION_TAG));
m_en_68k = 0;
m_NMI_reset = 0;
@ -1251,52 +1247,39 @@ MACHINE_RESET_MEMBER(stv_state,stv)
m_vdp2.old_tvmd = -1;
}
DEVICE_IMAGE_LOAD_MEMBER( stv_state, stv_cart )
int stv_state::load_cart(device_image_interface &image, generic_slot_device *slot)
{
const struct stv_cart_region *stv_cart = &stv_cart_table[0], *this_cart;
/* First, determine where this cart has to be loaded */
while (stv_cart->tag)
{
if (strcmp(stv_cart->tag, image.device().tag()) == 0)
break;
stv_cart++;
}
this_cart = stv_cart;
UINT8 *ROM;
UINT32 size = slot->common_get_size("rom");
if (image.software_entry() == NULL)
return IMAGE_INIT_FAIL;
UINT8 *ROM = image.device().memregion(this_cart->region)->base();
UINT32 length = image.get_software_region_length("rom");
memcpy(ROM, image.get_software_region("rom"), length);
slot->rom_alloc(size, GENERIC_ROM32_WIDTH, ENDIANNESS_BIG);
ROM = slot->get_rom_base();
memcpy(ROM, image.get_software_region("rom"), size);
/* fix endianess */
{
UINT8 j[4];
int i;
for(i=0;i<length;i+=4)
for (int i = 0; i < size; i += 4)
{
j[0] = ROM[i];
j[1] = ROM[i+1];
j[2] = ROM[i+2];
j[3] = ROM[i+3];
ROM[i] = j[3];
ROM[i+1] = j[2];
ROM[i+2] = j[1];
ROM[i+3] = j[0];
j[0] = ROM[i + 0];
j[1] = ROM[i + 1];
j[2] = ROM[i + 2];
j[3] = ROM[i + 3];
ROM[i + 0] = j[3];
ROM[i + 1] = j[2];
ROM[i + 2] = j[1];
ROM[i + 3] = j[0];
}
}
return IMAGE_INIT_PASS;
}
MACHINE_START_MEMBER(stv_state,stv)
{
system_time systime;
@ -1750,13 +1733,6 @@ ROM_LOAD16_WORD_SWAP_BIOS( x, "saturn.bin", 0x000000, 0x080000, CRC(653ff2d8) SH
ROM_START( stvbios )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 )
ROM_REGION32_BE( 0x3000000, "game1", ROMREGION_ERASE00 )
ROM_REGION32_BE( 0x3000000, "game2", ROMREGION_ERASE00 )
ROM_REGION32_BE( 0x3000000, "game3", ROMREGION_ERASE00 )
ROM_REGION16_BE( 0x80, "eeprom", 0 ) // preconfigured to multi cart mode
ROM_LOAD( "stvbios.nv", 0x0000, 0x0080, CRC(15432ae2) SHA1(7d9364d546f3d3f839ec36be148076f8d26a65a6) )
@ -1810,7 +1786,7 @@ by Sega titles,and this is a Sunsoft game)It's likely to be a left-over...
DRIVER_INIT_MEMBER(stv_state,sanjeon)
{
UINT8 *src = memregion ( "game0" )->base();
UINT8 *src = memregion("cart")->base();
int x;
for (x=0;x<0x3000000;x++)
@ -1833,7 +1809,7 @@ DRIVER_INIT_MEMBER(stv_state,sanjeon)
ROM_START( astrass )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr20825.13", 0x0000001, 0x0100000, CRC(94a9ad8f) SHA1(861311c14cfa9f560752aa5b023c147a539cf135) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -1855,7 +1831,7 @@ ROM_END
ROM_START( bakubaku )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fpr17969.13", 0x0000001, 0x0100000, CRC(bee327e5) SHA1(1d226db72d6ef68fd294f60659df7f882b25def6) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -1869,7 +1845,7 @@ ROM_END
ROM_START( colmns97 )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fpr19553.13", 0x000001, 0x100000, CRC(d4fb6a5e) SHA1(bd3cfb4f451b6c9612e42af5ddcbffa14f057329) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -1880,7 +1856,7 @@ ROM_END
ROM_START( cotton2 )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr20122.7", 0x0200000, 0x0200000, CRC(d616f78a) SHA1(8039dcdfdafb8327a19a1da46a67c0b3f7eee53a) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20117.2", 0x0400000, 0x0400000, CRC(893656ea) SHA1(11e3160083ba018fbd588f07061a4e55c1efbebb) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20118.3", 0x0800000, 0x0400000, CRC(1b6a1d4c) SHA1(6b234d6b2d24df7f6d400a56698c0af2f78ce0e7) ) // good
@ -1894,7 +1870,7 @@ ROM_END
ROM_START( cottonbm )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr21075.7", 0x0200000, 0x0200000, CRC(200b58ba) SHA1(6daad6d70a3a41172e8d9402af775c03e191232d) ) // good
ROM_LOAD16_WORD_SWAP( "mpr21070.2", 0x0400000, 0x0400000, CRC(56c0bf1d) SHA1(c2b564ce536c637bb723ed96683b27596e87ebe7) ) // good
ROM_LOAD16_WORD_SWAP( "mpr21071.3", 0x0800000, 0x0400000, CRC(2bb18df2) SHA1(e900adb94ad3f48be00a4ce33e915147dc6a8737) ) // good
@ -1907,7 +1883,7 @@ ROM_END
ROM_START( decathlt )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr18967a.13", 0x0000001, 0x0100000, CRC(ac59c186) SHA1(7d4924d1e4c1b9257b58a690de988b3f6486e86f) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -1929,7 +1905,7 @@ ROM_END
ROM_START( decathlto )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr18967.13", 0x0000001, 0x0100000, CRC(c0446674) SHA1(4917089d95613c9d2a936ed9fe3ebd22f461aa4f) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -1944,7 +1920,7 @@ ROM_START( diehard ) /* must use USA, Europe or Taiwan BIOS */
STV_BIOS
ROM_DEFAULT_BIOS( "us" )
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fpr19119.13", 0x0000001, 0x0100000, CRC(de5c4f7c) SHA1(35f670a15e9c86edbe2fe718470f5a75b5b096ac) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -1957,7 +1933,7 @@ ROM_END
ROM_START( dnmtdeka )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fpr19114.13", 0x0000001, 0x0100000, CRC(1fd22a5f) SHA1(c3d9653b12354a73a3e15f23a2ab7992ffb83e46) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -1970,7 +1946,7 @@ ROM_END
ROM_START( ejihon )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr18137.13", 0x0000001, 0x0080000, CRC(151aa9bc) SHA1(0959c60f31634816825acb57413838dcddb17d31) )
ROM_RELOAD( 0x100001, 0x0080000 )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0080000 )
@ -1985,7 +1961,7 @@ ROM_END
ROM_START( elandore )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr21307.7", 0x0200000, 0x0200000, CRC(966ad472) SHA1(d6db41d1c40d08eb6bce8a8a2f491e7533daf670) ) // good (was .11s)
ROM_LOAD16_WORD_SWAP( "mpr21301.2", 0x0400000, 0x0400000, CRC(1a23b0a0) SHA1(f9dbc7ba96dadfb00e5827622b557080449acd83) ) // good (was .12)
ROM_LOAD16_WORD_SWAP( "mpr21302.3", 0x0800000, 0x0400000, CRC(1c91ca33) SHA1(ae11209088e3bf8fc4a92dca850d7303ce949b29) ) // good (was .13)
@ -1999,7 +1975,7 @@ ROM_END
ROM_START( ffreveng )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "opr21872.7", 0x0200000, 0x0200000, CRC(32d36fee) SHA1(441c4254ef2e9301e1006d69462a850ce339314b) ) // good (was .11s)
ROM_LOAD16_WORD_SWAP( "mpr21873.2", 0x0400000, 0x0400000, CRC(dac5bd98) SHA1(6102035ce9eb2f83d7d9b20f989a151f45087c67) ) // good (was .12)
ROM_LOAD16_WORD_SWAP( "mpr21874.3", 0x0800000, 0x0400000, CRC(0a7be2f1) SHA1(e2d13f36e54d1e2cb9d584db829c04a6ff65108c) ) // good (was .13)
@ -2013,7 +1989,7 @@ ROM_END
ROM_START( fhboxers )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fr18541a.13", 0x0000001, 0x0100000, CRC(8c61a17c) SHA1(a8aef27b53482923a506f7daa4b7a38653b4d8a4) ) //(header is read from here, not ic7 even if both are populated on this board)
ROM_LOAD16_WORD_SWAP( "mpr18538.7", 0x0200000, 0x0200000, CRC(7b5230c5) SHA1(70cebc3281580b43adf42c37318e12159c28a13d) ) // good
@ -2034,7 +2010,7 @@ ROM_END
ROM_START( findlove )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr20424.13", 0x0000001, 0x0100000, CRC(4e61fa46) SHA1(e34624d98cbdf2dd04d997167d3c4decd2f208f7) ) //(header is read from here, not ic7 even if both are populated on this board)
ROM_LOAD16_WORD_SWAP( "mpr20431.7", 0x0200000, 0x0200000, CRC(ea656ced) SHA1(b2d6286081bd46a89d1284a2757b87d0bca1bbde) ) // good
@ -2057,7 +2033,7 @@ ROM_END
ROM_START( finlarch )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "finlarch.13", 0x0000001, 0x0100000, CRC(4505fa9e) SHA1(96c6399146cf9c8f1d27a8fb6a265f937258004a) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -2075,7 +2051,7 @@ ROM_END
ROM_START( gaxeduel )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr17766.13", 0x0000001, 0x0080000, CRC(a83fcd62) SHA1(4ce77ebaa0e93c6553ad8f7fb87cbdc32433402b) )
ROM_RELOAD( 0x0100001, 0x0080000 )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0080000 )
@ -2091,7 +2067,7 @@ ROM_END
ROM_START( grdforce )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr20844.7", 0x0200000, 0x0200000, CRC(283e7587) SHA1(477fabc27cfe149ad17757e31f10665dcf8c0860) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20839.2", 0x0400000, 0x0400000, CRC(facd4dd8) SHA1(2582894c98b31ab719f1865d4623dad6736dc877) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20840.3", 0x0800000, 0x0400000, CRC(fe0158e6) SHA1(73460effe69fb8f16dd952271542b7803471a599) ) // good
@ -2103,7 +2079,7 @@ ROM_END
ROM_START( groovef )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr19820.7", 0x0200000, 0x0100000, CRC(e93c4513) SHA1(f9636529224880c49bd2cc5572bd5bf41dbf911a) ) // good
ROM_LOAD16_WORD_SWAP( "mpr19815.2", 0x0400000, 0x0400000, CRC(1b9b14e6) SHA1(b1828c520cb108e2927a23273ebd2939dca52304) ) // good
ROM_LOAD16_WORD_SWAP( "mpr19816.3", 0x0800000, 0x0400000, CRC(83f5731c) SHA1(2f645737f945c59a1a2fabf3b21a761be9e8c8a6) ) // good
@ -2118,7 +2094,7 @@ ROM_END
ROM_START( hanagumi )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr20143.7", 0x0200000, 0x0100000, CRC(7bfc38d0) SHA1(66f223e7ff2b5456a6f4185b7ab36f9cd833351a) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20138.2", 0x0400000, 0x0400000, CRC(fdcf1046) SHA1(cbb1f03879833c17feffdd6f5a4fbff06e1059a2) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20139.3", 0x0800000, 0x0400000, CRC(7f0140e5) SHA1(f2f7de7620d66a596d552e1af491a0592ebc4e51) ) // good
@ -2136,7 +2112,7 @@ ROM_END
ROM_START( introdon )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr18937.13", 0x0000001, 0x0080000, CRC(1f40d766) SHA1(35d9751c1b23cfbf448f2a9e9cf3b121929368ae) )
ROM_RELOAD( 0x0100001, 0x0080000)
ROM_LOAD16_WORD_SWAP( "mpr18944.7", 0x0200000, 0x0100000, CRC(f7f75ce5) SHA1(0787ece9f89cc1847889adbf08ba5d3ccbc405de) ) // good
@ -2153,7 +2129,7 @@ ROM_END
ROM_START( kiwames )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr18737.13", 0x0000001, 0x0080000, CRC(cfad6c49) SHA1(fc69980a351ed13307706db506c79c774eabeb66) ) // bad
ROM_RELOAD( 0x0100001, 0x0080000)
@ -2168,7 +2144,7 @@ ROM_END
ROM_START( maruchan )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr20416.13", 0x0000001, 0x0100000, CRC(8bf0176d) SHA1(5bd468e2ffed042ee84e2ceb8712ff5883a1d824) ) // bad
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2186,7 +2162,7 @@ ROM_END
ROM_START( myfairld )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr21000.7", 0x0200000, 0x0200000, CRC(2581c560) SHA1(5fb64f0e09583d50dfea7ad613d45aad30b677a5) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20995.2", 0x0400000, 0x0400000, CRC(1bb73f24) SHA1(8773654810de760c5dffbb561f43e259b074a61b) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20996.3", 0x0800000, 0x0400000, CRC(993c3859) SHA1(93f95e3e080a08961784482607919c1ab3eeb5e5) ) // good
@ -2203,7 +2179,7 @@ ROM_END
ROM_START( othellos )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr20967.7", 0x0200000, 0x0200000, CRC(efc05b97) SHA1(a533366c3aaba90dcac8f3654db9ad902efca258) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20963.2", 0x0400000, 0x0400000, CRC(2cc4f141) SHA1(8bd1998aff8615b34d119fab3637a08ed6e8e1e4) ) // good
ROM_LOAD16_WORD_SWAP( "mpr20964.3", 0x0800000, 0x0400000, CRC(5f5cda94) SHA1(616be219a2512e80c875eddf05137c23aedf6f65) ) // good
@ -2214,7 +2190,7 @@ ROM_END
ROM_START( pblbeach )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr18852.13", 0x0000001, 0x0080000, CRC(d12414ec) SHA1(0f42ec9e41983781b6892622b00398a102072aa7) ) // bad
ROM_RELOAD ( 0x0100001, 0x0080000 )
ROM_RELOAD_PLAIN( 0x0200000, 0x0080000)
@ -2228,7 +2204,7 @@ ROM_END
ROM_START( prikura )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr19337.7", 0x0200000, 0x0200000, CRC(76f69ff3) SHA1(5af2e1eb3288d70c2a1c71d0b6370125d65c7757) ) // good
ROM_LOAD16_WORD_SWAP( "mpr19333.2", 0x0400000, 0x0400000, CRC(eb57a6a6) SHA1(cdacaa7a2fb1a343195e2ac5fd02eabf27f89ccd) ) // good
ROM_LOAD16_WORD_SWAP( "mpr19334.3", 0x0800000, 0x0400000, CRC(c9979981) SHA1(be491a4ac118d5025d6a6f2d9267a6d52f21d2b6) ) // good
@ -2239,7 +2215,7 @@ ROM_END
ROM_START( puyosun )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr19531.13", 0x0000001, 0x0080000, CRC(ac81024f) SHA1(b22c7c1798fade7ae992ff83b138dd23e6292d3f) ) // bad
ROM_RELOAD ( 0x0100001, 0x0080000 )
ROM_RELOAD_PLAIN( 0x0200000, 0x0080000)
@ -2257,7 +2233,7 @@ ROM_END
ROM_START( rsgun )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr20958.7", 0x0200000, 0x0200000, CRC(cbe5a449) SHA1(b4744ab71ccbadda1921ba43dd1148e57c0f84c5) ) // good (was .11s)
ROM_LOAD16_WORD_SWAP( "mpr20959.2", 0x0400000, 0x0400000, CRC(a953330b) SHA1(965274a7297cb88e281fcbdd3ec5025c6463cc7b) ) // good (was .12)
ROM_LOAD16_WORD_SWAP( "mpr20960.3", 0x0800000, 0x0400000, CRC(b5ab9053) SHA1(87c5d077eb1219c35fa65b4e11d5b62e826f5236) ) // good (was .13)
@ -2268,7 +2244,7 @@ ROM_END
ROM_START( sandor )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "sando-r.13", 0x0000001, 0x0100000, CRC(fe63a239) SHA1(01502d4494f968443581cd2c74f25967d41f775e) )
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2301,7 +2277,7 @@ On the bottom are locations for 5 maskROMs (none are populated) and also some lo
ROM_START( thunt )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "th-ic7_2.stv", 0x0200000, 0x0080000, CRC(c4e993de) SHA1(7aa433bc2623cb19a09d4ef4c8233a2d29901020) )
ROM_LOAD16_BYTE( "th-ic7_1.stv", 0x0200001, 0x0080000, CRC(1355cc18) SHA1(a9b731228a807b2b01f933fe0f7dcdbadaf89b7e) )
@ -2314,7 +2290,7 @@ ROM_END
ROM_START( thuntk )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "2.ic13_2", 0x0200000, 0x0080000, CRC(6cae2926) SHA1(e8d5745b4228de24672da5017cb3dab58344f59f) )
ROM_LOAD16_BYTE( "1.ic13_1", 0x0200001, 0x0080000, CRC(460727c8) SHA1(da7171b65734264e10692e3408ac93beb374c65e) )
@ -2332,7 +2308,7 @@ ROM_END
ROM_START( sanjeon )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "ic11", 0x0000001, 0x0200000, CRC(9abae8d4) SHA1(ddbe4c8fff8fa59d63e278e95f245145d2da8aeb) )
ROM_LOAD( "ic13", 0x0400000, 0x0200000, CRC(f72c1d13) SHA1(a2b168d187034024b83fbbe2f5eec78816285da9) ) // ic2 good
@ -2352,7 +2328,7 @@ ROM_END
ROM_START( sasissu )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr20542.13", 0x0000001, 0x0100000, CRC(0e632db5) SHA1(9bc52794892eec22d381387d13a0388042e30714) )
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2368,7 +2344,7 @@ ROM_END
ROM_START( seabass )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "seabassf.13", 0x0000001, 0x0100000, CRC(6d7c39cc) SHA1(d9d1663134420b75c65ee07d7d547254785f2f83) )
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2388,7 +2364,7 @@ ROM_END
ROM_START( shanhigw )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr18341.7", 0x0200000, 0x0200000, CRC(cc5e8646) SHA1(a733616c118140ff3887d30d595533f9a1beae06) ) // good
ROM_LOAD16_WORD_SWAP( "mpr18340.2", 0x0400000, 0x0200000, CRC(8db23212) SHA1(85d604a5c6ab97188716dbcd77d365af12a238fe) ) // good
ROM_END
@ -2396,7 +2372,7 @@ ROM_END
ROM_START( shienryu )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr19631.7", 0x0200000, 0x0200000, CRC(3a4b1abc) SHA1(3b14b7fdebd4817da32ea374c15a38c695ffeff1) ) // good
ROM_LOAD16_WORD_SWAP( "mpr19632.2", 0x0400000, 0x0400000, CRC(985fae46) SHA1(f953bde91805b97b60d2ab9270f9d2933e064d95) ) // good
ROM_LOAD16_WORD_SWAP( "mpr19633.3", 0x0800000, 0x0400000, CRC(e2f0b037) SHA1(97861d09e10ce5d2b10bf5559574b3f489e28077) ) // good
@ -2409,7 +2385,7 @@ ROM_START( smleague ) /* only runs with the USA bios */
STV_BIOS
ROM_DEFAULT_BIOS( "us" )
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr18777.13", 0x0000001, 0x0080000, CRC(8d180866) SHA1(d47ebabab6e06400312d39f68cd818852e496b96) )
ROM_RELOAD ( 0x0100001, 0x0080000 )
ROM_RELOAD_PLAIN( 0x0200000, 0x0080000)
@ -2424,7 +2400,7 @@ ROM_END
ROM_START( sokyugrt )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fpr19188.13", 0x0000001, 0x0100000, CRC(45a27e32) SHA1(96e1bab8bdadf7071afac2a0a6dd8fd8989f12a6) )
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2438,7 +2414,7 @@ ROM_END
ROM_START( sss )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr21488.13", 0x0000001, 0x0080000, CRC(71c9def1) SHA1(a544a0b4046307172d2c1bf426ed24845f87d894) )
ROM_RELOAD ( 0x0100001, 0x0080000 )
ROM_RELOAD_PLAIN( 0x0200000, 0x0080000)
@ -2456,7 +2432,7 @@ ROM_END
ROM_START( suikoenb )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fpr17834.13", 0x0000001, 0x0100000, CRC(746ef686) SHA1(e31c317991a687662a8a2a45aed411001e5f1941) )
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2473,7 +2449,7 @@ ROM_END
ROM_START( twcup98 )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr20819.13", 0x0000001, 0x0100000, CRC(d930dfc8) SHA1(f66cc955181720661a0334fe67fa5750ddf9758b) )
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2486,7 +2462,7 @@ ROM_END
ROM_START( vfkids )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fpr18914.13", 0x0000001, 0x0100000, CRC(cd35730a) SHA1(645b52b449766beb740ab8f99957f8f431351ceb) )
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2504,7 +2480,7 @@ ROM_END
ROM_START( vfremix )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr17944.13", 0x0000001, 0x0100000, CRC(a5bdc560) SHA1(d3830480a611b7d88760c672ce46a2ea74076487) )
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2520,7 +2496,7 @@ ROM_END
ROM_START( vmahjong )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr19620.7", 0x0200000, 0x0200000, CRC(c98de7e5) SHA1(5346f884793bcb080aa01967e91b54ced4a9802f) ) // good
ROM_LOAD16_WORD_SWAP( "mpr19615.2", 0x0400000, 0x0400000, CRC(c62896da) SHA1(52a5b10ca8af31295d2d700349eca038c418b522) ) // good
ROM_LOAD16_WORD_SWAP( "mpr19616.3", 0x0800000, 0x0400000, CRC(f62207c7) SHA1(87e60183365c6f7e62c7a0667f88df0c7f5457fd) ) // good
@ -2537,7 +2513,7 @@ ROM_END
ROM_START( winterht )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "fpr20108.13", 0x0000001, 0x0100000, CRC(1ef9ced0) SHA1(abc90ce341cd17bb77349d611d6879389611f0bf) ) // bad
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2553,7 +2529,7 @@ ROM_END
ROM_START( znpwfv )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr20398.13", 0x0000001, 0x0100000, CRC(3fb56a0b) SHA1(13c2fa2d94b106d39e46f71d15fbce3607a5965a) ) // bad
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2571,7 +2547,7 @@ ROM_END
ROM_START( danchih )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "mpr21974.7", 0x0200000, 0x0200000, CRC(e7472793) SHA1(11b7b11cf492eb9cf69b50e7cfac46a5b86849ac) )// good
ROM_LOAD16_WORD_SWAP( "mpr21970.2", 0x0400000, 0x0400000, CRC(34dd7f4d) SHA1(d5c45da94ec5b6584049caf09516f1ad4ba3adb5) )// good
ROM_LOAD16_WORD_SWAP( "mpr21971.3", 0x0800000, 0x0400000, CRC(8995158c) SHA1(fbbd171d67eebf43630d6054bc1b9132f6b38183) )// good
@ -2582,7 +2558,7 @@ ROM_END
ROM_START( danchiq )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "ic22", 0x0200000, 0x0200000, CRC(e216bfc8) SHA1(7a08fa32281e272dbf5e7daea50a1800cc225c1b) )//ic 7
ROM_LOAD16_WORD_SWAP( "ic24", 0x0400000, 0x0200000, CRC(b95aa5ac) SHA1(2766c5414643034a0f6d746050557516bd3753df) )//ic 2
ROM_LOAD16_WORD_SWAP( "ic26", 0x0600000, 0x0200000, CRC(df6ebd48) SHA1(fcccafbee1b8b952b07ed0e7e86219eed9cf4a93) )
@ -2598,7 +2574,7 @@ ROM_END
ROM_START( mausuke )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "ic13.bin", 0x0000001, 0x0100000, CRC(b456f4cd) SHA1(91cbe703ec7c1dd45eb3b05bdfeb06e3570599d1) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 ) // needs the rom mapped here to appear 'normal'
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -2616,7 +2592,7 @@ ROM_END
ROM_START( batmanfr )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
/* Thanks to Runik to point this out*/
ROM_LOAD16_BYTE( "350-mpa1.u19", 0x0000000, 0x0100000, CRC(2a5a8c3a) SHA1(374ec55a39ea909cc672e4a629422681d1f2da05) )
ROM_RELOAD( 0x0200000, 0x0100000 )
@ -2660,7 +2636,7 @@ ROM_START( critcrsh ) /* Must use Europe or Asia BIOS */
STV_BIOS
ROM_DEFAULT_BIOS( "euro" )
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr-18821.ic13", 0x0000001, 0x0080000, CRC(9a6658e2) SHA1(16dbae3d9ab584713afcb403f89fe71049609245) )
ROM_RELOAD ( 0x0100001, 0x0080000 )
ROM_RELOAD_PLAIN( 0x0200000, 0x0080000)
@ -2703,7 +2679,7 @@ ROM_START( sfish2 )
ROM_REGION( 0x080000, "slave", 0 ) /* SH2 code */
ROM_COPY( "maincpu",0,0,0x080000)
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr-18427.ic13", 0x0000001, 0x0100000, CRC(3f25bec8) SHA1(43a5342b882d5aec0f35a8777cb475659f43b1c4) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -2725,7 +2701,7 @@ ROM_START( sfish2j )
ROM_REGION( 0x080000, "slave", 0 ) /* SH2 code */
ROM_COPY( "maincpu",0,0,0x080000)
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr18344.a", 0x0000001, 0x0100000, CRC(5a7de018) SHA1(88e0c2a9a9d4ebf699878c0aa9737af85f95ccf8) )
ROM_RELOAD_PLAIN ( 0x0200000, 0x0100000 )
ROM_RELOAD_PLAIN ( 0x0300000, 0x0100000 )
@ -2742,7 +2718,7 @@ ROM_END
ROM_START( magzun )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "flash.ic13", 0x0000001, 0x0100000, CRC(e6f0aca0) SHA1(251d4d9c5a332d13af3a144c5eb9d8e7836bdd1b) ) // good
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2769,7 +2745,7 @@ ROM_END
ROM_START( stress )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_BYTE( "epr-21300a.ic13", 0x0000001, 0x0100000, CRC(899d829e) SHA1(b6c6da92dc108353998b29c0659d288645541519) ) // good
ROM_RELOAD_PLAIN( 0x0200000, 0x0100000)
ROM_RELOAD_PLAIN( 0x0300000, 0x0100000)
@ -2789,7 +2765,7 @@ ROM_END
ROM_START( nclubv3 )
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "ic22", 0x0200000, 0x0200000, CRC(b4008ed0) SHA1(acb3784acad971eb5f4920760dc23a16330e7bad) ) // OK
ROM_LOAD16_WORD_SWAP( "ic24", 0x0400000, 0x0200000, CRC(4e894850) SHA1(eb7c3399505a45816701197a45062b9f34e5a3e1) ) // OK
@ -2809,7 +2785,7 @@ ROM_END
ROM_START( techbowl ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "ic22", 0x0200000, 0x0200000, CRC(5058db21) SHA1(eec908bbfb9ec0fdca0002e69f32c1c030086456) ) // OK
ROM_LOAD16_WORD_SWAP( "ic24", 0x0400000, 0x0200000, CRC(34090f6d) SHA1(b8bc344ab826d5c9584afb01dba1c720b8dbc74d) ) // OK
@ -2824,7 +2800,7 @@ ROM_END
ROM_START( micrombc ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "ic22", 0x0200000, 0x0200000, CRC(8385bc45) SHA1(0bd60d7560cb2313d68470d0572850a7b8c501fd) ) // OK
ROM_LOAD16_WORD_SWAP( "ic24", 0x0400000, 0x0200000, CRC(84ecb42f) SHA1(005dee9a0912d4b1b7f5157bc3cde96548c1e348) ) // OK
@ -2843,7 +2819,7 @@ ROM_START( pclub2 ) // set to 1p / runs with the USA bios
STV_BIOS
ROM_DEFAULT_BIOS( "us" )
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclub2_ic22", 0x0200000, 0x0200000, CRC(d2ceade7) SHA1(a4300322e582f403d9207290f3900e1a72fcb9b9) ) // OK
ROM_LOAD16_WORD_SWAP( "pclub2_ic24", 0x0400000, 0x0200000, CRC(0e968c2d) SHA1(fbcc7533fcb6b87cd8255fc2d307ae618301ea64) ) // OK
@ -2858,7 +2834,7 @@ ROM_END
ROM_START( pclub2fc ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclub2fc_ic22", 0x0200000, 0x0200000, CRC(109c61a5) SHA1(bfb3e014e49064443ef290bc068ffcd459ae132d) ) // OK
ROM_LOAD16_WORD_SWAP( "pclub2fc_ic24", 0x0400000, 0x0200000, CRC(0ccc5538) SHA1(15133fc9c85f0a384d49841d874a0fe9a76057ce) ) // OK
@ -2874,7 +2850,7 @@ ROM_END
ROM_START( pclb297w ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclb297w_ic22", 0x0200000, 0x0200000, CRC(589f6705) SHA1(d10897ab26c3ecdd518087562207de131133646c) ) // OK - IC7?
ROM_LOAD16_WORD_SWAP( "pclb297w_ic24", 0x0400000, 0x0200000, CRC(4bd706d1) SHA1(e3c52c63bb93d9fa836c300865423a226bf74586) ) // OK - IC2?
@ -2895,7 +2871,7 @@ ROM_END
ROM_START( pclub298 ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclub298_ic22", 0x0200000, 0x0200000, CRC(cb0ec98a) SHA1(efef536cb3bc71207936b26b87f04641baded10b) ) // OK? - tested as IC7?
ROM_LOAD16_WORD_SWAP( "pclub298_ic24", 0x0400000, 0x0200000, CRC(645e7e24) SHA1(7362b0c4b500639c20ec27002f543a0b4390eaa8) ) // OK - tested as IC2
@ -2913,7 +2889,7 @@ ROM_END
ROM_START( pclb298a ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclb298a_ic22", 0x0200000, 0x0200000, CRC(21a995ce) SHA1(6ee1250becd76bef3aa8044a42e10c3830a609bd) ) // OK
ROM_LOAD16_WORD_SWAP( "pclb298a_ic24", 0x0400000, 0x0200000, CRC(94540f39) SHA1(cee9fff48d177e7502802d366339ed922c212871) ) // OK
@ -2932,7 +2908,7 @@ ROM_END
ROM_START( pclubor ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclubor_ic22", 0x0200000, 0x0200000, CRC(b25072f7) SHA1(baa674e3d277bee152773b3b0e522677bfedd65c) ) // OK
ROM_LOAD16_WORD_SWAP( "pclubor_ic24", 0x0400000, 0x0200000, CRC(a4863a0e) SHA1(b092b638b6a8d06776f88aac7e47fff06b4e8221) ) // OK
@ -2950,7 +2926,7 @@ ROM_END
ROM_START( pclubol ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclubol_ic22", 0x0200000, 0x0200000, CRC(668b1049) SHA1(a88ab4fbab73f85eb4da8d4792e98fbbefeba5f8) ) // OK
ROM_LOAD16_WORD_SWAP( "pclubol_ic24", 0x0400000, 0x0200000, CRC(35721f04) SHA1(9658c9526a3d1dde89e1b6fd986b3469011813ca) ) // OK
@ -2970,7 +2946,7 @@ ROM_START( pclub2v3 ) // set to 1p / runs with the USA bios
STV_BIOS
ROM_DEFAULT_BIOS( "us" )
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclub2v3_ic22", 0x0200000, 0x0200000, BAD_DUMP CRC(f88347aa) SHA1(3e9ca105edbd6ce11ea4194eb1733785e87f92b2) ) // BAD
ROM_LOAD16_WORD_SWAP( "pclub2v3_ic24", 0x0400000, 0x0200000, CRC(b5871198) SHA1(10d187eebcca5d70c5ae10d1a144685a96491126) ) // OK
@ -2986,7 +2962,7 @@ ROM_START( pclubpok ) // set to 1p / runs with the USA bios
STV_BIOS
ROM_DEFAULT_BIOS( "us" )
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclubpok_ic22", 0x0200000, 0x0200000, CRC(48ab8371) SHA1(1c2124afad6bc1f4de2619e6b915f78e91addf05) ) // OK
ROM_LOAD16_WORD_SWAP( "pclubpok_ic24", 0x0400000, 0x0200000, CRC(9915faea) SHA1(b96f64a8cbb1b9496bb566d0469975fddb4fbe98) ) // OK
@ -3001,7 +2977,7 @@ ROM_END
ROM_START( pclub2kc ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclub2kc_ic22", 0x0200000, 0x0200000, CRC(9eb4cfd7) SHA1(d74b00541419b5cde75409315fdc620a7cb3ac6b) ) // OK (tested as IC7)
ROM_LOAD16_WORD_SWAP( "pclub2kc_ic24", 0x0400000, 0x0200000, CRC(cf3b4080) SHA1(1963a45d391f8d591d3995231b26eba56c7896c6) ) // OK (tested as IC2)
@ -3016,7 +2992,7 @@ ROM_END
ROM_START( pclb2elk ) // set to 1p
STV_BIOS
ROM_REGION32_BE( 0x3000000, "game0", ROMREGION_ERASE00 ) /* SH2 code */
ROM_REGION32_BE( 0x3000000, "cart", ROMREGION_ERASE00 ) /* SH2 code */
ROM_LOAD16_WORD_SWAP( "pclb2elk_ic22", 0x0200000, 0x0200000, CRC(2faed82a) SHA1(035ef25dd974679e46a79e408ee284eca0310557) ) // OK (tested as IC7)
ROM_LOAD16_WORD_SWAP( "pclb2elk_ic24", 0x0400000, 0x0200000, CRC(9cacfb7b) SHA1(1c68e1ba077e02ded0f388b4e9ad24998a5d8a48) ) // OK (tested as IC2)

View File

@ -6,6 +6,9 @@
#include "cpu/scudsp/scudsp.h"
#include "cpu/sh2/sh2.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
#define MAX_FILTERS (24)
#define MAX_BLOCKS (200)
#define MAX_DIR_SIZE (256*1024)
@ -25,8 +28,12 @@ public:
m_audiocpu(*this, "audiocpu"),
m_scudsp(*this, "scudsp"),
m_eeprom(*this, "eeprom"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette")
m_cart1(*this, "stv_slot1"),
m_cart2(*this, "stv_slot2"),
m_cart3(*this, "stv_slot3"),
m_cart4(*this, "stv_slot4"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette")
{
}
@ -36,6 +43,7 @@ public:
required_shared_ptr<UINT16> m_sound_ram;
optional_ioport m_fake_comms;
memory_region *m_cart_reg[4];
UINT8 *m_backupram;
UINT32 *m_scu_regs;
UINT16 *m_scsp_regs;
@ -152,6 +160,10 @@ public:
required_device<m68000_base_device> m_audiocpu;
required_device<scudsp_cpu_device> m_scudsp;
optional_device<eeprom_serial_93cxx_device> m_eeprom;
optional_device<generic_slot_device> m_cart1;
optional_device<generic_slot_device> m_cart2;
optional_device<generic_slot_device> m_cart3;
optional_device<generic_slot_device> m_cart4;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
@ -649,7 +661,6 @@ public:
DECLARE_WRITE16_MEMBER(scudsp_dma_w);
// FROM smpc.c
TIMER_CALLBACK_MEMBER( stv_bankswitch_state );
void stv_select_game(int gameno);
void smpc_master_on();
TIMER_CALLBACK_MEMBER( smpc_slave_enable );
@ -750,8 +761,12 @@ public:
DECLARE_READ32_MEMBER(magzun_hef_hack_r);
DECLARE_READ32_MEMBER(magzun_rx_hack_r);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( stv_cart );
int load_cart(device_image_interface &image, generic_slot_device *slot);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( stv_cart1 ) { return load_cart(image, m_cart1); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( stv_cart2 ) { return load_cart(image, m_cart2); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( stv_cart3 ) { return load_cart(image, m_cart3); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( stv_cart4 ) { return load_cart(image, m_cart4); }
void install_stvbios_speedups( void );
DECLARE_MACHINE_START(stv);

View File

@ -569,6 +569,8 @@ MACHINES += PCCARD
#BUSES += A1BUS
#BUSES += A2BUS
#BUSES += A7800
#BUSES += A800
#BUSES += ABCBUS
#BUSES += ABCKB
#BUSES += ADAM
@ -584,12 +586,14 @@ BUSES += CENTRONICS
#BUSES += COMPUCOLOR
#BUSES += COMX35
#BUSES += CPC
#BUSES += DMV
#BUSES += ECBBUS
#BUSES += ECONET
#BUSES += EP64
#BUSES += EPSON_SIO
#BUSES += GAMEBOY
#BUSES += GBA
BUSES += GENERIC
#BUSES += IEEE488
#BUSES += IMI7000
#BUSES += IQ151
@ -599,6 +603,7 @@ BUSES += ISA
#BUSES += MACPDS
#BUSES += MIDI
#BUSES += MEGADRIVE
#BUSES += MSX_SLOT
BUSES += NEOGEO
#BUSES += NES
#BUSES += NUBUS
@ -609,24 +614,31 @@ BUSES += NEOGEO
#BUSES += PC_KBD
#BUSES += PET
#BUSES += PLUS4
#BUSES += QL
BUSES += RS232
#BUSES += S100
#BUSES += SATURN
BUSES += SCSI
#BUSES += SCV
#BUSES += SEGA8
#BUSES += SMS_CTRL
#BUSES += SMS_EXP
#BUSES += SNES
#BUSES += TI99PEB
#BUSES += TVC
#BUSES += VBOY
#BUSES += VCS
#BUSES += VCS_CTRL
#BUSES += VIC10
#BUSES += VIC20
#BUSES += VIDBRAIN
#BUSES += VIP
#BUSES += VTECH_IOEXP
#BUSES += VTECH_MEMEXP
#BUSES += WANGPC
#BUSES += X68K
#BUSES += Z88
#BUSES += ZORRO
#-------------------------------------------------
# this is the list of driver libraries that

View File

@ -80,9 +80,11 @@ Notes:
#include "emu.h"
#include "cpu/z80/z80.h"
#include "machine/ram.h"
#include "imagedev/cartslot.h"
#include "rendlay.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
class prestige_state : public driver_device
{
@ -91,7 +93,7 @@ public:
: driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_ram(*this, RAM_TAG),
m_cart(*this, "cart"),
m_cart(*this, "cartslot"),
m_keyboard(*this, "KEY"),
m_bank1(*this, "bank1"),
m_bank2(*this, "bank2"),
@ -102,7 +104,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<ram_device> m_ram;
required_device<cartslot_image_device> m_cart;
required_device<generic_slot_device> m_cart;
required_ioport_array<16> m_keyboard;
required_memory_bank m_bank1;
required_memory_bank m_bank2;
@ -131,6 +133,8 @@ public:
UINT32 screen_update_1bpp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
UINT32 screen_update_2bpp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
memory_region *m_cart_rom;
DECLARE_READ8_MEMBER( bankswitch_r );
DECLARE_WRITE8_MEMBER( bankswitch_w );
DECLARE_READ8_MEMBER( kb_r );
@ -614,8 +618,11 @@ IRQ_CALLBACK_MEMBER(prestige_state::prestige_int_ack)
void prestige_state::machine_start()
{
UINT8 *rom = (UINT8 *)(*memregion("maincpu"));
UINT8 *cart = (UINT8 *)(*memregion("cart"));
astring region_tag;
m_cart_rom = memregion(region_tag.cpy(m_cart->tag()).cat(GENERIC_ROM_REGION_TAG));
UINT8 *rom = memregion("maincpu")->base();
UINT8 *cart = m_cart_rom->base();
UINT8 *ram = m_ram->pointer();
memset(ram, 0x00, m_ram->size());
@ -724,9 +731,7 @@ static MACHINE_CONFIG_START( prestige_base, prestige_state )
MCFG_PALETTE_INIT_OWNER(prestige_state, prestige)
/* cartridge */
MCFG_CARTSLOT_ADD("cart")
MCFG_CARTSLOT_EXTENSION_LIST("bin")
MCFG_CARTSLOT_INTERFACE("genius_cart")
MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "genius_cart")
/* internal ram */
MCFG_RAM_ADD(RAM_TAG)
@ -778,91 +783,59 @@ MACHINE_CONFIG_END
ROM_START( gl6000sl )
ROM_REGION(0x100000, "maincpu", 0)
ROM_LOAD( "27-5894-01", 0x000000, 0x080000, CRC(7336231c) SHA1(35a1f739994b5c8fb67a7f76d423e50d8154e9ea) )
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( gl7007sl )
ROM_REGION(0x100000, "maincpu", 0)
ROM_LOAD( "27-6060-00", 0x000000, 0x100000, CRC(06b2a595) SHA1(654d00e55ee43627ff947d72676c8e48e0518123) )
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( prestige )
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD( "27-6020-02.u2", 0x00000, 0x100000, CRC(6bb6db14) SHA1(5d51fc3fd799e7f01ee99c453f9005fb07747b1e) )
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( glcolor )
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD( "27-5488-00.u5", 0x00000, 0x080000, CRC(e6cf7702) SHA1(ce40418a7777b331bf8c4c881d51732aeb384582) )
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( glscolor )
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD( "27-5488-00.u5", 0x00000, 0x080000, CRC(e6cf7702) SHA1(ce40418a7777b331bf8c4c881d51732aeb384582) ) // identical to 'Genius Leader Color'
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( glmcolor )
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD( "27-5673-00.u6", 0x00000, 0x100000, CRC(c4245392) SHA1(bb651aaf11b75f4155c0a0106de9394018110cc7) )
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( gj4000 )
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD( "27-05886-000-000.u4", 0x000000, 0x40000, CRC(5f6db95b) SHA1(fe683154e33a82ea38696096616d11e850e0c7a3))
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( gj5000 )
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD( "27-6019-01.u2", 0x000000, 0x80000, CRC(946e5b7d) SHA1(80963d6ad80d49e54c8996bfc77ac135c4935be5))
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( gjrstar )
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD( "27-5740-00.u1", 0x000000, 0x40000, CRC(ff3dc3bb) SHA1(bc16dfc1e12b0008456c700c431c8df6263b671f))
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( gjrstar3 )
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD( "54-06056-000-000.u3", 0x000000, 0x040000, CRC(72522179) SHA1(ede9491713ad018012cf925a519bcafe126f1ad3))
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
ROM_START( gl6600cx )
ROM_REGION( 0x200000, "maincpu", 0 )
ROM_LOAD( "54-06400-00.u1", 0x000000, 0x200000, CRC(b05cd075) SHA1(b1d9eb02ca56350eb9e89518db89c0a2a845ebd8))
ROM_REGION( 0x80000, "cart", ROMREGION_ERASEFF )
ROM_CART_LOAD( "cart", 0, 0x80000, 0 )
ROM_END
/* Driver */
/* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */