Skip to content

Commit

Permalink
New clones marked not working
Browse files Browse the repository at this point in the history
-----------------------------
Fruit Bonus 2010 (v. 2.0.1.0) [Ioannis Bampoulas]
Tengai (bootleg) [Taksangs]

- namco/namcos12.cpp: verified that contents of the TKK1-A CD for truckk are the same of the TKK2-A CD [Hammy]
  • Loading branch information
Osso13 committed Feb 7, 2025
1 parent 3785506 commit 9083885
Show file tree
Hide file tree
Showing 6 changed files with 168 additions and 40 deletions.
67 changes: 50 additions & 17 deletions src/mame/igs/goldstar.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18461,22 +18461,54 @@ ROM_END

ROM_START( fb2010 )
ROM_REGION( 0x20000, "maincpu", 0 )
ROM_LOAD( "fb2013r.bin", 0x00000, 0x1000, CRC(9cc75315) SHA1(f77fbce1037dbf38ddaa4ce79266d62e5cc7989e) )
ROM_CONTINUE(0x4000, 0x1000)
ROM_CONTINUE(0x3000, 0x1000)
ROM_CONTINUE(0x7000, 0x1000)
ROM_CONTINUE(0x1000, 0x1000)
ROM_CONTINUE(0x6000, 0x1000)
ROM_CONTINUE(0x2000, 0x1000)
ROM_CONTINUE(0x5000, 0x1000)
ROM_CONTINUE(0x8000, 0x1000)
ROM_CONTINUE(0x9000, 0x1000)
ROM_CONTINUE(0xa000, 0x1000)
ROM_CONTINUE(0xb000, 0x1000)
ROM_CONTINUE(0xc000, 0x1000)
ROM_CONTINUE(0xd000, 0x1000)
ROM_CONTINUE(0xe000, 0x1000)
ROM_CONTINUE(0xf000, 0x1000)
ROM_LOAD( "fb2013r.bin", 0x0000, 0x1000, CRC(9cc75315) SHA1(f77fbce1037dbf38ddaa4ce79266d62e5cc7989e) )
ROM_CONTINUE( 0x4000, 0x1000 )
ROM_CONTINUE( 0x3000, 0x1000 )
ROM_CONTINUE( 0x7000, 0x1000 )
ROM_CONTINUE( 0x1000, 0x1000 )
ROM_CONTINUE( 0x6000, 0x1000 )
ROM_CONTINUE( 0x2000, 0x1000 )
ROM_CONTINUE( 0x5000, 0x1000 )
ROM_CONTINUE( 0x8000, 0x8000 )

ROM_REGION( 0x20000, "graphics", 0 )
ROM_LOAD( "high.bin", 0x00000, 0x10000, CRC(5950b5fb) SHA1(64441fdbd768e7765e20a33acd4002e69b868f09) )
ROM_LOAD( "low.bin", 0x10000, 0x10000, CRC(98b0454f) SHA1(91f7f4119a0cd591e68c87a9e716a8cd5233a4aa) )

ROM_REGION( 0x18000, "gfx1", 0 )
ROM_COPY( "graphics", 0x18000, 0x00000, 0x4000 ) // 1
ROM_COPY( "graphics", 0x08000, 0x08000, 0x4000 ) // 1
ROM_COPY( "graphics", 0x04000, 0x10000, 0x4000 ) // 1
ROM_COPY( "graphics", 0x1c000, 0x04000, 0x4000 ) // 2
ROM_COPY( "graphics", 0x0c000, 0x0c000, 0x4000 ) // 2
ROM_COPY( "graphics", 0x14000, 0x14000, 0x4000 ) // 2

ROM_REGION( 0x8000, "gfx2", 0 )
ROM_COPY( "graphics", 0x02000, 0x00000, 0x2000 )
ROM_COPY( "graphics", 0x12000, 0x02000, 0x2000 )
ROM_COPY( "graphics", 0x00000, 0x04000, 0x2000 )
ROM_COPY( "graphics", 0x10000, 0x06000, 0x2000 )

ROM_REGION( 0x200, "proms", 0 ) // palette (taken from nfb96se, not verified)
ROM_LOAD( "chu19.bin", 0x0000, 0x0100, BAD_DUMP CRC(fafc43ad) SHA1(e94592b83f19e5f9b6205473c1e06b36405ebfc2) )
ROM_LOAD( "chu20.bin", 0x0100, 0x0100, BAD_DUMP CRC(05224f73) SHA1(051c3ee9c63f5436e4f6c355fc308f37910a88ef) )

