aerofgt.cpp: cleaned up audiocpu rom loading, avoided some tag lookups, thus minor speed up (nw)

This commit is contained in:
Ivan Vangelista 2017-02-03 18:16:20 +01:00
parent 56c1b0227a
commit 02ebd24bcd
2 changed files with 26 additions and 39 deletions

View File

@ -93,7 +93,7 @@ WRITE8_MEMBER(aerofgt_state::pending_command_clear_w)
WRITE8_MEMBER(aerofgt_state::aerofgt_sh_bankswitch_w)
{
membank("bank1")->set_entry(data & 0x03);
m_soundbank->set_entry(data & 0x03);
}
WRITE16_MEMBER(aerofgt_state::pspikesb_oki_banking_w)
@ -112,9 +112,9 @@ WRITE16_MEMBER(aerofgt_state::aerfboo2_okim6295_banking_w)
WRITE8_MEMBER(aerofgt_state::aerfboot_okim6295_banking_w)
{
/*bit 2 (0x4) setted too?*/
/*bit 2 (0x4) set too?*/
if (data & 0x4)
membank("okibank")->set_entry(data & 0x3);
m_okibank->set_entry(data & 0x3);
}
WRITE8_MEMBER(aerofgt_state::karatblzbl_d7759_write_port_0_w)
@ -374,7 +374,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aerofgt_state )
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
static ADDRESS_MAP_START( turbofrc_sound_portmap, AS_IO, 8, aerofgt_state )
@ -1304,9 +1304,7 @@ MACHINE_START_MEMBER(aerofgt_state,common)
MACHINE_START_MEMBER(aerofgt_state,aerofgt)
{
uint8_t *rom = memregion("audiocpu")->base();
membank("bank1")->configure_entries(0, 4, &rom[0x10000], 0x8000);
m_soundbank->configure_entries(0, 4, memregion("audiocpu")->base(), 0x8000);
MACHINE_START_CALL_MEMBER(common);
}
@ -1320,7 +1318,7 @@ MACHINE_RESET_MEMBER(aerofgt_state,aerofgt)
{
MACHINE_RESET_CALL_MEMBER(common);
membank("bank1")->set_entry(0); /* needed by spinlbrk */
m_soundbank->set_entry(0); /* needed by spinlbrk */
}
static MACHINE_CONFIG_START( pspikes, aerofgt_state )
@ -1922,9 +1920,8 @@ ROM_START( pspikes )
ROM_REGION( 0x40000, "maincpu", 0 ) /* 68000 code */
ROM_LOAD16_WORD_SWAP( "pspikes2.bin", 0x00000, 0x40000, CRC(ec0c070e) SHA1(4ddcc184e835a2f9d15f01aaa03734fd75fe797e) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "19", 0x00000, 0x20000, CRC(7e8ed6e5) SHA1(eeb1a1e1989fad8fc1e741928422efaec0598868) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x080000, "gfx1", 0 )
ROM_LOAD( "g7h", 0x000000, 0x80000, CRC(74c23c3d) SHA1(c0ac57d1f05c42556f97154ce1a08f465948546b) )
@ -1947,9 +1944,8 @@ ROM_START( pspikesk )
ROM_REGION( 0x40000, "maincpu", 0 ) /* 68000 code */
ROM_LOAD16_WORD_SWAP( "20", 0x00000, 0x40000, CRC(75cdcee2) SHA1(272a08c46c1d0989f9fbb156e28e6a7ffa9c0a53) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "19", 0x00000, 0x20000, CRC(7e8ed6e5) SHA1(eeb1a1e1989fad8fc1e741928422efaec0598868) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x080000, "gfx1", 0 )
ROM_LOAD( "g7h", 0x000000, 0x80000, CRC(74c23c3d) SHA1(c0ac57d1f05c42556f97154ce1a08f465948546b) )
@ -1973,9 +1969,8 @@ ROM_START( pspikesu )
ROM_REGION( 0x40000, "maincpu", 0 ) /* 68000 code */
ROM_LOAD16_WORD_SWAP( "svolly91.73", 0x00000, 0x40000, CRC(bfbffcdb) SHA1(2bba99cb6d0cb2fbb3cd1242551dd7e2c6ebef50) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "19", 0x00000, 0x20000, CRC(7e8ed6e5) SHA1(eeb1a1e1989fad8fc1e741928422efaec0598868) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x080000, "gfx1", 0 )
ROM_LOAD( "g7h", 0x000000, 0x80000, CRC(74c23c3d) SHA1(c0ac57d1f05c42556f97154ce1a08f465948546b) )
@ -1995,9 +1990,8 @@ ROM_START( svolly91 )
ROM_REGION( 0x40000, "maincpu", 0 ) /* 68000 code */
ROM_LOAD16_WORD_SWAP( "u11.jpn", 0x00000, 0x40000, CRC(ea2e4c82) SHA1(f9cf9122499d9b1e54221fb8b6ef9c12004ca85e) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "19", 0x00000, 0x20000, CRC(7e8ed6e5) SHA1(eeb1a1e1989fad8fc1e741928422efaec0598868) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x080000, "gfx1", 0 )
ROM_LOAD( "g7h", 0x000000, 0x80000, CRC(74c23c3d) SHA1(c0ac57d1f05c42556f97154ce1a08f465948546b) )
@ -2374,9 +2368,8 @@ ROM_START( karatblz )
ROM_LOAD16_WORD_SWAP( "rom2v3", 0x00000, 0x40000, CRC(01f772e1) SHA1(f87f19a82d75839b5671f23ce14218d7b910eabc) )
ROM_LOAD16_WORD_SWAP( "1.u15", 0x40000, 0x40000, CRC(d16ee21b) SHA1(d454cdf22b72a537b9d7ae73deb8136a4f09da47) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "5.u92", 0x00000, 0x20000, CRC(97d67510) SHA1(1ffd419e3dec7de1099cd5819b0309f7dd0df80e) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x80000, "gfx1", 0 )
ROM_LOAD( "gha.u55", 0x00000, 0x80000, CRC(3e0cea91) SHA1(bab41715f106d364013b64649441d280bc6893cf) )
@ -2406,9 +2399,8 @@ ROM_START( karatblza )
ROM_LOAD16_WORD_SWAP( "v2.u14", 0x00000, 0x40000, CRC(7a78976e) SHA1(3b74b80765622b8488bdd0729ec98a2c7584cad5) )
ROM_LOAD16_WORD_SWAP( "v1.u15", 0x40000, 0x40000, CRC(47e410fe) SHA1(d26fc93f91ccf00856db2b7dfd0d905d87e99bd8) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "5.u92", 0x00000, 0x20000, CRC(97d67510) SHA1(1ffd419e3dec7de1099cd5819b0309f7dd0df80e) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x80000, "gfx1", 0 )
ROM_LOAD( "gha.u55", 0x00000, 0x80000, CRC(3e0cea91) SHA1(bab41715f106d364013b64649441d280bc6893cf) )
@ -2438,9 +2430,8 @@ ROM_START( karatblzu )
ROM_LOAD16_WORD_SWAP( "2.u14", 0x00000, 0x40000, CRC(202e6220) SHA1(2605511a0574cbc39fdf3d8ae27a0aa9b43345fb) )
ROM_LOAD16_WORD_SWAP( "1.u15", 0x40000, 0x40000, CRC(d16ee21b) SHA1(d454cdf22b72a537b9d7ae73deb8136a4f09da47) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "5.u92", 0x00000, 0x20000, CRC(97d67510) SHA1(1ffd419e3dec7de1099cd5819b0309f7dd0df80e) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x80000, "gfx1", 0 )
ROM_LOAD( "gha.u55", 0x00000, 0x80000, CRC(3e0cea91) SHA1(bab41715f106d364013b64649441d280bc6893cf) )
@ -2470,9 +2461,8 @@ ROM_START( karatblzj )
ROM_LOAD16_WORD_SWAP( "2tecmo.u14", 0x00000, 0x40000, CRC(57e52654) SHA1(15939d8f7c693b9248f3dd2b2ad5fbae2c19621f) )
ROM_LOAD16_WORD_SWAP( "1.u15", 0x40000, 0x40000, CRC(d16ee21b) SHA1(d454cdf22b72a537b9d7ae73deb8136a4f09da47) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "5.u92", 0x00000, 0x20000, CRC(97d67510) SHA1(1ffd419e3dec7de1099cd5819b0309f7dd0df80e) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x80000, "gfx1", 0 )
ROM_LOAD( "gha.u55", 0x00000, 0x80000, CRC(3e0cea91) SHA1(bab41715f106d364013b64649441d280bc6893cf) )
@ -2560,9 +2550,8 @@ ROM_START( turbofrc ) // World version with no copyright notice
ROM_LOAD16_WORD_SWAP( "4v1.subpcb.u1", 0x40000, 0x40000, CRC(6cd5312b) SHA1(57b109fe268fb963e981c91b6d288667a3c9a665) ) // 27c2048 - located on a OR-10 SUB BOARD - 4 stamped on chip with VideoSystem logo V
ROM_LOAD16_WORD_SWAP( "4v3.u14", 0x80000, 0x40000, CRC(63f50557) SHA1(f8dba8c9ba412c9a67457ec31a804c57593ab20b) ) // 27c2048 - 4 stamped on chip with VideoSystem logo V
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "6.u166", 0x00000, 0x20000, CRC(2ca14a65) SHA1(95f6e7b4fa7ca26872ff472d7e6fb75fd4f281d5) ) // 27c1001
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x0a0000, "gfx1", 0 )
ROM_LOAD( "lh534ggs.u94", 0x000000, 0x80000, CRC(baa53978) SHA1(7f103122dd0bf675226ccf309fba73f645e0c79b) ) // mask rom
@ -2595,9 +2584,8 @@ ROM_START( turbofrcu ) // US version: most notable thing in there is the points
ROM_LOAD16_WORD_SWAP( "8v1.subpcb.u1", 0x40000, 0x40000, CRC(cc324da6) SHA1(ed2eaff7351914e3ebaf925ddc01be9d44d89fa6) ) // 27c2048 - located on a OR-10 SUB BOARD - 8 stamped on chip with VideoSystem logo V
ROM_LOAD16_WORD_SWAP( "8v3.u14", 0x80000, 0x40000, CRC(c0a15480) SHA1(1ec99382e0a00a8167773b1d454a63cc5cd6199c) ) // 27c2048 - 8 stamped on chip with VideoSystem logo V
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "6.u166", 0x00000, 0x20000, CRC(2ca14a65) SHA1(95f6e7b4fa7ca26872ff472d7e6fb75fd4f281d5) ) // 27c1001
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x0a0000, "gfx1", 0 )
ROM_LOAD( "lh534ggs.u94", 0x000000, 0x80000, CRC(baa53978) SHA1(7f103122dd0bf675226ccf309fba73f645e0c79b) ) // mask rom
@ -2628,9 +2616,8 @@ ROM_START( aerofgt )
ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 code */
ROM_LOAD16_WORD_SWAP( "1.u4", 0x00000, 0x80000, CRC(6fdff0a2) SHA1(7cc9529b426091027aa3e23586cb7d162376c0ff) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "2.153", 0x00000, 0x20000, CRC(a1ef64ec) SHA1(fa3e434738bf4e742ad68882c1e914100ce0f761) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x100000, "gfx1", 0 )
ROM_LOAD( "538a54.124", 0x000000, 0x80000, CRC(4d2c4df2) SHA1(f51c2b3135f0a921ac1a79e63d6878c03cb6254b) )
@ -2652,9 +2639,8 @@ ROM_START( aerofgtb )
ROM_LOAD16_BYTE( "v2", 0x00000, 0x40000, CRC(5c9de9f0) SHA1(93b62c59f0bc052c6fdbd5aae292a7ab2122dfd1) )
ROM_LOAD16_BYTE( "v1", 0x00001, 0x40000, CRC(89c1dcf4) SHA1(41401d63049c140e4254dc791022d85c44271390) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "v3", 0x00000, 0x20000, CRC(cbb18cf4) SHA1(7119a7536cf710660ff06d1e7d2879c79ef12b3d) )
ROM_RELOAD( 0x10000, 0x20000 )
ROM_REGION( 0x080000, "gfx1", 0 )
ROM_LOAD( "it-19-03", 0x000000, 0x80000, CRC(85eba1a4) SHA1(5691a95d6359fdab29be0d615066370c2b856c0a) )
@ -2682,9 +2668,8 @@ ROM_START( aerofgtc )
ROM_LOAD16_BYTE( "v2.149", 0x00000, 0x40000, CRC(f187aec6) SHA1(8905af34f114ae22fbfbd3ae115f19280bdd4fb3) )
ROM_LOAD16_BYTE( "v1.111", 0x00001, 0x40000, CRC(9e684b19) SHA1(b5e1e5b74ed9fd223c9315ee2d548e620224c102) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "2.153", 0x00000, 0x20000, CRC(a1ef64ec) SHA1(fa3e434738bf4e742ad68882c1e914100ce0f761) )
ROM_RELOAD( 0x10000, 0x20000 )
/* gfx ROMs were missing in this set, I'm using the aerofgtb ones */
ROM_REGION( 0x080000, "gfx1", 0 )
@ -2713,9 +2698,8 @@ ROM_START( sonicwi )
ROM_LOAD16_BYTE( "2.149", 0x00000, 0x40000, CRC(3d1b96ba) SHA1(941be323c0cb15e05c92b897984617b05c5cf676) )
ROM_LOAD16_BYTE( "1.111", 0x00001, 0x40000, CRC(a3d09f94) SHA1(a1064d659488878f5303edc2b8636312ab632a83) )
ROM_REGION( 0x30000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_REGION( 0x20000, "audiocpu", 0 ) /* 64k for the audio CPU + banks */
ROM_LOAD( "2.153", 0x00000, 0x20000, CRC(a1ef64ec) SHA1(fa3e434738bf4e742ad68882c1e914100ce0f761) ) // 3.156
ROM_RELOAD( 0x10000, 0x20000 )
/* gfx ROMs were missing in this set, I'm using the aerofgtb ones */
ROM_REGION( 0x080000, "gfx1", 0 )
@ -2823,7 +2807,7 @@ ROM_END
DRIVER_INIT_MEMBER(aerofgt_state, banked_oki)
{
membank("okibank")->configure_entries(0, 4, memregion("oki")->base() + 0x20000, 0x20000);
m_okibank->configure_entries(0, 4, memregion("oki")->base() + 0x20000, 0x20000);
}

View File

@ -29,7 +29,9 @@ public:
m_spr(*this, "vsystem_spr"),
m_spr_old(*this, "vsystem_spr_old"),
m_spr_old2(*this, "vsystem_spr_ol2"),
m_soundlatch(*this, "soundlatch") { }
m_soundlatch(*this, "soundlatch"),
m_soundbank(*this, "soundbank"),
m_okibank(*this, "okibank") { }
/* memory pointers */
required_shared_ptr<uint16_t> m_bg1videoram;
@ -53,7 +55,8 @@ public:
optional_device<vsystem_spr2_device> m_spr_old2; // or a pair of them..
optional_device<generic_latch_8_device> m_soundlatch;
optional_memory_bank m_soundbank;
optional_memory_bank m_okibank;
/* video-related */
tilemap_t *m_bg1_tilemap;