summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/taito_x.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/taito_x.c')
-rw-r--r--src/mame/drivers/taito_x.c74
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 */