ROM_REGION( 0x800, "nvram", 0 )
ROM_LOAD( "fb2010.nv", 0x000, 0x800, CRC(a8fc7d38) SHA1(06848e50be1968e89ba92c29661e8ee9c479d29f) ) // default NVRAM. 0x2da must be 0x53 to pass start up check
ROM_END


ROM_START( fb2010a )
ROM_REGION( 0x20000, "maincpu", 0 )
ROM_LOAD( "27c512.u12", 0x0000, 0x1000, CRC(e5eb181d) SHA1(96288a31005d06f83d04c4410befe6dcf0b63cf5) )
ROM_CONTINUE( 0x4000, 0x1000 )
ROM_CONTINUE( 0x3000, 0x1000 )
ROM_CONTINUE( 0x7000, 0x1000 )
ROM_CONTINUE( 0x1000, 0x1000 )
ROM_CONTINUE( 0x6000, 0x1000 )
ROM_CONTINUE( 0x2000, 0x1000 )
ROM_CONTINUE( 0x5000, 0x1000 )
ROM_CONTINUE( 0x8000, 0x8000 )

ROM_REGION( 0x20000, "graphics", 0 )
ROM_LOAD( "high.bin", 0x00000, 0x10000, CRC(5950b5fb) SHA1(64441fdbd768e7765e20a33acd4002e69b868f09) )
Expand All @@ -18501,7 +18533,7 @@ ROM_START( fb2010 )
ROM_LOAD( "chu20.bin", 0x0100, 0x0100, BAD_DUMP CRC(05224f73) SHA1(051c3ee9c63f5436e4f6c355fc308f37910a88ef) )

ROM_REGION( 0x800, "nvram", 0 )
ROM_LOAD( "fb2010.nv", 0x000, 0x800, CRC(a8fc7d38) SHA1(06848e50be1968e89ba92c29661e8ee9c479d29f) ) // default NVRAM. 0xd2a must be 0x53 to pass start up check
ROM_LOAD( "fb2010a.nv", 0x000, 0x800, CRC(f5a7ab38) SHA1(11f984c79fecc5ff5a61e4dc86cb442627e7d7a1) ) // default NVRAM
ROM_END


Expand Down Expand Up @@ -23576,6 +23608,7 @@ GAMEL( 1996, nc96l, nc96, amcoe2, nfb96, cmaster_state, init_nfb
GAMEL( 2000, nc96txt, nc96, amcoe2, nfb96tx, cmaster_state, init_nfb96_c2, ROT0, "Amcoe", "New Cherry '96 Special Edition (v1.32 Texas XT, C2 PCB)", 0, layout_nfb96tx ) // ver. tc1.32axt C2 Sub-PCB

GAME( 2009, fb2010, 0, amcoe2, fb2010, cmaster_state, init_fb2010, ROT0, "Amcoe", "Fruit Bonus 2010 (v. 2.0.1.3)", 0 )
GAME( 2009, fb2010a, fb2010, amcoe2, fb2010, cmaster_state, init_fb2010, ROT0, "Amcoe", "Fruit Bonus 2010 (v. 2.0.1.0)", 0 )

GAMEL( 1996, roypok96, 0, amcoe2, roypok96, cmaster_state, init_rp35, ROT0, "Amcoe", "Royal Poker '96 (set 1, v97-3.5)", 0, layout_roypok96 )
GAMEL( 1996, roypok96a, roypok96, amcoe2, roypok96a, cmaster_state, init_rp36, ROT0, "Amcoe", "Royal Poker '96 (set 2, v98-3.6)", 0, layout_roypok96 )
Expand Down
2 changes: 2 additions & 0 deletions src/mame/mame.lst
Original file line number Diff line number Diff line change
Expand Up @@ -20270,6 +20270,7 @@ eldoraddob // (c) 1991 Dyna Electronics
eldoraddoc // (c) 1991 Dyna Electronics
f16s8l //
fb2010 // (c) 2009 Amcoe
fb2010a // (c) 2009 Amcoe
feverch // (c) 1986 Wing Co. Ltd
fevercha // (c) 1986 Wing Co. Ltd
feverchtw // (c) 1986 Wing Co. Ltd
Expand Down Expand Up @@ -38964,6 +38965,7 @@ samuraia // (c) 1993 (World)
sngkace // (c) 1993 (Japan)
sngkacea // (c) 1993 (Japan)
tengai // (c) 1996 (World)
tengaibl // bootleg
tengaij // (c) 1996 (Japan)

@source:psikyo/psikyo4.cpp
Expand Down
2 changes: 1 addition & 1 deletion src/mame/namco/namcos12.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3557,7 +3557,7 @@ ROM_START( truckk )
ROM_LOAD( "tkk1prg0.ic7", 0x0000000, 0x020000, CRC(11fd9c31) SHA1(068b8364ec0eb1e88f9f85f40b8b322876f6f3e2) )

DISK_REGION( "cdxa_pcb:ata:0:cdrom" )
DISK_IMAGE_READONLY( "tkk2-a", 0, SHA1(6b7c3686b22a508c44f67295b188504b757dd482) )
DISK_IMAGE_READONLY( "tkk2-a", 0, SHA1(6b7c3686b22a508c44f67295b188504b757dd482) ) // TKK1-A CD is confirmed to have the same content as the TKK2-A CD
ROM_END

ROM_START( ujlnow )
Expand Down
120 changes: 106 additions & 14 deletions src/mame/psikyo/psikyo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -270,20 +270,22 @@ void psikyo_state::sound_bankswitch_w(u8 data)
m_audiobank->set_entry((data >> Shift) & 0x03);
}

