From a65aa6c30ac48050d9efaf44b5898fb8d2ff81ed Mon Sep 17 00:00:00 2001 From: Phil Bennett Date: Sun, 15 Aug 2010 20:05:41 +0000 Subject: [PATCH] A more elegant fix for the last bug... --- src/mame/drivers/crshrace.c | 22 +++------------------- src/mame/includes/crshrace.h | 1 - 2 files changed, 3 insertions(+), 20 deletions(-) diff --git a/src/mame/drivers/crshrace.c b/src/mame/drivers/crshrace.c index e435b68e7b8..1a79e1f8e21 100644 --- a/src/mame/drivers/crshrace.c +++ b/src/mame/drivers/crshrace.c @@ -155,20 +155,9 @@ static READ16_HANDLER( extrarom2_r ) return rom[offset] | (rom[offset + 1] << 8); } -static void set_sound_bank(running_machine *machine) -{ - crshrace_state *state = machine->driver_data(); - UINT8 *rom = memory_region(machine, "audiocpu") + 0x10000; - - memory_set_bankptr(machine, "bank1", rom + state->sound_bank * 0x8000); -} - static WRITE8_HANDLER( crshrace_sh_bankswitch_w ) { - crshrace_state *state = space->machine->driver_data(); - - state->sound_bank = data & 0x03; - set_sound_bank(space->machine); + memory_set_bank(space->machine, "bank1", data & 0x03); } static WRITE16_HANDLER( sound_command_w ) @@ -453,15 +442,12 @@ static const k053936_interface crshrace_k053936_intf = }; -static STATE_POSTLOAD( crshrace_postload ) -{ - set_sound_bank(machine); -} - static MACHINE_START( crshrace ) { crshrace_state *state = machine->driver_data(); + memory_configure_bank(machine, "bank1", 0, 4, memory_region(machine, "audiocpu") + 0x10000, 0x8000); + state->audiocpu = machine->device("audiocpu"); state->k053936 = machine->device("k053936"); @@ -469,8 +455,6 @@ static MACHINE_START( crshrace ) state_save_register_global(machine, state->gfxctrl); state_save_register_global(machine, state->flipscreen); state_save_register_global(machine, state->pending_command); - state_save_register_global(machine, state->sound_bank); - state_save_register_postload(machine, crshrace_postload, NULL); } static MACHINE_RESET( crshrace ) diff --git a/src/mame/includes/crshrace.h b/src/mame/includes/crshrace.h index e025a9fd938..a650cb5794f 100644 --- a/src/mame/includes/crshrace.h +++ b/src/mame/includes/crshrace.h @@ -20,7 +20,6 @@ public: /* misc */ int pending_command; - int sound_bank; /* devices */ running_device *audiocpu;