diff options
Diffstat (limited to 'src/mame/drivers/taito_x.c')
-rw-r--r-- | src/mame/drivers/taito_x.c | 74 |
1 files changed, 28 insertions, 46 deletions
diff --git a/src/mame/drivers/taito_x.c b/src/mame/drivers/taito_x.c index ccd8ddb84b8..26f92200b3a 100644 --- a/src/mame/drivers/taito_x.c +++ b/src/mame/drivers/taito_x.c @@ -394,15 +394,9 @@ WRITE16_MEMBER(taitox_state::kyustrkr_input_w) /**************************************************************************/ -void taitox_state::reset_sound_region() -{ - membank("bank2")->set_base(memregion("audiocpu")->base() + (m_banknum * 0x4000) + 0x10000 ); -} - WRITE8_MEMBER(taitox_state::sound_bankswitch_w) { - m_banknum = (data - 1) & 3; - reset_sound_region(); + membank("z80bank")->set_entry(data & 3); } @@ -476,7 +470,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitox_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM - AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2") + AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank") AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write) AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, slave_port_w) @@ -485,12 +479,12 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitox_state ) AM_RANGE(0xea00, 0xea00) AM_READNOP AM_RANGE(0xee00, 0xee00) AM_WRITENOP /* ? */ AM_RANGE(0xf000, 0xf000) AM_WRITENOP /* ? */ - AM_RANGE(0xf200, 0xf200) AM_WRITE(sound_bankswitch_w) /* bankswitch ? */ + AM_RANGE(0xf200, 0xf200) AM_WRITE(sound_bankswitch_w) ADDRESS_MAP_END static ADDRESS_MAP_START( daisenpu_sound_map, AS_PROGRAM, 8, taitox_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM - AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2") + AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank") AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write) AM_RANGE(0xe200, 0xe200) AM_READNOP AM_DEVWRITE("tc0140syt", tc0140syt_device, slave_port_w) @@ -779,16 +773,14 @@ WRITE_LINE_MEMBER(taitox_state::irqhandler) MACHINE_START_MEMBER(taitox_state,taitox) { - m_banknum = -1; - save_item(NAME(m_banknum)); - machine().save().register_postload(save_prepost_delegate(FUNC(taitox_state::reset_sound_region), this)); + int banks = memregion("audiocpu")->bytes() / 0x4000; + membank("z80bank")->configure_entries(0, banks, memregion("audiocpu")->base(), 0x4000); } MACHINE_START_MEMBER(taitox_state,superman) { - m_banknum = -1; - save_item(NAME(m_banknum)); - machine().save().register_postload(save_prepost_delegate(FUNC(taitox_state::reset_sound_region), this)); + int banks = memregion("audiocpu")->bytes() / 0x4000; + membank("z80bank")->configure_entries(0, banks, memregion("audiocpu")->base(), 0x4000); m_current_bank = 0; m_cc_port = 0; @@ -1048,9 +1040,8 @@ ROM_START( superman ) ROM_LOAD16_BYTE( "b61_08.a8", 0x40000, 0x20000, CRC(79fc028e) SHA1(bf42b3f84dcad8fd9085c702a78dc895cc12d670) ) ROM_LOAD16_BYTE( "b61_13.a3", 0x40001, 0x20000, CRC(9f446a44) SHA1(16f7cd6438e47fdaac93a368df5c093f6ff0f1f0) ) - ROM_REGION( 0x1c000, "audiocpu", 0 ) /* 64k for Z80 code */ - ROM_LOAD( "b61_10.d18", 0x00000, 0x4000, CRC(6efe79e8) SHA1(7a76efaaeab71473f4b0b23a89141f203488ce1d) ) - ROM_CONTINUE( 0x10000, 0xc000 ) /* banked stuff */ + ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for Z80 code */ + ROM_LOAD( "b61_10.d18", 0x00000, 0x10000, CRC(6efe79e8) SHA1(7a76efaaeab71473f4b0b23a89141f203488ce1d) ) ROM_REGION( 0x200000, "gfx1", 0 ) ROM_LOAD( "b61-14.f1", 0x000000, 0x80000, CRC(89368c3e) SHA1(8d227439ab321fd5d432d860544daea0e78ce588) ) /* Plane 0, 1 */ @@ -1072,9 +1063,8 @@ ROM_START( supermanu ) /* No US copyright notice or FBI logo - Just a coinage di ROM_LOAD16_BYTE( "b61_08.a8", 0x40000, 0x20000, CRC(79fc028e) SHA1(bf42b3f84dcad8fd9085c702a78dc895cc12d670) ) ROM_LOAD16_BYTE( "b61_12.a3", 0x40001, 0x20000, CRC(064d3bfe) SHA1(75abf924a6e44203169d2fa15852caa0bf57db30) ) - ROM_REGION( 0x1c000, "audiocpu", 0 ) /* 64k for Z80 code */ - ROM_LOAD( "b61_10.d18", 0x00000, 0x4000, CRC(6efe79e8) SHA1(7a76efaaeab71473f4b0b23a89141f203488ce1d) ) - ROM_CONTINUE( 0x10000, 0xc000 ) /* banked stuff */ + ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for Z80 code */ + ROM_LOAD( "b61_10.d18", 0x00000, 0x10000, CRC(6efe79e8) SHA1(7a76efaaeab71473f4b0b23a89141f203488ce1d) ) ROM_REGION( 0x200000, "gfx1", 0 ) ROM_LOAD( "b61-14.f1", 0x000000, 0x80000, CRC(89368c3e) SHA1(8d227439ab321fd5d432d860544daea0e78ce588) ) /* Plane 0, 1 */ @@ -1096,9 +1086,8 @@ ROM_START( supermanj ) /* Shows a Japan copyright notice */ ROM_LOAD16_BYTE( "b61_08.a8", 0x40000, 0x20000, CRC(79fc028e) SHA1(bf42b3f84dcad8fd9085c702a78dc895cc12d670) ) ROM_LOAD16_BYTE( "b61_06.a3", 0x40001, 0x20000, CRC(714a0b68) SHA1(b0b42c55d2404c7c193eb8cab3bd92e321947845) ) - ROM_REGION( 0x1c000, "audiocpu", 0 ) /* 64k for Z80 code */ - ROM_LOAD( "b61_10.d18", 0x00000, 0x4000, CRC(6efe79e8) SHA1(7a76efaaeab71473f4b0b23a89141f203488ce1d) ) - ROM_CONTINUE( 0x10000, 0xc000 ) /* banked stuff */ + ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for Z80 code */ + ROM_LOAD( "b61_10.d18", 0x00000, 0x10000, CRC(6efe79e8) SHA1(7a76efaaeab71473f4b0b23a89141f203488ce1d) ) ROM_REGION( 0x200000, "gfx1", 0 ) ROM_LOAD( "b61-14.f1", 0x000000, 0x80000, CRC(89368c3e) SHA1(8d227439ab321fd5d432d860544daea0e78ce588) ) /* Plane 0, 1 */ @@ -1128,9 +1117,8 @@ ROM_START( twinhawk ) ROM_LOAD16_BYTE( "b87-11.u7", 0x00000, 0x20000, CRC(fc84a399) SHA1(6e5552b7ee433bee74f8936a8e583b5f81b5f2b2) ) ROM_LOAD16_BYTE( "b87-10.u5", 0x00001, 0x20000, CRC(17181706) SHA1(b7cab502b68a8f02918412538f23682120cbe1d3) ) - ROM_REGION( 0x14000, "audiocpu", 0 ) /* 32k for Z80 code */ - ROM_LOAD( "b87-07.13e", 0x00000, 0x4000, CRC(e2e0efa0) SHA1(4f1435ba738895996f26a64c2237e8349337df4a) ) - ROM_CONTINUE( 0x10000, 0x4000 ) /* banked stuff */ + ROM_REGION( 0x8000, "audiocpu", 0 ) /* 32k for Z80 code */ + ROM_LOAD( "b87-07.13e", 0x00000, 0x8000, CRC(e2e0efa0) SHA1(4f1435ba738895996f26a64c2237e8349337df4a) ) ROM_REGION( 0x200000, "gfx1", 0 ) ROM_LOAD( "b87-02.3h", 0x000000, 0x80000, CRC(89ad43a0) SHA1(6ff6ee085c1c06a05f4f8743d979d3552b7475a0) ) /* Plane 0, 1 */ @@ -1144,9 +1132,8 @@ ROM_START( twinhawku ) ROM_LOAD16_BYTE( "b87-09.u7", 0x00000, 0x20000, CRC(7e6267c7) SHA1(a623c1b740008675f36e8b63bbc17a573917db30) ) ROM_LOAD16_BYTE( "b87-08.u5", 0x00001, 0x20000, CRC(31d9916f) SHA1(8ae491a51a4095717c6f65fe81a83902feccd54b) ) - ROM_REGION( 0x14000, "audiocpu", 0 ) /* 32k for Z80 code */ - ROM_LOAD( "b87-07.13e", 0x00000, 0x4000, CRC(e2e0efa0) SHA1(4f1435ba738895996f26a64c2237e8349337df4a) ) - ROM_CONTINUE( 0x10000, 0x4000 ) /* banked stuff */ + ROM_REGION( 0x8000, "audiocpu", 0 ) /* 32k for Z80 code */ + ROM_LOAD( "b87-07.13e", 0x00000, 0x8000, CRC(e2e0efa0) SHA1(4f1435ba738895996f26a64c2237e8349337df4a) ) ROM_REGION( 0x200000, "gfx1", 0 ) ROM_LOAD( "b87-02.3h", 0x000000, 0x80000, CRC(89ad43a0) SHA1(6ff6ee085c1c06a05f4f8743d979d3552b7475a0) ) /* Plane 0, 1 */ @@ -1160,9 +1147,8 @@ ROM_START( daisenpu ) ROM_LOAD16_BYTE( "b87-06.u7", 0x00000, 0x20000, CRC(cf236100) SHA1(7944a20950188f64c0a09edd1a4efe0270264b27) ) ROM_LOAD16_BYTE( "b87-05.u5", 0x00001, 0x20000, CRC(7f15edc7) SHA1(3deba512f3c97f354ed4155f62058da160047bc5) ) - ROM_REGION( 0x14000, "audiocpu", 0 ) /* 32k for Z80 code */ - ROM_LOAD( "b87-07.13e", 0x00000, 0x4000, CRC(e2e0efa0) SHA1(4f1435ba738895996f26a64c2237e8349337df4a) ) - ROM_CONTINUE( 0x10000, 0x4000 ) /* banked stuff */ + ROM_REGION( 0x8000, "audiocpu", 0 ) /* 32k for Z80 code */ + ROM_LOAD( "b87-07.13e", 0x00000, 0x8000, CRC(e2e0efa0) SHA1(4f1435ba738895996f26a64c2237e8349337df4a) ) ROM_REGION( 0x200000, "gfx1", 0 ) ROM_LOAD( "b87-02.3h", 0x000000, 0x80000, CRC(89ad43a0) SHA1(6ff6ee085c1c06a05f4f8743d979d3552b7475a0) ) /* Plane 0, 1 */ @@ -1178,9 +1164,8 @@ ROM_START( gigandes ) ROM_LOAD16_BYTE( "east_2.8a", 0x40000, 0x20000, CRC(dd94b4d0) SHA1(2efff9fd51b28fd1fb46d16b359f0991af91054e) ) ROM_LOAD16_BYTE( "east_4.3a", 0x40001, 0x20000, CRC(a647310a) SHA1(49db488a36f6c74729825bdf0214bcd30773eaf4) ) - ROM_REGION( 0x1c000, "audiocpu", 0 ) /* 64k for Z80 code */ - ROM_LOAD( "east_5.17d", 0x00000, 0x4000, CRC(b24ab5f4) SHA1(e4730df984e9686c538df5fc626b795bda1db939) ) - ROM_CONTINUE( 0x10000, 0xc000 ) /* banked stuff */ + ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for Z80 code */ + ROM_LOAD( "east_5.17d", 0x00000, 0x10000, CRC(b24ab5f4) SHA1(e4730df984e9686c538df5fc626b795bda1db939) ) ROM_REGION( 0x200000, "gfx1", 0 ) ROM_LOAD( "east_8.3f", 0x000000, 0x80000, CRC(75eece28) SHA1(7ce66cd8bca7dd214367beae067727c8735c0f7e) ) /* Plane 0, 1 */ @@ -1202,9 +1187,8 @@ ROM_START( gigandesa ) ROM_LOAD16_BYTE( "east_2.8a", 0x40000, 0x20000, CRC(dd94b4d0) SHA1(2efff9fd51b28fd1fb46d16b359f0991af91054e) ) ROM_LOAD16_BYTE( "east_4.3a", 0x40001, 0x20000, CRC(a647310a) SHA1(49db488a36f6c74729825bdf0214bcd30773eaf4) ) - ROM_REGION( 0x1c000, "audiocpu", 0 ) /* 64k for Z80 code */ - ROM_LOAD( "east_5.17d", 0x00000, 0x4000, CRC(b24ab5f4) SHA1(e4730df984e9686c538df5fc626b795bda1db939) ) - ROM_CONTINUE( 0x10000, 0xc000 ) /* banked stuff */ + ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for Z80 code */ + ROM_LOAD( "east_5.17d", 0x00000, 0x10000, CRC(b24ab5f4) SHA1(e4730df984e9686c538df5fc626b795bda1db939) ) ROM_REGION( 0x200000, "gfx1", 0 ) ROM_LOAD( "east_8.3f", 0x000000, 0x80000, CRC(75eece28) SHA1(7ce66cd8bca7dd214367beae067727c8735c0f7e) ) /* Plane 0, 1 */ @@ -1224,9 +1208,8 @@ ROM_START( kyustrkr ) ROM_LOAD16_BYTE( "pe.9a", 0x00000, 0x20000, CRC(082b5f96) SHA1(97c08b506b2a07d63f3323359b8564aa3621f483) ) ROM_LOAD16_BYTE( "po.4a", 0x00001, 0x20000, CRC(0100361e) SHA1(45791f697c86309c459d0d8c3d3e967a3ece3ede) ) - ROM_REGION( 0x1c000, "audiocpu", 0 ) /* 64k for Z80 code */ - ROM_LOAD( "ic.18d", 0x00000, 0x4000, CRC(92cfb788) SHA1(41cd5433584df05652bd0ce8c5a35dc38262d6f2) ) - ROM_CONTINUE( 0x10000, 0xc000 ) /* banked stuff */ + ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for Z80 code */ + ROM_LOAD( "ic.18d", 0x00000, 0x10000, CRC(92cfb788) SHA1(41cd5433584df05652bd0ce8c5a35dc38262d6f2) ) ROM_REGION( 0x80000, "gfx1", 0 ) ROM_LOAD( "m-8-3.u3", 0x00000, 0x20000, CRC(1c4084e6) SHA1(addea2ba07bddb41fbe7f0fc859e744990bb9ff5) ) @@ -1246,9 +1229,8 @@ ROM_START( ballbros ) ROM_LOAD16_BYTE( "10a", 0x00000, 0x20000, CRC(4af0e858) SHA1(817817169aee075d52411bdbe568514511760386) ) ROM_LOAD16_BYTE( "5a", 0x00001, 0x20000, CRC(0b983a69) SHA1(7be06761a19e1dc5d1404d1920797b406421e365) ) - ROM_REGION( 0x1c000, "audiocpu", 0 ) /* 64k for Z80 code */ - ROM_LOAD( "8d", 0x00000, 0x4000, CRC(d1c515af) SHA1(00451991b4c793487b156f9be2b2e4688325ff24) ) - ROM_CONTINUE( 0x10000, 0xc000 ) /* banked stuff */ + ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for Z80 code */ + ROM_LOAD( "8d", 0x00000, 0x10000, CRC(d1c515af) SHA1(00451991b4c793487b156f9be2b2e4688325ff24) ) ROM_REGION( 0x080000, "gfx1", 0 ) ROM_LOAD( "3", 0x000000, 0x20000, CRC(ec3e0537) SHA1(51fe5c6ef007c188b2f51ad2225753d2b403e35a) ) /* Plane 0, 1 */ |