template <uint8_t Which>
void psikyo_state::s1945bl_okibank_w(u8 data)
{
// not at all sure about this, it seems to write 0 too often
if (data < 5)
m_okibank->set_entry(data);
m_okibank[Which]->set_entry(data);
}

template <uint8_t Which>
void psikyo_state::s1945bl_oki_map(address_map &map)
{
map(0x00000, 0x2ffff).rom();
map(0x30000, 0x3ffff).bankr("okibank");
map(0x30000, 0x3ffff).bankr(m_okibank[Which]);
}

void psikyo_state::psikyo_bootleg_map(address_map &map)
void psikyo_state::s1945bl_bootleg_map(address_map &map)
{
map(0x000000, 0x0fffff).rom(); // ROM (not all used)
map(0x200000, 0x200fff).ram().share("boot_spritebuf"); // RAM (it copies the spritelist here, the HW probably doesn't have automatic buffering like the originals?
Expand All @@ -295,13 +297,37 @@ void psikyo_state::psikyo_bootleg_map(address_map &map)
map(0x804000, 0x807fff).ram().share("vregs"); // RAM + Vregs
map(0xc00000, 0xc0000b).r(FUNC(psikyo_state::gunbird_input_r)); // input ports

map(0xc00018, 0xc00018).rw(m_oki, FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0xc00019, 0xc00019).w(FUNC(psikyo_state::s1945bl_okibank_w));
map(0xc00018, 0xc00018).rw("oki1", FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0xc00019, 0xc00019).w(FUNC(psikyo_state::s1945bl_okibank_w<0>));

map(0xfe0000, 0xffffff).ram(); // RAM

}

// TODO: different video regs / sprite RAM
void psikyo_state::tengaibl_bootleg_map(address_map &map)
{
map(0x000000, 0x0fffff).rom();
map(0x200000, 0x200fff).ram().share("boot_spritebuf");

map(0x400000, 0x401fff).ram().share("spriteram");
map(0x604000, 0x605fff).ram().w(m_palette, FUNC(palette_device::write32)).share("palette");
map(0x800000, 0x801fff).rw(FUNC(psikyo_state::vram_r<0>), FUNC(psikyo_state::vram_w<0>));
map(0x802000, 0x803fff).rw(FUNC(psikyo_state::vram_r<1>), FUNC(psikyo_state::vram_w<1>));
map(0x804000, 0x807fff).ram().share("vregs");
map(0xc00000, 0xc0000b).r(FUNC(psikyo_state::gunbird_input_r));

map(0xc00014, 0xc00014).rw("oki1", FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0xc00015, 0xc00015).w(FUNC(psikyo_state::s1945bl_okibank_w<0>));

map(0xc00018, 0xc00018).rw("oki2", FUNC(okim6295_device::read), FUNC(okim6295_device::write));
map(0xc00019, 0xc00019).w(FUNC(psikyo_state::s1945bl_okibank_w<1>));

map(0xfe0000, 0xffffff).ram();

}


/***************************************************************************
Sengoku Ace / Samurai Aces
***************************************************************************/
Expand Down Expand Up @@ -982,6 +1008,14 @@ static INPUT_PORTS_START( tengaij )
PORT_CONFSETTING( 0x0000000e, DEF_STR( World ) )
INPUT_PORTS_END

