Remove global memory banking functions in favor of referencing
subbanks of a device and directly acting on them. First round S&R: memory_configure_bank( *)\(( *)([^,]+), *([^,]+), * \3.root_device().subbank\1\(\2\4\2\)->configure_entries\1\(\2 memory_configure_bank_decrypted( *)\(( *)([^,]+), *([^,]+), * \3.root_device().subbank\1\(\2\4\2\)->configure_decrypted_entries\1\(\2 memory_set_bank( *)\(( *)([^,]+), *([^,]+), * \3.root_device().subbank\1\(\2\4\2\)->set_entry\1\(\2 memory_set_bankptr( *)\(( *)([^,]+), *([^,]+), * \3.root_device().subbank\1\(\2\4\2\)->set_base\1\(\2 Then convert single entries to simpler form: configure_entries( *\( *[^,]+, *)1 *, *([^,]+),[^)]+\) configure_entry\1\2\) configure_decrypted_entries( *\( *[^,]+, *)1 *, *([^,]+),[^)]+\) configure_decrypted_entry\1\2\) Remove renundant root_device lookup for methods: ([ \t])machine\(\)\.root_device\(\)\. \1 Use state-> instead of root_device lookup where available (this one must be done by hand unfortunately): ([^ \t]*)machine[()]*\.root_device\(\)\. state->
This commit is contained in:
parent
70eab27301
commit
b5b7808cb7
@ -5538,17 +5538,3 @@ void handler_entry_write::write_stub_legacy(address_space &space, offs_t offset,
|
||||
{
|
||||
m_legacy_info.handler.space64(m_legacy_info.object.space, offset, data, mask);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// configure the addresses for a bank
|
||||
void memory_configure_bank(running_machine &machine, const char *tag, int startentry, int numentries, void *base, offs_t stride) { machine.root_device().subbank(tag)->configure_entries(startentry, numentries, base, stride); }
|
||||
|
||||
// configure the decrypted addresses for a bank
|
||||
void memory_configure_bank_decrypted(running_machine &machine, const char *tag, int startentry, int numentries, void *base, offs_t stride) { machine.root_device().subbank(tag)->configure_decrypted_entries(startentry, numentries, base, stride); }
|
||||
|
||||
// select one pre-configured entry to be the new bank base
|
||||
void memory_set_bank(running_machine &machine, const char *tag, int entrynum) { machine.root_device().subbank(tag)->set_entry(entrynum); }
|
||||
|
||||
// set the absolute address of a bank base
|
||||
void memory_set_bankptr(running_machine &machine, const char *tag, void *base) { machine.root_device().subbank(tag)->set_base(base); }
|
||||
|
@ -899,24 +899,6 @@ extern const char *const address_space_names[ADDRESS_SPACES];
|
||||
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// FUNCTION PROTOTYPES FOR CORE MEMORY FUNCTIONS
|
||||
//**************************************************************************
|
||||
|
||||
// configure the addresses for a bank
|
||||
void memory_configure_bank(running_machine &machine, const char *tag, int startentry, int numentries, void *base, offs_t stride) ATTR_NONNULL(5);
|
||||
|
||||
// configure the decrypted addresses for a bank
|
||||
void memory_configure_bank_decrypted(running_machine &machine, const char *tag, int startentry, int numentries, void *base, offs_t stride) ATTR_NONNULL(5);
|
||||
|
||||
// select one pre-configured entry to be the new bank base
|
||||
void memory_set_bank(running_machine &machine, const char *tag, int entrynum);
|
||||
|
||||
// set the absolute address of a bank base
|
||||
void memory_set_bankptr(running_machine &machine, const char *tag, void *base) ATTR_NONNULL(3);
|
||||
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// INLINE FUNCTIONS
|
||||
//**************************************************************************
|
||||
|
@ -228,7 +228,7 @@ void okim6295_device::set_bank_base(offs_t base, bool bDontUpdateStream)
|
||||
if (m_bank_installed)
|
||||
{
|
||||
m_bank_offs = base;
|
||||
memory_set_bankptr(machine(), tag(), m_region->base() + base);
|
||||
subbank(tag())->set_base(m_region->base() + base);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -340,7 +340,7 @@ static VIDEO_START( pc_cga )
|
||||
cga.videoram = auto_alloc_array(machine, UINT8, 0x4000);
|
||||
cga.is_superimpose = 0;
|
||||
|
||||
memory_set_bankptr(machine,"bank11", cga.videoram);
|
||||
machine.root_device().subbank("bank11")->set_base(cga.videoram);
|
||||
}
|
||||
|
||||
|
||||
@ -381,7 +381,7 @@ static VIDEO_START( pc_cga32k )
|
||||
cga.videoram = auto_alloc_array(machine, UINT8, 0x8000);
|
||||
cga.is_superimpose = 0;
|
||||
|
||||
memory_set_bankptr(machine,"bank11", cga.videoram);
|
||||
machine.root_device().subbank("bank11")->set_base(cga.videoram);
|
||||
}
|
||||
|
||||
SCREEN_UPDATE_RGB32( mc6845_cga )
|
||||
@ -1485,7 +1485,7 @@ static WRITE8_HANDLER ( pc1512_w )
|
||||
}
|
||||
else
|
||||
{
|
||||
memory_set_bankptr(space->machine(),"bank1", videoram + videoram_offset[0]);
|
||||
space->machine().root_device().subbank("bank1")->set_base(videoram + videoram_offset[0]);
|
||||
}
|
||||
cga.mode_control = data;
|
||||
switch( cga.mode_control & 0x3F )
|
||||
@ -1543,7 +1543,7 @@ static WRITE8_HANDLER ( pc1512_w )
|
||||
pc1512.read = data;
|
||||
if ( ( cga.mode_control & 0x12 ) == 0x12 )
|
||||
{
|
||||
memory_set_bankptr(space->machine(),"bank1", videoram + videoram_offset[data & 3]);
|
||||
space->machine().root_device().subbank("bank1")->set_base(videoram + videoram_offset[data & 3]);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -1618,7 +1618,7 @@ static VIDEO_START( pc1512 )
|
||||
address_space *io_space = machine.firstcpu->memory().space( AS_IO );
|
||||
|
||||
space->install_read_bank( 0xb8000, 0xbbfff, 0, 0x0C000, "bank1" );
|
||||
memory_set_bankptr(machine, "bank1", cga.videoram + videoram_offset[0]);
|
||||
machine.root_device().subbank("bank1")->set_base(cga.videoram + videoram_offset[0]);
|
||||
space->install_legacy_write_handler( 0xb8000, 0xbbfff, 0, 0x0C000, FUNC(pc1512_videoram16le_w) );
|
||||
|
||||
io_space->install_legacy_read_handler( 0x3d0, 0x3df, FUNC(pc1512_16le_r) );
|
||||
|
@ -166,9 +166,9 @@ void atarijsa_init(running_machine &machine, const char *testport, int testmask)
|
||||
{
|
||||
const char *bank = (rgn != 2) ? "bank12" : "bank14";
|
||||
const char *bank_plus_1 = (rgn != 2) ? "bank13" : "bank15";
|
||||
memory_configure_bank(machine, bank, 0, 2, base + 0x00000, 0x00000);
|
||||
memory_configure_bank(machine, bank, 2, 2, base + 0x20000, 0x20000);
|
||||
memory_set_bankptr(machine, bank_plus_1, base + 0x60000);
|
||||
machine.root_device().subbank(bank)->configure_entries(0, 2, base + 0x00000, 0x00000);
|
||||
machine.root_device().subbank(bank)->configure_entries(2, 2, base + 0x20000, 0x20000);
|
||||
machine.root_device().subbank(bank_plus_1)->set_base(base + 0x60000);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -548,7 +548,7 @@ static WRITE8_HANDLER( jsa3_io_w )
|
||||
|
||||
/* update the OKI bank */
|
||||
if (oki6295 != NULL)
|
||||
memory_set_bank(space->machine(), "bank12", (space->machine().memory().bank("bank12")->entry() & 2) | ((data >> 1) & 1));
|
||||
space->machine().root_device().subbank("bank12")->set_entry((space->machine().memory().bank("bank12")->entry() & 2) | ((data >> 1) & 1));
|
||||
|
||||
/* update the bank */
|
||||
memcpy(bank_base, &bank_source_data[0x1000 * ((data >> 6) & 3)], 0x1000);
|
||||
@ -572,7 +572,7 @@ static WRITE8_HANDLER( jsa3_io_w )
|
||||
|
||||
/* update the OKI bank */
|
||||
if (oki6295 != NULL)
|
||||
memory_set_bank(space->machine(), "bank12", (space->machine().memory().bank("bank12")->entry() & 1) | ((data >> 3) & 2));
|
||||
space->machine().root_device().subbank("bank12")->set_entry((space->machine().memory().bank("bank12")->entry() & 1) | ((data >> 3) & 2));
|
||||
|
||||
/* update the volumes */
|
||||
ym2151_volume = ((data >> 1) & 7) * 100 / 7;
|
||||
@ -681,7 +681,7 @@ static WRITE8_HANDLER( jsa3s_io_w )
|
||||
if ((data&1) == 0) devtag_reset(space->machine(), "ymsnd");
|
||||
|
||||
/* update the OKI bank */
|
||||
memory_set_bank(space->machine(), "bank12", (space->machine().memory().bank("bank12")->entry() & 2) | ((data >> 1) & 1));
|
||||
space->machine().root_device().subbank("bank12")->set_entry((space->machine().memory().bank("bank12")->entry() & 2) | ((data >> 1) & 1));
|
||||
|
||||
/* update the bank */
|
||||
memcpy(bank_base, &bank_source_data[0x1000 * ((data >> 6) & 3)], 0x1000);
|
||||
@ -705,8 +705,8 @@ static WRITE8_HANDLER( jsa3s_io_w )
|
||||
*/
|
||||
|
||||
/* update the OKI bank */
|
||||
memory_set_bank(space->machine(), "bank12", (space->machine().memory().bank("bank12")->entry() & 1) | ((data >> 3) & 2));
|
||||
memory_set_bank(space->machine(), "bank14", data >> 6);
|
||||
space->machine().root_device().subbank("bank12")->set_entry((space->machine().memory().bank("bank12")->entry() & 1) | ((data >> 3) & 2));
|
||||
space->machine().root_device().subbank("bank14")->set_entry(data >> 6);
|
||||
|
||||
/* update the volumes */
|
||||
ym2151_volume = ((data >> 1) & 7) * 100 / 7;
|
||||
|
@ -165,8 +165,8 @@ void cage_init(running_machine &machine, offs_t speedup)
|
||||
|
||||
state->irqhandler = NULL;
|
||||
|
||||
memory_set_bankptr(machine, "bank10", machine.region("cageboot")->base());
|
||||
memory_set_bankptr(machine, "bank11", machine.region("cage")->base());
|
||||
machine.root_device().subbank("bank10")->set_base(machine.region("cageboot")->base());
|
||||
machine.root_device().subbank("bank11")->set_base(machine.region("cage")->base());
|
||||
|
||||
state->cpu = machine.device<cpu_device>("cage");
|
||||
cage_cpu_clock_period = attotime::from_hz(state->cpu->clock());
|
||||
|
@ -21,7 +21,7 @@ void cyberbal_sound_reset(running_machine &machine)
|
||||
|
||||
/* reset the sound system */
|
||||
state->m_bank_base = &machine.region("audiocpu")->base()[0x10000];
|
||||
memory_set_bankptr(machine, "soundbank", &state->m_bank_base[0x0000]);
|
||||
state->subbank("soundbank")->set_base(&state->m_bank_base[0x0000]);
|
||||
state->m_fast_68k_int = state->m_io_68k_int = 0;
|
||||
state->m_sound_data_from_68k = state->m_sound_data_from_6502 = 0;
|
||||
state->m_sound_data_from_68k_ready = state->m_sound_data_from_6502_ready = 0;
|
||||
@ -56,7 +56,7 @@ READ8_MEMBER(cyberbal_state::cyberbal_sound_6502_stat_r)
|
||||
|
||||
WRITE8_MEMBER(cyberbal_state::cyberbal_sound_bank_select_w)
|
||||
{
|
||||
memory_set_bankptr(machine(), "soundbank", &m_bank_base[0x1000 * ((data >> 6) & 3)]);
|
||||
subbank("soundbank")->set_base(&m_bank_base[0x1000 * ((data >> 6) & 3)]);
|
||||
coin_counter_w(machine(), 1, (data >> 5) & 1);
|
||||
coin_counter_w(machine(), 0, (data >> 4) & 1);
|
||||
cputag_set_input_line(machine(), "dac", INPUT_LINE_RESET, (data & 0x08) ? CLEAR_LINE : ASSERT_LINE);
|
||||
|
@ -821,7 +821,7 @@ static TIMER_CALLBACK( dcs_reset )
|
||||
/* rev 1: just reset the bank to 0 */
|
||||
case 1:
|
||||
dcs.sounddata_bank = 0;
|
||||
memory_set_bank(machine, "databank", 0);
|
||||
machine.root_device().subbank("databank")->set_entry(0);
|
||||
break;
|
||||
|
||||
/* rev 2: reset the SDRC ASIC */
|
||||
@ -960,7 +960,7 @@ void dcs_init(running_machine &machine)
|
||||
dcs.sounddata = dcs.bootrom;
|
||||
dcs.sounddata_words = dcs.bootrom_words;
|
||||
dcs.sounddata_banks = dcs.sounddata_words / 0x1000;
|
||||
memory_configure_bank(machine, "databank", 0, dcs.sounddata_banks, dcs.sounddata, 0x1000*2);
|
||||
machine.root_device().subbank("databank")->configure_entries(0, dcs.sounddata_banks, dcs.sounddata, 0x1000*2);
|
||||
|
||||
/* create the timers */
|
||||
dcs.internal_timer = machine.device<timer_device>("dcs_int_timer");
|
||||
@ -1024,7 +1024,7 @@ void dcs2_init(running_machine &machine, int dram_in_mb, offs_t polling_offset)
|
||||
}
|
||||
dcs.sounddata_banks = dcs.sounddata_words / soundbank_words;
|
||||
if (dcs.rev != 2)
|
||||
memory_configure_bank(machine, "databank", 0, dcs.sounddata_banks, dcs.sounddata, soundbank_words*2);
|
||||
machine.root_device().subbank("databank")->configure_entries(0, dcs.sounddata_banks, dcs.sounddata, soundbank_words*2);
|
||||
|
||||
/* allocate memory for the SRAM */
|
||||
dcs.sram = auto_alloc_array(machine, UINT16, 0x8000*4/2);
|
||||
@ -1085,7 +1085,7 @@ static WRITE16_HANDLER( dcs_dataram_w )
|
||||
static WRITE16_HANDLER( dcs_data_bank_select_w )
|
||||
{
|
||||
dcs.sounddata_bank = data & 0x7ff;
|
||||
memory_set_bank(space->machine(), "databank", dcs.sounddata_bank % dcs.sounddata_banks);
|
||||
space->machine().root_device().subbank("databank")->set_entry(dcs.sounddata_bank % dcs.sounddata_banks);
|
||||
|
||||
/* bit 11 = sound board led */
|
||||
#if 0
|
||||
@ -1112,15 +1112,15 @@ INLINE void sdrc_update_bank_pointers(running_machine &machine)
|
||||
{
|
||||
/* ROM-based; use the memory page to select from ROM */
|
||||
if (SDRC_ROM_MS == 1 && SDRC_ROM_ST != 3)
|
||||
memory_set_bankptr(machine, "rompage", &dcs.sounddata[(SDRC_EPM_PG * pagesize) % dcs.sounddata_words]);
|
||||
machine.root_device().subbank("rompage")->set_base(&dcs.sounddata[(SDRC_EPM_PG * pagesize) % dcs.sounddata_words]);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* RAM-based; use the ROM page to select from ROM, and the memory page to select from RAM */
|
||||
if (SDRC_ROM_MS == 1 && SDRC_ROM_ST != 3)
|
||||
memory_set_bankptr(machine, "rompage", &dcs.bootrom[(SDRC_ROM_PG * 4096 /*pagesize*/) % dcs.bootrom_words]);
|
||||
machine.root_device().subbank("rompage")->set_base(&dcs.bootrom[(SDRC_ROM_PG * 4096 /*pagesize*/) % dcs.bootrom_words]);
|
||||
if (SDRC_DM_ST != 0)
|
||||
memory_set_bankptr(machine, "drampage", &dcs.sounddata[(SDRC_DM_PG * 1024) % dcs.sounddata_words]);
|
||||
machine.root_device().subbank("drampage")->set_base(&dcs.sounddata[(SDRC_DM_PG * 1024) % dcs.sounddata_words]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1362,7 +1362,7 @@ static WRITE16_HANDLER( dsio_w )
|
||||
/* offset 2 controls RAM pages */
|
||||
case 2:
|
||||
dsio.reg[2] = data;
|
||||
memory_set_bank(space->machine(), "databank", DSIO_DM_PG % dcs.sounddata_banks);
|
||||
space->machine().root_device().subbank("databank")->set_entry(DSIO_DM_PG % dcs.sounddata_banks);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -1429,7 +1429,7 @@ static WRITE16_HANDLER( denver_w )
|
||||
/* offset 2 controls RAM pages */
|
||||
case 2:
|
||||
dsio.reg[2] = data;
|
||||
memory_set_bank(space->machine(), "databank", DENV_DM_PG % dcs.sounddata_bank);
|
||||
space->machine().root_device().subbank("databank")->set_entry(DENV_DM_PG % dcs.sounddata_bank);
|
||||
break;
|
||||
|
||||
/* offset 3 controls FIFO reset */
|
||||
|
@ -402,7 +402,7 @@ static void set_ea(address_space &space, int ea)
|
||||
//printf("ea: %d\n", ea);
|
||||
//cputag_set_input_line(machine, "audiocpu", MCS48_INPUT_EA, (ea) ? ASSERT_LINE : CLEAR_LINE);
|
||||
if (state->m_eabank != NULL)
|
||||
memory_set_bank(space.machine(), state->m_eabank, ea);
|
||||
state->subbank(state->m_eabank)->set_entry(ea);
|
||||
}
|
||||
|
||||
/****************************************************************
|
||||
@ -426,8 +426,8 @@ static SOUND_START( mario )
|
||||
{
|
||||
state->m_eabank = "bank1";
|
||||
audiocpu->memory().space(AS_PROGRAM)->install_read_bank(0x000, 0x7ff, "bank1");
|
||||
memory_configure_bank(machine, "bank1", 0, 1, machine.region("audiocpu")->base(), 0);
|
||||
memory_configure_bank(machine, "bank1", 1, 1, machine.region("audiocpu")->base() + 0x1000, 0x800);
|
||||
state->subbank("bank1")->configure_entry(0, machine.region("audiocpu")->base());
|
||||
state->subbank("bank1")->configure_entry(1, machine.region("audiocpu")->base() + 0x1000);
|
||||
}
|
||||
|
||||
state->save_item(NAME(state->m_last));
|
||||
|
@ -120,7 +120,7 @@ void seibu_sound_decrypt(running_machine &machine,const char *cpu,int length)
|
||||
}
|
||||
|
||||
if (length > 0x10000)
|
||||
memory_configure_bank_decrypted(machine, "bank1", 0, (length - 0x10000) / 0x8000, decrypt + 0x10000, 0x8000);
|
||||
machine.root_device().subbank("bank1")->configure_decrypted_entries(0, (length - 0x10000) / 0x8000, decrypt + 0x10000, 0x8000);
|
||||
}
|
||||
|
||||
|
||||
@ -353,10 +353,10 @@ MACHINE_RESET( seibu_sound )
|
||||
update_irq_lines(machine, VECTOR_INIT);
|
||||
if (romlength > 0x10000)
|
||||
{
|
||||
memory_configure_bank(machine, "bank1", 0, (romlength - 0x10000) / 0x8000, rom + 0x10000, 0x8000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, (romlength - 0x10000) / 0x8000, rom + 0x10000, 0x8000);
|
||||
|
||||
/* Denjin Makai definitely needs this at start-up, it never writes to the bankswitch */
|
||||
memory_set_bank(machine, "bank1", 0);
|
||||
machine.root_device().subbank("bank1")->set_entry(0);
|
||||
}
|
||||
}
|
||||
|
||||
@ -367,7 +367,7 @@ static int main2sub_pending,sub2main_pending;
|
||||
|
||||
WRITE8_HANDLER( seibu_bank_w )
|
||||
{
|
||||
memory_set_bank(space->machine(), "bank1", data & 1);
|
||||
space->machine().root_device().subbank("bank1")->set_entry(data & 1);
|
||||
}
|
||||
|
||||
WRITE8_HANDLER( seibu_coin_w )
|
||||
|
@ -306,9 +306,9 @@ SOUND_RESET( taito_f3_soundsystem_reset )
|
||||
/* Sound cpu program loads to 0xc00000 so we use a bank */
|
||||
UINT16 *ROM = (UINT16 *)machine.region("audiocpu")->base();
|
||||
UINT16 *sound_ram = (UINT16 *)machine.memory().shared("share1")->ptr();
|
||||
memory_set_bankptr(machine, "bank1",&ROM[0x80000]);
|
||||
memory_set_bankptr(machine, "bank2",&ROM[0x90000]);
|
||||
memory_set_bankptr(machine, "bank3",&ROM[0xa0000]);
|
||||
machine.root_device().subbank("bank1")->set_base(&ROM[0x80000]);
|
||||
machine.root_device().subbank("bank2")->set_base(&ROM[0x90000]);
|
||||
machine.root_device().subbank("bank3")->set_base(&ROM[0xa0000]);
|
||||
|
||||
sound_ram[0]=ROM[0x80000]; /* Stack and Reset vectors */
|
||||
sound_ram[1]=ROM[0x80001];
|
||||
|
@ -71,7 +71,7 @@ correctly.
|
||||
|
||||
WRITE8_MEMBER(_1942_state::c1942_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x03);
|
||||
subbank("bank1")->set_entry(data & 0x03);
|
||||
}
|
||||
|
||||
static TIMER_DEVICE_CALLBACK( c1942_scanline )
|
||||
@ -506,7 +506,7 @@ ROM_END
|
||||
static DRIVER_INIT( 1942 )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 3, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 3, &ROM[0x10000], 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -644,7 +644,7 @@ ROM_END
|
||||
static DRIVER_INIT( 1943 )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x4000);
|
||||
}
|
||||
|
||||
READ8_MEMBER(_1943_state::_1943b_c007_r){ return 0; }
|
||||
|
@ -145,10 +145,10 @@ static void set_bankptr(running_machine &machine)
|
||||
if (state->m_game_selected == 0)
|
||||
{
|
||||
UINT8 *rom = machine.region("maincpu")->base();
|
||||
memory_set_bankptr(machine, "bank1", rom + 0x08000);
|
||||
state->subbank("bank1")->set_base(rom + 0x08000);
|
||||
}
|
||||
else
|
||||
memory_set_bankptr(machine, "bank1", state->m_ram_48000);
|
||||
state->subbank("bank1")->set_base(state->m_ram_48000);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(_20pacgal_state::ram_bank_select_w)
|
||||
|
@ -135,14 +135,14 @@ static MACHINE_RESET( 3do )
|
||||
|
||||
state->m_maincpu = downcast<legacy_cpu_device*>( machine.device("maincpu") );
|
||||
|
||||
memory_set_bankptr(machine, "bank2",machine.region("user1")->base());
|
||||
state->subbank("bank2")->set_base(machine.region("user1")->base());
|
||||
|
||||
/* configure overlay */
|
||||
memory_configure_bank(machine, "bank1", 0, 1, state->m_dram, 0);
|
||||
memory_configure_bank(machine, "bank1", 1, 1, machine.region("user1")->base(), 0);
|
||||
state->subbank("bank1")->configure_entry(0, state->m_dram);
|
||||
state->subbank("bank1")->configure_entry(1, machine.region("user1")->base());
|
||||
|
||||
/* start with overlay enabled */
|
||||
memory_set_bank(machine, "bank1", 1);
|
||||
state->subbank("bank1")->set_entry(1);
|
||||
|
||||
_3do_slow2_init(machine);
|
||||
_3do_madam_init(machine);
|
||||
|
@ -274,7 +274,7 @@ WRITE8_MEMBER(fortyl_state::bank_select_w)
|
||||
// popmessage("WRONG BANK SELECT = %x !!!!\n",data);
|
||||
}
|
||||
|
||||
memory_set_bank(machine(), "bank1", data & 1);
|
||||
subbank("bank1")->set_entry(data & 1);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(fortyl_state::pix1_w)
|
||||
@ -567,7 +567,7 @@ static DRIVER_INIT( undoukai )
|
||||
{
|
||||
fortyl_state *state = machine.driver_data<fortyl_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 2, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 2, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->m_pix_color[0] = 0x000;
|
||||
state->m_pix_color[1] = 0x1e3;
|
||||
@ -579,7 +579,7 @@ static DRIVER_INIT( 40love )
|
||||
{
|
||||
fortyl_state *state = machine.driver_data<fortyl_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 2, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 2, &ROM[0x10000], 0x2000);
|
||||
|
||||
#if 0
|
||||
/* character ROM hack
|
||||
|
@ -107,7 +107,7 @@ WRITE8_MEMBER(aerofgt_state::pending_command_clear_w)
|
||||
|
||||
WRITE8_MEMBER(aerofgt_state::aerofgt_sh_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x03);
|
||||
subbank("bank1")->set_entry(data & 0x03);
|
||||
}
|
||||
|
||||
|
||||
@ -1304,7 +1304,7 @@ static MACHINE_START( aerofgt )
|
||||
{
|
||||
UINT8 *rom = machine.region("audiocpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &rom[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 4, &rom[0x10000], 0x8000);
|
||||
|
||||
MACHINE_START_CALL(common);
|
||||
}
|
||||
@ -1319,7 +1319,7 @@ static MACHINE_RESET( aerofgt )
|
||||
{
|
||||
MACHINE_RESET_CALL(common);
|
||||
|
||||
memory_set_bank(machine, "bank1", 0); /* needed by spinlbrk */
|
||||
machine.root_device().subbank("bank1")->set_entry(0); /* needed by spinlbrk */
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( pspikes, aerofgt_state )
|
||||
|
@ -266,13 +266,13 @@ WRITE8_MEMBER(airbustr_state::master_nmi_trigger_w)
|
||||
|
||||
WRITE8_MEMBER(airbustr_state::master_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x07);
|
||||
subbank("bank1")->set_entry(data & 0x07);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(airbustr_state::slave_bankswitch_w)
|
||||
{
|
||||
|
||||
memory_set_bank(machine(), "bank2", data & 0x07);
|
||||
subbank("bank2")->set_entry(data & 0x07);
|
||||
|
||||
flip_screen_set(data & 0x10);
|
||||
|
||||
@ -282,7 +282,7 @@ WRITE8_MEMBER(airbustr_state::slave_bankswitch_w)
|
||||
|
||||
WRITE8_MEMBER(airbustr_state::sound_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank3", data & 0x07);
|
||||
subbank("bank3")->set_entry(data & 0x07);
|
||||
}
|
||||
|
||||
READ8_MEMBER(airbustr_state::soundcommand_status_r)
|
||||
@ -575,12 +575,12 @@ static MACHINE_START( airbustr )
|
||||
UINT8 *SLAVE = machine.region("slave")->base();
|
||||
UINT8 *AUDIO = machine.region("audiocpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 3, &MASTER[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank1", 3, 5, &MASTER[0x10000], 0x4000);
|
||||
memory_configure_bank(machine, "bank2", 0, 3, &SLAVE[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank2", 3, 5, &SLAVE[0x10000], 0x4000);
|
||||
memory_configure_bank(machine, "bank3", 0, 3, &AUDIO[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank3", 3, 5, &AUDIO[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 3, &MASTER[0x00000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(3, 5, &MASTER[0x10000], 0x4000);
|
||||
state->subbank("bank2")->configure_entries(0, 3, &SLAVE[0x00000], 0x4000);
|
||||
state->subbank("bank2")->configure_entries(3, 5, &SLAVE[0x10000], 0x4000);
|
||||
state->subbank("bank3")->configure_entries(0, 3, &AUDIO[0x00000], 0x4000);
|
||||
state->subbank("bank3")->configure_entries(3, 5, &AUDIO[0x10000], 0x4000);
|
||||
|
||||
state->m_master = machine.device("master");
|
||||
state->m_slave = machine.device("slave");
|
||||
@ -607,9 +607,9 @@ static MACHINE_RESET( airbustr )
|
||||
state->m_fg_scrolly = 0;
|
||||
state->m_highbits = 0;
|
||||
|
||||
memory_set_bank(machine, "bank1", 0x02);
|
||||
memory_set_bank(machine, "bank2", 0x02);
|
||||
memory_set_bank(machine, "bank3", 0x02);
|
||||
state->subbank("bank1")->set_entry(0x02);
|
||||
state->subbank("bank2")->set_entry(0x02);
|
||||
state->subbank("bank3")->set_entry(0x02);
|
||||
}
|
||||
|
||||
/* Machine Driver */
|
||||
|
@ -178,7 +178,7 @@ static WRITE8_DEVICE_HANDLER( mux_w )
|
||||
if( state->m_bank != new_bank)
|
||||
{
|
||||
state->m_bank = new_bank;
|
||||
memory_set_bank(device->machine(), "bank1", state->m_bank);
|
||||
state->subbank("bank1")->set_entry(state->m_bank);
|
||||
}
|
||||
|
||||
state->m_mux_data = data & ~0xc0;
|
||||
@ -359,7 +359,7 @@ static MACHINE_START( yumefuda )
|
||||
albazg_state *state = machine.driver_data<albazg_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->save_item(NAME(state->m_mux_data));
|
||||
state->save_item(NAME(state->m_bank));
|
||||
|
@ -225,7 +225,7 @@ static WRITE8_DEVICE_HANDLER( alg_cia_0_porta_w )
|
||||
address_space *space = device->machine().device("maincpu")->memory().space(AS_PROGRAM);
|
||||
|
||||
/* switch banks as appropriate */
|
||||
memory_set_bank(device->machine(), "bank1", data & 1);
|
||||
device->machine().root_device().subbank("bank1")->set_entry(data & 1);
|
||||
|
||||
/* swap the write handlers between ROM and bank 1 based on the bit */
|
||||
if ((data & 1) == 0)
|
||||
@ -699,8 +699,8 @@ static void alg_init(running_machine &machine)
|
||||
amiga_machine_config(machine, &alg_intf);
|
||||
|
||||
/* set up memory */
|
||||
memory_configure_bank(machine, "bank1", 0, 1, state->m_chip_ram, 0);
|
||||
memory_configure_bank(machine, "bank1", 1, 1, machine.region("user1")->base(), 0);
|
||||
state->subbank("bank1")->configure_entry(0, state->m_chip_ram);
|
||||
state->subbank("bank1")->configure_entry(1, machine.region("user1")->base());
|
||||
}
|
||||
|
||||
|
||||
|
@ -232,8 +232,8 @@ static MACHINE_START( aliens )
|
||||
aliens_state *state = machine.driver_data<aliens_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 20, &ROM[0x10000], 0x2000);
|
||||
memory_set_bank(machine, "bank1", 0);
|
||||
state->subbank("bank1")->configure_entries(0, 20, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->set_entry(0);
|
||||
|
||||
state->m_maincpu = machine.device("maincpu");
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
@ -545,7 +545,7 @@ static KONAMI_SETLINES_CALLBACK( aliens_banking )
|
||||
bank -= 4;
|
||||
|
||||
bank += (lines & 0x0f);
|
||||
memory_set_bank(device->machine(), "bank1", bank);
|
||||
device->machine().root_device().subbank("bank1")->set_entry(bank);
|
||||
}
|
||||
|
||||
GAME( 1990, aliens, 0, aliens, aliens, 0, ROT0, "Konami", "Aliens (World set 1)", GAME_SUPPORTS_SAVE )
|
||||
|
@ -738,7 +738,7 @@ ADDRESS_MAP_END
|
||||
|
||||
WRITE8_MEMBER(alpha68k_state::sound_bank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank7", data);
|
||||
subbank("bank7")->set_entry(data);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, alpha68k_state )
|
||||
@ -1905,7 +1905,7 @@ static MACHINE_START( alpha68k_V )
|
||||
alpha68k_state *state = machine.driver_data<alpha68k_state>();
|
||||
UINT8 *ROM = machine.region("audiocpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank7", 0, 32, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank7")->configure_entries(0, 32, &ROM[0x10000], 0x4000);
|
||||
|
||||
MACHINE_START_CALL(common);
|
||||
|
||||
@ -1941,7 +1941,7 @@ static MACHINE_START( alpha68k_II )
|
||||
alpha68k_state *state = machine.driver_data<alpha68k_state>();
|
||||
UINT8 *ROM = machine.region("audiocpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank7", 0, 28, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank7")->configure_entries(0, 28, &ROM[0x10000], 0x4000);
|
||||
|
||||
MACHINE_START_CALL(common);
|
||||
|
||||
@ -3222,7 +3222,7 @@ static DRIVER_INIT( btlfieldb )
|
||||
static DRIVER_INIT( skysoldr )
|
||||
{
|
||||
alpha68k_state *state = machine.driver_data<alpha68k_state>();
|
||||
memory_set_bankptr(machine, "bank8", (machine.region("user1")->base()) + 0x40000);
|
||||
state->subbank("bank8")->set_base((machine.region("user1")->base()) + 0x40000);
|
||||
state->m_invert_controls = 0;
|
||||
state->m_microcontroller_id = 0;
|
||||
state->m_coin_id = 0x22 | (0x22 << 8);
|
||||
@ -3241,7 +3241,7 @@ static DRIVER_INIT( goldmedl )
|
||||
static DRIVER_INIT( goldmedla )
|
||||
{
|
||||
alpha68k_state *state = machine.driver_data<alpha68k_state>();
|
||||
memory_set_bankptr(machine, "bank8", machine.region("maincpu")->base() + 0x20000);
|
||||
state->subbank("bank8")->set_base(machine.region("maincpu")->base() + 0x20000);
|
||||
state->m_invert_controls = 0;
|
||||
state->m_microcontroller_id = 0x8803; //Guess - routine to handle coinage is the same as in 'goldmedl'
|
||||
state->m_coin_id = 0x23 | (0x24 << 8);
|
||||
@ -3269,7 +3269,7 @@ static DRIVER_INIT( skyadvntu )
|
||||
static DRIVER_INIT( gangwarsu )
|
||||
{
|
||||
alpha68k_state *state = machine.driver_data<alpha68k_state>();
|
||||
memory_set_bankptr(machine, "bank8", machine.region("user1")->base());
|
||||
state->subbank("bank8")->set_base(machine.region("user1")->base());
|
||||
state->m_invert_controls = 0;
|
||||
state->m_microcontroller_id = 0x8512;
|
||||
state->m_coin_id = 0x23 | (0x24 << 8);
|
||||
@ -3279,7 +3279,7 @@ static DRIVER_INIT( gangwarsu )
|
||||
static DRIVER_INIT( gangwars )
|
||||
{
|
||||
alpha68k_state *state = machine.driver_data<alpha68k_state>();
|
||||
memory_set_bankptr(machine, "bank8", machine.region("user1")->base());
|
||||
state->subbank("bank8")->set_base(machine.region("user1")->base());
|
||||
state->m_invert_controls = 0;
|
||||
state->m_microcontroller_id = 0x8512;
|
||||
state->m_coin_id = 0x23 | (0x24 << 8);
|
||||
|
@ -140,7 +140,7 @@ Dumped by Chackn
|
||||
|
||||
WRITE8_MEMBER(angelkds_state::angelkds_cpu_bank_write)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f); // shall we check (data & 0x0f) < # of available banks (8 or 10 resp.)?
|
||||
subbank("bank1")->set_entry(data & 0x0f); // shall we check (data & 0x0f) < # of available banks (8 or 10 resp.)?
|
||||
}
|
||||
|
||||
|
||||
@ -745,7 +745,7 @@ ROM_END
|
||||
static DRIVER_INIT( angelkds )
|
||||
{
|
||||
UINT8 *RAM = machine.region("user1")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &RAM[0x0000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &RAM[0x0000], 0x4000);
|
||||
}
|
||||
|
||||
static DRIVER_INIT( spcpostn )
|
||||
@ -753,7 +753,7 @@ static DRIVER_INIT( spcpostn )
|
||||
UINT8 *RAM = machine.region("user1")->base();
|
||||
|
||||
sega_317_0005_decode(machine, "maincpu");
|
||||
memory_configure_bank(machine, "bank1", 0, 10, &RAM[0x0000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 10, &RAM[0x0000], 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -68,7 +68,7 @@ WRITE16_MEMBER(aquarium_state::aquarium_sound_w)
|
||||
|
||||
WRITE8_MEMBER(aquarium_state::aquarium_z80_bank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x07);
|
||||
subbank("bank1")->set_entry(data & 0x07);
|
||||
}
|
||||
|
||||
static UINT8 aquarium_snd_bitswap( UINT8 scrambled_data )
|
||||
@ -276,8 +276,8 @@ static DRIVER_INIT( aquarium )
|
||||
}
|
||||
|
||||
/* configure and set up the sound bank */
|
||||
memory_configure_bank(machine, "bank1", 0, 7, &Z80[0x18000], 0x8000);
|
||||
memory_set_bank(machine, "bank1", 1);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 7, &Z80[0x18000], 0x8000);
|
||||
machine.root_device().subbank("bank1")->set_entry(1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -104,7 +104,7 @@ WRITE16_MEMBER(arcadia_amiga_state::arcadia_multibios_change_game)
|
||||
static WRITE8_DEVICE_HANDLER( arcadia_cia_0_porta_w )
|
||||
{
|
||||
/* switch banks as appropriate */
|
||||
memory_set_bank(device->machine(), "bank1", data & 1);
|
||||
device->machine().root_device().subbank("bank1")->set_entry(data & 1);
|
||||
|
||||
/* swap the write handlers between ROM and bank 1 based on the bit */
|
||||
if ((data & 1) == 0)
|
||||
@ -808,8 +808,8 @@ static void arcadia_init(running_machine &machine)
|
||||
amiga_machine_config(machine, &arcadia_intf);
|
||||
|
||||
/* set up memory */
|
||||
memory_configure_bank(machine, "bank1", 0, 1, state->m_chip_ram, 0);
|
||||
memory_configure_bank(machine, "bank1", 1, 1, machine.region("user1")->base(), 0);
|
||||
state->subbank("bank1")->configure_entry(0, state->m_chip_ram);
|
||||
state->subbank("bank1")->configure_entry(1, machine.region("user1")->base());
|
||||
|
||||
/* OnePlay bios is encrypted, TenPlay is not */
|
||||
biosrom = (UINT16 *)machine.region("user2")->base();
|
||||
|
@ -180,7 +180,7 @@ WRITE8_MEMBER(argus_state::argus_bankselect_w)
|
||||
int bankaddress;
|
||||
|
||||
bankaddress = 0x10000 + ((data & 7) * 0x4000);
|
||||
memory_set_bankptr(machine(), "bank1", &RAM[bankaddress]); /* Select 8 banks of 16k */
|
||||
subbank("bank1")->set_base(&RAM[bankaddress]); /* Select 8 banks of 16k */
|
||||
}
|
||||
|
||||
|
||||
|
@ -289,8 +289,8 @@ WRITE32_MEMBER(aristmk5_state::sram_banksel_w)
|
||||
|
||||
4 pages of 32k for each sram chip.
|
||||
*/
|
||||
memory_set_bank(machine(),"sram_bank", (data & 0xc0) >> 6);
|
||||
memory_set_bank(machine(),"sram_bank_nz", (data & 0xc0) >> 6);
|
||||
subbank("sram_bank")->set_entry((data & 0xc0) >> 6);
|
||||
subbank("sram_bank_nz")->set_entry((data & 0xc0) >> 6);
|
||||
}
|
||||
|
||||
/* U.S games have no dram emulator enabled */
|
||||
@ -364,8 +364,8 @@ static DRIVER_INIT( aristmk5 )
|
||||
|
||||
archimedes_driver_init(machine);
|
||||
|
||||
memory_configure_bank(machine, "sram_bank", 0, 4, &SRAM[0], 0x20000);
|
||||
memory_configure_bank(machine, "sram_bank_nz", 0, 4, &SRAM_NZ[0], 0x20000);
|
||||
machine.root_device().subbank("sram_bank")->configure_entries(0, 4, &SRAM[0], 0x20000);
|
||||
machine.root_device().subbank("sram_bank_nz")->configure_entries(0, 4, &SRAM_NZ[0], 0x20000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1671,7 +1671,7 @@ static DRIVER_INIT( hexa )
|
||||
RAM[0x0126] = 0x00;
|
||||
#endif
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 2, &RAM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 2, &RAM[0x10000], 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -287,7 +287,7 @@ static WRITE8_DEVICE_HANDLER( ym2203_write_a )
|
||||
|
||||
static WRITE8_DEVICE_HANDLER( ym2203_write_b )
|
||||
{
|
||||
memory_set_bank(device->machine(), "bank4", data & 0x0f);
|
||||
device->machine().root_device().subbank("bank4")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -463,9 +463,9 @@ ROM_END
|
||||
static DRIVER_INIT( ashnojoe )
|
||||
{
|
||||
UINT8 *ROM = machine.region("adpcm")->base();
|
||||
memory_configure_bank(machine, "bank4", 0, 16, &ROM[0x00000], 0x8000);
|
||||
machine.root_device().subbank("bank4")->configure_entries(0, 16, &ROM[0x00000], 0x8000);
|
||||
|
||||
memory_set_bank(machine, "bank4", 0);
|
||||
machine.root_device().subbank("bank4")->set_entry(0);
|
||||
}
|
||||
|
||||
GAME( 1990, scessjoe, 0, ashnojoe, ashnojoe, ashnojoe, ROT0, "Wave / Taito Corporation", "Success Joe (World)", GAME_SUPPORTS_SAVE )
|
||||
|
@ -428,7 +428,7 @@ WRITE8_MEMBER(astrocde_state::profpac_banksw_w)
|
||||
|
||||
/* set the main banking */
|
||||
prog_space->install_read_bank(0x4000, 0xbfff, "bank1");
|
||||
memory_set_bankptr(machine(), "bank1", machine().region("user1")->base() + 0x8000 * bank);
|
||||
subbank("bank1")->set_base(machine().region("user1")->base() + 0x8000 * bank);
|
||||
|
||||
/* bank 0 reads video RAM in the 4000-7FFF range */
|
||||
if (bank == 0)
|
||||
@ -444,7 +444,7 @@ WRITE8_MEMBER(astrocde_state::profpac_banksw_w)
|
||||
if (bank < 0x28)
|
||||
{
|
||||
prog_space->install_read_bank(0x4000, 0x7fff, "bank2");
|
||||
memory_set_bankptr(machine(), "bank2", machine().region("user2")->base() + 0x4000 * bank);
|
||||
subbank("bank2")->set_base(machine().region("user2")->base() + 0x4000 * bank);
|
||||
}
|
||||
else
|
||||
prog_space->unmap_read(0x4000, 0x7fff);
|
||||
|
@ -249,12 +249,12 @@ static INTERRUPT_GEN( cadash_interrupt )
|
||||
|
||||
WRITE8_MEMBER(asuka_state::sound_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x03);
|
||||
subbank("bank1")->set_entry(data & 0x03);
|
||||
}
|
||||
|
||||
static WRITE8_DEVICE_HANDLER( sound_bankswitch_2151_w )
|
||||
{
|
||||
memory_set_bank(device->machine(), "bank1", data & 0x03);
|
||||
device->machine().root_device().subbank("bank1")->set_entry(data & 0x03);
|
||||
}
|
||||
|
||||
|
||||
@ -842,8 +842,8 @@ static MACHINE_START( asuka )
|
||||
state->m_tc0100scn = machine.device("tc0100scn");
|
||||
|
||||
/* configure the banks */
|
||||
memory_configure_bank(machine, "bank1", 0, 1, machine.region("audiocpu")->base(), 0);
|
||||
memory_configure_bank(machine, "bank1", 1, 3, machine.region("audiocpu")->base() + 0x10000, 0x04000);
|
||||
state->subbank("bank1")->configure_entry(0, machine.region("audiocpu")->base());
|
||||
state->subbank("bank1")->configure_entries(1, 3, machine.region("audiocpu")->base() + 0x10000, 0x04000);
|
||||
|
||||
state->save_item(NAME(state->m_adpcm_pos));
|
||||
state->save_item(NAME(state->m_adpcm_data));
|
||||
|
@ -583,7 +583,7 @@ WRITE16_MEMBER(atarisy4_state::dsp0_bank_w)
|
||||
}
|
||||
|
||||
data &= 0x3800;
|
||||
memory_set_bankptr(machine(), "dsp0_bank1", &m_shared_ram[0][data]);
|
||||
subbank("dsp0_bank1")->set_base(&m_shared_ram[0][data]);
|
||||
m_dsp_bank[0] = data;
|
||||
}
|
||||
|
||||
@ -617,7 +617,7 @@ WRITE16_MEMBER(atarisy4_state::dsp1_bank_w)
|
||||
}
|
||||
|
||||
data &= 0x3800;
|
||||
memory_set_bankptr(machine(), "dsp1_bank1", &m_shared_ram[1][data]);
|
||||
subbank("dsp1_bank1")->set_base(&m_shared_ram[1][data]);
|
||||
m_dsp_bank[1] = data;
|
||||
}
|
||||
|
||||
@ -973,8 +973,8 @@ static DRIVER_INIT( laststar )
|
||||
load_hexfile(main, machine.region("data")->base());
|
||||
|
||||
/* Set up the DSP */
|
||||
memory_set_bankptr(machine, "dsp0_bank0", state->m_shared_ram[0]);
|
||||
memory_set_bankptr(machine, "dsp0_bank1", &state->m_shared_ram[0][0x800]);
|
||||
state->subbank("dsp0_bank0")->set_base(state->m_shared_ram[0]);
|
||||
state->subbank("dsp0_bank1")->set_base(&state->m_shared_ram[0][0x800]);
|
||||
load_ldafile(machine.device("dsp0")->memory().space(AS_PROGRAM), machine.region("dsp")->base());
|
||||
}
|
||||
|
||||
@ -989,13 +989,13 @@ static DRIVER_INIT( airrace )
|
||||
load_hexfile(machine.device("maincpu")->memory().space(AS_PROGRAM), machine.region("code")->base());
|
||||
|
||||
/* Set up the first DSP */
|
||||
memory_set_bankptr(machine, "dsp0_bank0", state->m_shared_ram[0]);
|
||||
memory_set_bankptr(machine, "dsp0_bank1", &state->m_shared_ram[0][0x800]);
|
||||
state->subbank("dsp0_bank0")->set_base(state->m_shared_ram[0]);
|
||||
state->subbank("dsp0_bank1")->set_base(&state->m_shared_ram[0][0x800]);
|
||||
load_ldafile(machine.device("dsp0")->memory().space(AS_PROGRAM), machine.region("dsp")->base());
|
||||
|
||||
/* Set up the second DSP */
|
||||
memory_set_bankptr(machine, "dsp1_bank0", state->m_shared_ram[1]);
|
||||
memory_set_bankptr(machine, "dsp1_bank1", &state->m_shared_ram[1][0x800]);
|
||||
state->subbank("dsp1_bank0")->set_base(state->m_shared_ram[1]);
|
||||
state->subbank("dsp1_bank1")->set_base(&state->m_shared_ram[1][0x800]);
|
||||
load_ldafile(machine.device("dsp1")->memory().space(AS_PROGRAM), machine.region("dsp")->base());
|
||||
}
|
||||
|
||||
|
@ -40,7 +40,7 @@ WRITE8_MEMBER(battlnts_state::battlnts_sh_irqtrigger_w)
|
||||
WRITE8_MEMBER(battlnts_state::battlnts_bankswitch_w)
|
||||
{
|
||||
/* bits 6 & 7 = bank number */
|
||||
memory_set_bank(machine(), "bank1", (data & 0xc0) >> 6);
|
||||
subbank("bank1")->set_entry((data & 0xc0) >> 6);
|
||||
|
||||
/* bits 4 & 5 = coin counters */
|
||||
coin_counter_w(machine(), 0, data & 0x10);
|
||||
@ -226,7 +226,7 @@ static MACHINE_START( battlnts )
|
||||
battlnts_state *state = machine.driver_data<battlnts_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x4000);
|
||||
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
state->m_k007342 = machine.device("k007342");
|
||||
|
@ -1023,15 +1023,15 @@ INLINE void z80_bank(running_machine &machine, int num, int data)
|
||||
{
|
||||
UINT32 offset = ((state->m_bank_data[0] >> 1) * 0x20000) + ((0x4000 * data) ^ ((state->m_bank_data[0] & 1) ? 0 : 0x10000));
|
||||
|
||||
memory_set_bankptr(machine, bank_names[num - 1], machine.region("user1")->base() + offset);
|
||||
state->subbank(bank_names[num - 1])->set_base(machine.region("user1")->base() + offset);
|
||||
}
|
||||
else if (data < 0x10)
|
||||
{
|
||||
memory_set_bankptr(machine, bank_names[num - 1], &state->m_video_ram[(data - 0x08) * 0x4000]);
|
||||
state->subbank(bank_names[num - 1])->set_base(&state->m_video_ram[(data - 0x08) * 0x4000]);
|
||||
}
|
||||
else
|
||||
{
|
||||
memory_set_bankptr(machine, bank_names[num - 1], &state->m_work_ram[(data - 0x10) * 0x4000]);
|
||||
state->subbank(bank_names[num - 1])->set_base(&state->m_work_ram[(data - 0x10) * 0x4000]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1735,7 +1735,7 @@ static DRIVER_INIT( bfcobra )
|
||||
state->m_bank_data[3] = 0;
|
||||
|
||||
/* Fixed 16kB ROM region */
|
||||
memory_set_bankptr(machine, "bank4", machine.region("user1")->base());
|
||||
state->subbank("bank4")->set_base(machine.region("user1")->base());
|
||||
|
||||
/* TODO: Properly sort out the data ACIA */
|
||||
state->m_data_r = 1;
|
||||
|
@ -192,7 +192,7 @@ static int Scorpion1_GetSwitchState(bfm_sc1_state *drvstate, int strobe, int dat
|
||||
WRITE8_MEMBER(bfm_sc1_state::bankswitch_w)
|
||||
{
|
||||
// printf("bankswitch %02x\n", data);
|
||||
memory_set_bank(machine(),"bank1",data & 0x03);
|
||||
subbank("bank1")->set_entry(data & 0x03);
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
@ -670,8 +670,8 @@ static MACHINE_RESET( bfm_sc1 )
|
||||
{
|
||||
UINT8 *rom = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine,"bank1", 0, 4, &rom[0x0000], 0x02000);
|
||||
memory_set_bank(machine,"bank1",state->m_defaultbank);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &rom[0x0000], 0x02000);
|
||||
state->subbank("bank1")->set_entry(state->m_defaultbank);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -380,9 +380,9 @@ static void on_scorpion2_reset(running_machine &machine)
|
||||
{
|
||||
UINT8 *rom = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &rom[0x00000], 0x02000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &rom[0x00000], 0x02000);
|
||||
|
||||
memory_set_bank(machine, "bank1",3);
|
||||
state->subbank("bank1")->set_entry(3);
|
||||
}
|
||||
}
|
||||
|
||||
@ -476,7 +476,7 @@ static NVRAM_HANDLER( bfm_sc2 )
|
||||
|
||||
WRITE8_MEMBER(bfm_sc2_state::bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1",data & 0x03);
|
||||
subbank("bank1")->set_entry(data & 0x03);
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
@ -70,7 +70,7 @@ WRITE8_MEMBER(bigevglf_state::beg_banking_w)
|
||||
/* d0-d3 connect to A11-A14 of the ROMs (via ls273 latch)
|
||||
d4-d7 select one of ROMs (via ls273(above) and then ls154)
|
||||
*/
|
||||
memory_set_bank(machine(), "bank1", m_beg_bank & 0xff); /* empty sockets for IC37-IC44 ROMS */
|
||||
subbank("bank1")->set_entry(m_beg_bank & 0xff); /* empty sockets for IC37-IC44 ROMS */
|
||||
}
|
||||
|
||||
static TIMER_CALLBACK( from_sound_latch_callback )
|
||||
@ -620,7 +620,7 @@ ROM_END
|
||||
static DRIVER_INIT( bigevglf )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 0xff, &ROM[0x10000], 0x800);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 0xff, &ROM[0x10000], 0x800);
|
||||
}
|
||||
|
||||
GAME( 1986, bigevglf, 0, bigevglf, bigevglf, bigevglf, ROT270, "Taito America Corporation", "Big Event Golf (US)", GAME_NO_COCKTAIL | GAME_SUPPORTS_SAVE )
|
||||
|
@ -80,7 +80,7 @@ WRITE8_MEMBER(bladestl_state::bladestl_bankswitch_w)
|
||||
/* bit 4 = relay (???) */
|
||||
|
||||
/* bits 5-6 = bank number */
|
||||
memory_set_bank(machine(), "bank1", (data & 0x60) >> 5);
|
||||
subbank("bank1")->set_entry((data & 0x60) >> 5);
|
||||
|
||||
/* bit 7 = select sprite bank */
|
||||
m_spritebank = (data & 0x80) << 3;
|
||||
@ -303,7 +303,7 @@ static MACHINE_START( bladestl )
|
||||
bladestl_state *state = machine.driver_data<bladestl_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
state->m_k007342 = machine.device("k007342");
|
||||
|
@ -54,7 +54,7 @@ WRITE8_MEMBER(blktiger_state::blktiger_to_main_w)
|
||||
|
||||
WRITE8_MEMBER(blktiger_state::blktiger_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(blktiger_state::blktiger_coinlockout_w)
|
||||
@ -283,7 +283,7 @@ static MACHINE_START( blktiger )
|
||||
state->m_mcu = machine.device("mcu");
|
||||
|
||||
/* configure bankswitching */
|
||||
memory_configure_bank(machine, "bank1", 0, 16, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 16, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
|
||||
state->save_item(NAME(state->m_scroll_bank));
|
||||
state->save_item(NAME(state->m_screen_layout));
|
||||
@ -301,7 +301,7 @@ static MACHINE_RESET( blktiger )
|
||||
blktiger_state *state = machine.driver_data<blktiger_state>();
|
||||
|
||||
/* configure bankswitching */
|
||||
memory_configure_bank(machine, "bank1", 0, 16, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 16, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
|
||||
state->m_scroll_x[0] = 0;
|
||||
state->m_scroll_x[1] = 0;
|
||||
|
@ -191,7 +191,7 @@ static MACHINE_START( blockhl )
|
||||
blockhl_state *state = machine.driver_data<blockhl_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->m_maincpu = machine.device("maincpu");
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
@ -318,7 +318,7 @@ static KONAMI_SETLINES_CALLBACK( blockhl_banking )
|
||||
|
||||
/* bits 0-1 = ROM bank */
|
||||
state->m_rombank = lines & 0x03;
|
||||
memory_set_bank(device->machine(), "bank1", state->m_rombank);
|
||||
state->subbank("bank1")->set_entry(state->m_rombank);
|
||||
|
||||
/* bits 3/4 = coin counters */
|
||||
coin_counter_w(device->machine(), 0, lines & 0x08);
|
||||
|
@ -1487,7 +1487,7 @@ static DRIVER_INIT (bnstars)
|
||||
decrypt_ms32_tx(machine, 0x00020,0x7e, "gfx7");
|
||||
decrypt_ms32_bg(machine, 0x00001,0x9b, "gfx6");
|
||||
|
||||
memory_set_bankptr(machine, "bank1", machine.region("maincpu")->base());
|
||||
machine.root_device().subbank("bank1")->set_base(machine.region("maincpu")->base());
|
||||
}
|
||||
|
||||
GAME( 1997, bnstars1, 0, bnstars, bnstars, bnstars, ROT0, "Jaleco", "Vs. Janshi Brandnew Stars", GAME_IMPERFECT_GRAPHICS | GAME_NO_SOUND )
|
||||
|
@ -110,7 +110,7 @@ WRITE8_MEMBER(bottom9_state::bankswitch_w)
|
||||
else
|
||||
bank = ((data & 0x0e) >> 1);
|
||||
|
||||
memory_set_bank(machine(), "bank1", bank);
|
||||
subbank("bank1")->set_entry(bank);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bottom9_state::bottom9_1f90_w)
|
||||
@ -324,7 +324,7 @@ static MACHINE_START( bottom9 )
|
||||
bottom9_state *state = machine.driver_data<bottom9_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 12, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 12, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->m_maincpu = machine.device("maincpu");
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
|
@ -661,7 +661,7 @@ ROM_END
|
||||
static DRIVER_INIT( brkthru )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x2000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x2000);
|
||||
}
|
||||
|
||||
/*************************************
|
||||
|
@ -2164,7 +2164,7 @@ static DRIVER_INIT( cookrace )
|
||||
decrypt_C10707_cpu(machine, "maincpu");
|
||||
|
||||
machine.device("audiocpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0200, 0x0fff, "bank10");
|
||||
memory_set_bankptr(machine, "bank10", machine.region("audiocpu")->base() + 0xe200);
|
||||
state->subbank("bank10")->set_base(machine.region("audiocpu")->base() + 0xe200);
|
||||
state->m_audio_nmi_enable_type = AUDIO_ENABLE_DIRECT;
|
||||
}
|
||||
|
||||
@ -2183,7 +2183,7 @@ static DRIVER_INIT( wtennis )
|
||||
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_read_handler(0xc15f, 0xc15f, read8_delegate(FUNC(btime_state::wtennis_reset_hack_r),state));
|
||||
|
||||
machine.device("audiocpu")->memory().space(AS_PROGRAM)->install_read_bank(0x0200, 0x0fff, "bank10");
|
||||
memory_set_bankptr(machine, "bank10", machine.region("audiocpu")->base() + 0xe200);
|
||||
state->subbank("bank10")->set_base(machine.region("audiocpu")->base() + 0xe200);
|
||||
state->m_audio_nmi_enable_type = AUDIO_ENABLE_AY8910;
|
||||
}
|
||||
|
||||
|
@ -1553,7 +1553,7 @@ ROM_END
|
||||
static void configure_banks( running_machine& machine )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x4000);
|
||||
}
|
||||
|
||||
static DRIVER_INIT( bublbobl )
|
||||
|
@ -88,7 +88,7 @@ Dip locations and factory settings verified from dip listing
|
||||
|
||||
WRITE8_MEMBER(buggychl_state::bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x07); // shall we check if data&7 < # banks?
|
||||
subbank("bank1")->set_entry(data & 0x07); // shall we check if data&7 < # banks?
|
||||
}
|
||||
|
||||
static TIMER_CALLBACK( nmi_callback )
|
||||
@ -361,7 +361,7 @@ static MACHINE_START( buggychl )
|
||||
buggychl_state *state = machine.driver_data<buggychl_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 6, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 6, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
|
||||
|
@ -851,7 +851,7 @@ static void seibu_sound_bootleg(running_machine &machine,const char *cpu,int len
|
||||
memcpy(decrypt, rom+length, length);
|
||||
|
||||
if (length > 0x10000)
|
||||
memory_configure_bank_decrypted(machine, "bank1", 0, (length - 0x10000) / 0x8000, decrypt + 0x10000, 0x8000);
|
||||
machine.root_device().subbank("bank1")->configure_decrypted_entries(0, (length - 0x10000) / 0x8000, decrypt + 0x10000, 0x8000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -339,7 +339,7 @@ static void mxtc_config_w(device_t *busdevice, device_t *device, int function, i
|
||||
//if (data & 0x10) // enable RAM access to region 0xf0000 - 0xfffff
|
||||
if ((data & 0x50) | (data & 0xA0))
|
||||
{
|
||||
memory_set_bankptr(busdevice->machine(), "bank1", state->m_bios_ram);
|
||||
state->subbank("bank1")->set_base(state->m_bios_ram);
|
||||
}
|
||||
else // disable RAM access (reads go to BIOS ROM)
|
||||
{
|
||||
@ -352,8 +352,8 @@ static void mxtc_config_w(device_t *busdevice, device_t *device, int function, i
|
||||
}
|
||||
#endif
|
||||
|
||||
//memory_set_bankptr(busdevice->machine(), "bank1", busdevice->machine().region("bios")->base() + 0x10000);
|
||||
memory_set_bankptr(busdevice->machine(), "bank1", busdevice->machine().region("bios")->base());
|
||||
state->subbank("bank1")->set_base(busdevice->machine().region("bios")->base() + 0x10000);
|
||||
state->subbank("bank1")->set_base(busdevice->machine().region("bios")->base());
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -865,8 +865,8 @@ static const struct pit8253_config calchase_pit8254_config =
|
||||
|
||||
static MACHINE_RESET(calchase)
|
||||
{
|
||||
//memory_set_bankptr(machine, "bank1", machine.region("bios")->base() + 0x10000);
|
||||
memory_set_bankptr(machine, "bank1", machine.region("bios")->base());
|
||||
//machine.root_device().subbank("bank1")->set_base(machine.region("bios")->base() + 0x10000);
|
||||
machine.root_device().subbank("bank1")->set_base(machine.region("bios")->base());
|
||||
}
|
||||
|
||||
static void set_gate_a20(running_machine &machine, int a20)
|
||||
|
@ -139,7 +139,7 @@ static TIMER_CALLBACK( capbowl_update )
|
||||
WRITE8_MEMBER(capbowl_state::capbowl_rom_select_w)
|
||||
{
|
||||
// 2009-11 FP: shall we add a check to be sure that bank < 6?
|
||||
memory_set_bank(machine(), "bank1", ((data & 0x0c) >> 1) + (data & 0x01));
|
||||
subbank("bank1")->set_entry(((data & 0x0c) >> 1) + (data & 0x01));
|
||||
}
|
||||
|
||||
|
||||
@ -502,7 +502,7 @@ static DRIVER_INIT( capbowl )
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
/* configure ROM banks in 0x0000-0x3fff */
|
||||
memory_configure_bank(machine, "bank1", 0, 6, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 6, &ROM[0x10000], 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1047,15 +1047,15 @@ WRITE8_MEMBER(cave_state::hotdogst_rombank_w)
|
||||
if (data & ~0x0f)
|
||||
logerror("CPU #1 - PC %04X: Bank %02X\n", cpu_get_pc(&space.device()), data);
|
||||
|
||||
memory_set_bank(machine(), "bank2", data & 0x0f);
|
||||
subbank("bank2")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(cave_state::hotdogst_okibank_w)
|
||||
{
|
||||
int bank1 = (data >> 0) & 0x3;
|
||||
int bank2 = (data >> 4) & 0x3;
|
||||
memory_set_bank(machine(), "bank3", bank1);
|
||||
memory_set_bank(machine(), "bank4", bank2);
|
||||
subbank("bank3")->set_entry(bank1);
|
||||
subbank("bank4")->set_entry(bank2);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( hotdogst_sound_map, AS_PROGRAM, 8, cave_state )
|
||||
@ -1084,7 +1084,7 @@ WRITE8_MEMBER(cave_state::mazinger_rombank_w)
|
||||
if (data & ~0x07)
|
||||
logerror("CPU #1 - PC %04X: Bank %02X\n", cpu_get_pc(&space.device()), data);
|
||||
|
||||
memory_set_bank(machine(), "bank2", data & 0x07);
|
||||
subbank("bank2")->set_entry(data & 0x07);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( mazinger_sound_map, AS_PROGRAM, 8, cave_state )
|
||||
@ -1115,23 +1115,23 @@ WRITE8_MEMBER(cave_state::metmqstr_rombank_w)
|
||||
if (data & ~0x0f)
|
||||
logerror("CPU #1 - PC %04X: Bank %02X\n", cpu_get_pc(&space.device()), data);
|
||||
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(cave_state::metmqstr_okibank0_w)
|
||||
{
|
||||
int bank1 = (data >> 0) & 0x7;
|
||||
int bank2 = (data >> 4) & 0x7;
|
||||
memory_set_bank(machine(), "bank3", bank1);
|
||||
memory_set_bank(machine(), "bank4", bank2);
|
||||
subbank("bank3")->set_entry(bank1);
|
||||
subbank("bank4")->set_entry(bank2);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(cave_state::metmqstr_okibank1_w)
|
||||
{
|
||||
int bank1 = (data >> 0) & 0x7;
|
||||
int bank2 = (data >> 4) & 0x7;
|
||||
memory_set_bank(machine(), "bank5", bank1);
|
||||
memory_set_bank(machine(), "bank6", bank2);
|
||||
subbank("bank5")->set_entry(bank1);
|
||||
subbank("bank6")->set_entry(bank2);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( metmqstr_sound_map, AS_PROGRAM, 8, cave_state )
|
||||
@ -1163,7 +1163,7 @@ WRITE8_MEMBER(cave_state::pwrinst2_rombank_w)
|
||||
if (data & ~0x07)
|
||||
logerror("CPU #1 - PC %04X: Bank %02X\n", cpu_get_pc(&space.device()), data);
|
||||
|
||||
memory_set_bank(machine(), "bank1", data & 0x07);
|
||||
subbank("bank1")->set_entry(data & 0x07);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( pwrinst2_sound_map, AS_PROGRAM, 8, cave_state )
|
||||
@ -1205,23 +1205,23 @@ WRITE8_MEMBER(cave_state::sailormn_rombank_w)
|
||||
if (data & ~0x1f)
|
||||
logerror("CPU #1 - PC %04X: Bank %02X\n", cpu_get_pc(&space.device()), data);
|
||||
|
||||
memory_set_bank(machine(), "bank1", data & 0x1f);
|
||||
subbank("bank1")->set_entry(data & 0x1f);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(cave_state::sailormn_okibank0_w)
|
||||
{
|
||||
int bank1 = (data >> 0) & 0xf;
|
||||
int bank2 = (data >> 4) & 0xf;
|
||||
memory_set_bank(machine(), "bank3", bank1);
|
||||
memory_set_bank(machine(), "bank4", bank2);
|
||||
subbank("bank3")->set_entry(bank1);
|
||||
subbank("bank4")->set_entry(bank2);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(cave_state::sailormn_okibank1_w)
|
||||
{
|
||||
int bank1 = (data >> 0) & 0xf;
|
||||
int bank2 = (data >> 4) & 0xf;
|
||||
memory_set_bank(machine(), "bank5", bank1);
|
||||
memory_set_bank(machine(), "bank6", bank2);
|
||||
subbank("bank5")->set_entry(bank1);
|
||||
subbank("bank6")->set_entry(bank2);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( sailormn_sound_map, AS_PROGRAM, 8, cave_state )
|
||||
@ -4449,16 +4449,16 @@ static DRIVER_INIT( agallet )
|
||||
UINT8 *ROM = machine.region("audiocpu")->base();
|
||||
init_cave(machine);
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 0x02, &ROM[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank1", 2, 0x1e, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 0x02, &ROM[0x00000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(2, 0x1e, &ROM[0x10000], 0x4000);
|
||||
|
||||
ROM = machine.region("oki1")->base();
|
||||
memory_configure_bank(machine, "bank3", 0, 0x10, &ROM[0x00000], 0x20000);
|
||||
memory_configure_bank(machine, "bank4", 0, 0x10, &ROM[0x00000], 0x20000);
|
||||
machine.root_device().subbank("bank3")->configure_entries(0, 0x10, &ROM[0x00000], 0x20000);
|
||||
machine.root_device().subbank("bank4")->configure_entries(0, 0x10, &ROM[0x00000], 0x20000);
|
||||
|
||||
ROM = machine.region("oki2")->base();
|
||||
memory_configure_bank(machine, "bank5", 0, 0x10, &ROM[0x00000], 0x20000);
|
||||
memory_configure_bank(machine, "bank6", 0, 0x10, &ROM[0x00000], 0x20000);
|
||||
machine.root_device().subbank("bank5")->configure_entries(0, 0x10, &ROM[0x00000], 0x20000);
|
||||
machine.root_device().subbank("bank6")->configure_entries(0, 0x10, &ROM[0x00000], 0x20000);
|
||||
|
||||
sailormn_unpack_tiles(machine, "layer2");
|
||||
|
||||
@ -4548,12 +4548,12 @@ static DRIVER_INIT( hotdogst )
|
||||
|
||||
init_cave(machine);
|
||||
|
||||
memory_configure_bank(machine, "bank2", 0, 0x2, &ROM[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank2", 2, 0xe, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank2")->configure_entries(0, 0x2, &ROM[0x00000], 0x4000);
|
||||
state->subbank("bank2")->configure_entries(2, 0xe, &ROM[0x10000], 0x4000);
|
||||
|
||||
ROM = machine.region("oki")->base();
|
||||
memory_configure_bank(machine, "bank3", 0, 4, &ROM[0x00000], 0x20000);
|
||||
memory_configure_bank(machine, "bank4", 0, 4, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank3")->configure_entries(0, 4, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank4")->configure_entries(0, 4, &ROM[0x00000], 0x20000);
|
||||
|
||||
unpack_sprites(machine);
|
||||
state->m_spritetype[0] = 2; // Normal sprites with different position handling
|
||||
@ -4570,12 +4570,12 @@ static DRIVER_INIT( mazinger )
|
||||
|
||||
init_cave(machine);
|
||||
|
||||
memory_configure_bank(machine, "bank2", 0, 2, &ROM[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank2", 2, 6, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank2")->configure_entries(0, 2, &ROM[0x00000], 0x4000);
|
||||
state->subbank("bank2")->configure_entries(2, 6, &ROM[0x10000], 0x4000);
|
||||
|
||||
ROM = machine.region("oki")->base();
|
||||
memory_configure_bank(machine, "bank3", 0, 4, &ROM[0x00000], 0x20000);
|
||||
memory_configure_bank(machine, "bank4", 0, 4, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank3")->configure_entries(0, 4, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank4")->configure_entries(0, 4, &ROM[0x00000], 0x20000);
|
||||
|
||||
/* decrypt sprites */
|
||||
buffer = auto_alloc_array(machine, UINT8, len);
|
||||
@ -4593,7 +4593,7 @@ static DRIVER_INIT( mazinger )
|
||||
state->m_time_vblank_irq = 2100;
|
||||
|
||||
/* setup extra ROM */
|
||||
memory_set_bankptr(machine, "bank1",machine.region("user1")->base());
|
||||
state->subbank("bank1")->set_base(machine.region("user1")->base());
|
||||
}
|
||||
|
||||
|
||||
@ -4604,16 +4604,16 @@ static DRIVER_INIT( metmqstr )
|
||||
|
||||
init_cave(machine);
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 0x2, &ROM[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank1", 2, 0xe, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 0x2, &ROM[0x00000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(2, 0xe, &ROM[0x10000], 0x4000);
|
||||
|
||||
ROM = machine.region("oki1")->base();
|
||||
memory_configure_bank(machine, "bank3", 0, 8, &ROM[0x00000], 0x20000);
|
||||
memory_configure_bank(machine, "bank4", 0, 8, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank3")->configure_entries(0, 8, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank4")->configure_entries(0, 8, &ROM[0x00000], 0x20000);
|
||||
|
||||
ROM = machine.region("oki2")->base();
|
||||
memory_configure_bank(machine, "bank5", 0, 8, &ROM[0x00000], 0x20000);
|
||||
memory_configure_bank(machine, "bank6", 0, 8, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank5")->configure_entries(0, 8, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank6")->configure_entries(0, 8, &ROM[0x00000], 0x20000);
|
||||
|
||||
unpack_sprites(machine);
|
||||
state->m_spritetype[0] = 2; // Normal sprites with different position handling
|
||||
@ -4633,8 +4633,8 @@ static DRIVER_INIT( pwrinst2j )
|
||||
|
||||
init_cave(machine);
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 3, &ROM[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank1", 3, 5, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 3, &ROM[0x00000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(3, 5, &ROM[0x10000], 0x4000);
|
||||
|
||||
buffer = auto_alloc_array(machine, UINT8, len);
|
||||
{
|
||||
@ -4681,16 +4681,16 @@ static DRIVER_INIT( sailormn )
|
||||
|
||||
init_cave(machine);
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 0x02, &ROM[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank1", 2, 0x1e, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 0x02, &ROM[0x00000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(2, 0x1e, &ROM[0x10000], 0x4000);
|
||||
|
||||
ROM = machine.region("oki1")->base();
|
||||
memory_configure_bank(machine, "bank3", 0, 0x10, &ROM[0x00000], 0x20000);
|
||||
memory_configure_bank(machine, "bank4", 0, 0x10, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank3")->configure_entries(0, 0x10, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank4")->configure_entries(0, 0x10, &ROM[0x00000], 0x20000);
|
||||
|
||||
ROM = machine.region("oki2")->base();
|
||||
memory_configure_bank(machine, "bank5", 0, 0x10, &ROM[0x00000], 0x20000);
|
||||
memory_configure_bank(machine, "bank6", 0, 0x10, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank5")->configure_entries(0, 0x10, &ROM[0x00000], 0x20000);
|
||||
state->subbank("bank6")->configure_entries(0, 0x10, &ROM[0x00000], 0x20000);
|
||||
|
||||
/* decrypt sprites */
|
||||
buffer = auto_alloc_array(machine, UINT8, len);
|
||||
|
@ -32,7 +32,7 @@ WRITE8_MEMBER(cbasebal_state::cbasebal_bankswitch_w)
|
||||
|
||||
/* bits 0-4 select ROM bank */
|
||||
//logerror("%04x: bankswitch %02x\n", cpu_get_pc(&space.device()), data);
|
||||
memory_set_bank(machine(), "bank1", data & 0x1f);
|
||||
subbank("bank1")->set_entry(data & 0x1f);
|
||||
|
||||
/* bit 5 used but unknown */
|
||||
|
||||
@ -243,7 +243,7 @@ static MACHINE_START( cbasebal )
|
||||
{
|
||||
cbasebal_state *state = machine.driver_data<cbasebal_state>();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 32, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 32, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
|
||||
state->save_item(NAME(state->m_rambank));
|
||||
state->save_item(NAME(state->m_tilebank));
|
||||
|
@ -213,7 +213,7 @@ static MACHINE_START( ccastles )
|
||||
machine.primary_screen->configure(320, 256, visarea, HZ_TO_ATTOSECONDS(PIXEL_CLOCK) * VTOTAL * HTOTAL);
|
||||
|
||||
/* configure the ROM banking */
|
||||
memory_configure_bank(machine, "bank1", 0, 2, machine.region("maincpu")->base() + 0xa000, 0x6000);
|
||||
state->subbank("bank1")->configure_entries(0, 2, machine.region("maincpu")->base() + 0xa000, 0x6000);
|
||||
|
||||
/* create a timer for IRQs and set up the first callback */
|
||||
state->m_irq_timer = machine.scheduler().timer_alloc(FUNC(clock_irq));
|
||||
@ -265,7 +265,7 @@ WRITE8_MEMBER(ccastles_state::ccounter_w)
|
||||
|
||||
WRITE8_MEMBER(ccastles_state::bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 1);
|
||||
subbank("bank1")->set_entry(data & 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -248,7 +248,7 @@ WRITE8_MEMBER(cclimber_state::toprollr_rombank_w)
|
||||
m_toprollr_rombank |= (data & 1) << offset;
|
||||
|
||||
if (m_toprollr_rombank < 3)
|
||||
memory_set_bank(machine(), "bank1", m_toprollr_rombank);
|
||||
subbank("bank1")->set_entry(m_toprollr_rombank);
|
||||
}
|
||||
|
||||
static MACHINE_RESET( cclimber )
|
||||
|
@ -56,7 +56,7 @@ WRITE32_MEMBER(cd32_state::aga_overlay_w)
|
||||
data = (data >> 16) & 1;
|
||||
|
||||
/* switch banks as appropriate */
|
||||
memory_set_bank(machine(), "bank1", data & 1);
|
||||
subbank("bank1")->set_entry(data & 1);
|
||||
|
||||
/* swap the write handlers between ROM and bank 1 based on the bit */
|
||||
if ((data & 1) == 0)
|
||||
@ -853,8 +853,8 @@ static DRIVER_INIT( cd32 )
|
||||
amiga_machine_config(machine, &cd32_intf);
|
||||
|
||||
/* set up memory */
|
||||
memory_configure_bank(machine, "bank1", 0, 1, state->m_chip_ram, 0);
|
||||
memory_configure_bank(machine, "bank1", 1, 1, machine.region("user1")->base(), 0);
|
||||
state->subbank("bank1")->configure_entry(0, state->m_chip_ram);
|
||||
state->subbank("bank1")->configure_entry(1, machine.region("user1")->base());
|
||||
|
||||
/* input hack */
|
||||
state->m_input_hack = NULL;
|
||||
@ -1472,8 +1472,8 @@ static DRIVER_INIT( odeontw2 )
|
||||
amiga_machine_config(machine, &cd32_intf);
|
||||
|
||||
/* set up memory */
|
||||
memory_configure_bank(machine, "bank1", 0, 1, state->m_chip_ram, 0);
|
||||
memory_configure_bank(machine, "bank1", 1, 1, machine.region("user1")->base(), 0);
|
||||
state->subbank("bank1")->configure_entry(0, state->m_chip_ram);
|
||||
state->subbank("bank1")->configure_entry(1, machine.region("user1")->base());
|
||||
|
||||
/* input hack */
|
||||
state->m_input_hack = NULL;
|
||||
|
@ -348,7 +348,7 @@ static MACHINE_START( chaknpop )
|
||||
chaknpop_state *state = machine.driver_data<chaknpop_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 2, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 2, &ROM[0x10000], 0x4000);
|
||||
|
||||
state->save_item(NAME(state->m_gfxmode));
|
||||
state->save_item(NAME(state->m_flip_x));
|
||||
|
@ -195,7 +195,7 @@ WRITE8_MEMBER(cham24_state::cham24_mapper_w)
|
||||
UINT8* src = machine().region("user1")->base();
|
||||
|
||||
// switch PPU VROM bank
|
||||
memory_set_bankptr(machine(), "bank1", machine().region("gfx1")->base() + (0x2000 * gfx_bank));
|
||||
subbank("bank1")->set_base(machine().region("gfx1")->base() + (0x2000 * gfx_bank));
|
||||
|
||||
// set gfx mirroring
|
||||
cham24_set_mirroring(machine(), gfx_mirroring != 0 ? PPU_MIRROR_HORZ : PPU_MIRROR_VERT);
|
||||
@ -312,7 +312,7 @@ static MACHINE_START( cham24 )
|
||||
|
||||
/* uses 8K swapping, all ROM!*/
|
||||
machine.device("ppu")->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x1fff, "bank1");
|
||||
memory_set_bankptr(machine, "bank1", machine.region("gfx1")->base());
|
||||
state->subbank("bank1")->set_base(machine.region("gfx1")->base());
|
||||
|
||||
/* need nametable ram, though. I doubt this uses more than 2k, but it starts up configured for 4 */
|
||||
state->m_nt_ram = auto_alloc_array(machine, UINT8, 0x1000);
|
||||
|
@ -194,7 +194,7 @@ WRITE8_MEMBER(champbwl_state::champbwl_misc_w)
|
||||
coin_lockout_w(machine(), 0, ~data & 8);
|
||||
coin_lockout_w(machine(), 1, ~data & 4);
|
||||
|
||||
memory_set_bank(machine(), "bank1", (data & 0x30) >> 4);
|
||||
subbank("bank1")->set_entry((data & 0x30) >> 4);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( champbwl_map, AS_PROGRAM, 8, champbwl_state )
|
||||
@ -231,7 +231,7 @@ WRITE8_MEMBER(champbwl_state::doraemon_outputs_w)
|
||||
coin_lockout_w(machine(), 0, ~data & 8); // coin lockout
|
||||
machine().device<ticket_dispenser_device>("hopper")->write(*&space, 0, (data & 0x04) ? 0x00 : 0x80); // gift out motor
|
||||
|
||||
memory_set_bank(machine(), "bank1", (data & 0x30) >> 4);
|
||||
subbank("bank1")->set_entry((data & 0x30) >> 4);
|
||||
|
||||
// popmessage("%02x", data);
|
||||
}
|
||||
@ -434,7 +434,7 @@ static MACHINE_START( champbwl )
|
||||
|
||||
state->m_mcu = NULL;
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x4000);
|
||||
|
||||
state->save_item(NAME(state->m_screenflip));
|
||||
state->save_item(NAME(state->m_last_trackball_val));
|
||||
@ -531,7 +531,7 @@ static SCREEN_VBLANK( doraemon )
|
||||
static MACHINE_START( doraemon )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x4000);
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( doraemon, tnzs_state )
|
||||
|
@ -357,7 +357,7 @@ static WRITE8_DEVICE_HANDLER( chanbara_ay_out_1_w )
|
||||
|
||||
state->flip_screen_set(data & 0x02);
|
||||
|
||||
memory_set_bank(device->machine(), "bank1", (data & 0x04) >> 2);
|
||||
state->subbank("bank1")->set_entry((data & 0x04) >> 2);
|
||||
|
||||
//if (data & 0xf8) printf("chanbara_ay_out_1_w unused bits set %02x\n", data & 0xf8);
|
||||
}
|
||||
@ -484,7 +484,7 @@ static DRIVER_INIT(chanbara )
|
||||
dst[i + 0x2000] = (src[i + 0x1000] & 0x0f) << 4;
|
||||
}
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 2, &bg[0x0000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 2, &bg[0x0000], 0x4000);
|
||||
}
|
||||
|
||||
GAME( 1985, chanbara, 0, chanbara, chanbara, chanbara, ROT270, "Data East", "Chanbara", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL )
|
||||
|
@ -180,12 +180,12 @@ static WRITE8_HANDLER( chinagat_video_ctrl_w )
|
||||
|
||||
static WRITE8_HANDLER( chinagat_bankswitch_w )
|
||||
{
|
||||
memory_set_bank(space->machine(), "bank1", data & 0x07); // shall we check (data & 7) < 6 (# of banks)?
|
||||
space->machine().root_device().subbank("bank1")->set_entry(data & 0x07); // shall we check (data & 7) < 6 (# of banks)?
|
||||
}
|
||||
|
||||
static WRITE8_HANDLER( chinagat_sub_bankswitch_w )
|
||||
{
|
||||
memory_set_bank(space->machine(), "bank4", data & 0x07); // shall we check (data & 7) < 6 (# of banks)?
|
||||
space->machine().root_device().subbank("bank4")->set_entry(data & 0x07); // shall we check (data & 7) < 6 (# of banks)?
|
||||
}
|
||||
|
||||
static READ8_HANDLER( saiyugoub1_mcu_command_r )
|
||||
@ -531,7 +531,7 @@ static MACHINE_START( chinagat )
|
||||
state->m_snd_cpu = machine.device("audiocpu");
|
||||
|
||||
/* configure banks */
|
||||
memory_configure_bank(machine, "bank1", 0, 8, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 8, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
|
||||
/* register for save states */
|
||||
state->save_item(NAME(state->m_scrollx_hi));
|
||||
@ -919,8 +919,8 @@ static DRIVER_INIT( chinagat )
|
||||
state->m_sprite_irq = M6809_IRQ_LINE;
|
||||
state->m_sound_irq = INPUT_LINE_NMI;
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 6, &MAIN[0x10000], 0x4000);
|
||||
memory_configure_bank(machine, "bank4", 0, 6, &SUB[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 6, &MAIN[0x10000], 0x4000);
|
||||
state->subbank("bank4")->configure_entries(0, 6, &SUB[0x10000], 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@ static SCREEN_UPDATE_IND16( chinsan )
|
||||
|
||||
WRITE8_MEMBER(chinsan_state::ctrl_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data >> 6);
|
||||
subbank("bank1")->set_entry(data >> 6);
|
||||
}
|
||||
|
||||
static WRITE8_DEVICE_HANDLER( ym_port_w1 )
|
||||
@ -571,7 +571,7 @@ static MACHINE_START( chinsan )
|
||||
{
|
||||
chinsan_state *state = machine.driver_data<chinsan_state>();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
|
||||
state->save_item(NAME(state->m_adpcm_idle));
|
||||
state->save_item(NAME(state->m_port_select));
|
||||
|
@ -44,14 +44,14 @@ WRITE8_MEMBER(chqflag_state::chqflag_bankswitch_w)
|
||||
|
||||
/* bits 0-4 = ROM bank # (0x00-0x11) */
|
||||
bankaddress = 0x10000 + (data & 0x1f) * 0x4000;
|
||||
memory_set_bankptr(machine(), "bank4", &RAM[bankaddress]);
|
||||
subbank("bank4")->set_base(&RAM[bankaddress]);
|
||||
|
||||
/* bit 5 = memory bank select */
|
||||
if (data & 0x20)
|
||||
{
|
||||
space.install_read_bank(0x1800, 0x1fff, "bank5");
|
||||
space.install_write_handler(0x1800, 0x1fff, write8_delegate(FUNC(driver_device::paletteram_xBBBBBGGGGGRRRRR_byte_be_w),this));
|
||||
memory_set_bankptr(machine(), "bank5", m_generic_paletteram_8);
|
||||
subbank("bank5")->set_base(m_generic_paletteram_8);
|
||||
|
||||
if (m_k051316_readroms)
|
||||
space.install_legacy_readwrite_handler(*m_k051316_1, 0x1000, 0x17ff, FUNC(k051316_rom_r), FUNC(k051316_w)); /* 051316 #1 (ROM test) */
|
||||
@ -324,7 +324,7 @@ static MACHINE_START( chqflag )
|
||||
chqflag_state *state = machine.driver_data<chqflag_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->m_maincpu = machine.device("maincpu");
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
|
@ -45,7 +45,7 @@ WRITE8_MEMBER( draco_state::sound_bankswitch_w )
|
||||
|
||||
int bank = BIT(data, 3);
|
||||
|
||||
memory_set_bank(machine(), "bank1", bank);
|
||||
subbank("bank1")->set_entry(bank);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER( draco_state::sound_g_w )
|
||||
@ -441,8 +441,8 @@ void cidelsa_state::machine_start()
|
||||
void draco_state::machine_start()
|
||||
{
|
||||
/* setup COP402 memory banking */
|
||||
memory_configure_bank(machine(), "bank1", 0, 2, machine().region(COP402N_TAG)->base(), 0x400);
|
||||
memory_set_bank(machine(), "bank1", 0);
|
||||
subbank("bank1")->configure_entries(0, 2, machine().region(COP402N_TAG)->base(), 0x400);
|
||||
subbank("bank1")->set_entry(0);
|
||||
|
||||
/* register for state saving */
|
||||
save_item(NAME(m_reset));
|
||||
|
@ -273,7 +273,7 @@ READ8_MEMBER(cinemat_state::qb3_frame_r)
|
||||
|
||||
WRITE8_MEMBER(cinemat_state::qb3_ram_bank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", cpu_get_reg(machine().device("maincpu"), CCPU_P) & 3);
|
||||
subbank("bank1")->set_entry(cpu_get_reg(machine().device("maincpu"), CCPU_P) & 3);
|
||||
}
|
||||
|
||||
|
||||
@ -1487,7 +1487,7 @@ static DRIVER_INIT( qb3 )
|
||||
machine.device("maincpu")->memory().space(AS_IO)->install_read_handler(0x0f, 0x0f, read8_delegate(FUNC(cinemat_state::qb3_frame_r),state));
|
||||
machine.device("maincpu")->memory().space(AS_IO)->install_write_handler(0x00, 0x00, write8_delegate(FUNC(cinemat_state::qb3_ram_bank_w),state));
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, state->m_rambase, 0x100*2);
|
||||
state->subbank("bank1")->configure_entries(0, 4, state->m_rambase, 0x100*2);
|
||||
}
|
||||
|
||||
|
||||
|
@ -141,7 +141,7 @@ READ8_MEMBER(cmmb_state::cmmb_input_r)
|
||||
UINT32 bankaddress;
|
||||
|
||||
bankaddress = 0x10000 + (0x10000 * (data & 0x03));
|
||||
memory_set_bankptr(space->machine(), "bank1", &ROM[bankaddress]);
|
||||
space->machine().root_device().subbank("bank1")->set_base(&ROM[bankaddress]);
|
||||
}
|
||||
*/
|
||||
|
||||
@ -156,7 +156,7 @@ WRITE8_MEMBER(cmmb_state::cmmb_output_w)
|
||||
UINT32 bankaddress;
|
||||
|
||||
bankaddress = 0x1c000 + (0x10000 * (data & 0x03));
|
||||
memory_set_bankptr(machine(), "bank1", &ROM[bankaddress]);
|
||||
subbank("bank1")->set_base(&ROM[bankaddress]);
|
||||
}
|
||||
break;
|
||||
case 0x03:
|
||||
|
@ -199,9 +199,9 @@ WRITE8_MEMBER(combatsc_state::combatsc_bankselect_w)
|
||||
}
|
||||
|
||||
if (data & 0x10)
|
||||
memory_set_bank(machine(), "bank1", (data & 0x0e) >> 1);
|
||||
subbank("bank1")->set_entry((data & 0x0e) >> 1);
|
||||
else
|
||||
memory_set_bank(machine(), "bank1", 8 + (data & 1));
|
||||
subbank("bank1")->set_entry(8 + (data & 1));
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(combatsc_state::combatscb_io_w)
|
||||
@ -237,13 +237,13 @@ WRITE8_MEMBER(combatsc_state::combatscb_bankselect_w)
|
||||
m_bank_select = data;
|
||||
|
||||
if (data & 0x10)
|
||||
memory_set_bank(machine(), "bank1", (data & 0x0e) >> 1);
|
||||
subbank("bank1")->set_entry((data & 0x0e) >> 1);
|
||||
else
|
||||
memory_set_bank(machine(), "bank1", 8 + (data & 1));
|
||||
subbank("bank1")->set_entry(8 + (data & 1));
|
||||
|
||||
if (data == 0x1f)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", 8 + (data & 1));
|
||||
subbank("bank1")->set_entry(8 + (data & 1));
|
||||
space.install_write_handler(0x4000, 0x7fff, write8_delegate(FUNC(combatsc_state::combatscb_io_w),this));
|
||||
space.install_read_handler(0x4400, 0x4403, read8_delegate(FUNC(combatsc_state::combatscb_io_r),this));/* IO RAM & Video Registers */
|
||||
}
|
||||
@ -702,7 +702,7 @@ static MACHINE_START( combatsc )
|
||||
state->m_k007121_1 = machine.device("k007121_1");
|
||||
state->m_k007121_2 = machine.device("k007121_2");
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 10, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 10, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
|
||||
state->save_item(NAME(state->m_priority));
|
||||
state->save_item(NAME(state->m_vreg));
|
||||
|
@ -44,7 +44,7 @@ WRITE8_MEMBER(compgolf_state::compgolf_ctrl_w)
|
||||
if (m_bank != new_bank)
|
||||
{
|
||||
m_bank = new_bank;
|
||||
memory_set_bank(machine(), "bank1", m_bank);
|
||||
subbank("bank1")->set_entry(m_bank);
|
||||
}
|
||||
|
||||
m_scrollx_hi = (data & 1) << 8;
|
||||
@ -360,7 +360,7 @@ static void compgolf_expand_bg(running_machine &machine)
|
||||
|
||||
static DRIVER_INIT( compgolf )
|
||||
{
|
||||
memory_configure_bank(machine, "bank1", 0, 2, machine.region("user1")->base(), 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 2, machine.region("user1")->base(), 0x4000);
|
||||
compgolf_expand_bg(machine);
|
||||
}
|
||||
|
||||
|
@ -34,7 +34,7 @@ static INTERRUPT_GEN( contra_interrupt )
|
||||
|
||||
WRITE8_MEMBER(contra_state::contra_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(contra_state::contra_sh_irqtrigger_w)
|
||||
@ -180,7 +180,7 @@ static MACHINE_START( contra )
|
||||
contra_state *state = machine.driver_data<contra_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 16, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 16, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
state->m_k007121_1 = machine.device("k007121_1");
|
||||
|
@ -281,7 +281,7 @@ WRITE16_MEMBER(cps_state::forgottn_dial_1_reset_w)
|
||||
|
||||
WRITE8_MEMBER(cps_state::cps1_snd_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x01);
|
||||
subbank("bank1")->set_entry(data & 0x01);
|
||||
}
|
||||
|
||||
static WRITE8_DEVICE_HANDLER( cps1_oki_pin7_w )
|
||||
@ -393,7 +393,7 @@ WRITE8_MEMBER(cps_state::qsound_banksw_w)
|
||||
bank = 0;
|
||||
}
|
||||
|
||||
memory_set_bank(machine(), "bank1", bank);
|
||||
subbank("bank1")->set_entry(bank);
|
||||
}
|
||||
|
||||
|
||||
@ -3040,13 +3040,13 @@ static MACHINE_START( common )
|
||||
static MACHINE_START( cps1 )
|
||||
{
|
||||
MACHINE_START_CALL(common);
|
||||
memory_configure_bank(machine, "bank1", 0, 2, machine.region("audiocpu")->base() + 0x10000, 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 2, machine.region("audiocpu")->base() + 0x10000, 0x4000);
|
||||
}
|
||||
|
||||
static MACHINE_START( qsound )
|
||||
{
|
||||
MACHINE_START_CALL(common);
|
||||
memory_configure_bank(machine, "bank1", 0, 6, machine.region("audiocpu")->base() + 0x10000, 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 6, machine.region("audiocpu")->base() + 0x10000, 0x4000);
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( cps1_10MHz, cps_state )
|
||||
|
@ -1217,7 +1217,7 @@ static MACHINE_START( cps2 )
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
|
||||
if (state->m_audiocpu != NULL) // gigaman2 has no audiocpu
|
||||
memory_configure_bank(machine, "bank1", 0, (QSOUND_SIZE - 0x10000) / 0x4000, machine.region("audiocpu")->base() + 0x10000, 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, (QSOUND_SIZE - 0x10000) / 0x4000, machine.region("audiocpu")->base() + 0x10000, 0x4000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -44,7 +44,7 @@
|
||||
|
||||
WRITE8_MEMBER(crgolf_state::rom_bank_select_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 15);
|
||||
subbank("bank1")->set_entry(data & 15);
|
||||
}
|
||||
|
||||
|
||||
@ -56,8 +56,8 @@ static MACHINE_START( crgolf )
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
|
||||
/* configure the banking */
|
||||
memory_configure_bank(machine, "bank1", 0, 16, machine.region("maincpu")->base() + 0x10000, 0x2000);
|
||||
memory_set_bank(machine, "bank1", 0);
|
||||
state->subbank("bank1")->configure_entries(0, 16, machine.region("maincpu")->base() + 0x10000, 0x2000);
|
||||
state->subbank("bank1")->set_entry(0);
|
||||
|
||||
/* register for save states */
|
||||
state->save_item(NAME(state->m_port_select));
|
||||
|
@ -257,8 +257,8 @@ static MACHINE_START( crimfght )
|
||||
crimfght_state *state = machine.driver_data<crimfght_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank2", 0, 12, &ROM[0x10000], 0x2000);
|
||||
memory_set_bank(machine, "bank2", 0);
|
||||
state->subbank("bank2")->configure_entries(0, 12, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank2")->set_entry(0);
|
||||
|
||||
state->m_maincpu = machine.device("maincpu");
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
@ -408,7 +408,7 @@ static KONAMI_SETLINES_CALLBACK( crimfght_banking )
|
||||
{
|
||||
device->memory().space(AS_PROGRAM)->install_read_bank(0x0000, 0x03ff, "bank3");
|
||||
device->memory().space(AS_PROGRAM)->install_write_handler(0x0000, 0x03ff, write8_delegate(FUNC(crimfght_state::paletteram_xBBBBBGGGGGRRRRR_byte_be_w), state));
|
||||
memory_set_bankptr(device->machine(), "bank3", state->m_generic_paletteram_8);
|
||||
state->subbank("bank3")->set_base(state->m_generic_paletteram_8);
|
||||
}
|
||||
else
|
||||
device->memory().space(AS_PROGRAM)->install_readwrite_bank(0x0000, 0x03ff, "bank1"); /* RAM */
|
||||
@ -416,7 +416,7 @@ static KONAMI_SETLINES_CALLBACK( crimfght_banking )
|
||||
/* bit 6 = enable char ROM reading through the video RAM */
|
||||
k052109_set_rmrd_line(state->m_k052109, (lines & 0x40) ? ASSERT_LINE : CLEAR_LINE);
|
||||
|
||||
memory_set_bank(device->machine(), "bank2", lines & 0x0f);
|
||||
state->subbank("bank2")->set_entry(lines & 0x0f);
|
||||
}
|
||||
|
||||
GAME( 1989, crimfght, 0, crimfght, crimfght, 0, ROT0, "Konami", "Crime Fighters (US 4 players)", GAME_SUPPORTS_SAVE )
|
||||
|
@ -156,7 +156,7 @@ READ16_MEMBER(crshrace_state::extrarom2_r)
|
||||
|
||||
WRITE8_MEMBER(crshrace_state::crshrace_sh_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x03);
|
||||
subbank("bank1")->set_entry(data & 0x03);
|
||||
}
|
||||
|
||||
WRITE16_MEMBER(crshrace_state::sound_command_w)
|
||||
@ -442,7 +442,7 @@ static MACHINE_START( crshrace )
|
||||
{
|
||||
crshrace_state *state = machine.driver_data<crshrace_state>();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, machine.region("audiocpu")->base() + 0x10000, 0x8000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, machine.region("audiocpu")->base() + 0x10000, 0x8000);
|
||||
|
||||
state->save_item(NAME(state->m_roz_bank));
|
||||
state->save_item(NAME(state->m_gfxctrl));
|
||||
|
@ -286,9 +286,9 @@ WRITE32_MEMBER(crystal_state::Banksw_w)
|
||||
|
||||
m_Bank = (data >> 1) & 7;
|
||||
if (m_Bank <= 2)
|
||||
memory_set_bankptr(machine(), "bank1", machine().region("user1")->base() + m_Bank * 0x1000000);
|
||||
subbank("bank1")->set_base(machine().region("user1")->base() + m_Bank * 0x1000000);
|
||||
else
|
||||
memory_set_bankptr(machine(), "bank1", machine().region("user2")->base());
|
||||
subbank("bank1")->set_base(machine().region("user2")->base());
|
||||
}
|
||||
|
||||
static TIMER_CALLBACK( Timercb )
|
||||
@ -567,9 +567,9 @@ static void crystal_banksw_postload(running_machine &machine)
|
||||
crystal_state *state = machine.driver_data<crystal_state>();
|
||||
|
||||
if (state->m_Bank <= 2)
|
||||
memory_set_bankptr(machine, "bank1", machine.region("user1")->base() + state->m_Bank * 0x1000000);
|
||||
state->subbank("bank1")->set_base(machine.region("user1")->base() + state->m_Bank * 0x1000000);
|
||||
else
|
||||
memory_set_bankptr(machine, "bank1", machine.region("user2")->base());
|
||||
state->subbank("bank1")->set_base(machine.region("user2")->base());
|
||||
}
|
||||
|
||||
static MACHINE_START( crystal )
|
||||
@ -613,7 +613,7 @@ static MACHINE_RESET( crystal )
|
||||
state->m_IntHigh = 0;
|
||||
device_set_irq_callback(machine.device("maincpu"), icallback);
|
||||
state->m_Bank = 0;
|
||||
memory_set_bankptr(machine, "bank1", machine.region("user1")->base() + 0);
|
||||
state->subbank("bank1")->set_base(machine.region("user1")->base() + 0);
|
||||
state->m_FlashCmd = 0xff;
|
||||
state->m_OldPort4 = 0;
|
||||
|
||||
|
@ -239,7 +239,7 @@ WRITE8_MEMBER(cshooter_state::cshooter_c700_w)
|
||||
|
||||
WRITE8_MEMBER(cshooter_state::bank_w)
|
||||
{
|
||||
memory_set_bankptr(machine(), "bank1",&machine().region("user1")->base()[0x4000*((data>>4)&3)]);
|
||||
subbank("bank1")->set_base(&machine().region("user1")->base()[0x4000*((data>>4)&3)]);
|
||||
}
|
||||
|
||||
|
||||
@ -670,7 +670,7 @@ static DRIVER_INIT( cshooter )
|
||||
rom[0xa2] = 0x00;
|
||||
rom[0xa3] = 0x00;
|
||||
rom[0xa4] = 0x00;
|
||||
memory_set_bankptr(machine, "bank1",&machine.region("user1")->base()[0]);
|
||||
machine.root_device().subbank("bank1")->set_base(&machine.region("user1")->base()[0]);
|
||||
}
|
||||
|
||||
static DRIVER_INIT( cshootere )
|
||||
@ -707,7 +707,7 @@ static DRIVER_INIT( cshootere )
|
||||
rom[A] = BITSWAP8(rom[A],7,6,1,4,3,2,5,0);
|
||||
}
|
||||
|
||||
memory_set_bankptr(machine, "bank1",&machine.region("user1")->base()[0]);
|
||||
machine.root_device().subbank("bank1")->set_base(&machine.region("user1")->base()[0]);
|
||||
seibu_sound_decrypt(machine,"audiocpu",0x2000);
|
||||
}
|
||||
|
||||
|
@ -169,7 +169,7 @@ static void csplayh5_soundbank_w(running_machine &machine, int data)
|
||||
{
|
||||
UINT8 *SNDROM = machine.region("audiocpu")->base();
|
||||
|
||||
memory_set_bankptr(machine, "bank1", &SNDROM[0x08000 + (0x8000 * (data & 0x03))]);
|
||||
machine.root_device().subbank("bank1")->set_base(&SNDROM[0x08000 + (0x8000 * (data & 0x03))]);
|
||||
}
|
||||
|
||||
READ8_MEMBER(csplayh5_state::csplayh5_sound_r)
|
||||
|
@ -128,7 +128,7 @@ static SCREEN_UPDATE_IND16( cultures )
|
||||
|
||||
WRITE8_MEMBER(cultures_state::cpu_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
m_video_bank = ~data & 0x20;
|
||||
}
|
||||
|
||||
@ -372,7 +372,7 @@ static MACHINE_START( cultures )
|
||||
cultures_state *state = machine.driver_data<cultures_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 16, &ROM[0x0000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 16, &ROM[0x0000], 0x4000);
|
||||
|
||||
state->save_item(NAME(state->m_paletteram));
|
||||
state->save_item(NAME(state->m_old_bank));
|
||||
|
@ -227,7 +227,7 @@ static SCREEN_UPDATE_IND16( cyclemb )
|
||||
|
||||
WRITE8_MEMBER(cyclemb_state::cyclemb_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 3);
|
||||
subbank("bank1")->set_entry(data & 3);
|
||||
}
|
||||
|
||||
#if 0
|
||||
@ -613,7 +613,7 @@ ROM_END
|
||||
|
||||
static DRIVER_INIT( cyclemb )
|
||||
{
|
||||
memory_configure_bank(machine, "bank1", 0, 4, machine.region("maincpu")->base() + 0x10000, 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 4, machine.region("maincpu")->base() + 0x10000, 0x1000);
|
||||
}
|
||||
|
||||
GAME( 1984, cyclemb, 0, cyclemb, cyclemb, cyclemb, ROT0, "Taito Corporation", "Cycle Mahbou (Japan)", GAME_NOT_WORKING )
|
||||
|
@ -96,7 +96,7 @@ WRITE8_MEMBER(d9final_state::d9final_bank_w)
|
||||
UINT32 bankaddress;
|
||||
|
||||
bankaddress = 0x10000+(0x4000 * (data & 0x7));
|
||||
memory_set_bankptr(machine(), "bank1", &ROM[bankaddress]);
|
||||
subbank("bank1")->set_base(&ROM[bankaddress]);
|
||||
}
|
||||
|
||||
/* game checks this after three attract cycles, otherwise coin inputs stop to work. */
|
||||
@ -275,7 +275,7 @@ static MACHINE_RESET( d9final )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_set_bankptr(machine, "bank1", &ROM[0x10000]);
|
||||
machine.root_device().subbank("bank1")->set_base(&ROM[0x10000]);
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( d9final, d9final_state )
|
||||
|
@ -274,7 +274,7 @@ ADDRESS_MAP_END
|
||||
static void reset_sound_region( running_machine &machine )
|
||||
{
|
||||
darius_state *state = machine.driver_data<darius_state>();
|
||||
memory_set_bank(machine, "bank1", state->m_banknum);
|
||||
state->subbank("bank1")->set_entry(state->m_banknum);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(darius_state::sound_bankswitch_w)
|
||||
@ -842,9 +842,9 @@ static MACHINE_START( darius )
|
||||
{
|
||||
darius_state *state = machine.driver_data<darius_state>();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, machine.region("audiocpu")->base() + 0x10000, 0x8000);
|
||||
memory_configure_bank(machine, "bank1", 4, 1, machine.region("audiocpu")->base(), 0x8000);
|
||||
memory_set_bank(machine, "bank1", 4);
|
||||
state->subbank("bank1")->configure_entries(0, 4, machine.region("audiocpu")->base() + 0x10000, 0x8000);
|
||||
state->subbank("bank1")->configure_entry(4, machine.region("audiocpu")->base());
|
||||
state->subbank("bank1")->set_entry(4);
|
||||
|
||||
state->m_maincpu = machine.device("maincpu");
|
||||
state->m_audiocpu = machine.device("audiocpu");
|
||||
|
@ -32,7 +32,7 @@ TODO:
|
||||
WRITE8_MEMBER(darkmist_state::darkmist_hw_w)
|
||||
{
|
||||
m_hw=data;
|
||||
memory_set_bankptr(machine(), "bank1",&machine().region("maincpu")->base()[0x010000+((data&0x80)?0x4000:0)]);
|
||||
subbank("bank1")->set_base(&machine().region("maincpu")->base()[0x010000+((data&0x80)?0x4000:0)]);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, darkmist_state )
|
||||
@ -437,7 +437,7 @@ static DRIVER_INIT(darkmist)
|
||||
}
|
||||
|
||||
space->set_decrypted_region(0x0000, 0x7fff, decrypt);
|
||||
memory_set_bankptr(space->machine(), "bank1",&ROM[0x010000]);
|
||||
space->machine().root_device().subbank("bank1")->set_base(&ROM[0x010000]);
|
||||
|
||||
/* adr line swaps */
|
||||
ROM = machine.region("user1")->base();
|
||||
|
@ -203,7 +203,7 @@ WRITE8_MEMBER(ddayjlc_state::bg2_w)
|
||||
if (m_bgadr > 2)
|
||||
m_bgadr = 0;
|
||||
|
||||
memory_set_bank(machine(), "bank1", m_bgadr);
|
||||
subbank("bank1")->set_entry(m_bgadr);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(ddayjlc_state::sound_w)
|
||||
@ -690,8 +690,8 @@ static DRIVER_INIT( ddayjlc )
|
||||
auto_free(machine, temp);
|
||||
}
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 3, machine.region("user1")->base(), 0x4000);
|
||||
memory_set_bank(machine, "bank1", 0);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 3, machine.region("user1")->base(), 0x4000);
|
||||
machine.root_device().subbank("bank1")->set_entry(0);
|
||||
}
|
||||
|
||||
GAME( 1984, ddayjlc, 0, ddayjlc, ddayjlc, ddayjlc, ROT90, "Jaleco", "D-Day (Jaleco set 1)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE )
|
||||
|
@ -1985,11 +1985,11 @@ WRITE8_MEMBER(dynax_state::rongrong_select_w)
|
||||
//logerror("%04x: rongrong_select_w %02x\n",cpu_get_pc(&space.device()),data);
|
||||
|
||||
/* bits 0-4 = **both** ROM bank **AND** input select */
|
||||
memory_set_bank(machine(), "bank1", data & 0x1f);
|
||||
subbank("bank1")->set_entry(data & 0x1f);
|
||||
m_dsw_sel = data;
|
||||
|
||||
/* bits 5-7 = RAM bank */
|
||||
memory_set_bank(machine(), "bank2", ((data & 0xe0) >> 5));
|
||||
subbank("bank2")->set_entry(((data & 0xe0) >> 5));
|
||||
}
|
||||
|
||||
|
||||
@ -2083,7 +2083,7 @@ READ8_MEMBER(dynax_state::magic_r)
|
||||
|
||||
WRITE8_MEMBER(dynax_state::mmpanic_rombank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x7);
|
||||
subbank("bank1")->set_entry(data & 0x7);
|
||||
/* Bit 4? */
|
||||
}
|
||||
|
||||
@ -2244,9 +2244,9 @@ WRITE8_MEMBER(dynax_state::funkyfig_rombank_w)
|
||||
|
||||
m_dsw_sel = data;
|
||||
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
// bit 4 selects palette ram at 8000?
|
||||
memory_set_bank(machine(), "bank2", ((data & 0xe0) >> 5));
|
||||
subbank("bank2")->set_entry(((data & 0xe0) >> 5));
|
||||
}
|
||||
|
||||
READ8_MEMBER(dynax_state::funkyfig_dsw_r)
|
||||
@ -2352,8 +2352,8 @@ ADDRESS_MAP_END
|
||||
|
||||
WRITE8_MEMBER(dynax_state::hanakanz_rombank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
memory_set_bank(machine(), "bank2", ((data & 0xf0) >> 4));
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
subbank("bank2")->set_entry(((data & 0xf0) >> 4));
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( hanakanz_map, AS_PROGRAM, 8, dynax_state )
|
||||
@ -2699,7 +2699,7 @@ ADDRESS_MAP_END
|
||||
|
||||
WRITE8_MEMBER(dynax_state::mjmyster_rambank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank2", data & 0x07);
|
||||
subbank("bank2")->set_entry(data & 0x07);
|
||||
//logerror("%04x: rambank = %02x\n", cpu_get_pc(&space.device()), data);
|
||||
}
|
||||
|
||||
@ -2813,7 +2813,7 @@ ADDRESS_MAP_END
|
||||
|
||||
WRITE8_MEMBER(dynax_state::hginga_rombank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x7);
|
||||
subbank("bank1")->set_entry(data & 0x7);
|
||||
m_hginga_rombank = data;
|
||||
}
|
||||
|
||||
@ -3158,8 +3158,8 @@ WRITE8_MEMBER(dynax_state::hparadis_select_w)
|
||||
m_dsw_sel = data;
|
||||
m_keyb = 0;
|
||||
|
||||
memory_set_bank(machine(), "bank1", data & 0x07);
|
||||
memory_set_bank(machine(), "bank2", ((data & 0xe0) >> 5));
|
||||
subbank("bank1")->set_entry(data & 0x07);
|
||||
subbank("bank2")->set_entry(((data & 0xe0) >> 5));
|
||||
}
|
||||
|
||||
|
||||
@ -3383,7 +3383,7 @@ ADDRESS_MAP_END
|
||||
|
||||
WRITE8_MEMBER(dynax_state::mjflove_rombank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0xf);
|
||||
subbank("bank1")->set_entry(data & 0xf);
|
||||
}
|
||||
|
||||
static WRITE8_DEVICE_HANDLER( mjflove_okibank_w )
|
||||
@ -3556,7 +3556,7 @@ WRITE8_MEMBER(dynax_state::sryudens_coincounter_w)
|
||||
|
||||
WRITE8_MEMBER(dynax_state::sryudens_rambank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank2", data & 0x0f);
|
||||
subbank("bank2")->set_entry(data & 0x0f);
|
||||
//logerror("%04x: rambank = %02x\n", cpu_get_pc(&space.device()), data);
|
||||
}
|
||||
|
||||
@ -7614,8 +7614,8 @@ static MACHINE_RESET( ddenlovr )
|
||||
static MACHINE_START( rongrong )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 0x20, &ROM[0x010000], 0x8000);
|
||||
memory_configure_bank(machine, "bank2", 0, 8, &ROM[0x110000], 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 0x20, &ROM[0x010000], 0x8000);
|
||||
machine.root_device().subbank("bank2")->configure_entries(0, 8, &ROM[0x110000], 0x1000);
|
||||
|
||||
MACHINE_START_CALL(ddenlovr);
|
||||
}
|
||||
@ -7623,7 +7623,7 @@ static MACHINE_START( rongrong )
|
||||
static MACHINE_START( mmpanic )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x8000);
|
||||
|
||||
MACHINE_START_CALL(ddenlovr);
|
||||
}
|
||||
@ -7631,8 +7631,8 @@ static MACHINE_START( mmpanic )
|
||||
static MACHINE_START( funkyfig )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 0x10, &ROM[0x10000], 0x8000);
|
||||
memory_configure_bank(machine, "bank2", 0, 8, &ROM[0x90000], 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 0x10, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank2")->configure_entries(0, 8, &ROM[0x90000], 0x1000);
|
||||
|
||||
MACHINE_START_CALL(ddenlovr);
|
||||
}
|
||||
@ -7640,8 +7640,8 @@ static MACHINE_START( funkyfig )
|
||||
static MACHINE_START( hanakanz )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 0x10, &ROM[0x10000], 0x8000);
|
||||
memory_configure_bank(machine, "bank2", 0, 0x10, &ROM[0x90000], 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 0x10, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank2")->configure_entries(0, 0x10, &ROM[0x90000], 0x1000);
|
||||
|
||||
MACHINE_START_CALL(ddenlovr);
|
||||
}
|
||||
@ -7649,8 +7649,8 @@ static MACHINE_START( hanakanz )
|
||||
static MACHINE_START( mjmyster )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x8000);
|
||||
memory_configure_bank(machine, "bank2", 0, 8, &ROM[0x90000], 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank2")->configure_entries(0, 8, &ROM[0x90000], 0x1000);
|
||||
|
||||
MACHINE_START_CALL(ddenlovr);
|
||||
}
|
||||
@ -7658,8 +7658,8 @@ static MACHINE_START( mjmyster )
|
||||
static MACHINE_START( hparadis )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x8000);
|
||||
memory_configure_bank(machine, "bank2", 0, 8, &ROM[0x50000], 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank2")->configure_entries(0, 8, &ROM[0x50000], 0x1000);
|
||||
|
||||
MACHINE_START_CALL(ddenlovr);
|
||||
}
|
||||
@ -7667,8 +7667,8 @@ static MACHINE_START( hparadis )
|
||||
static MACHINE_START( mjflove )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 0x10, &ROM[0x10000], 0x8000);
|
||||
memory_configure_bank(machine, "bank2", 0, 8, &ROM[0x90000], 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 0x10, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank2")->configure_entries(0, 8, &ROM[0x90000], 0x1000);
|
||||
|
||||
MACHINE_START_CALL(ddenlovr);
|
||||
}
|
||||
@ -7676,8 +7676,8 @@ static MACHINE_START( mjflove )
|
||||
static MACHINE_START( sryudens )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 0x10, &ROM[0x10000], 0x8000);
|
||||
memory_configure_bank(machine, "bank2", 0, 0x10, &ROM[0x90000], 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 0x10, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank2")->configure_entries(0, 0x10, &ROM[0x90000], 0x1000);
|
||||
|
||||
MACHINE_START_CALL(ddenlovr);
|
||||
}
|
||||
|
@ -150,7 +150,7 @@ static MACHINE_START( ddragon )
|
||||
ddragon_state *state = machine.driver_data<ddragon_state>();
|
||||
|
||||
/* configure banks */
|
||||
memory_configure_bank(machine, "bank1", 0, 8, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 8, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
|
||||
state->m_maincpu = machine.device("maincpu");
|
||||
state->m_sub_cpu = machine.device("sub");
|
||||
@ -203,7 +203,7 @@ WRITE8_MEMBER(ddragon_state::ddragon_bankswitch_w)
|
||||
else if (m_dd_sub_cpu_busy == 0)
|
||||
device_set_input_line(m_sub_cpu, m_sprite_irq, (m_sprite_irq == INPUT_LINE_NMI) ? PULSE_LINE : HOLD_LINE);
|
||||
|
||||
memory_set_bank(machine(), "bank1", (data & 0xe0) >> 5);
|
||||
subbank("bank1")->set_entry((data & 0xe0) >> 5);
|
||||
}
|
||||
|
||||
|
||||
@ -217,7 +217,7 @@ WRITE8_MEMBER(ddragon_state::toffy_bankswitch_w)
|
||||
/* bit 3 unknown */
|
||||
|
||||
/* I don't know ... */
|
||||
memory_set_bank(machine(), "bank1", (data & 0x20) >> 5);
|
||||
subbank("bank1")->set_entry((data & 0x20) >> 5);
|
||||
}
|
||||
|
||||
|
||||
@ -278,7 +278,7 @@ WRITE8_MEMBER(ddragon_state::darktowr_bankswitch_w)
|
||||
else if (m_dd_sub_cpu_busy == 0)
|
||||
device_set_input_line(m_sub_cpu, m_sprite_irq, (m_sprite_irq == INPUT_LINE_NMI) ? PULSE_LINE : HOLD_LINE);
|
||||
|
||||
memory_set_bank(machine(), "bank1", newbank);
|
||||
subbank("bank1")->set_entry(newbank);
|
||||
if (newbank == 4 && oldbank != 4)
|
||||
space.install_readwrite_handler(0x4000, 0x7fff, read8_delegate(FUNC(ddragon_state::darktowr_mcu_bank_r),this), write8_delegate(FUNC(ddragon_state::darktowr_mcu_bank_w),this));
|
||||
else if (newbank != 4 && oldbank == 4)
|
||||
|
@ -35,7 +35,7 @@ static INTERRUPT_GEN( ddribble_interrupt_1 )
|
||||
|
||||
WRITE8_MEMBER(ddribble_state::ddribble_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
|
||||
@ -248,7 +248,7 @@ static MACHINE_START( ddribble )
|
||||
{
|
||||
ddribble_state *state = machine.driver_data<ddribble_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 5, &ROM[0x10000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(0, 5, &ROM[0x10000], 0x2000);
|
||||
|
||||
state->m_filter1 = machine.device("filter1");
|
||||
state->m_filter2 = machine.device("filter2");
|
||||
|
@ -443,7 +443,7 @@ bb63 = Square things again
|
||||
|
||||
WRITE8_MEMBER(dec8_state::dec8_bank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
/* Used by Ghostbusters, Meikyuu Hunter G & Gondomania */
|
||||
@ -457,7 +457,7 @@ WRITE8_MEMBER(dec8_state::ghostb_bank_w)
|
||||
Bits 4-7: Bank switch
|
||||
*/
|
||||
|
||||
memory_set_bank(machine(), "bank1", data >> 4);
|
||||
subbank("bank1")->set_entry(data >> 4);
|
||||
|
||||
if ((data&1)==0) device_set_input_line(m_maincpu, M6809_IRQ_LINE, CLEAR_LINE);
|
||||
if (data & 2) m_nmi_enable =1; else m_nmi_enable = 0;
|
||||
@ -473,7 +473,7 @@ WRITE8_MEMBER(dec8_state::csilver_control_w)
|
||||
Bit 0x40 - Unused.
|
||||
Bit 0x80 - Hold subcpu reset line high if clear, else low? (Not needed anyway)
|
||||
*/
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(dec8_state::dec8_sound_w)
|
||||
@ -506,7 +506,7 @@ WRITE8_MEMBER(dec8_state::csilver_adpcm_data_w)
|
||||
|
||||
WRITE8_MEMBER(dec8_state::csilver_sound_bank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank3", (data & 0x08) >> 3);
|
||||
subbank("bank3")->set_entry((data & 0x08) >> 3);
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
@ -3563,28 +3563,28 @@ static DRIVER_INIT( deco222 )
|
||||
static DRIVER_INIT( lastmisn )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( dec8 );
|
||||
}
|
||||
|
||||
static DRIVER_INIT( shackled )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 14, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 14, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( dec8 );
|
||||
}
|
||||
|
||||
static DRIVER_INIT( gondo )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 12, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 12, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( dec8 );
|
||||
}
|
||||
|
||||
static DRIVER_INIT( garyoret )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 16, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 16, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( dec8 );
|
||||
}
|
||||
|
||||
@ -3596,7 +3596,7 @@ static DRIVER_INIT( ghostb )
|
||||
/* Blank out unused garbage in colour prom to avoid colour overflow */
|
||||
memset(RAM + 0x20, 0, 0xe0);
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 16, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 16, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL(deco222);
|
||||
}
|
||||
|
||||
@ -3608,7 +3608,7 @@ static DRIVER_INIT( meikyuh )
|
||||
/* Blank out unused garbage in colour prom to avoid colour overflow */
|
||||
memset(RAM + 0x20, 0, 0xe0);
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 12, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 12, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( dec8 );
|
||||
}
|
||||
|
||||
@ -3617,29 +3617,29 @@ static DRIVER_INIT( csilver )
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
UINT8 *RAM = machine.region("audiocpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 14, &ROM[0x10000], 0x4000);
|
||||
memory_configure_bank(machine, "bank3", 0, 2, &RAM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 14, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank3")->configure_entries(0, 2, &RAM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( dec8 );
|
||||
}
|
||||
|
||||
static DRIVER_INIT( oscar )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( deco222 );
|
||||
}
|
||||
|
||||
static DRIVER_INIT( srdarwin )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 6, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 6, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( deco222 );
|
||||
}
|
||||
|
||||
static DRIVER_INIT( cobracom )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x4000);
|
||||
DRIVER_INIT_CALL( dec8 );
|
||||
}
|
||||
|
||||
|
@ -1491,11 +1491,11 @@ static DRIVER_INIT( decocrom )
|
||||
/* convert charram to a banked ROM */
|
||||
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0x6000, 0xafff, "bank1");
|
||||
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x6000, 0xafff, FUNC(decocass_de0091_w));
|
||||
memory_configure_bank(machine, "bank1", 0, 1, state->m_charram, 0);
|
||||
memory_configure_bank(machine, "bank1", 1, 1, machine.region("user3")->base(), 0);
|
||||
memory_configure_bank_decrypted(machine, "bank1", 0, 1, &state->m_decrypted[0x6000], 0);
|
||||
memory_configure_bank_decrypted(machine, "bank1", 1, 1, state->m_decrypted2, 0);
|
||||
memory_set_bank(machine, "bank1", 0);
|
||||
state->subbank("bank1")->configure_entry(0, state->m_charram);
|
||||
state->subbank("bank1")->configure_entry(1, machine.region("user3")->base());
|
||||
state->subbank("bank1")->configure_decrypted_entry(0, &state->m_decrypted[0x6000]);
|
||||
state->subbank("bank1")->configure_decrypted_entry(1, state->m_decrypted2);
|
||||
state->subbank("bank1")->set_entry(0);
|
||||
|
||||
/* install the bank selector */
|
||||
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0xe900, 0xe900, FUNC(decocass_e900_w));
|
||||
|
@ -72,7 +72,7 @@ static void answer_bankswitch(running_machine &machine,UINT8 new_bank)
|
||||
|
||||
state->m_bank = new_bank;
|
||||
bankaddress = 0 + 0x6000 * state->m_bank;
|
||||
memory_set_bankptr(machine, "bank1", &ROM[bankaddress]);
|
||||
state->subbank("bank1")->set_base(&ROM[bankaddress]);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -201,7 +201,7 @@ void discoboy_setrombank( running_machine &machine, UINT8 data )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
data &= 0x2f;
|
||||
memory_set_bankptr(space->machine(), "bank1", &ROM[0x6000 + (data * 0x1000)] );
|
||||
space->machine().root_device().subbank("bank1")->set_base(&ROM[0x6000 + (data * 0x1000)] );
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -225,7 +225,7 @@ WRITE8_MEMBER(discoboy_state::discoboy_port_01_w)
|
||||
// discoboy gfxbank
|
||||
m_gfxbank = data & 0xf0;
|
||||
|
||||
memory_set_bank(machine(), "bank1", data & 0x07);
|
||||
subbank("bank1")->set_entry(data & 0x07);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(discoboy_state::discoboy_port_03_w)// sfx? (to sound cpu)
|
||||
@ -329,7 +329,7 @@ static WRITE8_DEVICE_HANDLER( yunsung8_sound_bankswitch_w )
|
||||
/* Note: this is bit 5 on yunsung8.c */
|
||||
msm5205_reset_w(device, (data & 0x08) >> 3);
|
||||
|
||||
memory_set_bank(device->machine(), "sndbank", data & 0x07);
|
||||
device->machine().root_device().subbank("sndbank")->set_entry(data & 0x07);
|
||||
|
||||
if (data != (data & (~0x0f)))
|
||||
logerror("%s: Bank %02X\n", device->machine().describe_context(), data);
|
||||
@ -575,10 +575,10 @@ static DRIVER_INIT( discoboy )
|
||||
state->save_item(NAME(state->m_ram_3));
|
||||
state->save_item(NAME(state->m_ram_4));
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x4000);
|
||||
memory_set_bank(machine, "bank1", 0);
|
||||
memory_configure_bank(machine, "sndbank", 0, 8, &AUDIO[0x00000], 0x4000);
|
||||
memory_set_bank(machine, "sndbank", 0);
|
||||
state->subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->set_entry(0);
|
||||
state->subbank("sndbank")->configure_entries(0, 8, &AUDIO[0x00000], 0x4000);
|
||||
state->subbank("sndbank")->set_entry(0);
|
||||
}
|
||||
|
||||
|
||||
|
@ -179,8 +179,8 @@ WRITE8_MEMBER(djboy_state::cpu0_bankswitch_w)
|
||||
{
|
||||
|
||||
data ^= m_bankxor;
|
||||
memory_set_bank(machine(), "bank1", data);
|
||||
memory_set_bank(machine(), "bank4", 0); /* unsure if/how this area is banked */
|
||||
subbank("bank1")->set_entry(data);
|
||||
subbank("bank4")->set_entry(0); /* unsure if/how this area is banked */
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
@ -202,7 +202,7 @@ WRITE8_MEMBER(djboy_state::cpu1_bankswitch_w)
|
||||
case 0x01:
|
||||
case 0x02:
|
||||
case 0x03:
|
||||
memory_set_bank(machine(), "bank2", (data & 0xf));
|
||||
subbank("bank2")->set_entry((data & 0xf));
|
||||
break;
|
||||
|
||||
/* bs101.6w */
|
||||
@ -214,7 +214,7 @@ WRITE8_MEMBER(djboy_state::cpu1_bankswitch_w)
|
||||
case 0x0d:
|
||||
case 0x0e:
|
||||
case 0x0f:
|
||||
memory_set_bank(machine(), "bank2", (data & 0xf) - 4);
|
||||
subbank("bank2")->set_entry((data & 0xf) - 4);
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -238,7 +238,7 @@ WRITE8_MEMBER(djboy_state::trigger_nmi_on_sound_cpu2)
|
||||
|
||||
WRITE8_MEMBER(djboy_state::cpu2_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank3", data); // shall we check data<0x07?
|
||||
subbank("bank3")->set_entry(data); // shall we check data<0x07?
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
@ -526,13 +526,13 @@ static MACHINE_START( djboy )
|
||||
UINT8 *CPU1 = machine.region("cpu1")->base();
|
||||
UINT8 *CPU2 = machine.region("cpu2")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &MAIN[0x00000], 0x2000);
|
||||
memory_configure_bank(machine, "bank1", 4, 28, &MAIN[0x10000], 0x2000);
|
||||
memory_configure_bank(machine, "bank2", 0, 2, &CPU1[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank2", 2, 10, &CPU1[0x10000], 0x4000);
|
||||
memory_configure_bank(machine, "bank3", 0, 3, &CPU2[0x00000], 0x4000);
|
||||
memory_configure_bank(machine, "bank3", 3, 5, &CPU2[0x10000], 0x4000);
|
||||
memory_configure_bank(machine, "bank4", 0, 1, &MAIN[0x10000], 0x3000); /* unsure if/how this area is banked */
|
||||
state->subbank("bank1")->configure_entries(0, 4, &MAIN[0x00000], 0x2000);
|
||||
state->subbank("bank1")->configure_entries(4, 28, &MAIN[0x10000], 0x2000);
|
||||
state->subbank("bank2")->configure_entries(0, 2, &CPU1[0x00000], 0x4000);
|
||||
state->subbank("bank2")->configure_entries(2, 10, &CPU1[0x10000], 0x4000);
|
||||
state->subbank("bank3")->configure_entries(0, 3, &CPU2[0x00000], 0x4000);
|
||||
state->subbank("bank3")->configure_entries(3, 5, &CPU2[0x10000], 0x4000);
|
||||
state->subbank("bank4")->configure_entry(0, &MAIN[0x10000]); /* unsure if/how this area is banked */
|
||||
|
||||
state->m_maincpu = machine.device("maincpu");
|
||||
state->m_cpu1 = machine.device("cpu1");
|
||||
|
@ -492,9 +492,9 @@ static MACHINE_RESET( strtheat )
|
||||
MACHINE_RESET_CALL(dkong);
|
||||
|
||||
/* The initial state of the counter is 0x08 */
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x4000);
|
||||
state->m_decrypt_counter = 0x08;
|
||||
memory_set_bank(machine, "bank1", 0);
|
||||
state->subbank("bank1")->set_entry(0);
|
||||
}
|
||||
|
||||
static MACHINE_RESET( drakton )
|
||||
@ -505,9 +505,9 @@ static MACHINE_RESET( drakton )
|
||||
MACHINE_RESET_CALL(dkong);
|
||||
|
||||
/* The initial state of the counter is 0x09 */
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x10000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x4000);
|
||||
state->m_decrypt_counter = 0x09;
|
||||
memory_set_bank(machine, "bank1", 1);
|
||||
state->subbank("bank1")->set_entry(1);
|
||||
}
|
||||
|
||||
|
||||
@ -627,10 +627,10 @@ READ8_MEMBER(dkong_state::epos_decrypt_rom)
|
||||
|
||||
switch(m_decrypt_counter)
|
||||
{
|
||||
case 0x08: memory_set_bank(machine(), "bank1", 0); break;
|
||||
case 0x09: memory_set_bank(machine(), "bank1", 1); break;
|
||||
case 0x0A: memory_set_bank(machine(), "bank1", 2); break;
|
||||
case 0x0B: memory_set_bank(machine(), "bank1", 3); break;
|
||||
case 0x08: subbank("bank1")->set_entry(0); break;
|
||||
case 0x09: subbank("bank1")->set_entry(1); break;
|
||||
case 0x0A: subbank("bank1")->set_entry(2); break;
|
||||
case 0x0B: subbank("bank1")->set_entry(3); break;
|
||||
default:
|
||||
logerror("Invalid counter = %02X\n",m_decrypt_counter);
|
||||
break;
|
||||
@ -1618,8 +1618,8 @@ static READ8_DEVICE_HANDLER( braze_eeprom_r )
|
||||
|
||||
WRITE8_MEMBER(dkong_state::braze_a15_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x01);
|
||||
memory_set_bank(machine(), "bank2", data & 0x01);
|
||||
subbank("bank1")->set_entry(data & 0x01);
|
||||
subbank("bank2")->set_entry(data & 0x01);
|
||||
}
|
||||
|
||||
static WRITE8_DEVICE_HANDLER( braze_eeprom_w )
|
||||
@ -3174,10 +3174,10 @@ static DRIVER_INIT( dkongx )
|
||||
|
||||
braze_decrypt_rom(machine, decrypted);
|
||||
|
||||
memory_configure_bank(machine,"bank1", 0, 2, &decrypted[0], 0x8000);
|
||||
memory_set_bank(machine,"bank1", 0);
|
||||
memory_configure_bank(machine,"bank2", 0, 2, &decrypted[0], 0x8000);
|
||||
memory_set_bank(machine,"bank2", 0);
|
||||
state->subbank("bank1")->configure_entries(0, 2, &decrypted[0], 0x8000);
|
||||
state->subbank("bank1")->set_entry(0);
|
||||
state->subbank("bank2")->configure_entries(0, 2, &decrypted[0], 0x8000);
|
||||
state->subbank("bank2")->set_entry(0);
|
||||
}
|
||||
|
||||
static DRIVER_INIT( dkingjr )
|
||||
|
@ -86,14 +86,14 @@ be verified on real PCB.
|
||||
|
||||
WRITE8_MEMBER(dooyong_state::lastday_bankswitch_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x07);
|
||||
subbank("bank1")->set_entry(data & 0x07);
|
||||
|
||||
if (data & 0xf8) popmessage("bankswitch %02x",data);
|
||||
}
|
||||
|
||||
static MACHINE_START( lastday )
|
||||
{
|
||||
memory_configure_bank(machine, "bank1", 0, 8, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, machine.region("maincpu")->base() + 0x10000, 0x4000);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(dooyong_state::flip_screen_w)
|
||||
|
@ -116,7 +116,7 @@ WRITE8_MEMBER(drw80pkr_state::prog_w)
|
||||
{
|
||||
m_active_bank = m_active_bank ^ 0x01;
|
||||
|
||||
memory_set_bank(machine(), "bank1", m_active_bank);
|
||||
subbank("bank1")->set_entry(m_active_bank);
|
||||
}
|
||||
}
|
||||
|
||||
@ -405,7 +405,7 @@ GFXDECODE_END
|
||||
|
||||
static DRIVER_INIT( drw80pkr )
|
||||
{
|
||||
memory_configure_bank(machine, "bank1", 0, 2, machine.region("maincpu")->base(), 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 2, machine.region("maincpu")->base(), 0x1000);
|
||||
}
|
||||
|
||||
|
||||
|
@ -466,7 +466,7 @@ WRITE8_MEMBER(dunhuang_state::dunhuang_rombank_w)
|
||||
// ? data & 0x01
|
||||
// ? data & 0x02
|
||||
|
||||
memory_set_bank(machine(), "bank1", ((data >> 2) & 0x7));
|
||||
subbank("bank1")->set_entry(((data >> 2) & 0x7));
|
||||
|
||||
// COIN OUT: data & 0x20
|
||||
coin_counter_w(machine(), 0, data & 0x40);
|
||||
@ -768,7 +768,7 @@ static MACHINE_START( dunhuang )
|
||||
dunhuang_state *state = machine.driver_data<dunhuang_state>();
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x8000);
|
||||
state->subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x8000);
|
||||
|
||||
state->save_item(NAME(state->m_written));
|
||||
state->save_item(NAME(state->m_written2));
|
||||
|
@ -266,12 +266,12 @@ WRITE8_MEMBER(dynax_state::hanamai_keyboard_w)
|
||||
|
||||
WRITE8_MEMBER(dynax_state::dynax_rombank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(dynax_state::jantouki_sound_rombank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank2", data);
|
||||
subbank("bank2")->set_entry(data);
|
||||
}
|
||||
|
||||
|
||||
@ -281,7 +281,7 @@ WRITE8_MEMBER(dynax_state::hnoridur_rombank_w)
|
||||
|
||||
//logerror("%04x: rom bank = %02x\n", cpu_get_pc(&space.device()), data);
|
||||
if (data < bank_n)
|
||||
memory_set_bank(machine(), "bank1", data);
|
||||
subbank("bank1")->set_entry(data);
|
||||
else
|
||||
logerror("rom_bank = %02x (larger than the maximum bank %02x)\n", data, bank_n);
|
||||
m_hnoridur_bank = data;
|
||||
@ -753,7 +753,7 @@ WRITE8_MEMBER(dynax_state::yarunara_rombank_w)
|
||||
|
||||
//logerror("%04x: rom bank = %02x\n", cpu_get_pc(&space.device()), data);
|
||||
if (data < bank_n)
|
||||
memory_set_bank(machine(), "bank1", data);
|
||||
subbank("bank1")->set_entry(data);
|
||||
else
|
||||
logerror("rom_bank = %02x (larger than the maximum bank %02x)\n",data, bank_n);
|
||||
m_hnoridur_bank = data;
|
||||
@ -969,7 +969,7 @@ READ8_MEMBER(dynax_state::jantouki_blitter_busy_r)
|
||||
|
||||
WRITE8_MEMBER(dynax_state::jantouki_rombank_w)
|
||||
{
|
||||
memory_set_bank(machine(), "bank1", data & 0x0f);
|
||||
subbank("bank1")->set_entry(data & 0x0f);
|
||||
set_led_status(machine(), 0, data & 0x10); // maybe
|
||||
}
|
||||
|
||||
@ -1190,7 +1190,7 @@ READ8_MEMBER(dynax_state::htengoku_coin_r)
|
||||
WRITE8_MEMBER(dynax_state::htengoku_rombank_w)
|
||||
{
|
||||
|
||||
memory_set_bank(machine(), "bank1", data & 0x07);
|
||||
subbank("bank1")->set_entry(data & 0x07);
|
||||
m_hnoridur_bank = data;
|
||||
}
|
||||
|
||||
@ -4240,7 +4240,7 @@ static MACHINE_RESET( dynax )
|
||||
static MACHINE_START( hanamai )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 0x10, &ROM[0x8000], 0x8000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 0x10, &ROM[0x8000], 0x8000);
|
||||
|
||||
MACHINE_START_CALL(dynax);
|
||||
}
|
||||
@ -4250,7 +4250,7 @@ static MACHINE_START( hnoridur )
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
int bank_n = (machine.region("maincpu")->bytes() - 0x10000) / 0x8000;
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, bank_n, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, bank_n, &ROM[0x10000], 0x8000);
|
||||
|
||||
MACHINE_START_CALL(dynax);
|
||||
}
|
||||
@ -4259,7 +4259,7 @@ static MACHINE_START( htengoku )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 8, &ROM[0x10000], 0x8000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 8, &ROM[0x10000], 0x8000);
|
||||
|
||||
MACHINE_START_CALL(dynax);
|
||||
}
|
||||
@ -4633,8 +4633,8 @@ static MACHINE_START( jantouki )
|
||||
UINT8 *MAIN = machine.region("maincpu")->base();
|
||||
UINT8 *SOUND = machine.region("soundcpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 0x10, &MAIN[0x8000], 0x8000);
|
||||
memory_configure_bank(machine, "bank2", 0, 12, &SOUND[0x8000], 0x8000);
|
||||
state->subbank("bank1")->configure_entries(0, 0x10, &MAIN[0x8000], 0x8000);
|
||||
state->subbank("bank2")->configure_entries(0, 12, &SOUND[0x8000], 0x8000);
|
||||
|
||||
state->m_top_scr = machine.device("top");
|
||||
state->m_bot_scr = machine.device("bottom");
|
||||
|
@ -44,7 +44,7 @@ WRITE8_MEMBER(epos_state::dealer_decrypt_rom)
|
||||
|
||||
// logerror("PC %08x: ctr=%04x\n",cpu_get_pc(&space.device()), m_counter);
|
||||
|
||||
memory_set_bank(machine(), "bank1", m_counter);
|
||||
subbank("bank1")->set_entry(m_counter);
|
||||
|
||||
// is the 2nd bank changed by the counter or it always uses the 1st key?
|
||||
}
|
||||
@ -101,7 +101,7 @@ ADDRESS_MAP_END
|
||||
*/
|
||||
static WRITE8_DEVICE_HANDLER( write_prtc )
|
||||
{
|
||||
memory_set_bank(device->machine(), "bank2", data & 0x01);
|
||||
device->machine().root_device().subbank("bank2")->set_entry(data & 0x01);
|
||||
}
|
||||
|
||||
static const ppi8255_interface ppi8255_intf =
|
||||
@ -382,11 +382,11 @@ static MACHINE_RESET( epos )
|
||||
static MACHINE_START( dealer )
|
||||
{
|
||||
UINT8 *ROM = machine.region("maincpu")->base();
|
||||
memory_configure_bank(machine, "bank1", 0, 4, &ROM[0x0000], 0x10000);
|
||||
memory_configure_bank(machine, "bank2", 0, 2, &ROM[0x6000], 0x1000);
|
||||
machine.root_device().subbank("bank1")->configure_entries(0, 4, &ROM[0x0000], 0x10000);
|
||||
machine.root_device().subbank("bank2")->configure_entries(0, 2, &ROM[0x6000], 0x1000);
|
||||
|
||||
memory_set_bank(machine, "bank1", 0);
|
||||
memory_set_bank(machine, "bank2", 0);
|
||||
machine.root_device().subbank("bank1")->set_entry(0);
|
||||
machine.root_device().subbank("bank2")->set_entry(0);
|
||||
|
||||
MACHINE_START_CALL(epos);
|
||||
}
|
||||
|
@ -226,7 +226,7 @@ WRITE8_MEMBER(esd16_state::esd16_sound_rombank_w)
|
||||
int bank = data & 0xf;
|
||||
if (data != bank) logerror("CPU #1 - PC %04X: unknown bank bits: %02X\n", cpu_get_pc(&space.device()), data);
|
||||
if (bank >= 3) bank += 1;
|
||||
memory_set_bank(machine(), "bank1", bank);
|
||||
subbank("bank1")->set_entry(bank);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( multchmp_sound_map, AS_PROGRAM, 8, esd16_state )
|
||||
@ -520,7 +520,7 @@ static MACHINE_START( esd16 )
|
||||
esd16_state *state = machine.driver_data<esd16_state>();
|
||||
UINT8 *AUDIO = machine.region("audiocpu")->base();
|
||||
|
||||
memory_configure_bank(machine, "bank1", 0, 17, &AUDIO[0x0000], 0x4000);
|
||||
state->subbank("bank1")->configure_entries(0, 17, &AUDIO[0x0000], 0x4000);
|
||||
|
||||
state->m_audio_cpu = machine.device("audiocpu");
|
||||
state->m_eeprom = machine.device<eeprom_device>("eeprom");
|
||||
|
@ -109,7 +109,7 @@ WRITE8_MEMBER(esripsys_state::g_status_w)
|
||||
m_g_status = data;
|
||||
|
||||
bankaddress = 0x10000 + (data & 0x03) * 0x10000;
|
||||
memory_set_bankptr(machine(), "bank1", &rom[bankaddress]);
|
||||
subbank("bank1")->set_base(&rom[bankaddress]);
|
||||
|
||||
cputag_set_input_line(machine(), "frame_cpu", M6809_FIRQ_LINE, data & 0x10 ? CLEAR_LINE : ASSERT_LINE);
|
||||
cputag_set_input_line(machine(), "frame_cpu", INPUT_LINE_NMI, data & 0x80 ? CLEAR_LINE : ASSERT_LINE);
|
||||
@ -506,9 +506,9 @@ WRITE8_MEMBER(esripsys_state::s_200f_w)
|
||||
m_u56b = 1;
|
||||
|
||||
/* Speech data resides in the upper 8kB of the ROMs */
|
||||
memory_set_bankptr(machine(), "bank2", &rom[0x0000 + rombank]);
|
||||
memory_set_bankptr(machine(), "bank3", &rom[0x4000 + rombank]);
|
||||
memory_set_bankptr(machine(), "bank4", &rom[0x8000 + rombank]);
|
||||
subbank("bank2")->set_base(&rom[0x0000 + rombank]);
|
||||
subbank("bank3")->set_base(&rom[0x4000 + rombank]);
|
||||
subbank("bank4")->set_base(&rom[0x8000 + rombank]);
|
||||
|
||||
m_s_to_g_latch2 = data;
|
||||
}
|
||||
@ -653,9 +653,9 @@ static DRIVER_INIT( esripsys )
|
||||
|
||||
machine.device<nvram_device>("nvram")->set_base(state->m_cmos_ram, CMOS_RAM_SIZE);
|
||||
|
||||
memory_set_bankptr(machine, "bank2", &rom[0x0000]);
|
||||
memory_set_bankptr(machine, "bank3", &rom[0x4000]);
|
||||
memory_set_bankptr(machine, "bank4", &rom[0x8000]);
|
||||
state->subbank("bank2")->set_base(&rom[0x0000]);
|
||||
state->subbank("bank3")->set_base(&rom[0x4000]);
|
||||
state->subbank("bank4")->set_base(&rom[0x8000]);
|
||||
|
||||
/* Register stuff for state saving */
|
||||
state_save_register_global_pointer(machine, state->m_fdt_a, FDT_RAM_SIZE);
|
||||
|
@ -187,7 +187,7 @@ WRITE8_MEMBER(exidy_state::fax_bank_select_w)
|
||||
{
|
||||
UINT8 *RAM = machine().region("maincpu")->base();
|
||||
|
||||
memory_set_bankptr(machine(), "bank1", &RAM[0x10000 + (0x2000 * (data & 0x1f))]);
|
||||
subbank("bank1")->set_base(&RAM[0x10000 + (0x2000 * (data & 0x1f))]);
|
||||
if ((data & 0x1f) > 0x17)
|
||||
logerror("Banking to unpopulated ROM bank %02X!\n",data & 0x1f);
|
||||
}
|
||||
@ -1470,7 +1470,7 @@ static DRIVER_INIT( phantoma )
|
||||
|
||||
/* the ROM is actually mapped high */
|
||||
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_read_bank(0xf800, 0xffff, "bank1");
|
||||
memory_set_bankptr(machine, "bank1", machine.region("maincpu")->base() + 0xf800);
|
||||
state->subbank("bank1")->set_base(machine.region("maincpu")->base() + 0xf800);
|
||||
}
|
||||
|
||||
|
||||
|
@ -308,7 +308,7 @@ void exidy440_bank_select(running_machine &machine, UINT8 bank)
|
||||
|
||||
/* select the bank and update the bank pointer */
|
||||
state->m_bank = bank;
|
||||
memory_set_bankptr(machine, "bank1", &machine.region("maincpu")->base()[0x10000 + state->m_bank * 0x4000]);
|
||||
state->subbank("bank1")->set_base(&machine.region("maincpu")->base()[0x10000 + state->m_bank * 0x4000]);
|
||||
}
|
||||
|
||||
|
||||
|
@ -55,7 +55,7 @@ WRITE8_MEMBER(exzisus_state::exzisus_cpua_bankswitch_w)
|
||||
m_cpua_bank = data & 0x0f;
|
||||
if (m_cpua_bank >= 2)
|
||||
{
|
||||
memory_set_bankptr(machine(), "bank2", &RAM[ 0x10000 + ( (m_cpua_bank - 2) * 0x4000 ) ] );
|
||||
subbank("bank2")->set_base(&RAM[ 0x10000 + ( (m_cpua_bank - 2) * 0x4000 ) ] );
|
||||
}
|
||||
}
|
||||
|
||||
@ -71,7 +71,7 @@ WRITE8_MEMBER(exzisus_state::exzisus_cpub_bankswitch_w)
|
||||
m_cpub_bank = data & 0x0f;
|
||||
if (m_cpub_bank >= 2)
|
||||
{
|
||||
memory_set_bankptr(machine(), "bank1", &RAM[ 0x10000 + ( (m_cpub_bank - 2) * 0x4000 ) ] );
|
||||
subbank("bank1")->set_base(&RAM[ 0x10000 + ( (m_cpub_bank - 2) * 0x4000 ) ] );
|
||||
}
|
||||
}
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user