misc/esd16.cpp: Cleaned up code. (#12823)

* Use appropriately sized integers for tilemap color values.
* Reduced literal tag usage, improved variable names, use C++ line comments.
This commit is contained in:
cam900 2024-09-27 01:23:23 +09:00 committed by GitHub
parent defdbf3300
commit 693e604ac3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 212 additions and 212 deletions

View file

@ -106,9 +106,9 @@ void esd16_state::vram_w(offs_t offset, u16 data, u16 mem_mask)
m_tilemap_16x16[Layer]->mark_tile_dirty(offset);
}
void esd16_state::hedpanic_platform_w(u16 data)
void esd16_state::platform_w(u16 data)
{
int const offsets = m_headpanic_platform_x[0] + 0x40 * m_headpanic_platform_y[0];
int const offsets = m_platform_x[0] + 0x40 * m_platform_y[0];
m_vram[1][offsets] = data;
m_tilemap[1]->mark_tile_dirty(offsets);
@ -129,36 +129,36 @@ void esd16_state::eeprom_w(u8 data)
void esd16_state::io_area_dsw(address_map &map, u32 base)
{
map(base + 0x0, base + 0x1).nopw(); /* Irq Ack */
map(base + 0x0, base + 0x1).nopw(); // IRQ Ack
map(base + 0x2, base + 0x3).portr("P1_P2");
map(base + 0x4, base + 0x5).portr("SYSTEM");
map(base + 0x6, base + 0x7).portr("DSW");
map(base + 0x8, base + 0x9).w(FUNC(esd16_state::tilemap0_color_w));
map(base + 0xa, base + 0xb).nopw(); /* Unknown */
map(base + 0xa, base + 0xb).nopw(); // Unknown
map(base + 0xd, base + 0xd).w(FUNC(esd16_state::sound_command_w));
map(base + 0xe, base + 0xf).nopw(); /* n/c */
map(base + 0xe, base + 0xf).nopw(); // n/c
}
void esd16_state::io_area_eeprom(address_map &map, u32 base)
{
map(base + 0x0, base + 0x1).nopw(); /* Irq Ack */
map(base + 0x0, base + 0x1).nopw(); // IRQ Ack
map(base + 0x2, base + 0x3).portr("P1_P2");
map(base + 0x4, base + 0x5).portr("SYSTEM");
map(base + 0x6, base + 0x6).r(FUNC(esd16_state::eeprom_r));
map(base + 0x8, base + 0x9).w(FUNC(esd16_state::tilemap0_color_w));
map(base + 0xa, base + 0xb).nopw(); /* Unknown */
map(base + 0xa, base + 0xb).nopw(); // Unknown
map(base + 0xd, base + 0xd).w(FUNC(esd16_state::sound_command_w));
map(base + 0xe, base + 0xf).w(FUNC(esd16_state::eeprom_w));
}
void esd16_state::vid_attr_area(address_map &map, u32 base)
{
map(base + 0x0, base + 0x3).writeonly().share("scroll_0");
map(base + 0x4, base + 0x7).writeonly().share("scroll_1");
map(base + 0x8, base + 0x9).writeonly().share("platform_x");
map(base + 0xa, base + 0xb).writeonly().share("platform_y");
map(base + 0x0, base + 0x3).writeonly().share(m_scroll[0]);
map(base + 0x4, base + 0x7).writeonly().share(m_scroll[1]);
map(base + 0x8, base + 0x9).writeonly().share(m_platform_x);
map(base + 0xa, base + 0xb).writeonly().share(m_platform_y);
map(base + 0xc, base + 0xd).nopw();
map(base + 0xe, base + 0xf).writeonly().share("head_layersize");
map(base + 0xe, base + 0xf).writeonly().share(m_layersize);
}
void esd16_state::palette_area(address_map &map, u32 base)
@ -168,13 +168,13 @@ void esd16_state::palette_area(address_map &map, u32 base)
void esd16_state::sprite_area(address_map &map, u32 base)
{
map(base + 0x000, base + 0x7ff).writeonly().share("spriteram").mirror(0x000800);
map(base + 0x000, base + 0x7ff).writeonly().share(m_spriteram).mirror(0x000800);
}
void esd16_state::vram_area(address_map &map, u32 base)
{
map(base + 0x00000, base + 0x03fff).w(FUNC(esd16_state::vram_w<0>)).share("vram_0").mirror(0x4000);
map(base + 0x20000, base + 0x23fff).w(FUNC(esd16_state::vram_w<1>)).share("vram_1").mirror(0x4000);
map(base + 0x00000, base + 0x03fff).w(FUNC(esd16_state::vram_w<0>)).share(m_vram[0]).mirror(0x4000);
map(base + 0x20000, base + 0x23fff).w(FUNC(esd16_state::vram_w<1>)).share(m_vram[1]).mirror(0x4000);
}
/*** Memory Maps ***/
@ -227,10 +227,10 @@ void esd16_state::hedpanic_map(address_map &map)
vid_attr_area(map, 0xb00000);
io_area_eeprom(map, 0xc00000);
map(0xd00008, 0xd00009).w(FUNC(esd16_state::hedpanic_platform_w)); // protection
map(0xd00008, 0xd00009).w(FUNC(esd16_state::platform_w)); // protection
}
/* Multi Champ Deluxe, like Head Panic but different addresses */
// Multi Champ Deluxe, like Head Panic but different addresses
void esd16_state::mchampdx_map(address_map &map)
{
@ -243,10 +243,10 @@ void esd16_state::mchampdx_map(address_map &map)
sprite_area(map, 0x600000);
vid_attr_area(map, 0x700000);
map(0xd00008, 0xd00009).w(FUNC(esd16_state::hedpanic_platform_w)); // not used in mchampdx?
map(0xd00008, 0xd00009).w(FUNC(esd16_state::platform_w)); // not used in mchampdx?
}
/* Tang Tang & Deluxe 5 - like the others but again with different addresses */
// Tang Tang & Deluxe 5 - like the others but again with different addresses
void esd16_state::tangtang_map(address_map &map)
{
@ -258,7 +258,7 @@ void esd16_state::tangtang_map(address_map &map)
vram_area(map, 0x300000);
vid_attr_area(map, 0x400000);
io_area_eeprom(map, 0x500000);
map(0x600008, 0x600009).w(FUNC(esd16_state::hedpanic_platform_w));
map(0x600008, 0x600009).w(FUNC(esd16_state::platform_w));
}
@ -278,7 +278,7 @@ void esd16_state::sound_rombank_w(u8 data)
void esd16_state::sound_map(address_map &map)
{
map(0x0000, 0x7fff).rom(); // ROM
map(0x8000, 0xbfff).bankr("audiobank"); // Banked ROM
map(0x8000, 0xbfff).bankr(m_audiobank); // Banked ROM
map(0xf800, 0xffff).ram(); // RAM
}
@ -687,7 +687,7 @@ void esd16_state::machine_start()
{
if (m_audiobank)
{
uint8_t* AUDIO = memregion("audiocpu")->base();
u8* AUDIO = memregion("audiocpu")->base();
m_audiobank->configure_entries(0, 16, &AUDIO[0x0000], 0x4000);
}
@ -710,12 +710,12 @@ DECOSPR_PRIORITY_CB_MEMBER(esd16_state::pri_callback)
void esd16_state::esd16_nosound(machine_config &config)
{
/* basic machine hardware */
M68000(config, m_maincpu, XTAL(16'000'000)); /* 16MHz */
// basic machine hardware
M68000(config, m_maincpu, XTAL(16'000'000)); // 16MHz
m_maincpu->set_addrmap(AS_PROGRAM, &esd16_state::multchmp_map);
m_maincpu->set_vblank_int("screen", FUNC(esd16_state::irq6_line_hold));
/* video hardware */
// video hardware
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
@ -739,7 +739,7 @@ void esd16_state::fantstry(machine_config& config)
// PIC16F84A-04/P for sound CPU
/* sound hardware */
// sound hardware
SPEAKER(config, "mono").front_center();
OKIM6295(config, "okisfx", XTAL(16'000'000) / 8, okim6295_device::PIN7_LOW);
@ -759,51 +759,51 @@ void esd16_state::esd16(machine_config& config)
{
esd16_nosound(config);
Z80(config, m_audiocpu, XTAL(16'000'000)/4); /* 4MHz */
Z80(config, m_audiocpu, XTAL(16'000'000)/4); // 4MHz
m_audiocpu->set_addrmap(AS_PROGRAM, &esd16_state::sound_map);
m_audiocpu->set_addrmap(AS_IO, &esd16_state::sound_io_map);
m_audiocpu->set_periodic_int(FUNC(esd16_state::nmi_line_pulse), attotime::from_hz(32*60)); /* IRQ By Main CPU */
m_audiocpu->set_periodic_int(FUNC(esd16_state::nmi_line_pulse), attotime::from_hz(32*60)); // IRQ By Main CPU
/* sound hardware */
// sound hardware
SPEAKER(config, "mono").front_center();
GENERIC_LATCH_8(config, m_soundlatch).data_pending_callback().set_inputline(m_audiocpu, 0);
YM3812(config, "ymsnd", XTAL(16'000'000)/4).add_route(ALL_OUTPUTS, "mono", 0.30); /* 4MHz */
YM3812(config, "ymsnd", XTAL(16'000'000)/4).add_route(ALL_OUTPUTS, "mono", 0.30); // 4MHz
OKIM6295(config, "oki", XTAL(16'000'000)/16, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 0.60); /* 1MHz */
OKIM6295(config, "oki", XTAL(16'000'000)/16, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 0.60); // 1MHz
}
void esd16_state::jumppop(machine_config &config)
{
esd16(config);
/* basic machine hardware */
// basic machine hardware
m_maincpu->set_addrmap(AS_PROGRAM, &esd16_state::jumppop_map);
m_audiocpu->set_clock(XTAL(14'000'000)/4); /* 3.5MHz - Verified */
m_audiocpu->set_clock(XTAL(14'000'000)/4); // 3.5MHz - Verified
m_sprgen->set_info(gfx_jumppop_spr);
m_gfxdecode->set_info(gfx_jumppop);
subdevice<ym3812_device>("ymsnd")->set_clock(XTAL(14'000'000)/4); /* 3.5MHz - Verified */
subdevice<ym3812_device>("ymsnd")->set_clock(XTAL(14'000'000)/4); // 3.5MHz - Verified
subdevice<okim6295_device>("oki")->set_clock(XTAL(14'000'000)/16); /* 875kHz - Verified */
subdevice<okim6295_device>("oki")->set_clock(XTAL(14'000'000)/16); // 875kHz - Verified
}
/* The ESD 05-28-99 PCB adds an EEPROM */
// The ESD 05-28-99 PCB adds an EEPROM
void esd16_state::hedpanio(machine_config &config)
{
esd16(config);
/* basic machine hardware */
// basic machine hardware
m_maincpu->set_addrmap(AS_PROGRAM, &esd16_state::hedpanic_map);
EEPROM_93C46_16BIT(config, "eeprom");
}
/* The ESD 08-26-1999 PCBs take that further and modify the sprite offsets */
// The ESD 08-26-1999 PCBs take that further and modify the sprite offsets
void esd16_state::hedpanic(machine_config &config)
{
@ -811,7 +811,7 @@ void esd16_state::hedpanic(machine_config &config)
m_sprgen->set_offsets(-0x18, -0x100);
}
/* ESD 08-26-1999 PCBs with different memory maps */
// ESD 08-26-1999 PCBs with different memory maps
void esd16_state::mchampdx(machine_config &config)
{
@ -892,21 +892,21 @@ MULTCHMP.U39 -/ MX27C2000
***************************************************************************/
ROM_START( multchmp )
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(2d1b098a) SHA1(c2f3991f02c611c258219da2c61cad22c9a21f7d) )
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(10974063) SHA1(854b38b4d4cb529e9928aae4212c86a220615e04) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x20000, CRC(7c178bd7) SHA1(8754d3c70d9b2bf369a5ce0cce4cc0696ed22750) )
ROM_REGION( 0x180000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x180000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "esd17.ju06", 0x000000, 0x040000, CRC(a69d4399) SHA1(06ae6c07cc6b7313e2e2aa3b994f7532d6994e1b) )
ROM_LOAD16_BYTE( "esd16.ju05", 0x000001, 0x040000, CRC(e670a6da) SHA1(47cbe45b6d5d0ca70d0c6787d589dde5d14fdba4) )
ROM_LOAD16_BYTE( "esd15.ju04", 0x080000, 0x040000, CRC(88b7a97c) SHA1(0a57ec8f6a44c8e3aa3ef35499a415d6a2b7eb16) )
ROM_LOAD16_BYTE( "esd14.ju03", 0x080001, 0x040000, CRC(a6122225) SHA1(cbcf2b31c4c011daba21f0ae5fd3be63c9a87c00) )
ROM_LOAD16_BYTE( "esd13.ju07", 0x100000, 0x040000, CRC(22071594) SHA1(c79102b250780d1da8c290d065d61fbbfa193366) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_BYTE( "esd9.fu28", 0x000000, 0x080000, CRC(6652c04a) SHA1(178e1d42847506d869ef79db2f7e10df05e9ef76) )
ROM_LOAD32_BYTE( "esd11.fu29", 0x000002, 0x080000, CRC(9bafd8ee) SHA1(db18be05431d4b6d4207e19fa4ed8701621aaa19) )
ROM_LOAD32_BYTE( "esd7.fu26", 0x000001, 0x080000, CRC(a783a003) SHA1(1ff61a049485c5b599c458a8bf7f48027d14f8e0) )
@ -916,26 +916,26 @@ ROM_START( multchmp )
ROM_LOAD32_BYTE( "esd8.fu30", 0x200001, 0x080000, CRC(22861af2) SHA1(1e74e85517cb8fd5fb4bda6e9d9d54046e31f653) )
ROM_LOAD32_BYTE( "esd6.fu32", 0x200003, 0x080000, CRC(e2689bb2) SHA1(1da9b1f7335d5c2d1c2f8353fccf91c0109d2e9d) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(6e741fcd) SHA1(742e0952916c00f67dd9f8d01e721a9a538d2fc4) )
ROM_END
ROM_START( multchmpk )
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "multchmp.u02", 0x000000, 0x040000, CRC(7da8c0df) SHA1(763a3240554a02d8a9a0b13b6bfcd384825a6c57) )
ROM_LOAD16_BYTE( "multchmp.u03", 0x000001, 0x040000, CRC(5dc62799) SHA1(ff7882985efc20309c3f901a622f1beffa0c47be) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x20000, CRC(7c178bd7) SHA1(8754d3c70d9b2bf369a5ce0cce4cc0696ed22750) )
ROM_REGION( 0x180000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x180000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "multchmp.u39", 0x000000, 0x040000, CRC(51f01067) SHA1(d5ebbc7d358b63724d2f24da8b2ce4a202be37a5) )
ROM_LOAD16_BYTE( "multchmp.u38", 0x000001, 0x040000, CRC(88e252e8) SHA1(07d898379798c6be42b636762b0af61b9111a480) )
ROM_LOAD16_BYTE( "multchmp.u37", 0x080000, 0x040000, CRC(b1ae7f08) SHA1(37dd9d4cef8b9e1d09d7b46a9794fb2b777c9a01) )
ROM_LOAD16_BYTE( "multchmp.u36", 0x080001, 0x040000, CRC(d8f06fa8) SHA1(f76912f93f99578529612a7f01d82ac7229a8e41) )
ROM_LOAD16_BYTE( "multchmp.u35", 0x100000, 0x040000, CRC(9d1590a6) SHA1(35f634dbf0df06ec62359c7bae43c7f5d14b0ab2) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_BYTE( "multchmp.u31", 0x000000, 0x080000, CRC(b1e4e9e3) SHA1(1a7393e9073b028b4170393b3788ad8cb86c0c78) )
ROM_LOAD32_BYTE( "multchmp.u33", 0x000002, 0x080000, CRC(e4c0ec96) SHA1(74152108e4d05f4aff9d38919f212fcb8c87cef3) )
ROM_LOAD32_BYTE( "multchmp.u29", 0x000001, 0x080000, CRC(01bd1399) SHA1(b717ccffe0af92a42a0879736d34d3ad71840233) )
@ -945,26 +945,26 @@ ROM_START( multchmpk )
ROM_LOAD32_BYTE( "multchmp.u30", 0x200001, 0x080000, CRC(c6b4cc18) SHA1(d9097b85584272cfe4989a40d622ef1feeee6775) )
ROM_LOAD32_BYTE( "multchmp.u28", 0x200003, 0x080000, CRC(449991fa) SHA1(fd93e420a04cb8bea5421aa9cbe079bd3e7d4924) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(6e741fcd) SHA1(742e0952916c00f67dd9f8d01e721a9a538d2fc4) )
ROM_END
ROM_START( multchmpa ) /* Also found on a ESD 10-10-98 PCB which looks identical to the ESD 11-09-98 PCB */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_START( multchmpa ) // Also found on a ESD 10-10-98 PCB which looks identical to the ESD 11-09-98 PCB
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(bfd39198) SHA1(11c0cb7a865daa1be9301ddfa5f5d2014e8f9908) )
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(cd769077) SHA1(741cca679393dab031691834874c96fee791241e) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su01", 0x00000, 0x20000, CRC(7c178bd7) SHA1(8754d3c70d9b2bf369a5ce0cce4cc0696ed22750) )
ROM_REGION( 0x180000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x180000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "esd17.ju06", 0x000000, 0x040000, CRC(51f01067) SHA1(d5ebbc7d358b63724d2f24da8b2ce4a202be37a5) )
ROM_LOAD16_BYTE( "esd16.ju05", 0x000001, 0x040000, CRC(88e252e8) SHA1(07d898379798c6be42b636762b0af61b9111a480) )
ROM_LOAD16_BYTE( "esd15.ju04", 0x080000, 0x040000, CRC(b1ae7f08) SHA1(37dd9d4cef8b9e1d09d7b46a9794fb2b777c9a01) )
ROM_LOAD16_BYTE( "esd14.ju03", 0x080001, 0x040000, CRC(d8f06fa8) SHA1(f76912f93f99578529612a7f01d82ac7229a8e41) )
ROM_LOAD16_BYTE( "esd13.ju07", 0x100000, 0x040000, CRC(9d1590a6) SHA1(35f634dbf0df06ec62359c7bae43c7f5d14b0ab2) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_BYTE( "esd9.fu28", 0x000000, 0x080000, CRC(a3cfe895) SHA1(a8dc0d5d9e64d4c5112177b8f20b5bdb86ca73af) )
ROM_LOAD32_BYTE( "esd11.fu29", 0x000002, 0x080000, CRC(d3c1855e) SHA1(bb547d4a45a745e9ae4a6727087cdf325105de90) )
ROM_LOAD32_BYTE( "esd7.fu26", 0x000001, 0x080000, CRC(042d59ff) SHA1(8e45a4757e07d8aaf50b151d8849c1a27424e64b) )
@ -974,7 +974,7 @@ ROM_START( multchmpa ) /* Also found on a ESD 10-10-98 PCB which looks identical
ROM_LOAD32_BYTE( "esd8.fu30", 0x200001, 0x080000, CRC(fa8cd2d3) SHA1(ddc1b98867e6d2eee458bf35a933e7cdc59f4c7e) )
ROM_LOAD32_BYTE( "esd6.fu32", 0x200003, 0x080000, CRC(97fde7b1) SHA1(b3610f6fcc1367ff079dc01121c86bc1e1f4c7a2) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su08", 0x00000, 0x20000, CRC(6e741fcd) SHA1(742e0952916c00f67dd9f8d01e721a9a538d2fc4) )
ROM_END
@ -1033,26 +1033,26 @@ Note: Some versions of this PCB used larger EPROMs with the data repeated:
ROM_START( mchampdx )
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "ver0106_esd2.cu02", 0x000000, 0x040000, CRC(ea98b3fd) SHA1(107ee8adea246141fd6fa9209541ce0a7ed1e24c) )
ROM_LOAD16_BYTE( "ver0106_esd1.cu03", 0x000001, 0x040000, CRC(c6e4546b) SHA1(af9a8edffe94d035f92b36b1cd145c2a5ee66f48) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(1b22568c) SHA1(5458e1a798357a6785f8ea1fe9da37768cd4761d) )
/* this has additional copyright sprites in the flash roms for the (c)2000 message.. */
ROM_REGION( 0x600000, "spr", 0 ) /* Sprites, 16x16x5 */
// this has additional copyright sprites in the flash roms for the (c)2000 message..
ROM_REGION( 0x600000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD( "ver0106_ju01.bin", 0x200000, 0x200000, CRC(55841d90) SHA1(52ba3ee9393dcddf28e2d20a50151bc739faaaa4) )
ROM_LOAD( "ver0106_ju02.bin", 0x000000, 0x200000, CRC(b27a4977) SHA1(b7f94bb04d0046538b3938335e6b0cce330ad79c) )
/* expand this to take up 0x200000 bytes too so we can decode it */
// expand this to take up 0x200000 bytes too so we can decode it
ROM_LOAD16_BYTE( "ver0106_esd5.ju07", 0x400000, 0x040000, CRC(7a3ac887) SHA1(3c759f9bed396bbaf6bd7298a8bd2bd76df3aa6f) )
ROM_FILL( 0x500000, 0x100000, 0x00 )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "rom.fu35", 0x000000, 0x200000, CRC(ba46f3dc) SHA1(4ac7695bdf4237654481f7f74f8650d70a51e691) )
ROM_LOAD32_WORD( "rom.fu34", 0x000002, 0x200000, CRC(2895cf09) SHA1(88756fcd589af1986c3881d4080f086afc11b498) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x40000, CRC(2fbe94ab) SHA1(1bc4a33ec93a80fb598722d2b50bdf3ccaaa984a) )
ROM_REGION16_BE( 0x80, "eeprom", ROMREGION_ERASE00 ) // factory default settings because game doesn't init them properly otherwise
@ -1060,25 +1060,25 @@ ROM_START( mchampdx )
ROM_END
ROM_START( mchampdxa )
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(4cca802c) SHA1(5e6e81febbb56b7c4630b530e546e7ab59c6c6c1) )
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(0af1cd0a) SHA1(d2befcb596d83d523317d17b4c1c71f99de0d33e) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(1b22568c) SHA1(5458e1a798357a6785f8ea1fe9da37768cd4761d) )
ROM_REGION( 0x600000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x600000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD( "rom.ju01", 0x200000, 0x200000, CRC(1a749fc2) SHA1(feff4b26ee28244b4d092798a176e33e09d5df2c) )
ROM_LOAD( "rom.ju02", 0x000000, 0x200000, CRC(7e87e332) SHA1(f90aa00a64a940846d99053c7aa023e3fd5d070b) )
/* expand this to take up 0x200000 bytes too so we can decode it */
// expand this to take up 0x200000 bytes too so we can decode it
ROM_LOAD16_BYTE( "esd5.ju07", 0x400000, 0x080000, CRC(6cc871cc) SHA1(710b9695c864e4234686993b88d24590d60e1cb9) )
ROM_FILL( 0x500000, 0x100000, 0x00 )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "rom.fu35", 0x000000, 0x200000, CRC(ba46f3dc) SHA1(4ac7695bdf4237654481f7f74f8650d70a51e691) )
ROM_LOAD32_WORD( "rom.fu34", 0x000002, 0x200000, CRC(2895cf09) SHA1(88756fcd589af1986c3881d4080f086afc11b498) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x40000, CRC(2fbe94ab) SHA1(1bc4a33ec93a80fb598722d2b50bdf3ccaaa984a) )
ROM_REGION16_BE( 0x80, "eeprom", ROMREGION_ERASE00 ) // factory default settings because game doesn't init them properly otherwise
@ -1086,25 +1086,25 @@ ROM_START( mchampdxa )
ROM_END
ROM_START( mchampdxb )
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "ver1114_esd2.cu02", 0x000000, 0x040000, CRC(d17b2616) SHA1(2c50c2bf928036678b92b8862d191552e46d9faa) )
ROM_LOAD16_BYTE( "ver1114_esd1.cu03", 0x000001, 0x040000, CRC(11ff2e94) SHA1(30044bedfff514ae0a855cffa756e5c315fe2124) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "ver1114_esd3.su06", 0x00000, 0x40000, CRC(b87a1e85) SHA1(2fcdd7e8b301e3d20e6500a03dc293403b23b471) )
ROM_REGION( 0x600000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x600000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD( "ver1114_ju01", 0x200000, 0x200000, CRC(0048e687) SHA1(5cc0a35b5f5f8d69b2dc3728ad6d0d505d9e16c5) ) // SMT Flash MX chips
ROM_LOAD( "ver1114_ju02", 0x000000, 0x200000, CRC(2f9ccff8) SHA1(176240cd247cc5d3efd58fe0630726a8633be2a4) )
/* expand this to take up 0x200000 bytes too so we can decode it */
// expand this to take up 0x200000 bytes too so we can decode it
ROM_LOAD16_BYTE( "ver1114_esd5.ju07", 0x400000, 0x040000, CRC(8175939f) SHA1(cd0132ae0d2e35dc656434989b1f0f255ad562ab) )
ROM_FILL( 0x500000, 0x100000, 0x00 )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "ver1114_fu35", 0x000000, 0x200000, CRC(c515c704) SHA1(c1657534314e66a25c38f70a12f14d2225ab89cc) ) // SMT Flash MX chips
ROM_LOAD32_WORD( "ver1114_fu34", 0x000002, 0x200000, CRC(39d448bb) SHA1(07cd6e30a25d1c0caeef0f95f23df0ca6a2c7a26) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x40000, CRC(2fbe94ab) SHA1(1bc4a33ec93a80fb598722d2b50bdf3ccaaa984a) )
ROM_REGION16_BE( 0x80, "eeprom", ROMREGION_ERASE00 ) // factory default settings because game doesn't init them properly otherwise
@ -1199,108 +1199,108 @@ Note: Some versions of this PCB used larger EPROMs with the data repeated:
***************************************************************************/
ROM_START( hedpanic ) /* Story line & game instructions in English */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_START( hedpanic ) // Story line & game instructions in English
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.cu03", 0x000000, 0x040000, CRC(7c7be3bb) SHA1(d43ad7a967e1ef79ee0cf50d3842cc9174fbef3a) )
ROM_LOAD16_BYTE( "esd1.cu02", 0x000001, 0x040000, CRC(42405e9d) SHA1(0fa088b8bd921e42cedcc4083dfe41bc9888dfd1) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) /* AT27C020 mask rom */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) // AT27C020 mask rom
ROM_REGION( 0x600000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x600000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD( "esd6.ju01", 0x200000, 0x200000, CRC(5858372c) SHA1(dc96112587df681d53cf7449bd39477919978325) )
ROM_LOAD( "esd7.ju02", 0x000000, 0x200000, CRC(055d525f) SHA1(85ad474691f96e47311a1904015d1c92d3b2d607) )
/* expand this to take up 0x200000 bytes too so we can decode it */
// expand this to take up 0x200000 bytes too so we can decode it
ROM_LOAD16_BYTE( "esd5.ju07", 0x400000, 0x080000, CRC(bd785921) SHA1(c8bcb38d5aa6f5a27f0dedf7efd1d6737d59b4ca) )
ROM_FILL( 0x500000, 0x100000, 0x00 )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "esd8.fu35", 0x000000, 0x200000, CRC(23aceb4f) SHA1(35d9ebc33b9e1515e47750cfcdfc0bf8bf44b71d) )
ROM_LOAD32_WORD( "esd9.fu34", 0x000002, 0x200000, CRC(76b46cd2) SHA1(679cbf50ae5935e8848868081ecef4ec66424f6c) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_LOAD( "esd4.su10", 0x000000, 0x020000, CRC(3c11c590) SHA1(cb33845c3dc0501fff8055c2d66f412881089df1) ) /* AT27010 mask rom */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x000000, 0x020000, CRC(3c11c590) SHA1(cb33845c3dc0501fff8055c2d66f412881089df1) ) // AT27010 mask rom
ROM_REGION16_BE( 0x80, "eeprom", 0 )
ROM_LOAD( "hedpanic.nv", 0x0000, 0x0080, CRC(e91f4038) SHA1(f492de71170900f87912a272ab4f4a3a37ba31fe) )
ROM_END
ROM_START( hedpanicf ) /* Story line in Japanese, game instructions in English */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_LOAD16_BYTE( "esd2", 0x000000, 0x040000, CRC(8cccc691) SHA1(d6a5dd6c21a67638b9023182f77780282b9b04e5) ) /* CU03 */
ROM_LOAD16_BYTE( "esd1", 0x000001, 0x040000, CRC(d8574925) SHA1(bd4990778b90a49aa6b10f8cf6709ce2424f546a) ) /* CU02 */
ROM_START( hedpanicf ) // Story line in Japanese, game instructions in English
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2", 0x000000, 0x040000, CRC(8cccc691) SHA1(d6a5dd6c21a67638b9023182f77780282b9b04e5) ) // CU03
ROM_LOAD16_BYTE( "esd1", 0x000001, 0x040000, CRC(d8574925) SHA1(bd4990778b90a49aa6b10f8cf6709ce2424f546a) ) // CU02
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) /* AT27C020 mask rom */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) // AT27C020 mask rom
ROM_REGION( 0x600000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x600000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD( "esd6.ju01", 0x200000, 0x200000, CRC(5858372c) SHA1(dc96112587df681d53cf7449bd39477919978325) )
ROM_LOAD( "esd7.ju02", 0x000000, 0x200000, CRC(055d525f) SHA1(85ad474691f96e47311a1904015d1c92d3b2d607) )
/* expand this to take up 0x200000 bytes too so we can decode it */
// expand this to take up 0x200000 bytes too so we can decode it
ROM_LOAD16_BYTE( "esd5.ju07", 0x400000, 0x080000, CRC(bd785921) SHA1(c8bcb38d5aa6f5a27f0dedf7efd1d6737d59b4ca) )
ROM_FILL( 0x500000, 0x100000, 0x00 )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "esd8.fu35", 0x000000, 0x200000, CRC(23aceb4f) SHA1(35d9ebc33b9e1515e47750cfcdfc0bf8bf44b71d) )
ROM_LOAD32_WORD( "esd9.fu34", 0x000002, 0x200000, CRC(76b46cd2) SHA1(679cbf50ae5935e8848868081ecef4ec66424f6c) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_LOAD( "esd4.su10", 0x000000, 0x020000, CRC(3c11c590) SHA1(cb33845c3dc0501fff8055c2d66f412881089df1) ) /* AT27010 mask rom */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x000000, 0x020000, CRC(3c11c590) SHA1(cb33845c3dc0501fff8055c2d66f412881089df1) ) // AT27010 mask rom
ROM_REGION16_BE( 0x80, "eeprom", 0 )
ROM_LOAD( "hedpanic.nv", 0x0000, 0x0080, CRC(e91f4038) SHA1(f492de71170900f87912a272ab4f4a3a37ba31fe) )
ROM_END
ROM_START( hedpanica ) /* Story line & game instructions in English, copyright year is 1999 - ESD 06-10-1999 PCB */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_LOAD16_BYTE( "esd12.cu03", 0x000000, 0x040000, CRC(deb7e0a0) SHA1(ef3a00e9bfdffd7c89326ad97a261f9a7b9863ae) ) /* CU03 */
ROM_LOAD16_BYTE( "esd11.cu02", 0x000001, 0x040000, CRC(e1418f23) SHA1(39f14172d9b1a0d47edfe2456362fddc22f60066) ) /* CU02 */
ROM_START( hedpanica ) // Story line & game instructions in English, copyright year is 1999 - ESD 06-10-1999 PCB
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd12.cu03", 0x000000, 0x040000, CRC(deb7e0a0) SHA1(ef3a00e9bfdffd7c89326ad97a261f9a7b9863ae) ) // CU03
ROM_LOAD16_BYTE( "esd11.cu02", 0x000001, 0x040000, CRC(e1418f23) SHA1(39f14172d9b1a0d47edfe2456362fddc22f60066) ) // CU02
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) /* AT27C020 mask rom */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) // AT27C020 mask rom
ROM_REGION( 0x600000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x600000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD( "ju04", 0x200000, 0x200000, CRC(4f3503d7) SHA1(4bed795c7328e0ebfa97688918eb8a908c29deb8) )
ROM_LOAD( "ju06", 0x000000, 0x200000, CRC(9f6f6193) SHA1(c7c7ae6898ab7177eefb0e525d827666e2af9f7e) )
/* expand this to take up 0x200000 bytes too so we can decode it */
ROM_LOAD16_BYTE( "esd5.bin", 0x400000, 0x080000, CRC(6968265a) SHA1(84b4f2d8b3bf6ea4117fa8281c76b58df778261d) ) /* JU07 */
// expand this to take up 0x200000 bytes too so we can decode it
ROM_LOAD16_BYTE( "esd5.bin", 0x400000, 0x080000, CRC(6968265a) SHA1(84b4f2d8b3bf6ea4117fa8281c76b58df778261d) ) // JU07
ROM_FILL( 0x500000, 0x100000, 0x00 )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(9b5a45c5) SHA1(fbd8bc6ccc068d2cc7fe4f575fa0847f53e786ab) )
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(8f2099cc) SHA1(40795ae5fb8de613c2d5b6147992c153695bf698) )
ROM_REGION( 0x80000, "oki", 0 ) /* Samples */
ROM_LOAD( "esd4.bin", 0x000000, 0x080000, CRC(5692fe92) SHA1(4423039cb437ab36d198b212ef394bf1704be404) ) /* SU10 */
ROM_REGION( 0x80000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.bin", 0x000000, 0x080000, CRC(5692fe92) SHA1(4423039cb437ab36d198b212ef394bf1704be404) ) // SU10
ROM_REGION16_BE( 0x80, "eeprom", 0 )
ROM_LOAD( "hedpanic.nv", 0x0000, 0x0080, CRC(e91f4038) SHA1(f492de71170900f87912a272ab4f4a3a37ba31fe) )
ROM_END
ROM_START( hedpanico ) /* Story line & game instructions in English, copyright year is 1999 - ESD 05-28-99 PCB which uses older style sprites */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_LOAD16_BYTE( "esd2.rom", 0x000000, 0x040000, CRC(70b08424) SHA1(2ba4fb3b749e31db4239a9173b8509366400152f) ) /* CU03 */
ROM_LOAD16_BYTE( "esd1.rom", 0x000001, 0x040000, CRC(4e0682c5) SHA1(f4117f31b6426d7bf126a6c62c489b9347885b42) ) /* CU02 */
ROM_START( hedpanico ) // Story line & game instructions in English, copyright year is 1999 - ESD 05-28-99 PCB which uses older style sprites
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.rom", 0x000000, 0x040000, CRC(70b08424) SHA1(2ba4fb3b749e31db4239a9173b8509366400152f) ) // CU03
ROM_LOAD16_BYTE( "esd1.rom", 0x000001, 0x040000, CRC(4e0682c5) SHA1(f4117f31b6426d7bf126a6c62c489b9347885b42) ) // CU02
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) /* AT27C020 mask rom */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) // AT27C020 mask rom
ROM_REGION( 0x600000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x600000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD( "sm1.ju01", 0x000000, 0x200000, CRC(8083813f) SHA1(9492e7e844e45d59f0506f69d40c338b27bd3ce3) )
ROM_LOAD( "sm2.ju02", 0x200000, 0x200000, CRC(7a9610e4) SHA1(21ae3ec3fbddfc66416c109b091bd885d5ba0558) )
/* expand this to take up 0x200000 bytes too so we can decode it */
ROM_LOAD16_BYTE( "esd5.rom", 0x400000, 0x080000, CRC(82c5727f) SHA1(017f1d0c94475c51d17f12e24895f47a273a2dbb) ) /* JU07 */
// expand this to take up 0x200000 bytes too so we can decode it
ROM_LOAD16_BYTE( "esd5.rom", 0x400000, 0x080000, CRC(82c5727f) SHA1(017f1d0c94475c51d17f12e24895f47a273a2dbb) ) // JU07
ROM_FILL( 0x500000, 0x100000, 0x00 )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "sm3.fu35", 0x000000, 0x200000, CRC(94dd4cfc) SHA1(a3f9c49611f0bc9d26166dafb44e2c5ebbb31127) )
ROM_LOAD32_WORD( "sm4.fu34", 0x000002, 0x200000, CRC(6da0fb9e) SHA1(c4e7487953f45c5f6ce2ebe558b4c325f6ec54eb) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_LOAD( "esd4.rom", 0x000000, 0x020000, CRC(d7ca6806) SHA1(8ad668bfb5b7561cc0f3e36dfc3c936b136a4274) ) /* SU10 */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.rom", 0x000000, 0x020000, CRC(d7ca6806) SHA1(8ad668bfb5b7561cc0f3e36dfc3c936b136a4274) ) // SU10
ROM_REGION16_BE( 0x80, "eeprom", 0 )
ROM_LOAD( "hedpanic.nv", 0x0000, 0x0080, CRC(e91f4038) SHA1(f492de71170900f87912a272ab4f4a3a37ba31fe) )
@ -1358,106 +1358,106 @@ Notes:
*/
ROM_START( deluxe5 ) /* Deluxe 5 */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(d077dc13) SHA1(d83feadb29674d56a5f019641f402798c7ba8d61) ) /* M27C2001 EPROM */
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(15d6644f) SHA1(cfb8168167389855f906658511d1dc7460e13100) ) /* M27C2001 EPROM */
ROM_START( deluxe5 ) // Deluxe 5
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(d077dc13) SHA1(d83feadb29674d56a5f019641f402798c7ba8d61) ) // M27C2001 EPROM
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(15d6644f) SHA1(cfb8168167389855f906658511d1dc7460e13100) ) // M27C2001 EPROM
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(31de379a) SHA1(a0c9a9cec7207cc4ba33abb68bef62d7eb8e75e9) ) /* AM27C020 mask rom */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(31de379a) SHA1(a0c9a9cec7207cc4ba33abb68bef62d7eb8e75e9) ) // AM27C020 mask rom
ROM_REGION( 0x180000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_LOAD16_BYTE( "am27c020.ju06", 0x000000, 0x040000, CRC(8b853bce) SHA1(fa6e654fc965d88bb426b76cdce3417f357b25f3) ) /* AM27C020 mask roms with no label */
ROM_REGION( 0x180000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "am27c020.ju06", 0x000000, 0x040000, CRC(8b853bce) SHA1(fa6e654fc965d88bb426b76cdce3417f357b25f3) ) // AM27C020 mask roms with no label
ROM_LOAD16_BYTE( "am27c020.ju05", 0x000001, 0x040000, CRC(bbe81779) SHA1(750387fb4aaa04b7f4f1d3985896f5e11219e3ea) )
ROM_LOAD16_BYTE( "am27c020.ju04", 0x080000, 0x040000, CRC(40fa2c2f) SHA1(b9d9bfdc9343f00bad9749c76472f064c509cfce) )
ROM_LOAD16_BYTE( "am27c020.ju03", 0x080001, 0x040000, CRC(aa130fd3) SHA1(46a55d8ca59a52e610600fdba76d9729528d2871) )
ROM_LOAD16_BYTE( "am27c020.ju07", 0x100000, 0x040000, CRC(d414c3af) SHA1(9299b07a8c7a3e30a1bb6028204a049a7cb510f7) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(ae10242a) SHA1(f3d18c0cb7951b5f7ee47aa2856b7554088328ed) ) /* No labels on the flash roms */
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(248b8c05) SHA1(fe7bcc05ae0dd0a27c6ba4beb4ac155a8f3d7f7e) ) /* No labels on the flash roms */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(ae10242a) SHA1(f3d18c0cb7951b5f7ee47aa2856b7554088328ed) ) // No labels on the flash roms
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(248b8c05) SHA1(fe7bcc05ae0dd0a27c6ba4beb4ac155a8f3d7f7e) ) // No labels on the flash roms
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(23f2b7d9) SHA1(328c951d14674760df68486841c933bad0d59fe3) ) /* AT27C010 mask rom */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(23f2b7d9) SHA1(328c951d14674760df68486841c933bad0d59fe3) ) // AT27C010 mask rom
ROM_REGION16_BE( 0x80, "eeprom", ROMREGION_ERASE00 ) // factory default settings because game doesn't init them properly otherwise
ROM_LOAD16_WORD_SWAP( "eeprom", 0x0000, 0x0080, CRC(4539a8a0) SHA1(b882110b489e61ac5421fbe3551d9ee323b5d86b) )
ROM_END
ROM_START( deluxe5a ) /* Deluxe 5 */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_START( deluxe5a ) // Deluxe 5
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(c67bf757) SHA1(c90d486088d4aedbc9dd307cf1a8d5febf6fdba0) ) // sldh
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(24f4d7b9) SHA1(bb0eabdd72a475149d6df768d9d29b545f061e54) ) // sldh
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(31de379a) SHA1(a0c9a9cec7207cc4ba33abb68bef62d7eb8e75e9) ) /* AM27C020 mask rom */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(31de379a) SHA1(a0c9a9cec7207cc4ba33abb68bef62d7eb8e75e9) ) // AM27C020 mask rom
ROM_REGION( 0x180000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_LOAD16_BYTE( "am27c020.ju06", 0x000000, 0x040000, CRC(8b853bce) SHA1(fa6e654fc965d88bb426b76cdce3417f357b25f3) ) /* AM27C020 mask roms with no label */
ROM_REGION( 0x180000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "am27c020.ju06", 0x000000, 0x040000, CRC(8b853bce) SHA1(fa6e654fc965d88bb426b76cdce3417f357b25f3) ) // AM27C020 mask roms with no label
ROM_LOAD16_BYTE( "am27c020.ju05", 0x000001, 0x040000, CRC(bbe81779) SHA1(750387fb4aaa04b7f4f1d3985896f5e11219e3ea) )
ROM_LOAD16_BYTE( "am27c020.ju04", 0x080000, 0x040000, CRC(40fa2c2f) SHA1(b9d9bfdc9343f00bad9749c76472f064c509cfce) )
ROM_LOAD16_BYTE( "am27c020.ju03", 0x080001, 0x040000, CRC(aa130fd3) SHA1(46a55d8ca59a52e610600fdba76d9729528d2871) )
ROM_LOAD16_BYTE( "am27c020.ju07", 0x100000, 0x040000, CRC(d414c3af) SHA1(9299b07a8c7a3e30a1bb6028204a049a7cb510f7) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(ae10242a) SHA1(f3d18c0cb7951b5f7ee47aa2856b7554088328ed) ) /* No labels on the flash roms */
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(248b8c05) SHA1(fe7bcc05ae0dd0a27c6ba4beb4ac155a8f3d7f7e) ) /* No labels on the flash roms */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(ae10242a) SHA1(f3d18c0cb7951b5f7ee47aa2856b7554088328ed) ) // No labels on the flash roms
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(248b8c05) SHA1(fe7bcc05ae0dd0a27c6ba4beb4ac155a8f3d7f7e) ) // No labels on the flash roms
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(23f2b7d9) SHA1(328c951d14674760df68486841c933bad0d59fe3) ) /* AT27C010 mask rom */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(23f2b7d9) SHA1(328c951d14674760df68486841c933bad0d59fe3) ) // AT27C010 mask rom
ROM_REGION16_BE( 0x80, "eeprom", ROMREGION_ERASE00 ) // factory default settings because game doesn't init them properly otherwise
ROM_LOAD16_WORD_SWAP( "eeprom", 0x0000, 0x0080, CRC(4539a8a0) SHA1(b882110b489e61ac5421fbe3551d9ee323b5d86b) )
ROM_END
ROM_START( deluxe5b ) /* Deluxe 5 */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_START( deluxe5b ) // Deluxe 5
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(72a67495) SHA1(4fd5871621a6d1d4ea7a23c84f5796ee99caf857) ) // sldh
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(7cc119c8) SHA1(4d2d37e815ab3211ff88c2e6584b4eaee1cd202d) ) // sldh
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(31de379a) SHA1(a0c9a9cec7207cc4ba33abb68bef62d7eb8e75e9) ) /* AM27C020 mask rom */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(31de379a) SHA1(a0c9a9cec7207cc4ba33abb68bef62d7eb8e75e9) ) // AM27C020 mask rom
ROM_REGION( 0x180000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_LOAD16_BYTE( "am27c020.ju06", 0x000000, 0x040000, CRC(8b853bce) SHA1(fa6e654fc965d88bb426b76cdce3417f357b25f3) ) /* AM27C020 mask roms with no label */
ROM_REGION( 0x180000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "am27c020.ju06", 0x000000, 0x040000, CRC(8b853bce) SHA1(fa6e654fc965d88bb426b76cdce3417f357b25f3) ) // AM27C020 mask roms with no label
ROM_LOAD16_BYTE( "am27c020.ju05", 0x000001, 0x040000, CRC(bbe81779) SHA1(750387fb4aaa04b7f4f1d3985896f5e11219e3ea) )
ROM_LOAD16_BYTE( "am27c020.ju04", 0x080000, 0x040000, CRC(40fa2c2f) SHA1(b9d9bfdc9343f00bad9749c76472f064c509cfce) )
ROM_LOAD16_BYTE( "am27c020.ju03", 0x080001, 0x040000, CRC(aa130fd3) SHA1(46a55d8ca59a52e610600fdba76d9729528d2871) )
ROM_LOAD16_BYTE( "am27c020.ju07", 0x100000, 0x040000, CRC(d414c3af) SHA1(9299b07a8c7a3e30a1bb6028204a049a7cb510f7) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(ae10242a) SHA1(f3d18c0cb7951b5f7ee47aa2856b7554088328ed) ) /* No labels on the flash roms */
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(248b8c05) SHA1(fe7bcc05ae0dd0a27c6ba4beb4ac155a8f3d7f7e) ) /* No labels on the flash roms */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(ae10242a) SHA1(f3d18c0cb7951b5f7ee47aa2856b7554088328ed) ) // No labels on the flash roms
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(248b8c05) SHA1(fe7bcc05ae0dd0a27c6ba4beb4ac155a8f3d7f7e) ) // No labels on the flash roms
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(23f2b7d9) SHA1(328c951d14674760df68486841c933bad0d59fe3) ) /* AT27C010 mask rom */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(23f2b7d9) SHA1(328c951d14674760df68486841c933bad0d59fe3) ) // AT27C010 mask rom
ROM_REGION16_BE( 0x80, "eeprom", ROMREGION_ERASE00 ) // factory default settings because game doesn't init them properly otherwise
ROM_LOAD16_WORD_SWAP( "eeprom", 0x0000, 0x0080, CRC(4539a8a0) SHA1(b882110b489e61ac5421fbe3551d9ee323b5d86b) )
ROM_END
ROM_START( deluxe4u ) /* Deluxe 4 U - Removes Blackjack game, but otherwise same as Deluxe 5 */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_START( deluxe4u ) // Deluxe 4 U - Removes Blackjack game, but otherwise same as Deluxe 5
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "2.cu02", 0x000000, 0x040000, CRC(db213e1f) SHA1(bf9c49635f79b92a761715138528200106aa86ae) )
ROM_LOAD16_BYTE( "1.cu03", 0x000001, 0x040000, CRC(fbf14d74) SHA1(5ff5bf4ff55609452d5b8a49d8658f878541ce60) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(31de379a) SHA1(a0c9a9cec7207cc4ba33abb68bef62d7eb8e75e9) ) /* AM27C020 mask rom */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(31de379a) SHA1(a0c9a9cec7207cc4ba33abb68bef62d7eb8e75e9) ) // AM27C020 mask rom
ROM_REGION( 0x180000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_LOAD16_BYTE( "am27c020.ju06", 0x000000, 0x040000, CRC(8b853bce) SHA1(fa6e654fc965d88bb426b76cdce3417f357b25f3) ) /* AM27C020 mask roms with no label */
ROM_REGION( 0x180000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "am27c020.ju06", 0x000000, 0x040000, CRC(8b853bce) SHA1(fa6e654fc965d88bb426b76cdce3417f357b25f3) ) // AM27C020 mask roms with no label
ROM_LOAD16_BYTE( "am27c020.ju05", 0x000001, 0x040000, CRC(bbe81779) SHA1(750387fb4aaa04b7f4f1d3985896f5e11219e3ea) )
ROM_LOAD16_BYTE( "am27c020.ju04", 0x080000, 0x040000, CRC(40fa2c2f) SHA1(b9d9bfdc9343f00bad9749c76472f064c509cfce) )
ROM_LOAD16_BYTE( "am27c020.ju03", 0x080001, 0x040000, CRC(aa130fd3) SHA1(46a55d8ca59a52e610600fdba76d9729528d2871) )
ROM_LOAD16_BYTE( "am27c020.ju07", 0x100000, 0x040000, CRC(d414c3af) SHA1(9299b07a8c7a3e30a1bb6028204a049a7cb510f7) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(6df14570) SHA1(fa4fc64c984d6a94fe61ec809ec515e840388704) ) /* Specific to Deluxe 4 U - No labels on the flash roms */
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(93175d6d) SHA1(691832134f43e17bb767dff080b2736288961414) ) /* Specific to Deluxe 4 U - No labels on the flash roms */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(6df14570) SHA1(fa4fc64c984d6a94fe61ec809ec515e840388704) ) // Specific to Deluxe 4 U - No labels on the flash roms
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(93175d6d) SHA1(691832134f43e17bb767dff080b2736288961414) ) // Specific to Deluxe 4 U - No labels on the flash roms
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(23f2b7d9) SHA1(328c951d14674760df68486841c933bad0d59fe3) ) /* AT27C010 mask rom */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(23f2b7d9) SHA1(328c951d14674760df68486841c933bad0d59fe3) ) // AT27C010 mask rom
ROM_REGION16_BE( 0x80, "eeprom", ROMREGION_ERASE00 ) // factory default settings because game doesn't init them properly otherwise
ROM_LOAD16_WORD_SWAP( "eeprom", 0x0000, 0x0080, CRC(4539a8a0) SHA1(b882110b489e61ac5421fbe3551d9ee323b5d86b) )
@ -1518,25 +1518,25 @@ Notes:
*/
ROM_START( tangtang )
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(b6dd6e3d) SHA1(44d2663827c45267eb154c873f3bd2e9e2bf3d3f) )
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(b6c0f2f4) SHA1(68ad76e7e380c728dda200a852729e034d9c9f4c) )
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(d48ecc5c) SHA1(5015dd775980542eb29a08bffe1a09ea87d56272) )
ROM_REGION( 0x180000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x180000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "xju07.bin", 0x000000, 0x040000, CRC(556acac3) SHA1(10e919e63b434da80fb261db1d8967cb11e95e00) )
ROM_LOAD16_BYTE( "xju06.bin", 0x000001, 0x040000, CRC(01f59ff7) SHA1(a62a2d5c2d107f67fecfc08fdb5d801ee39c3875) )
ROM_LOAD16_BYTE( "xju05.bin", 0x080000, 0x040000, CRC(679302cf) SHA1(911c2f7e0e809ee28e4f2364788fd51d2bcef24e) )
ROM_LOAD16_BYTE( "xju04.bin", 0x080001, 0x040000, CRC(f999b9d7) SHA1(9e4d0e68cdc429c7563b8ad51c072d68ffed09dc) )
ROM_LOAD16_BYTE( "xju08.bin", 0x100000, 0x040000, CRC(ecc2d8c7) SHA1(1aabdf7204fcdff8d46cb50de8b097e3775dddf3) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "fu35.bin", 0x000000, 0x200000, CRC(84f3f833) SHA1(f84e41d93dc47a58ada800b921a7e5902b7631cd) )
ROM_LOAD32_WORD( "fu34.bin", 0x000002, 0x200000, CRC(bf91f543) SHA1(7c149fed8b8044850cd6b798622a91c45336cd47) )
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "esd4.su10", 0x00000, 0x20000, CRC(f2dfb02d) SHA1(04001488697aad3e5b2d15c9f5a81dc2b7d0952c) )
ROM_REGION16_BE( 0x80, "eeprom", ROMREGION_ERASE00 ) // default settings because game doesn't init them properly otherwise
@ -1593,27 +1593,27 @@ Notes:
*/
ROM_START( swatpolc ) /* SWAT Police */
ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */
ROM_LOAD16_BYTE( "esd.cu02", 0x000000, 0x040000, CRC(29e0c126) SHA1(7c0356eed4ffdc056b7ec5c1ac07f1c9cc6aeffa) ) /* ESD labels but not numbered */
ROM_LOAD16_BYTE( "esd.cu03", 0x000001, 0x040000, CRC(1070208b) SHA1(1e058774c5aee1de15ffcd26d530b23592286db1) ) /* ESD labels but not numbered */
ROM_START( swatpolc ) // SWAT Police
ROM_REGION( 0x080000, "maincpu", 0 ) // 68000 Code
ROM_LOAD16_BYTE( "esd.cu02", 0x000000, 0x040000, CRC(29e0c126) SHA1(7c0356eed4ffdc056b7ec5c1ac07f1c9cc6aeffa) ) // ESD labels but not numbered
ROM_LOAD16_BYTE( "esd.cu03", 0x000001, 0x040000, CRC(1070208b) SHA1(1e058774c5aee1de15ffcd26d530b23592286db1) ) // ESD labels but not numbered
ROM_REGION( 0x40000, "audiocpu", 0 ) /* Z80 Code */
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(80e97dbe) SHA1(d6fae689cd3737777f36c980b9a7d9e42b06a467) ) /* 2 roms on PCB with an ESD3 label */
ROM_REGION( 0x40000, "audiocpu", 0 ) // Z80 Code
ROM_LOAD( "esd3.su06", 0x00000, 0x40000, CRC(80e97dbe) SHA1(d6fae689cd3737777f36c980b9a7d9e42b06a467) ) // 2 roms on PCB with an ESD3 label
ROM_REGION( 0x300000, "spr", 0 ) /* Sprites, 16x16x5 */
ROM_REGION( 0x300000, "spr", 0 ) // Sprites, 16x16x5
ROM_LOAD16_BYTE( "esd4.ju06", 0x000000, 0x080000, CRC(bde1b130) SHA1(e45a2257f8c4d107dfb7401b5ae1b79951052bc6) )
ROM_LOAD16_BYTE( "esd3.ju05", 0x000001, 0x080000, CRC(e8d9c092) SHA1(80e1f1d4dad48c7be3d4b72c4a82d5388fd493c7) )
ROM_LOAD16_BYTE( "esd2.ju04", 0x100000, 0x080000, CRC(9c1752f2) SHA1(2e8c377137258498564749413b49e156180e806a) )
ROM_LOAD16_BYTE( "esd1.ju03", 0x100001, 0x080000, CRC(17fcc5e7) SHA1(ad57d2b0c0062f6f8c7732df57e4d12ca47c1bb8) )
ROM_LOAD16_BYTE( "esd5.ju07", 0x200000, 0x080000, CRC(d2c27f03) SHA1(7cbdf7f7ff17df16ca81823f69e82ae1cf96b714) )
ROM_REGION( 0x400000, "bgs", 0 ) /* Layers, 16x16x8 */
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(c55897c5) SHA1(f6e0ef1c2fcfe6a511fe787a3abeff4da16d1b54) ) /* No labels on the flash roms */
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(7117a6a2) SHA1(17c0ab02698cffa0582ed2d2b7dbb7fed8cd9393) ) /* No labels on the flash roms */
ROM_REGION( 0x400000, "bgs", 0 ) // Layers, 16x16x8
ROM_LOAD32_WORD( "fu35", 0x000000, 0x200000, CRC(c55897c5) SHA1(f6e0ef1c2fcfe6a511fe787a3abeff4da16d1b54) ) // No labels on the flash roms
ROM_LOAD32_WORD( "fu34", 0x000002, 0x200000, CRC(7117a6a2) SHA1(17c0ab02698cffa0582ed2d2b7dbb7fed8cd9393) ) // No labels on the flash roms
ROM_REGION( 0x40000, "oki", 0 ) /* Samples */
ROM_LOAD( "at27c020.su10", 0x00000, 0x40000, CRC(c43efec2) SHA1(4ef328d8703b81328de09ecc4328763aba06e883) ) /* AT27C020 mask rom with no label */
ROM_REGION( 0x40000, "oki", 0 ) // Samples
ROM_LOAD( "at27c020.su10", 0x00000, 0x40000, CRC(c43efec2) SHA1(4ef328d8703b81328de09ecc4328763aba06e883) ) // AT27C020 mask rom with no label
ROM_END
@ -1708,10 +1708,10 @@ JU07 and FU30 through FU32 unpopulated
*/
ROM_START( jumppop )
ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 code */
ROM_REGION( 0x80000, "maincpu", 0 ) // 68000 code
ROM_LOAD16_WORD_SWAP ("68k_prg.bin", 0x00000, 0x80000, CRC(123536b9) SHA1(3597dec81e98d7bdf4ea9053983e62f127defcb7) )
ROM_REGION( 0x80000, "audiocpu", 0 ) /* Z80 code */
ROM_REGION( 0x80000, "audiocpu", 0 ) // Z80 code
ROM_LOAD( "z80_prg.bin", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) )
ROM_REGION( 0x200000, "spr", 0 ) // 2nd half of these is just unused garbage data from the 'bgs' region
@ -1722,17 +1722,17 @@ ROM_START( jumppop )
ROM_LOAD32_WORD( "bg1.bin", 0x000000, 0x100000, CRC(5b37f943) SHA1(fe73b839f29d4c32823418711b22f85a5f583ec2) )
ROM_LOAD32_WORD( "bg0.bin", 0x000002, 0x100000, CRC(35a1363d) SHA1(66c550b0bdea7c8b079f186f5e044f731d31bc58) )
ROM_REGION( 0x80000, "oki", 0 ) /* Oki samples */
ROM_REGION( 0x80000, "oki", 0 ) // Oki samples
ROM_LOAD( "samples.bin", 0x00000, 0x40000, CRC(066f30a7) SHA1(6bdd0210001c597819f7132ffa1dc1b1d55b4e0a) )
ROM_END
/* This set displays an a '(c)2001 Emag Soft' copyright and doesn't have the ESD copyright embedded into the 'bgs' tiles */
ROM_START( jumppope ) /* Running on an original ESD 11-09-98 PCB with original ESD labeled ROMs */
ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 code */
// This set displays an a '(c)2001 Emag Soft' copyright and doesn't have the ESD copyright embedded into the 'bgs' tiles
ROM_START( jumppope ) // Running on an original ESD 11-09-98 PCB with original ESD labeled ROMs
ROM_REGION( 0x80000, "maincpu", 0 ) // 68000 code
ROM_LOAD16_BYTE( "esd2.cu02", 0x000000, 0x040000, CRC(302dd093) SHA1(fd52dc2342652fd6e6f24942d00a0c2bff83e4ed) ) // 68k_prg.bin [odd] 99.980164%
ROM_LOAD16_BYTE( "esd1.cu03", 0x000001, 0x040000, CRC(883392ba) SHA1(7241fd35b0431bbb6e83e4f0eb9026bafbcf1d7f) ) // 68k_prg.bin [even] 99.979782%
ROM_REGION( 0x80000, "audiocpu", 0 ) /* Z80 code */
ROM_REGION( 0x80000, "audiocpu", 0 ) // Z80 code
ROM_LOAD( "at27c020.su06", 0x00000, 0x40000, CRC(a88d4424) SHA1(eefb5ac79632931a36f360713c482cd079891f91) ) // z80_prg.bin IDENTICAL
ROM_REGION( 0x200000, "spr", 0 )
@ -1747,16 +1747,16 @@ ROM_START( jumppope ) /* Running on an original ESD 11-09-98 PCB with original E
ROM_LOAD32_BYTE( "esd4.fu26", 0x000001, 0x080000, CRC(97b409be) SHA1(3a4344ca8ffb0aee046e3c0bab2d7c3f7c0eb204) ) // [odd 1/2] 99.763107%, [odd 2/2] 99.267578%
ROM_LOAD32_BYTE( "esd3.fu27", 0x000003, 0x080000, CRC(3358a693) SHA1(2e368e5c26755bbe6d04838015fd4ca5e43ccfb5) ) // [odd 1/2] 99.784470%, [odd 2/2] 99.267578%
ROM_REGION( 0x80000, "oki", 0 ) /* Oki samples */
ROM_REGION( 0x80000, "oki", 0 ) // Oki samples
ROM_LOAD( "at27c020.su10", 0x00000, 0x40000, CRC(066f30a7) SHA1(6bdd0210001c597819f7132ffa1dc1b1d55b4e0a) ) // samples.bin IDENTICAL
ROM_END
/* Fantasy Story - not an ESD PCB */
// Fantasy Story - not an ESD PCB
ROM_START( fantstry )
ROM_REGION( 0x80000, "maincpu", 0 )
ROM_LOAD16_WORD_SWAP( "system_rom", 0x00000, 0x80000, CRC(3d7f19ce) SHA1(eb163489adda25a0ece1a21292bfe5818b52cddc) )
ROM_REGION( 0x10000, "audiocpu", 0 ) /* PIC16F84A-04/P Code */
ROM_REGION( 0x10000, "audiocpu", 0 ) // PIC16F84A-04/P Code
ROM_LOAD( "pic16f84a", 0x00000, 0x10000, NO_DUMP )
ROM_REGION( 0x040000, "okisfx", 0 )
@ -1804,7 +1804,7 @@ ROM_END
***************************************************************************/
/* ESD 11-09-98 */
// ESD 11-09-98
GAME( 1999, multchmp, 0, esd16, multchmp, esd16_state, empty_init, ROT0, "ESD", "Multi Champ (World, ver. 2.5)", MACHINE_SUPPORTS_SAVE )
GAME( 1998, multchmpk, multchmp, esd16, multchmp, esd16_state, empty_init, ROT0, "ESD", "Multi Champ (Korea, older)", MACHINE_SUPPORTS_SAVE )
GAME( 1998, multchmpa, multchmp, esd16, multchmp, esd16_state, empty_init, ROT0, "ESD", "Multi Champ (World, older)", MACHINE_SUPPORTS_SAVE )
@ -1812,20 +1812,20 @@ GAME( 1998, multchmpa, multchmp, esd16, multchmp, esd16_state, empty_init, R
GAME( 2001, jumppop, 0, jumppop, jumppop, esd16_state, empty_init, ROT0, "ESD", "Jumping Pop (set 1)", MACHINE_SUPPORTS_SAVE )
GAME( 2001, jumppope, jumppop, jumppop, jumppop, esd16_state, empty_init, ROT0, "Emag Soft", "Jumping Pop (set 2)", MACHINE_SUPPORTS_SAVE )
/* ESD 05-28-99 */
// ESD 05-28-99
GAME( 1999, hedpanico, hedpanic, hedpanio, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Head Panic (ver. 0615, 15/06/1999)", MACHINE_SUPPORTS_SAVE )
/* ESD 06-10-1999 */
// ESD 06-10-1999
GAME( 1999, hedpanica, hedpanic, hedpanic, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Head Panic (ver. 0702, 02/07/1999)", MACHINE_SUPPORTS_SAVE )
/* ESD 08-26-1999 */
// ESD 08-26-1999
GAME( 2000, mchampdx, 0, mchampdx, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Multi Champ Deluxe (ver. 0106, 06/01/2000)", MACHINE_SUPPORTS_SAVE )
GAME( 1999, mchampdxa, mchampdx, mchampdx, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Multi Champ Deluxe (ver. 1126, 26/11/1999)", MACHINE_SUPPORTS_SAVE )
GAME( 1999, mchampdxb, mchampdx, mchampdx, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Multi Champ Deluxe (ver. 1114, 14/11/1999)", MACHINE_SUPPORTS_SAVE )
GAME( 2000, hedpanic, 0, hedpanic, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Head Panic (ver. 0117, 17/01/2000)", MACHINE_SUPPORTS_SAVE )
GAME( 2000, hedpanicf, hedpanic, hedpanic, hedpanic, esd16_state, empty_init, ROT0, "ESD / Fuuki", "Head Panic (ver. 0315, 15/03/2000)", MACHINE_SUPPORTS_SAVE )
/* ESD - This PCB looks identical to the ESD 08-26-1999 PCB */
// ESD - This PCB looks identical to the ESD 08-26-1999 PCB
GAME( 2000, deluxe5, 0, tangtang, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Deluxe 5 (ver. 0107, 07/01/2000, set 1)", MACHINE_SUPPORTS_SAVE ) // all 4 sets report the same version number?
GAME( 2000, deluxe5a, deluxe5, tangtang, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Deluxe 5 (ver. 0107, 07/01/2000, set 2)", MACHINE_SUPPORTS_SAVE )
GAME( 2000, deluxe5b, deluxe5, tangtang, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Deluxe 5 (ver. 0107, 07/01/2000, set 3)", MACHINE_SUPPORTS_SAVE )
@ -1834,6 +1834,6 @@ GAME( 2000, deluxe4u, deluxe5, tangtang, hedpanic, esd16_state, empty_init, R
GAME( 2000, tangtang, 0, tangtang, hedpanic, esd16_state, empty_init, ROT0, "ESD", "Tang Tang (ver. 0526, 26/05/2000)", MACHINE_SUPPORTS_SAVE )
GAME( 2001, swatpolc, 0, hedpanic, swatpolc, esd16_state, empty_init, ROT0, "ESD", "SWAT Police", MACHINE_SUPPORTS_SAVE )
/* Z Soft PCB, uses PIC instead of Z80 */
// Z Soft PCB, uses PIC instead of Z80
GAME( 2002, fantstry, 0, fantstry, fantstry, esd16_state, empty_init, ROT0, "Z Soft", "Fantasy Story (set 1)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) // playable, just no sound
GAME( 2002, fantstrya, fantstry, fantstrya, fantstry, esd16_state, empty_init, ROT0, "Z Soft", "Fantasy Story (set 2)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) // same

View file

@ -26,9 +26,9 @@ public:
m_vram(*this, "vram_%u", 0U),
m_scroll(*this, "scroll_%u", 0U),
m_spriteram(*this, "spriteram"),
m_head_layersize(*this, "head_layersize"),
m_headpanic_platform_x(*this, "platform_x"),
m_headpanic_platform_y(*this, "platform_y"),
m_layersize(*this, "head_layersize"),
m_platform_x(*this, "platform_x"),
m_platform_y(*this, "platform_y"),
m_audiobank(*this, "audiobank"),
m_io_eepromout(*this, "EEPROMOUT"),
m_maincpu(*this, "maincpu"),
@ -55,23 +55,23 @@ protected:
virtual void video_start() override ATTR_COLD;
private:
/* memory pointers */
// memory pointers
required_shared_ptr_array<u16, 2> m_vram;
required_shared_ptr_array<u16, 2> m_scroll;
required_shared_ptr<u16> m_spriteram;
required_shared_ptr<u16> m_head_layersize;
required_shared_ptr<u16> m_headpanic_platform_x;
required_shared_ptr<u16> m_headpanic_platform_y;
required_shared_ptr<u16> m_layersize;
required_shared_ptr<u16> m_platform_x;
required_shared_ptr<u16> m_platform_y;
optional_memory_bank m_audiobank;
optional_ioport m_io_eepromout;
/* video-related */
// video-related
tilemap_t *m_tilemap_16x16[2]{};
tilemap_t *m_tilemap[2]{};
int m_tilemap_color[2]{};
u32 m_tilemap_color[2]{};
/* devices */
// devices
required_device<cpu_device> m_maincpu;
optional_device<cpu_device> m_audiocpu;
required_device<gfxdecode_device> m_gfxdecode;
@ -80,7 +80,7 @@ private:
optional_device<generic_latch_8_device> m_soundlatch;
void sound_command_w(u8 data);
void hedpanic_platform_w(u16 data);
void platform_w(u16 data);
u8 eeprom_r();
void eeprom_w(u8 data);
void sound_rombank_w(u8 data);

View file

@ -111,10 +111,10 @@ void esd16_state::video_start()
m_tilemap[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(esd16_state::get_tile_info<0>)), TILEMAP_SCAN_ROWS, 8, 8, 0x80, 0x40);
m_tilemap[1] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(esd16_state::get_tile_info<1>)), TILEMAP_SCAN_ROWS, 8, 8, 0x80, 0x40);
/* swatpolc changes tilemap 0 to 16x16 at various times */
// swatpolc changes tilemap 0 to 16x16 at various times
m_tilemap_16x16[0] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(esd16_state::get_tile_info_16x16<0>)), TILEMAP_SCAN_ROWS, 16,16, 0x40, 0x40);
/* hedpanic changes tilemap 1 to 16x16 at various times */
// hedpanic changes tilemap 1 to 16x16 at various times
m_tilemap_16x16[1] = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(*this, FUNC(esd16_state::get_tile_info_16x16<1>)), TILEMAP_SCAN_ROWS, 16,16, 0x40, 0x40);
m_tilemap[0]->set_scrolldx(-0x60 + 2, -0x60);
@ -154,7 +154,7 @@ if (machine().input().code_pressed(KEYCODE_Z))
if (layers_ctrl & 1)
{
if (m_head_layersize[0] & 0x0001)
if (m_layersize[0] & 0x0001)
{
m_tilemap_16x16[0]->set_scrollx(0, m_scroll[0][0]);
m_tilemap_16x16[0]->set_scrolly(0, m_scroll[0][1]);
@ -175,7 +175,7 @@ if (machine().input().code_pressed(KEYCODE_Z))
if (layers_ctrl & 2)
{
if (m_head_layersize[0] & 0x0002)
if (m_layersize[0] & 0x0002)
{
m_tilemap_16x16[1]->set_scrollx(0, m_scroll[1][0]);
m_tilemap_16x16[1]->set_scrolly(0, m_scroll[1][1]);