static INPUT_PORTS_START( tengaibl )
PORT_INCLUDE( tengai )

PORT_MODIFY("P1_P2")
PORT_BIT( 0x00000004, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x00000080, IP_ACTIVE_HIGH, IPT_UNKNOWN )
INPUT_PORTS_END


/***************************************************************************
Expand Down Expand Up @@ -1113,7 +1147,7 @@ void psikyo_state::s1945bl(machine_config &config) /* Bootleg hardware based on
{
/* basic machine hardware */
M68EC020(config, m_maincpu, 16000000);
m_maincpu->set_addrmap(AS_PROGRAM, &psikyo_state::psikyo_bootleg_map);
m_maincpu->set_addrmap(AS_PROGRAM, &psikyo_state::s1945bl_bootleg_map);
m_maincpu->set_vblank_int("screen", FUNC(psikyo_state::irq1_line_hold));

/* video hardware */
Expand All @@ -1123,8 +1157,8 @@ void psikyo_state::s1945bl(machine_config &config) /* Bootleg hardware based on
m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500));
m_screen->set_size(320, 256);
m_screen->set_visarea(0, 320-1, 0, 256-32-1);
m_screen->set_screen_update(FUNC(psikyo_state::screen_update_bootleg));
m_screen->screen_vblank().set(FUNC(psikyo_state::screen_vblank_bootleg));
m_screen->set_screen_update(FUNC(psikyo_state::screen_update));
m_screen->screen_vblank().set(FUNC(psikyo_state::screen_vblank));

GFXDECODE(config, m_gfxdecode, m_palette, gfx_psikyo);
PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 0x1000);
Expand All @@ -1135,9 +1169,25 @@ void psikyo_state::s1945bl(machine_config &config) /* Bootleg hardware based on
/* sound hardware */
SPEAKER(config, "mono").front_center();

OKIM6295(config, m_oki, XTAL(16'000'000)/16, okim6295_device::PIN7_LOW); // ?? clock
m_oki->add_route(ALL_OUTPUTS, "mono", 1.0);
m_oki->set_addrmap(0, &psikyo_state::s1945bl_oki_map);
okim6295_device &oki1(OKIM6295(config, "oki1", XTAL(16'000'000)/16, okim6295_device::PIN7_LOW)); // ?? clock
oki1.add_route(ALL_OUTPUTS, "mono", 1.0);
oki1.set_addrmap(0, &psikyo_state::s1945bl_oki_map<0>);
}

void psikyo_state::tengaibl(machine_config &config)
{
s1945bl(config);

m_maincpu->set_clock(28.636363_MHz_XTAL / 2 ); // divider not verified
m_maincpu->set_addrmap(AS_PROGRAM, &psikyo_state::tengaibl_bootleg_map);

okim6295_device &oki1(OKIM6295(config.replace(), "oki1", 1'000'000, okim6295_device::PIN7_LOW)); // clock and pin 7 not verified
oki1.add_route(ALL_OUTPUTS, "mono", 1.0);
oki1.set_addrmap(0, &psikyo_state::s1945bl_oki_map<0>);

okim6295_device &oki2(OKIM6295(config, "oki2", 1'000'000, okim6295_device::PIN7_LOW)); // clock and pin 7 not verified
oki2.add_route(ALL_OUTPUTS, "mono", 1.0);
oki2.set_addrmap(0, &psikyo_state::s1945bl_oki_map<1>);
}


Expand Down Expand Up @@ -1530,7 +1580,7 @@ ROM_START( s1945bl ) /* closely based on s1945nj set, unsurprising because it's
ROM_REGION( 0x200000, "gfx2", 0 ) /* Layer 0 + 1 */
ROM_LOAD16_WORD_SWAP( "rv27c1600.m1", 0x000000, 0x200000, CRC(aaf83e23) SHA1(1c75d09ff42c0c215f8c66c699ca75688c95a05e) )

ROM_REGION( 0x100000, "oki", 0 ) /* OKI Samples */
ROM_REGION( 0x100000, "oki1", 0 ) /* OKI Samples */
ROM_LOAD( "rv27c040.m6", 0x000000, 0x080000, CRC(c22e5b65) SHA1(d807bd7c136d6b51f54258b44ebf3eecbd5b35fa) )

ROM_REGION16_LE( 0x040000, "spritelut", 0 ) /* */
Expand Down Expand Up @@ -1820,6 +1870,36 @@ ROM_START( tengaij )
ROM_LOAD( "u1.bin", 0x000000, 0x040000, CRC(681d7d55) SHA1(b0b28471440d747adbc4d22d1918f89f6ede1615) )
ROM_END

ROM_START( tengaibl ) // SK000701 PCB. Has 2 AD-65 (M6295 comp.) instead of YM. XTALs are 28'636'360 and 19'660'800
ROM_REGION( 0x100000, "maincpu", 0 )
ROM_LOAD32_WORD_SWAP( "4_sk000701-upd27c4096.bin", 0x00000, 0x80000, CRC(1519c1c4) SHA1(7e8ff112c8d943d55797e32fe02bbce4ebd5c7b5) )
ROM_LOAD32_WORD_SWAP( "5_sk000701-upd27c4096.bin", 0x00002, 0x80000, CRC(4f638dca) SHA1(cc15785a2acf6e45ca3ce13367d5d94f9a066a03) )

// GFX ROMs are 5x MX29F1610MC-12. They are soldered and weren't dumped. Using the ones from the original for now.
ROM_REGION( 0x600000, "gfx1", 0 )
ROM_LOAD( "u20.bin", 0x000000, 0x200000, BAD_DUMP CRC(ed42ef73) SHA1(74693fcc83a2654ddb18fd513d528033863d6116) )
ROM_LOAD( "u22.bin", 0x200000, 0x200000, BAD_DUMP CRC(8d21caee) SHA1(2a68af8b2be2158dcb152c434e91a75871478d41) )
ROM_LOAD( "u21.bin", 0x400000, 0x200000, BAD_DUMP CRC(efe34eed) SHA1(7891495b443a5acc7b2f17fe694584f6cb0afacc) )

ROM_REGION( 0x400000, "gfx2", 0 )
ROM_LOAD( "u34.bin", 0x000000, 0x400000, BAD_DUMP CRC(2a2e2eeb) SHA1(f1d99353c0affc5c908985e6f2a5724e5223cccc) )

ROM_REGION( 0x80000, "oki1", 0 )
ROM_LOAD( "1_sk000701-mx27c4000.bin", 0x00000, 0x80000, CRC(769f4c92) SHA1(a6ef5b180f691655a64f6121b1d00344c36a0ced) )

ROM_REGION( 0x80000, "oki2", 0 )
ROM_LOAD( "2_sk000701-mx27c4000.bin", 0x00000, 0x80000, CRC(f06f0a00) SHA1(2f8e216ef710f501d7a0a962ce82cca87f90611d) )

ROM_REGION16_LE( 0x40000, "spritelut", 0 )
ROM_LOAD( "3_sk000701-tms27c240.bin", 0x00000, 0x40000, CRC(cf44d2ba) SHA1(6e48b540c70050a7385d5a3fb412fd25aad923bb) ) // 1ST AND 2ND HALF IDENTICAL, otherwise identical to the original
ROM_IGNORE( 0x40000 )

ROM_REGION( 0x600, "plds", ROMREGION_ERASE00 )
ROM_LOAD( "gal20v8b_1", 0x000, 0x157, NO_DUMP )
ROM_LOAD( "gal20v8b_2", 0x200, 0x157, NO_DUMP )
ROM_LOAD( "gal16v8d", 0x400, 0x117, NO_DUMP )
ROM_END

/***************************************************************************
Expand Down Expand Up @@ -1946,8 +2026,19 @@ void psikyo_state::init_s1945bl()
{
m_ka302c_banking = true;

m_okibank->configure_entries(0, 5, memregion("oki")->base() + 0x30000, 0x10000);
m_okibank->set_entry(0);
m_okibank[0]->configure_entries(0, 5, memregion("oki1")->base() + 0x30000, 0x10000);
m_okibank[0]->set_entry(0);
}

void psikyo_state::init_tengaibl()
{
m_ka302c_banking = true;

m_okibank[0]->configure_entries(0, 5, memregion("oki1")->base() + 0x30000, 0x10000);
m_okibank[0]->set_entry(0);

m_okibank[1]->configure_entries(0, 5, memregion("oki2")->base() + 0x30000, 0x10000);
m_okibank[1]->set_entry(0);
}


Expand Down Expand Up @@ -1980,3 +2071,4 @@ GAME( 1995, s1945bl, s1945, s1945bl, s1945bl, psikyo_state, init_s1945bl

GAME( 1996, tengai, 0, s1945, tengai, psikyo_state, init_tengai, ROT0, "Psikyo", "Tengai (World)", MACHINE_SUPPORTS_SAVE )
GAME( 1996, tengaij, tengai, s1945, tengaij, psikyo_state, init_tengai, ROT0, "Psikyo", "Sengoku Blade: Sengoku Ace Episode II (Japan) / Tengai (World)", MACHINE_SUPPORTS_SAVE ) // Region dip - 0x0f=Japan, anything else=World
GAME( 1996, tengaibl, tengai, tengaibl, tengaibl, psikyo_state, init_tengaibl, ROT0, "Psikyo", "Tengai (bootleg)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE )
15 changes: 8 additions & 7 deletions src/mame/psikyo/psikyo.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,12 @@ class psikyo_state : public driver_device
, m_bootleg_spritebuffer(*this, "boot_spritebuf")
, m_spritelut(*this, "spritelut")
, m_audiobank(*this, "audiobank")
, m_okibank(*this, "okibank")
, m_okibank(*this, "okibank%u", 0U)
, m_in_dsw(*this, "DSW")
, m_in_p1_p2(*this, "P1_P2")
, m_in_coin(*this, "COIN")
, m_maincpu(*this, "maincpu")
, m_audiocpu(*this, "audiocpu")
, m_oki(*this, "oki")
, m_soundlatch(*this, "soundlatch")
, m_gfxdecode(*this, "gfxdecode")
, m_screen(*this, "screen")
Expand All @@ -52,13 +51,15 @@ class psikyo_state : public driver_device
void gunbird(machine_config &config);
void s1945(machine_config &config);
void s1945bl(machine_config &config);
void tengaibl(machine_config &config);

void init_s1945a();
void init_s1945j();
void init_sngkace();
void init_s1945();
void init_s1945bl();
void init_tengai();
void init_tengaibl();
void init_gunbird();

int z80_nmi_r();
Expand All @@ -72,7 +73,7 @@ class psikyo_state : public driver_device

required_region_ptr<u16> m_spritelut;
optional_memory_bank m_audiobank;
optional_memory_bank m_okibank;
optional_memory_bank_array<2> m_okibank;
optional_ioport m_in_dsw;
optional_ioport m_in_p1_p2;
optional_ioport m_in_coin;
Expand Down Expand Up @@ -122,7 +123,7 @@ class psikyo_state : public driver_device
u32 s1945_mcu_data_r();
uint8_t s1945_mcu_control_r();
u32 s1945_input_r(offs_t offset);
void s1945bl_okibank_w(u8 data);
template <uint8_t Which> void s1945bl_okibank_w(u8 data);
template<int Shift> void sound_bankswitch_w(u8 data);
template<int Layer> u16 vram_r(offs_t offset);
template<int Layer> void vram_w(offs_t offset, u16 data, u16 mem_mask);
Expand All @@ -146,7 +147,6 @@ class psikyo_state : public driver_device
/* devices */
required_device<cpu_device> m_maincpu;
optional_device<cpu_device> m_audiocpu;
optional_device<okim6295_device> m_oki;
optional_device<generic_latch_8_device> m_soundlatch;
required_device<gfxdecode_device> m_gfxdecode;
required_device<screen_device> m_screen;
Expand All @@ -156,15 +156,16 @@ class psikyo_state : public driver_device
void gunbird_map(address_map &map) ATTR_COLD;
void gunbird_sound_io_map(address_map &map) ATTR_COLD;
void gunbird_sound_map(address_map &map) ATTR_COLD;
void psikyo_bootleg_map(address_map &map) ATTR_COLD;
void psikyo_map(address_map &map) ATTR_COLD;
void s1945_map(address_map &map) ATTR_COLD;
void s1945_sound_io_map(address_map &map) ATTR_COLD;
void s1945bl_oki_map(address_map &map) ATTR_COLD;
void s1945bl_bootleg_map(address_map &map) ATTR_COLD;
template <uint8_t Which> void s1945bl_oki_map(address_map &map) ATTR_COLD;
void s1945n_map(address_map &map) ATTR_COLD;
void sngkace_map(address_map &map) ATTR_COLD;
void sngkace_sound_io_map(address_map &map) ATTR_COLD;
void sngkace_sound_map(address_map &map) ATTR_COLD;
void tengaibl_bootleg_map(address_map &map) ATTR_COLD;
};

#endif // MAME_PSIKYO_PSIKYO_H
Loading

0 comments on commit 9083885

Please sign in to comment.