From 85c788bb9ab6127c51d0546c601b7b5860d4339a Mon Sep 17 00:00:00 2001 From: cam900 Date: Fri, 11 May 2018 10:54:17 +0900 Subject: [PATCH] rf5c68.cpp Updates, etc (#3515) * rf5c68.cpp : Add save states, Add device_rom_interface, because Datasheet says it's can connect with ROM, Add notes fmtowns.cpp, segas18.cpp, segas32.cpp, system16.cpp : Reduce runtime tag lookups megacd.cpp, system16.cpp, segas32.cpp : Fix bit manipulations fmtowns.cpp, system16.cpp : Reduce duplicates * segas18.cpp : Add output finders * rf5c68.cpp : Add rom_bank_updated * rf5c68.cpp : Add device_memory_interface instead device_rom_interface * segas18.cpp : Fix regression --- src/devices/sound/rf5c68.cpp | 57 ++-- src/devices/sound/rf5c68.h | 16 +- src/mame/drivers/fmtowns.cpp | 85 +++--- src/mame/drivers/segas18.cpp | 477 +++++++++++++++++----------------- src/mame/drivers/segas32.cpp | 213 +++++++-------- src/mame/drivers/system16.cpp | 140 +++++----- src/mame/includes/fmtowns.h | 95 +++---- src/mame/includes/segas18.h | 49 ++-- src/mame/includes/segas32.h | 8 +- src/mame/includes/system16.h | 72 +++-- src/mame/machine/megacd.cpp | 27 +- src/mame/machine/megacd.h | 1 + src/mame/machine/segas32.cpp | 4 +- src/mame/video/fmtowns.cpp | 10 +- src/mame/video/segas32.cpp | 75 +++--- src/mame/video/system16.cpp | 160 ++++++------ 16 files changed, 765 insertions(+), 724 deletions(-) diff --git a/src/devices/sound/rf5c68.cpp b/src/devices/sound/rf5c68.cpp index 05366f3b968..117cf34fe5f 100644 --- a/src/devices/sound/rf5c68.cpp +++ b/src/devices/sound/rf5c68.cpp @@ -2,6 +2,9 @@ // copyright-holders:Olivier Galibert,Aaron Giles /*********************************************************/ /* ricoh RF5C68(or clone) PCM controller */ +/* */ +/* TODO : RF5C164 (Sega CD/Mega CD) */ +/* has difference? */ /*********************************************************/ #include "emu.h" @@ -21,14 +24,15 @@ DEFINE_DEVICE_TYPE(RF5C68, rf5c68_device, "rf5c68", "Ricoh RF5C68") //------------------------------------------------- rf5c68_device::rf5c68_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : device_t(mconfig, RF5C68, tag, owner, clock), - device_sound_interface(mconfig, *this), - m_stream(nullptr), - m_cbank(0), - m_wbank(0), - m_enable(0) + : device_t(mconfig, RF5C68, tag, owner, clock) + , device_sound_interface(mconfig, *this) + , device_memory_interface(mconfig, *this) + , m_data_config("data", ENDIANNESS_LITTLE, 8, 16) // 15 bit Address + 2 Memory select outputs(total 64KB), PSRAM/SRAM/ROM + , m_stream(nullptr) + , m_cbank(0) + , m_wbank(0) + , m_enable(0) { - std::fill(std::begin(m_data), std::end(m_data), 0); } @@ -38,15 +42,38 @@ rf5c68_device::rf5c68_device(const machine_config &mconfig, const char *tag, dev void rf5c68_device::device_start() { + m_data = &space(0); + // Find our direct access + m_direct = space().direct<0>(); m_sample_end_cb.bind_relative_to(*owner()); - /* allocate memory for the chip */ - memset(m_data, 0xff, sizeof(m_data)); - /* allocate the stream */ m_stream = stream_alloc(0, 2, clock() / 384); + + for (int ch = 0; ch < NUM_CHANNELS; ch++) + { + save_item(NAME(m_chan[ch].enable), ch); + save_item(NAME(m_chan[ch].env), ch); + save_item(NAME(m_chan[ch].pan), ch); + save_item(NAME(m_chan[ch].start), ch); + save_item(NAME(m_chan[ch].addr), ch); + save_item(NAME(m_chan[ch].step), ch); + save_item(NAME(m_chan[ch].loopst), ch); + } + save_item(NAME(m_cbank)); + save_item(NAME(m_wbank)); + save_item(NAME(m_enable)); } +//------------------------------------------------- +// memory_space_config - return a description of +// any address spaces owned by this device +//------------------------------------------------- + +device_memory_interface::space_config_vector rf5c68_device::memory_space_config() const +{ + return space_config_vector{ std::make_pair(0, &m_data_config) }; +} //------------------------------------------------- // sound_stream_update - handle a stream update @@ -87,11 +114,11 @@ void rf5c68_device::sound_stream_update(sound_stream &stream, stream_sample_t ** } /* fetch the sample and handle looping */ - sample = m_data[(chan.addr >> 11) & 0xffff]; + sample = m_direct->read_byte((chan.addr >> 11) & 0xffff); if (sample == 0xff) { chan.addr = chan.loopst << 11; - sample = m_data[(chan.addr >> 11) & 0xffff]; + sample = m_direct->read_byte((chan.addr >> 11) & 0xffff); /* if we loop to a loop point, we're effectively dead */ if (sample == 0xff) @@ -195,7 +222,7 @@ WRITE8_MEMBER( rf5c68_device::rf5c68_w ) if (data & 0x40) m_cbank = data & 7; else - m_wbank = data & 15; + m_wbank = (data & 0xf) << 12; break; case 0x08: /* channel on/off reg */ @@ -216,7 +243,7 @@ WRITE8_MEMBER( rf5c68_device::rf5c68_w ) READ8_MEMBER( rf5c68_device::rf5c68_mem_r ) { - return m_data[m_wbank * 0x1000 + offset]; + return m_direct->read_byte(m_wbank | offset); } @@ -226,5 +253,5 @@ READ8_MEMBER( rf5c68_device::rf5c68_mem_r ) WRITE8_MEMBER( rf5c68_device::rf5c68_mem_w ) { - m_data[m_wbank * 0x1000 + offset] = data; + m_data->write_byte(m_wbank | offset, data); } diff --git a/src/devices/sound/rf5c68.h b/src/devices/sound/rf5c68.h index 7e23cb263cc..ca530a8b1b6 100644 --- a/src/devices/sound/rf5c68.h +++ b/src/devices/sound/rf5c68.h @@ -27,7 +27,8 @@ // ======================> rf5c68_device class rf5c68_device : public device_t, - public device_sound_interface + public device_sound_interface, + public device_memory_interface { public: typedef device_delegate sample_end_cb_delegate; @@ -49,6 +50,10 @@ protected: // sound stream update overrides virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples) override; + // device_memory_interface configuration + virtual space_config_vector memory_space_config() const override; + + address_space_config m_data_config; private: static constexpr unsigned NUM_CHANNELS = 8; @@ -65,12 +70,13 @@ private: uint16_t loopst = 0; }; + address_space *m_data; + direct_read_data<0> *m_direct; sound_stream* m_stream; pcm_channel m_chan[NUM_CHANNELS]; - uint8_t m_cbank; - uint8_t m_wbank; - uint8_t m_enable; - uint8_t m_data[0x10000]; + uint8_t m_cbank; + uint16_t m_wbank; + uint8_t m_enable; sample_end_cb_delegate m_sample_end_cb; }; diff --git a/src/mame/drivers/fmtowns.cpp b/src/mame/drivers/fmtowns.cpp index ffc69d036a0..0e57fbefce0 100644 --- a/src/mame/drivers/fmtowns.cpp +++ b/src/mame/drivers/fmtowns.cpp @@ -440,28 +440,18 @@ WRITE8_MEMBER(towns_state::towns_sys6c_w) m_towns_wait_timer->adjust(attotime::from_usec(1),0,attotime::never); } -READ8_MEMBER(towns_state::towns_dma1_r) +template +READ8_MEMBER(towns_state::towns_dma_r) { -// logerror("DMA#1: read register %i\n",offset); - return m_dma_1->read(space, offset); + logerror("DMA#%01x: read register %i\n",Chip,offset); + return m_dma[Chip]->read(space, offset); } -WRITE8_MEMBER(towns_state::towns_dma1_w) +template +WRITE8_MEMBER(towns_state::towns_dma_w) { -// logerror("DMA#1: wrote 0x%02x to register %i\n",data,offset); - m_dma_1->write(space, offset, data); -} - -READ8_MEMBER(towns_state::towns_dma2_r) -{ - logerror("DMA#2: read register %i\n",offset); - return m_dma_2->read(space, offset); -} - -WRITE8_MEMBER(towns_state::towns_dma2_w) -{ - logerror("DMA#2: wrote 0x%02x to register %i\n",data,offset); - m_dma_2->write(space, offset, data); + logerror("DMA#%01x: wrote 0x%02x to register %i\n",Chip,data,offset); + m_dma[Chip]->write(space, offset, data); } /* @@ -478,7 +468,7 @@ WRITE_LINE_MEMBER( towns_state::mb8877a_irq_w ) WRITE_LINE_MEMBER( towns_state::mb8877a_drq_w ) { - m_dma_1->dmarq(state, 0); + m_dma[0]->dmarq(state, 0); } READ8_MEMBER(towns_state::towns_floppy_r) @@ -1194,31 +1184,27 @@ WRITE8_MEMBER( towns_state::towns_cmos_w ) void towns_state::towns_update_video_banks(address_space& space) { - uint8_t* ROM; + uint8_t* ROM = m_user->base(); if(m_towns_mainmem_enable != 0) // first MB is RAM { - ROM = m_user->base(); - // membank(1)->set_base(m_messram->pointer()+0xc0000); // membank(2)->set_base(m_messram->pointer()+0xc8000); // membank(3)->set_base(m_messram->pointer()+0xc9000); // membank(4)->set_base(m_messram->pointer()+0xca000); // membank(5)->set_base(m_messram->pointer()+0xca000); // membank(10)->set_base(m_messram->pointer()+0xca800); - membank("bank6")->set_base(m_messram->pointer()+0xcb000); - membank("bank7")->set_base(m_messram->pointer()+0xcb000); + m_bank_cb000_r->set_base(m_messram->pointer()+0xcb000); + m_bank_cb000_w->set_base(m_messram->pointer()+0xcb000); if(m_towns_system_port & 0x02) - membank("bank11")->set_base(m_messram->pointer()+0xf8000); + m_bank_f8000_r->set_base(m_messram->pointer()+0xf8000); else - membank("bank11")->set_base(ROM+0x238000); - membank("bank12")->set_base(m_messram->pointer()+0xf8000); + m_bank_f8000_r->set_base(ROM+0x238000); + m_bank_f8000_w->set_base(m_messram->pointer()+0xf8000); return; } else // enable I/O ports and VRAM { - ROM = m_user->base(); - // membank(1)->set_base(towns_gfxvram+(towns_vram_rplane*0x8000)); // membank(2)->set_base(towns_txtvram); // membank(3)->set_base(m_messram->pointer()+0xc9000); @@ -1229,15 +1215,15 @@ void towns_state::towns_update_video_banks(address_space& space) // membank(5)->set_base(towns_txtvram+0x2000); // membank(10)->set_base(m_messram->pointer()+0xca800); if(m_towns_ankcg_enable != 0) - membank("bank6")->set_base(ROM+0x180000+0x3d800); // ANK CG 8x16 + m_bank_cb000_r->set_base(ROM+0x180000+0x3d800); // ANK CG 8x16 else - membank("bank6")->set_base(m_messram->pointer()+0xcb000); - membank("bank7")->set_base(m_messram->pointer()+0xcb000); + m_bank_cb000_r->set_base(m_messram->pointer()+0xcb000); + m_bank_cb000_w->set_base(m_messram->pointer()+0xcb000); if(m_towns_system_port & 0x02) - membank("bank11")->set_base(m_messram->pointer()+0xf8000); + m_bank_f8000_r->set_base(m_messram->pointer()+0xf8000); else - membank("bank11")->set_base(ROM+0x238000); - membank("bank12")->set_base(m_messram->pointer()+0xf8000); + m_bank_f8000_r->set_base(ROM+0x238000); + m_bank_f8000_w->set_base(m_messram->pointer()+0xf8000); return; } } @@ -1997,7 +1983,7 @@ WRITE_LINE_MEMBER(towns_state::towns_scsi_irq) WRITE_LINE_MEMBER(towns_state::towns_scsi_drq) { - m_dma_1->dmarq(state, 1); // SCSI HDs use channel 1 + m_dma[0]->dmarq(state, 1); // SCSI HDs use channel 1 } @@ -2198,14 +2184,14 @@ void towns_state::towns_mem(address_map &map) map(0x00000000, 0x000bffff).ram(); map(0x000c0000, 0x000c7fff).rw(this, FUNC(towns_state::towns_gfx_r), FUNC(towns_state::towns_gfx_w)); map(0x000c8000, 0x000cafff).rw(this, FUNC(towns_state::towns_spriteram_low_r), FUNC(towns_state::towns_spriteram_low_w)); - map(0x000cb000, 0x000cbfff).bankr("bank6").bankw("bank7"); + map(0x000cb000, 0x000cbfff).bankr("bank_cb000_r").bankw("bank_cb000_w"); map(0x000cc000, 0x000cff7f).ram(); map(0x000cff80, 0x000cffff).rw(this, FUNC(towns_state::towns_video_cff80_mem_r), FUNC(towns_state::towns_video_cff80_mem_w)); map(0x000d0000, 0x000d7fff).ram(); map(0x000d8000, 0x000d9fff).rw(this, FUNC(towns_state::towns_cmos_low_r), FUNC(towns_state::towns_cmos_low_w)).share("nvram"); // CMOS? RAM map(0x000da000, 0x000effff).ram(); //READWRITE(SMH_BANK(11),SMH_BANK(11)) map(0x000f0000, 0x000f7fff).ram(); //READWRITE(SMH_BANK(12),SMH_BANK(12)) - map(0x000f8000, 0x000fffff).bankr("bank11").bankw("bank12"); + map(0x000f8000, 0x000fffff).bankr("bank_f8000_r").bankw("bank_f8000_w"); // AM_RANGE(0x00100000, 0x005fffff) AM_RAM // some extra RAM map(0x80000000, 0x8007ffff).rw(this, FUNC(towns_state::towns_gfx_high_r), FUNC(towns_state::towns_gfx_high_w)).mirror(0x80000); // VRAM map(0x80100000, 0x8017ffff).rw(this, FUNC(towns_state::towns_gfx_packed_r), FUNC(towns_state::towns_gfx_packed_w)).mirror(0x80000); // VRAM @@ -2226,14 +2212,14 @@ void towns_state::marty_mem(address_map &map) map(0x00000000, 0x000bffff).ram(); map(0x000c0000, 0x000c7fff).rw(this, FUNC(towns_state::towns_gfx_r), FUNC(towns_state::towns_gfx_w)); map(0x000c8000, 0x000cafff).rw(this, FUNC(towns_state::towns_spriteram_low_r), FUNC(towns_state::towns_spriteram_low_w)); - map(0x000cb000, 0x000cbfff).bankr("bank6").bankw("bank7"); + map(0x000cb000, 0x000cbfff).bankr("bank_cb000_r").bankw("bank_cb000_w"); map(0x000cc000, 0x000cff7f).ram(); map(0x000cff80, 0x000cffff).rw(this, FUNC(towns_state::towns_video_cff80_mem_r), FUNC(towns_state::towns_video_cff80_mem_w)); map(0x000d0000, 0x000d7fff).ram(); map(0x000d8000, 0x000d9fff).rw(this, FUNC(towns_state::towns_cmos_low_r), FUNC(towns_state::towns_cmos_low_w)).share("nvram16"); // CMOS? RAM map(0x000da000, 0x000effff).ram(); //READWRITE(SMH_BANK(11),SMH_BANK(11)) map(0x000f0000, 0x000f7fff).ram(); //READWRITE(SMH_BANK(12),SMH_BANK(12)) - map(0x000f8000, 0x000fffff).bankr("bank11").bankw("bank12"); + map(0x000f8000, 0x000fffff).bankr("bank_f8000_r").bankw("bank_f8000_w"); // AM_RANGE(0x00100000, 0x005fffff) AM_RAM // some extra RAM - the Marty has 6MB RAM (not upgradable) map(0x00600000, 0x0067ffff).rom().region("user", 0x000000); // OS map(0x00680000, 0x0087ffff).rom().region("user", 0x280000); // EX ROM @@ -2252,14 +2238,14 @@ void towns_state::ux_mem(address_map &map) map(0x00000000, 0x000bffff).ram(); map(0x000c0000, 0x000c7fff).rw(this, FUNC(towns_state::towns_gfx_r), FUNC(towns_state::towns_gfx_w)); map(0x000c8000, 0x000cafff).rw(this, FUNC(towns_state::towns_spriteram_low_r), FUNC(towns_state::towns_spriteram_low_w)); - map(0x000cb000, 0x000cbfff).bankr("bank6").bankw("bank7"); + map(0x000cb000, 0x000cbfff).bankr("bank_cb000_r").bankw("bank_cb000_w"); map(0x000cc000, 0x000cff7f).ram(); map(0x000cff80, 0x000cffff).rw(this, FUNC(towns_state::towns_video_cff80_mem_r), FUNC(towns_state::towns_video_cff80_mem_w)); map(0x000d0000, 0x000d7fff).ram(); map(0x000d8000, 0x000d9fff).rw(this, FUNC(towns_state::towns_cmos_low_r), FUNC(towns_state::towns_cmos_low_w)).share("nvram16"); // CMOS? RAM map(0x000da000, 0x000effff).ram(); //READWRITE(SMH_BANK(11),SMH_BANK(11)) map(0x000f0000, 0x000f7fff).ram(); //READWRITE(SMH_BANK(12),SMH_BANK(12)) - map(0x000f8000, 0x000fffff).bankr("bank11").bankw("bank12"); + map(0x000f8000, 0x000fffff).bankr("bank_f8000_r").bankw("bank_f8000_w"); // AM_RANGE(0x00680000, 0x0087ffff) AM_ROM AM_REGION("user",0x280000) // EX ROM map(0x00a00000, 0x00a7ffff).rw(this, FUNC(towns_state::towns_gfx_high_r), FUNC(towns_state::towns_gfx_high_w)).mirror(0x180000); // VRAM map(0x00b00000, 0x00b7ffff).rom().region("user", 0x180000); // FONT @@ -2289,8 +2275,8 @@ void towns_state::towns_io(address_map &map) map(0x0070, 0x0070).rw(this, FUNC(towns_state::towns_rtc_r), FUNC(towns_state::towns_rtc_w)); map(0x0080, 0x0080).w(this, FUNC(towns_state::towns_rtc_select_w)); // DMA controllers (uPD71071) - map(0x00a0, 0x00af).rw(this, FUNC(towns_state::towns_dma1_r), FUNC(towns_state::towns_dma1_w)); - map(0x00b0, 0x00bf).rw(this, FUNC(towns_state::towns_dma2_r), FUNC(towns_state::towns_dma2_w)); + map(0x00a0, 0x00af).rw(this, FUNC(towns_state::towns_dma_r<0>), FUNC(towns_state::towns_dma_w<0>)); + map(0x00b0, 0x00bf).rw(this, FUNC(towns_state::towns_dma_r<1>), FUNC(towns_state::towns_dma_w<1>)); // Floppy controller map(0x0200, 0x020f).rw(this, FUNC(towns_state::towns_floppy_r), FUNC(towns_state::towns_floppy_w)); // CRTC / Video @@ -2348,8 +2334,8 @@ void towns_state::towns16_io(address_map &map) map(0x0070, 0x0070).rw(this, FUNC(towns_state::towns_rtc_r), FUNC(towns_state::towns_rtc_w)); map(0x0080, 0x0080).w(this, FUNC(towns_state::towns_rtc_select_w)); // DMA controllers (uPD71071) - map(0x00a0, 0x00af).rw(this, FUNC(towns_state::towns_dma1_r), FUNC(towns_state::towns_dma1_w)); - map(0x00b0, 0x00bf).rw(this, FUNC(towns_state::towns_dma2_r), FUNC(towns_state::towns_dma2_w)); + map(0x00a0, 0x00af).rw(this, FUNC(towns_state::towns_dma_r<0>), FUNC(towns_state::towns_dma_w<0>)); + map(0x00b0, 0x00bf).rw(this, FUNC(towns_state::towns_dma_r<1>), FUNC(towns_state::towns_dma_w<1>)); // Floppy controller map(0x0200, 0x020f).rw(this, FUNC(towns_state::towns_floppy_r), FUNC(towns_state::towns_floppy_w)); // CRTC / Video @@ -2391,6 +2377,12 @@ void towns_state::towns16_io(address_map &map) map(0xff80, 0xffff).rw(this, FUNC(towns_state::towns_video_cff80_r), FUNC(towns_state::towns_video_cff80_w)); } +void towns_state::pcm_mem(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0xffff).ram(); +} + /* Input ports */ static INPUT_PORTS_START( towns ) PORT_START("ctrltype") @@ -2800,6 +2792,7 @@ MACHINE_CONFIG_START(towns_state::towns_base) MCFG_DEVICE_ADD("pcm", RF5C68, 16000000 / 2) // actual clock speed unknown MCFG_RF5C68_SAMPLE_END_CB(towns_state, towns_pcm_irq) + MCFG_DEVICE_ADDRESS_MAP(0, pcm_mem) MCFG_SOUND_ROUTE(0, "lspeaker", 3.00) MCFG_SOUND_ROUTE(1, "rspeaker", 3.00) MCFG_DEVICE_ADD("cdda",CDDA) diff --git a/src/mame/drivers/segas18.cpp b/src/mame/drivers/segas18.cpp index d13027c3cd2..bac255dcd43 100644 --- a/src/mame/drivers/segas18.cpp +++ b/src/mame/drivers/segas18.cpp @@ -165,7 +165,8 @@ void segas18_state::device_timer(emu_timer &timer, device_timer_id id, int param void segas18_state::machine_start() { - membank("soundbank")->configure_entries(0, 256, memregion("soundcpu")->base() + 0x10000, 0x2000); + m_gun_recoil.resolve(); // lghost + m_soundbank->configure_entries(0, 256, memregion("soundcpu")->base(), 0x2000); } void segas18_state::machine_reset() @@ -291,7 +292,7 @@ WRITE16_MEMBER( segas18_state::rom_5987_bank_w ) // tile banking if (offset < 8) { - int maxbanks = m_gfxdecode->gfx(0)->elements() / 1024; + int maxbanks = m_gfxdecode->gfx(0)->elements() >> 10; if (data >= maxbanks) data %= maxbanks; m_segaic16vid->tilemap_set_bank(0, offset, data); @@ -300,7 +301,7 @@ WRITE16_MEMBER( segas18_state::rom_5987_bank_w ) // sprite banking else { - int maxbanks = memregion("sprites")->bytes() / 0x40000; + int maxbanks = m_sprites_region->bytes() >> 18; if (data >= maxbanks) data = 255; m_sprites->set_bank((offset - 8) * 2 + 0, data * 2 + 0); @@ -564,9 +565,10 @@ WRITE16_MEMBER( segas18_state::lghost_custom_io_w ) WRITE8_MEMBER( segas18_state::lghost_gun_recoil_w ) { - output().set_value("P1_Gun_Recoil", (~data & 0x01)); - output().set_value("P2_Gun_Recoil", (~data & 0x02)>>1); - output().set_value("P3_Gun_Recoil", (~data & 0x04)>>2); + for (int i = 0; i < 3; i++) + { + m_gun_recoil[i] = BIT(~data, i); + } } @@ -602,7 +604,7 @@ WRITE16_MEMBER( segas18_state::wwally_custom_io_w ) WRITE8_MEMBER( segas18_state::soundbank_w ) { - membank("soundbank")->set_entry(data); + m_soundbank->set_entry(data); } @@ -641,7 +643,7 @@ void segas18_state::decrypted_opcodes_map(address_map &map) void segas18_state::sound_map(address_map &map) { map.unmap_value_high(); - map(0x0000, 0x9fff).rom().region("soundcpu", 0x10000); + map(0x0000, 0x9fff).rom().region("soundcpu", 0); map(0xa000, 0xbfff).bankr("soundbank"); map(0xc000, 0xc00f).mirror(0x0ff0).w("rfsnd", FUNC(rf5c68_device::rf5c68_w)); map(0xd000, 0xdfff).rw("rfsnd", FUNC(rf5c68_device::rf5c68_mem_r), FUNC(rf5c68_device::rf5c68_mem_w)); @@ -658,6 +660,12 @@ void segas18_state::sound_portmap(address_map &map) map(0xc0, 0xc0).mirror(0x1f).rw(m_mapper, FUNC(sega_315_5195_mapper_device::pread), FUNC(sega_315_5195_mapper_device::pwrite)); } +void segas18_state::pcm_map(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0xffff).ram(); +} + /************************************* @@ -1268,8 +1276,8 @@ static const gfx_layout charlayout = RGN_FRAC(1,3), 3, { RGN_FRAC(2,3), RGN_FRAC(1,3), RGN_FRAC(0,3) }, - { 0, 1, 2, 3, 4, 5, 6, 7 }, - { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 }, + { STEP8(0,1) }, + { STEP8(0,8) }, 8*8 }; @@ -1367,6 +1375,7 @@ MACHINE_CONFIG_START(segas18_state::system18) MCFG_DEVICE_ADD("rfsnd", RF5C68, 10000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + MCFG_DEVICE_ADDRESS_MAP(0, pcm_map) MACHINE_CONFIG_END @@ -1494,11 +1503,11 @@ ROM_START( astorm ) ROM_LOAD16_BYTE( "epr-13079.bin", 0x180001, 0x40000, CRC(de9221ed) SHA1(5e2e434d1aa547be1e5652fc906d2e18c5122023) ) ROM_LOAD16_BYTE( "epr-13086.bin", 0x180000, 0x40000, CRC(8c9a71c4) SHA1(40b774765ac888792aad46b6351a24b7ef40d2dc) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13083a.bin", 0x010000, 0x20000, CRC(e7528e06) SHA1(1f4e618692c20aeb316d578c5ded12440eb072ab) ) // Also known to come with EPR-13083B rom instead of EPR-13083A (like astormj) - ROM_LOAD( "epr-13076.bin", 0x090000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) - ROM_LOAD( "epr-13077.bin", 0x110000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) - ROM_LOAD( "epr-13078.bin", 0x190000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13083a.bin", 0x000000, 0x20000, CRC(e7528e06) SHA1(1f4e618692c20aeb316d578c5ded12440eb072ab) ) // Also known to come with EPR-13083B rom instead of EPR-13083A (like astormj) + ROM_LOAD( "epr-13076.bin", 0x080000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) + ROM_LOAD( "epr-13077.bin", 0x100000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) + ROM_LOAD( "epr-13078.bin", 0x180000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) ROM_END /************************************************************************************************************************** @@ -1530,11 +1539,11 @@ ROM_START( astorm3 ) ROM_LOAD16_BYTE( "epr-13079.bin", 0x180001, 0x40000, CRC(de9221ed) SHA1(5e2e434d1aa547be1e5652fc906d2e18c5122023) ) ROM_LOAD16_BYTE( "epr-13086.bin", 0x180000, 0x40000, CRC(8c9a71c4) SHA1(40b774765ac888792aad46b6351a24b7ef40d2dc) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13083.bin", 0x010000, 0x20000, CRC(5df3af20) SHA1(e49105fcfd5bf37d14bd760f6adca5ce2412883d) ) // Also known to come with EPR-13083A rom instead of EPR-13083 - ROM_LOAD( "epr-13076.bin", 0x090000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) - ROM_LOAD( "epr-13077.bin", 0x110000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) - ROM_LOAD( "epr-13078.bin", 0x190000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13083.bin", 0x000000, 0x20000, CRC(5df3af20) SHA1(e49105fcfd5bf37d14bd760f6adca5ce2412883d) ) // Also known to come with EPR-13083A rom instead of EPR-13083 + ROM_LOAD( "epr-13076.bin", 0x080000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) + ROM_LOAD( "epr-13077.bin", 0x100000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) + ROM_LOAD( "epr-13078.bin", 0x180000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) ROM_END ROM_START( astorm3d ) @@ -1557,11 +1566,11 @@ ROM_START( astorm3d ) ROM_LOAD16_BYTE( "epr-13079.bin", 0x180001, 0x40000, CRC(de9221ed) SHA1(5e2e434d1aa547be1e5652fc906d2e18c5122023) ) ROM_LOAD16_BYTE( "epr-13086.bin", 0x180000, 0x40000, CRC(8c9a71c4) SHA1(40b774765ac888792aad46b6351a24b7ef40d2dc) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13083.bin", 0x010000, 0x20000, CRC(5df3af20) SHA1(e49105fcfd5bf37d14bd760f6adca5ce2412883d) ) - ROM_LOAD( "epr-13076.bin", 0x090000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) - ROM_LOAD( "epr-13077.bin", 0x110000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) - ROM_LOAD( "epr-13078.bin", 0x190000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13083.bin", 0x000000, 0x20000, CRC(5df3af20) SHA1(e49105fcfd5bf37d14bd760f6adca5ce2412883d) ) + ROM_LOAD( "epr-13076.bin", 0x080000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) + ROM_LOAD( "epr-13077.bin", 0x100000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) + ROM_LOAD( "epr-13078.bin", 0x180000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) ROM_END /************************************************************************************************************************** @@ -1591,11 +1600,11 @@ ROM_START( astormu ) ROM_LOAD16_BYTE( "epr-13079.bin", 0x180001, 0x40000, CRC(de9221ed) SHA1(5e2e434d1aa547be1e5652fc906d2e18c5122023) ) ROM_LOAD16_BYTE( "epr-13086.bin", 0x180000, 0x40000, CRC(8c9a71c4) SHA1(40b774765ac888792aad46b6351a24b7ef40d2dc) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13083.bin", 0x010000, 0x20000, CRC(5df3af20) SHA1(e49105fcfd5bf37d14bd760f6adca5ce2412883d) ) - ROM_LOAD( "epr-13076.bin", 0x090000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) - ROM_LOAD( "epr-13077.bin", 0x110000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) - ROM_LOAD( "epr-13078.bin", 0x190000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13083.bin", 0x000000, 0x20000, CRC(5df3af20) SHA1(e49105fcfd5bf37d14bd760f6adca5ce2412883d) ) + ROM_LOAD( "epr-13076.bin", 0x080000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) + ROM_LOAD( "epr-13077.bin", 0x100000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) + ROM_LOAD( "epr-13078.bin", 0x180000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) ROM_END ROM_START( astormud ) @@ -1618,11 +1627,11 @@ ROM_START( astormud ) ROM_LOAD16_BYTE( "epr-13079.bin", 0x180001, 0x40000, CRC(de9221ed) SHA1(5e2e434d1aa547be1e5652fc906d2e18c5122023) ) ROM_LOAD16_BYTE( "epr-13086.bin", 0x180000, 0x40000, CRC(8c9a71c4) SHA1(40b774765ac888792aad46b6351a24b7ef40d2dc) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13083.bin", 0x010000, 0x20000, CRC(5df3af20) SHA1(e49105fcfd5bf37d14bd760f6adca5ce2412883d) ) - ROM_LOAD( "epr-13076.bin", 0x090000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) - ROM_LOAD( "epr-13077.bin", 0x110000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) - ROM_LOAD( "epr-13078.bin", 0x190000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13083.bin", 0x000000, 0x20000, CRC(5df3af20) SHA1(e49105fcfd5bf37d14bd760f6adca5ce2412883d) ) + ROM_LOAD( "epr-13076.bin", 0x080000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) + ROM_LOAD( "epr-13077.bin", 0x100000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) + ROM_LOAD( "epr-13078.bin", 0x180000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) ROM_END @@ -1654,11 +1663,11 @@ ROM_START( astormj ) ROM_LOAD16_BYTE( "epr-13079.bin", 0x180001, 0x40000, CRC(de9221ed) SHA1(5e2e434d1aa547be1e5652fc906d2e18c5122023) ) ROM_LOAD16_BYTE( "epr-13086.bin", 0x180000, 0x40000, CRC(8c9a71c4) SHA1(40b774765ac888792aad46b6351a24b7ef40d2dc) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13083b.bin", 0x010000, 0x20000, CRC(169b4b5f) SHA1(bb3dfc4aff939df5ad04cf3ecb8e7de366097743) ) - ROM_LOAD( "epr-13076.bin", 0x090000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) - ROM_LOAD( "epr-13077.bin", 0x110000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) - ROM_LOAD( "epr-13078.bin", 0x190000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13083b.bin", 0x000000, 0x20000, CRC(169b4b5f) SHA1(bb3dfc4aff939df5ad04cf3ecb8e7de366097743) ) + ROM_LOAD( "epr-13076.bin", 0x080000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) + ROM_LOAD( "epr-13077.bin", 0x100000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) + ROM_LOAD( "epr-13078.bin", 0x180000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) ROM_END ROM_START( astormjd ) @@ -1681,11 +1690,11 @@ ROM_START( astormjd ) ROM_LOAD16_BYTE( "epr-13079.bin", 0x180001, 0x40000, CRC(de9221ed) SHA1(5e2e434d1aa547be1e5652fc906d2e18c5122023) ) ROM_LOAD16_BYTE( "epr-13086.bin", 0x180000, 0x40000, CRC(8c9a71c4) SHA1(40b774765ac888792aad46b6351a24b7ef40d2dc) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13083b.bin", 0x010000, 0x20000, CRC(169b4b5f) SHA1(bb3dfc4aff939df5ad04cf3ecb8e7de366097743) ) - ROM_LOAD( "epr-13076.bin", 0x090000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) - ROM_LOAD( "epr-13077.bin", 0x110000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) - ROM_LOAD( "epr-13078.bin", 0x190000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13083b.bin", 0x000000, 0x20000, CRC(169b4b5f) SHA1(bb3dfc4aff939df5ad04cf3ecb8e7de366097743) ) + ROM_LOAD( "epr-13076.bin", 0x080000, 0x40000, CRC(94e6c76e) SHA1(f99e58a9bf372c41af211bd9b9ea3ac5b924c6ed) ) + ROM_LOAD( "epr-13077.bin", 0x100000, 0x40000, CRC(e2ec0d8d) SHA1(225b0d223b7282cba7710300a877fb4a2c6dbabb) ) + ROM_LOAD( "epr-13078.bin", 0x180000, 0x40000, CRC(15684dc5) SHA1(595051006de24f791dae937584e502ff2fa31d9c) ) ROM_END @@ -1713,8 +1722,8 @@ ROM_START( bloxeed ) ROM_LOAD16_BYTE( "opr-12891.a11", 0x00000, 0x10000, CRC(90d31a8c) SHA1(1747652a5109ce65add197cf06535f2463a99fdc) ) ROM_LOAD16_BYTE( "opr-12887.b11", 0x00001, 0x10000, CRC(f0c0f49d) SHA1(7ecd591265165f3149241e2ceb5059faab88360f) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-12888.a4", 0x010000, 0x20000, CRC(6f2fc63c) SHA1(3cce22c8f80013f05b5a2d36c42a61a81e4d6cbd) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-12888.a4", 0x000000, 0x20000, CRC(6f2fc63c) SHA1(3cce22c8f80013f05b5a2d36c42a61a81e4d6cbd) ) ROM_END ROM_START( bloxeedd ) @@ -1731,8 +1740,8 @@ ROM_START( bloxeedd ) ROM_LOAD16_BYTE( "opr-12891.a11", 0x00000, 0x10000, CRC(90d31a8c) SHA1(1747652a5109ce65add197cf06535f2463a99fdc) ) ROM_LOAD16_BYTE( "opr-12887.b11", 0x00001, 0x10000, CRC(f0c0f49d) SHA1(7ecd591265165f3149241e2ceb5059faab88360f) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-12888.a4", 0x010000, 0x20000, CRC(6f2fc63c) SHA1(3cce22c8f80013f05b5a2d36c42a61a81e4d6cbd) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-12888.a4", 0x000000, 0x20000, CRC(6f2fc63c) SHA1(3cce22c8f80013f05b5a2d36c42a61a81e4d6cbd) ) ROM_END /************************************************************************************************************************** @@ -1768,10 +1777,10 @@ ROM_START( cltchitr ) ROM_LOAD16_BYTE( "mpr-13781.c12", 0x400001, 0x80000, CRC(f33b13af) SHA1(d3eb64dcf12d532454bf3cd6c86528c0f11ee316) ) ROM_LOAD16_BYTE( "mpr-13789.a12", 0x400000, 0x80000, CRC(09ba8835) SHA1(72e83dd1793a7f4b2b881e71f262493e3d4992b3) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13793.c7", 0x010000, 0x80000, CRC(a3d31944) SHA1(44d17aa0598eacfac4b12c8955fd1067ca09abbd) ) - ROM_LOAD( "epr-13792.c6", 0x090000, 0x80000, CRC(808f9695) SHA1(d50677d20083ad56dbf0864db05f76f93a4e9eba) ) - ROM_LOAD( "epr-13791.c5", 0x110000, 0x80000, CRC(35c16d80) SHA1(7ed04600748c5efb63e25f066daa163e9c0d8038) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13793.c7", 0x000000, 0x80000, CRC(a3d31944) SHA1(44d17aa0598eacfac4b12c8955fd1067ca09abbd) ) + ROM_LOAD( "epr-13792.c6", 0x080000, 0x80000, CRC(808f9695) SHA1(d50677d20083ad56dbf0864db05f76f93a4e9eba) ) + ROM_LOAD( "epr-13791.c5", 0x100000, 0x80000, CRC(35c16d80) SHA1(7ed04600748c5efb63e25f066daa163e9c0d8038) ) ROM_END ROM_START( cltchitrd ) @@ -1794,10 +1803,10 @@ ROM_START( cltchitrd ) ROM_LOAD16_BYTE( "mpr-13781.c12", 0x400001, 0x80000, CRC(f33b13af) SHA1(d3eb64dcf12d532454bf3cd6c86528c0f11ee316) ) ROM_LOAD16_BYTE( "mpr-13789.a12", 0x400000, 0x80000, CRC(09ba8835) SHA1(72e83dd1793a7f4b2b881e71f262493e3d4992b3) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13793.c7", 0x010000, 0x80000, CRC(a3d31944) SHA1(44d17aa0598eacfac4b12c8955fd1067ca09abbd) ) - ROM_LOAD( "epr-13792.c6", 0x090000, 0x80000, CRC(808f9695) SHA1(d50677d20083ad56dbf0864db05f76f93a4e9eba) ) - ROM_LOAD( "epr-13791.c5", 0x110000, 0x80000, CRC(35c16d80) SHA1(7ed04600748c5efb63e25f066daa163e9c0d8038) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13793.c7", 0x000000, 0x80000, CRC(a3d31944) SHA1(44d17aa0598eacfac4b12c8955fd1067ca09abbd) ) + ROM_LOAD( "epr-13792.c6", 0x080000, 0x80000, CRC(808f9695) SHA1(d50677d20083ad56dbf0864db05f76f93a4e9eba) ) + ROM_LOAD( "epr-13791.c5", 0x100000, 0x80000, CRC(35c16d80) SHA1(7ed04600748c5efb63e25f066daa163e9c0d8038) ) ROM_END /************************************************************************************************************************** @@ -1831,11 +1840,11 @@ ROM_START( cltchitrj ) ROM_LOAD16_BYTE( "epr-13782.c13", 0x600001, 0x40000, CRC(73790852) SHA1(891345cb8ce4b04bd293ee9bac9b1b9940d6bcb2) ) ROM_LOAD16_BYTE( "epr-13790.a13", 0x600000, 0x40000, CRC(23849101) SHA1(1aeb0fefb6688dfd841bd7d0b17ffdfce69f1dd9) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU // another copy in different set is epr-13778.b7 - 9c54c038 - ROM_LOAD( "epr-13778.c7", 0x010000, 0x20000, CRC(35e86146) SHA1(9be82165dc12d5f32ef26f37ea02b29e3621893f) ) - ROM_LOAD( "epr-13777.c6", 0x090000, 0x80000, CRC(d1524782) SHA1(121c5804927ed686ea50d5d81d0226e041f50f6f) ) - ROM_LOAD( "epr-13776.c5", 0x110000, 0x80000, CRC(282ac9fe) SHA1(4f54d93779c35c036d7c85fce6736df80f3bbe33) ) + ROM_LOAD( "epr-13778.c7", 0x000000, 0x20000, CRC(35e86146) SHA1(9be82165dc12d5f32ef26f37ea02b29e3621893f) ) + ROM_LOAD( "epr-13777.c6", 0x080000, 0x80000, CRC(d1524782) SHA1(121c5804927ed686ea50d5d81d0226e041f50f6f) ) + ROM_LOAD( "epr-13776.c5", 0x100000, 0x80000, CRC(282ac9fe) SHA1(4f54d93779c35c036d7c85fce6736df80f3bbe33) ) ROM_END ROM_START( cltchitrjd ) @@ -1861,11 +1870,11 @@ ROM_START( cltchitrjd ) ROM_LOAD16_BYTE( "epr-13782.c13", 0x600001, 0x40000, CRC(73790852) SHA1(891345cb8ce4b04bd293ee9bac9b1b9940d6bcb2) ) ROM_LOAD16_BYTE( "epr-13790.a13", 0x600000, 0x40000, CRC(23849101) SHA1(1aeb0fefb6688dfd841bd7d0b17ffdfce69f1dd9) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU // another copy in different set is epr-13778.b7 - 9c54c038 - ROM_LOAD( "epr-13778.c7", 0x010000, 0x20000, CRC(35e86146) SHA1(9be82165dc12d5f32ef26f37ea02b29e3621893f) ) - ROM_LOAD( "epr-13777.c6", 0x090000, 0x80000, CRC(d1524782) SHA1(121c5804927ed686ea50d5d81d0226e041f50f6f) ) - ROM_LOAD( "epr-13776.c5", 0x110000, 0x80000, CRC(282ac9fe) SHA1(4f54d93779c35c036d7c85fce6736df80f3bbe33) ) + ROM_LOAD( "epr-13778.c7", 0x000000, 0x20000, CRC(35e86146) SHA1(9be82165dc12d5f32ef26f37ea02b29e3621893f) ) + ROM_LOAD( "epr-13777.c6", 0x080000, 0x80000, CRC(d1524782) SHA1(121c5804927ed686ea50d5d81d0226e041f50f6f) ) + ROM_LOAD( "epr-13776.c5", 0x100000, 0x80000, CRC(282ac9fe) SHA1(4f54d93779c35c036d7c85fce6736df80f3bbe33) ) ROM_END @@ -1901,11 +1910,11 @@ ROM_START( ddcrew ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END ROM_START( ddcrewd ) @@ -1930,11 +1939,11 @@ ROM_START( ddcrewd ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END /************************************************************************************************************************** @@ -1967,11 +1976,11 @@ ROM_START( ddcrewu ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END ROM_START( ddcrewud ) @@ -1996,11 +2005,11 @@ ROM_START( ddcrewud ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END /************************************************************************************************************************** @@ -2033,11 +2042,11 @@ ROM_START( ddcrew2 ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END ROM_START( ddcrew2d ) @@ -2062,11 +2071,11 @@ ROM_START( ddcrew2d ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END @@ -2101,11 +2110,11 @@ ROM_START( ddcrew1 ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END ROM_START( ddcrew1d ) @@ -2130,11 +2139,11 @@ ROM_START( ddcrew1d ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END @@ -2168,11 +2177,11 @@ ROM_START( ddcrewj ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END @@ -2198,11 +2207,11 @@ ROM_START( ddcrewjd ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END /************************************************************************************************************************** @@ -2236,11 +2245,11 @@ ROM_START( ddcrewj2 ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END ROM_START( ddcrewj2d ) @@ -2266,11 +2275,11 @@ ROM_START( ddcrewj2d ) ROM_LOAD16_BYTE( "epr-14137.c13", 0x600001, 0x80000, CRC(846c4265) SHA1(58d0c213d085fb4dee18b7aefb05087d9d522950) ) ROM_LOAD16_BYTE( "epr-14145.a13", 0x600000, 0x80000, CRC(0e76c797) SHA1(9a44dc948e84e5acac36e80105c2349ee78e6cfa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14133.c7", 0x010000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) - ROM_LOAD( "mpr-14132.c6", 0x090000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) - ROM_LOAD( "mpr-14131.c5", 0x110000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) - ROM_LOAD( "epr-14130.c4", 0x190000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14133.c7", 0x000000, 0x20000, CRC(cff96665) SHA1(b4dc7f1a03415ebebdb99a82ae89328c345e7678) ) + ROM_LOAD( "mpr-14132.c6", 0x080000, 0x80000, CRC(1fae0220) SHA1(8414c74318ea915816c6b67801ac7c8c3fc905f9) ) + ROM_LOAD( "mpr-14131.c5", 0x100000, 0x80000, CRC(be5a7d0b) SHA1(c2c598b0cf711273fdd568f3401375e9772c1d61) ) + ROM_LOAD( "epr-14130.c4", 0x180000, 0x80000, CRC(948f34a1) SHA1(d4c6728d5eea06cee6ac15a34ec8cccb4cc4b982) ) ROM_END /************************************************************************************************************************** @@ -2308,11 +2317,11 @@ ROM_START( desertbr ) ROM_LOAD16_BYTE( "mpr-14791.c13", 0x600001, 0x100000, CRC(a4ae352b) SHA1(dc814e1c2e167e191cd43fa554ff8ee974d47152) ) ROM_LOAD16_BYTE( "mpr-14799.a13", 0x600000, 0x100000, CRC(aeb7b025) SHA1(9ce2a9a46176a110c8d2e77deb3d8b9b69b902fa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14787.c7", 0x010000, 0x40000, CRC(cc6feec7) SHA1(31cc243178b98681a52500a485d74ed9e1274888) ) - ROM_LOAD( "mpr-14786.c6", 0x090000, 0x80000, CRC(cc8349f2) SHA1(9f00d8ea372b70ba44a90dab497deadcc5be3dab) ) - ROM_LOAD( "mpr-14785.c5", 0x110000, 0x80000, CRC(7babba13) SHA1(190cd9ea0f73272e0df34bbdfd8e0035f9e9b0b0) ) - ROM_LOAD( "mpr-14784.c4", 0x190000, 0x80000, CRC(073878e4) SHA1(eff08080d06a16fccf4876e42b389fef599cceba) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14787.c7", 0x000000, 0x40000, CRC(cc6feec7) SHA1(31cc243178b98681a52500a485d74ed9e1274888) ) + ROM_LOAD( "mpr-14786.c6", 0x080000, 0x80000, CRC(cc8349f2) SHA1(9f00d8ea372b70ba44a90dab497deadcc5be3dab) ) + ROM_LOAD( "mpr-14785.c5", 0x100000, 0x80000, CRC(7babba13) SHA1(190cd9ea0f73272e0df34bbdfd8e0035f9e9b0b0) ) + ROM_LOAD( "mpr-14784.c4", 0x180000, 0x80000, CRC(073878e4) SHA1(eff08080d06a16fccf4876e42b389fef599cceba) ) ROM_END ROM_START( desertbrd ) @@ -2337,11 +2346,11 @@ ROM_START( desertbrd ) ROM_LOAD16_BYTE( "mpr-14791.c13", 0x600001, 0x100000, CRC(a4ae352b) SHA1(dc814e1c2e167e191cd43fa554ff8ee974d47152) ) ROM_LOAD16_BYTE( "mpr-14799.a13", 0x600000, 0x100000, CRC(aeb7b025) SHA1(9ce2a9a46176a110c8d2e77deb3d8b9b69b902fa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14787.c7", 0x010000, 0x40000, CRC(cc6feec7) SHA1(31cc243178b98681a52500a485d74ed9e1274888) ) - ROM_LOAD( "mpr-14786.c6", 0x090000, 0x80000, CRC(cc8349f2) SHA1(9f00d8ea372b70ba44a90dab497deadcc5be3dab) ) - ROM_LOAD( "mpr-14785.c5", 0x110000, 0x80000, CRC(7babba13) SHA1(190cd9ea0f73272e0df34bbdfd8e0035f9e9b0b0) ) - ROM_LOAD( "mpr-14784.c4", 0x190000, 0x80000, CRC(073878e4) SHA1(eff08080d06a16fccf4876e42b389fef599cceba) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14787.c7", 0x000000, 0x40000, CRC(cc6feec7) SHA1(31cc243178b98681a52500a485d74ed9e1274888) ) + ROM_LOAD( "mpr-14786.c6", 0x080000, 0x80000, CRC(cc8349f2) SHA1(9f00d8ea372b70ba44a90dab497deadcc5be3dab) ) + ROM_LOAD( "mpr-14785.c5", 0x100000, 0x80000, CRC(7babba13) SHA1(190cd9ea0f73272e0df34bbdfd8e0035f9e9b0b0) ) + ROM_LOAD( "mpr-14784.c4", 0x180000, 0x80000, CRC(073878e4) SHA1(eff08080d06a16fccf4876e42b389fef599cceba) ) ROM_END @@ -2378,11 +2387,11 @@ ROM_START( desertbrj ) ROM_LOAD16_BYTE( "mpr-14791.c13", 0x600001, 0x100000, CRC(a4ae352b) SHA1(dc814e1c2e167e191cd43fa554ff8ee974d47152) ) ROM_LOAD16_BYTE( "mpr-14799.a13", 0x600000, 0x100000, CRC(aeb7b025) SHA1(9ce2a9a46176a110c8d2e77deb3d8b9b69b902fa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14787.c7", 0x010000, 0x40000, CRC(cc6feec7) SHA1(31cc243178b98681a52500a485d74ed9e1274888) ) - ROM_LOAD( "mpr-14786.c6", 0x090000, 0x80000, CRC(cc8349f2) SHA1(9f00d8ea372b70ba44a90dab497deadcc5be3dab) ) - ROM_LOAD( "mpr-14785.c5", 0x110000, 0x80000, CRC(7babba13) SHA1(190cd9ea0f73272e0df34bbdfd8e0035f9e9b0b0) ) - ROM_LOAD( "mpr-14784.c4", 0x190000, 0x80000, CRC(073878e4) SHA1(eff08080d06a16fccf4876e42b389fef599cceba) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14787.c7", 0x000000, 0x40000, CRC(cc6feec7) SHA1(31cc243178b98681a52500a485d74ed9e1274888) ) + ROM_LOAD( "mpr-14786.c6", 0x080000, 0x80000, CRC(cc8349f2) SHA1(9f00d8ea372b70ba44a90dab497deadcc5be3dab) ) + ROM_LOAD( "mpr-14785.c5", 0x100000, 0x80000, CRC(7babba13) SHA1(190cd9ea0f73272e0df34bbdfd8e0035f9e9b0b0) ) + ROM_LOAD( "mpr-14784.c4", 0x180000, 0x80000, CRC(073878e4) SHA1(eff08080d06a16fccf4876e42b389fef599cceba) ) ROM_END @@ -2408,11 +2417,11 @@ ROM_START( desertbrjd ) ROM_LOAD16_BYTE( "mpr-14791.c13", 0x600001, 0x100000, CRC(a4ae352b) SHA1(dc814e1c2e167e191cd43fa554ff8ee974d47152) ) ROM_LOAD16_BYTE( "mpr-14799.a13", 0x600000, 0x100000, CRC(aeb7b025) SHA1(9ce2a9a46176a110c8d2e77deb3d8b9b69b902fa) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14787.c7", 0x010000, 0x40000, CRC(cc6feec7) SHA1(31cc243178b98681a52500a485d74ed9e1274888) ) - ROM_LOAD( "mpr-14786.c6", 0x090000, 0x80000, CRC(cc8349f2) SHA1(9f00d8ea372b70ba44a90dab497deadcc5be3dab) ) - ROM_LOAD( "mpr-14785.c5", 0x110000, 0x80000, CRC(7babba13) SHA1(190cd9ea0f73272e0df34bbdfd8e0035f9e9b0b0) ) - ROM_LOAD( "mpr-14784.c4", 0x190000, 0x80000, CRC(073878e4) SHA1(eff08080d06a16fccf4876e42b389fef599cceba) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14787.c7", 0x000000, 0x40000, CRC(cc6feec7) SHA1(31cc243178b98681a52500a485d74ed9e1274888) ) + ROM_LOAD( "mpr-14786.c6", 0x080000, 0x80000, CRC(cc8349f2) SHA1(9f00d8ea372b70ba44a90dab497deadcc5be3dab) ) + ROM_LOAD( "mpr-14785.c5", 0x100000, 0x80000, CRC(7babba13) SHA1(190cd9ea0f73272e0df34bbdfd8e0035f9e9b0b0) ) + ROM_LOAD( "mpr-14784.c4", 0x180000, 0x80000, CRC(073878e4) SHA1(eff08080d06a16fccf4876e42b389fef599cceba) ) ROM_END @@ -2449,9 +2458,9 @@ ROM_START( hamaway ) ROM_LOAD16_BYTE( "c19.bin", 0x100001, 0x40000, CRC(3c616caa) SHA1(d48a6239b7a52ac13971f7513a65a17af492bfdf) ) // 11xxxxxxxxxxxxxxxx = 0xFF ROM_LOAD16_BYTE( "12.bin", 0x100000, 0x40000, CRC(c7bbd579) SHA1(ab87bfdad66ea241cb23c9bbfea05f5a1574d6c9) ) // 1ST AND 2ND HALF IDENTICAL (but ok, because pairing ROM has no data in the 2nd half anyway) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "c16.bin", 0x010000, 0x40000, CRC(913cc18c) SHA1(4bf4ec14937586c3ae77fcad57dcb21f6433ef81) ) - ROM_LOAD( "c15.bin", 0x090000, 0x40000, CRC(b53694fc) SHA1(0e42be2730abce1b52ea94a9fe61cbd1c9a0ccae) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "c16.bin", 0x000000, 0x40000, CRC(913cc18c) SHA1(4bf4ec14937586c3ae77fcad57dcb21f6433ef81) ) + ROM_LOAD( "c15.bin", 0x080000, 0x40000, CRC(b53694fc) SHA1(0e42be2730abce1b52ea94a9fe61cbd1c9a0ccae) ) ROM_END @@ -2487,11 +2496,11 @@ ROM_START( lghost ) ROM_LOAD16_BYTE( "mpr-13423.a13", 0x600000, 0x80000, CRC(335bbc9d) SHA1(78793335b2f8a1bb05809259521db193c17c9b98) ) ROM_LOAD16_BYTE( "mpr-13426.c13", 0x600001, 0x80000, CRC(5cfb1e25) SHA1(1dd57475604f339e58bf946e17ae0dc5cf4a3dba) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13417.c7", 0x010000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) - ROM_LOAD( "mpr-13420.c6", 0x090000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) - ROM_LOAD( "mpr-13419.c5", 0x110000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) - ROM_LOAD( "mpr-13418.c4", 0x190000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13417.c7", 0x000000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) + ROM_LOAD( "mpr-13420.c6", 0x080000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) + ROM_LOAD( "mpr-13419.c5", 0x100000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) + ROM_LOAD( "mpr-13418.c4", 0x180000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) ROM_END ROM_START( lghostd ) @@ -2516,11 +2525,11 @@ ROM_START( lghostd ) ROM_LOAD16_BYTE( "mpr-13423.a13", 0x600000, 0x80000, CRC(335bbc9d) SHA1(78793335b2f8a1bb05809259521db193c17c9b98) ) ROM_LOAD16_BYTE( "mpr-13426.c13", 0x600001, 0x80000, CRC(5cfb1e25) SHA1(1dd57475604f339e58bf946e17ae0dc5cf4a3dba) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13417.c7", 0x010000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) - ROM_LOAD( "mpr-13420.c6", 0x090000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) - ROM_LOAD( "mpr-13419.c5", 0x110000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) - ROM_LOAD( "mpr-13418.c4", 0x190000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13417.c7", 0x000000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) + ROM_LOAD( "mpr-13420.c6", 0x080000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) + ROM_LOAD( "mpr-13419.c5", 0x100000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) + ROM_LOAD( "mpr-13418.c4", 0x180000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) ROM_END /************************************************************************************************************************** @@ -2586,11 +2595,11 @@ ROM_START( lghostu ) ROM_LOAD16_BYTE( "mpr-13423.a13", 0x600000, 0x80000, CRC(335bbc9d) SHA1(78793335b2f8a1bb05809259521db193c17c9b98) ) ROM_LOAD16_BYTE( "mpr-13426.c13", 0x600001, 0x80000, CRC(5cfb1e25) SHA1(1dd57475604f339e58bf946e17ae0dc5cf4a3dba) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13417.c7", 0x010000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) - ROM_LOAD( "mpr-13420.c6", 0x090000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) - ROM_LOAD( "mpr-13419.c5", 0x110000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) - ROM_LOAD( "mpr-13418.c4", 0x190000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13417.c7", 0x000000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) + ROM_LOAD( "mpr-13420.c6", 0x080000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) + ROM_LOAD( "mpr-13419.c5", 0x100000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) + ROM_LOAD( "mpr-13418.c4", 0x180000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) ROM_END @@ -2616,11 +2625,11 @@ ROM_START( lghostud ) ROM_LOAD16_BYTE( "mpr-13423.a13", 0x600000, 0x80000, CRC(335bbc9d) SHA1(78793335b2f8a1bb05809259521db193c17c9b98) ) ROM_LOAD16_BYTE( "mpr-13426.c13", 0x600001, 0x80000, CRC(5cfb1e25) SHA1(1dd57475604f339e58bf946e17ae0dc5cf4a3dba) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13417.c7", 0x010000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) - ROM_LOAD( "mpr-13420.c6", 0x090000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) - ROM_LOAD( "mpr-13419.c5", 0x110000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) - ROM_LOAD( "mpr-13418.c4", 0x190000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13417.c7", 0x000000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) + ROM_LOAD( "mpr-13420.c6", 0x080000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) + ROM_LOAD( "mpr-13419.c5", 0x100000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) + ROM_LOAD( "mpr-13418.c4", 0x180000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) ROM_END @@ -2656,11 +2665,11 @@ ROM_START( lghostj ) ROM_LOAD16_BYTE( "mpr-13423.a13", 0x600000, 0x80000, CRC(335bbc9d) SHA1(78793335b2f8a1bb05809259521db193c17c9b98) ) ROM_LOAD16_BYTE( "mpr-13426.c13", 0x600001, 0x80000, CRC(5cfb1e25) SHA1(1dd57475604f339e58bf946e17ae0dc5cf4a3dba) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13417.c7", 0x010000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) - ROM_LOAD( "mpr-13420.c6", 0x090000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) - ROM_LOAD( "mpr-13419.c5", 0x110000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) - ROM_LOAD( "mpr-13418.c4", 0x190000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13417.c7", 0x000000, 0x20000, CRC(cd7beb49) SHA1(2435ce000f1eefdd06b27ea93e22fd82c0e999d2) ) + ROM_LOAD( "mpr-13420.c6", 0x080000, 0x40000, CRC(3de0dee4) SHA1(31833684df5a34d5e9ef04f2ab42355b8e9cbb45) ) + ROM_LOAD( "mpr-13419.c5", 0x100000, 0x40000, CRC(e7021b0a) SHA1(82e390fac63965d4f80ae01758c19ae951c39475) ) + ROM_LOAD( "mpr-13418.c4", 0x180000, 0x40000, CRC(0732594d) SHA1(9fbeae29f1a31d136ddc9a49c786b2a08a523e0d) ) ROM_END @@ -2694,11 +2703,11 @@ ROM_START( mwalk ) ROM_LOAD16_BYTE( "epr-13221.b8", 0x180001, 0x40000, CRC(9ae7546a) SHA1(5413b0131881b0b32bac8de51da9a299835014bb) ) ROM_LOAD16_BYTE( "epr-13228.a8", 0x180000, 0x40000, CRC(de3786be) SHA1(2279bb390aa3efab9aeee0a643e5cb6a4f5933b6) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13225.a4", 0x010000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) - ROM_LOAD( "mpr-13219.b4", 0x090000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) - ROM_LOAD( "mpr-13220.b5", 0x110000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) - ROM_LOAD( "mpr-13249.b6", 0x190000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13225.a4", 0x000000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) + ROM_LOAD( "mpr-13219.b4", 0x080000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) + ROM_LOAD( "mpr-13220.b5", 0x100000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) + ROM_LOAD( "mpr-13249.b6", 0x180000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) ROM_REGION( 0x10000, "mcu", 0 ) // protection MCU ROM_LOAD( "315-5437.ic4", 0x00000, 0x1000, CRC(4bf63bc1) SHA1(2766ab30b466b079febb30c488adad9ea56813f7) ) @@ -2724,11 +2733,11 @@ ROM_START( mwalkd ) ROM_LOAD16_BYTE( "epr-13221.b8", 0x180001, 0x40000, CRC(9ae7546a) SHA1(5413b0131881b0b32bac8de51da9a299835014bb) ) ROM_LOAD16_BYTE( "epr-13228.a8", 0x180000, 0x40000, CRC(de3786be) SHA1(2279bb390aa3efab9aeee0a643e5cb6a4f5933b6) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13225.a4", 0x010000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) - ROM_LOAD( "mpr-13219.b4", 0x090000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) - ROM_LOAD( "mpr-13220.b5", 0x110000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) - ROM_LOAD( "mpr-13249.b6", 0x190000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13225.a4", 0x000000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) + ROM_LOAD( "mpr-13219.b4", 0x080000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) + ROM_LOAD( "mpr-13220.b5", 0x100000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) + ROM_LOAD( "mpr-13249.b6", 0x180000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) ROM_REGION( 0x10000, "mcu", 0 ) // protection MCU ROM_LOAD( "315-5437.ic4", 0x00000, 0x1000, CRC(4bf63bc1) SHA1(2766ab30b466b079febb30c488adad9ea56813f7) ) @@ -2763,11 +2772,11 @@ ROM_START( mwalku ) ROM_LOAD16_BYTE( "epr-13221.b8", 0x180001, 0x40000, CRC(9ae7546a) SHA1(5413b0131881b0b32bac8de51da9a299835014bb) ) ROM_LOAD16_BYTE( "epr-13228.a8", 0x180000, 0x40000, CRC(de3786be) SHA1(2279bb390aa3efab9aeee0a643e5cb6a4f5933b6) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13225.a4", 0x010000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) - ROM_LOAD( "mpr-13219.b4", 0x090000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) - ROM_LOAD( "mpr-13220.b5", 0x110000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) - ROM_LOAD( "mpr-13249.b6", 0x190000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13225.a4", 0x000000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) + ROM_LOAD( "mpr-13219.b4", 0x080000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) + ROM_LOAD( "mpr-13220.b5", 0x100000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) + ROM_LOAD( "mpr-13249.b6", 0x180000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) ROM_REGION( 0x10000, "mcu", 0 ) // protection MCU ROM_LOAD( "315-5437.ic4", 0x00000, 0x1000, CRC(4bf63bc1) SHA1(2766ab30b466b079febb30c488adad9ea56813f7) ) @@ -2793,11 +2802,11 @@ ROM_START( mwalkud ) ROM_LOAD16_BYTE( "epr-13221.b8", 0x180001, 0x40000, CRC(9ae7546a) SHA1(5413b0131881b0b32bac8de51da9a299835014bb) ) ROM_LOAD16_BYTE( "epr-13228.a8", 0x180000, 0x40000, CRC(de3786be) SHA1(2279bb390aa3efab9aeee0a643e5cb6a4f5933b6) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13225.a4", 0x010000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) - ROM_LOAD( "mpr-13219.b4", 0x090000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) - ROM_LOAD( "mpr-13220.b5", 0x110000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) - ROM_LOAD( "mpr-13249.b6", 0x190000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13225.a4", 0x000000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) + ROM_LOAD( "mpr-13219.b4", 0x080000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) + ROM_LOAD( "mpr-13220.b5", 0x100000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) + ROM_LOAD( "mpr-13249.b6", 0x180000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) ROM_REGION( 0x10000, "mcu", 0 ) // protection MCU ROM_LOAD( "315-5437.ic4", 0x00000, 0x1000, CRC(4bf63bc1) SHA1(2766ab30b466b079febb30c488adad9ea56813f7) ) @@ -2831,11 +2840,11 @@ ROM_START( mwalkj ) ROM_LOAD16_BYTE( "epr-13221.b8", 0x180001, 0x40000, CRC(9ae7546a) SHA1(5413b0131881b0b32bac8de51da9a299835014bb) ) ROM_LOAD16_BYTE( "epr-13228.a8", 0x180000, 0x40000, CRC(de3786be) SHA1(2279bb390aa3efab9aeee0a643e5cb6a4f5933b6) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13225.a4", 0x010000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) - ROM_LOAD( "mpr-13219.b4", 0x090000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) - ROM_LOAD( "mpr-13220.b5", 0x110000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) - ROM_LOAD( "mpr-13249.b6", 0x190000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13225.a4", 0x000000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) + ROM_LOAD( "mpr-13219.b4", 0x080000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) + ROM_LOAD( "mpr-13220.b5", 0x100000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) + ROM_LOAD( "mpr-13249.b6", 0x180000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) ROM_REGION( 0x10000, "mcu", 0 ) // protection MCU // not verified if mcu is the same as the other sets.. @@ -2862,11 +2871,11 @@ ROM_START( mwalkjd ) ROM_LOAD16_BYTE( "epr-13221.b8", 0x180001, 0x40000, CRC(9ae7546a) SHA1(5413b0131881b0b32bac8de51da9a299835014bb) ) ROM_LOAD16_BYTE( "epr-13228.a8", 0x180000, 0x40000, CRC(de3786be) SHA1(2279bb390aa3efab9aeee0a643e5cb6a4f5933b6) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-13225.a4", 0x010000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) - ROM_LOAD( "mpr-13219.b4", 0x090000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) - ROM_LOAD( "mpr-13220.b5", 0x110000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) - ROM_LOAD( "mpr-13249.b6", 0x190000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-13225.a4", 0x000000, 0x20000, CRC(56c2e82b) SHA1(d5755a1bb6e889d274dc60e883d4d65f12fdc877) ) + ROM_LOAD( "mpr-13219.b4", 0x080000, 0x40000, CRC(19e2061f) SHA1(2dcf1718a43dab4da53b4f67722664e70ddd2169) ) + ROM_LOAD( "mpr-13220.b5", 0x100000, 0x40000, CRC(58d4d9ce) SHA1(725e73a656845b02702ef131b4c0aa2a73cdd02e) ) + ROM_LOAD( "mpr-13249.b6", 0x180000, 0x40000, CRC(623edc5d) SHA1(c32d9f818d40f311877fbe6532d9e95b6045c3c4) ) ROM_REGION( 0x10000, "mcu", 0 ) // protection MCU // not verified if mcu is the same as the other sets.. @@ -2897,8 +2906,8 @@ ROM_START( pontoon ) ROM_LOAD16_BYTE( "epr-13173.b11", 0x000001, 0x40000, CRC(40a0ddfa) SHA1(f3917361f627865d2f1a22791904da056ce8a93a) ) ROM_LOAD16_BYTE( "epr-13176.a11", 0x000000, 0x40000, CRC(1184fbd2) SHA1(685ee2d7c4a0134af13ccf5d15f2e56a6b905195) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-12826a.a4", 0x10000, 0x20000, CRC(d41e2a3f) SHA1(087a6515ebefc3252a1feab5bf7b8a22bff9e379) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-12826a.a4", 0x00000, 0x20000, CRC(d41e2a3f) SHA1(087a6515ebefc3252a1feab5bf7b8a22bff9e379) ) ROM_END @@ -2933,9 +2942,9 @@ ROM_START( shdancer ) ROM_LOAD16_BYTE( "epr-12716.b8", 0x180001, 0x40000, CRC(a870e629) SHA1(29f6633240f9737ec19e16100decc7aa045b2060) ) ROM_LOAD16_BYTE( "epr-12723.a8", 0x180000, 0x40000, CRC(c606cf90) SHA1(cb53ae9a6da1eb31c584173d1fbbd1c8539fb54c) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-12987.a4", 0x10000, 0x20000, CRC(d1c020cc) SHA1(7823e31fc44180570ee2512a73e993533204b5ab) ) - ROM_LOAD( "mpr-12715.b4", 0x90000, 0x40000, CRC(07051a52) SHA1(d48658497f4a34665d3e051f893ff057c38925ae) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-12987.a4", 0x00000, 0x20000, CRC(d1c020cc) SHA1(7823e31fc44180570ee2512a73e993533204b5ab) ) + ROM_LOAD( "mpr-12715.b4", 0x80000, 0x40000, CRC(07051a52) SHA1(d48658497f4a34665d3e051f893ff057c38925ae) ) ROM_END /************************************************************************************************************************** @@ -2963,9 +2972,9 @@ ROM_START( shdancerj ) ROM_LOAD16_BYTE( "epr-12716.b8", 0x180001, 0x40000, CRC(a870e629) SHA1(29f6633240f9737ec19e16100decc7aa045b2060) ) ROM_LOAD16_BYTE( "epr-12723.a8", 0x180000, 0x40000, CRC(c606cf90) SHA1(cb53ae9a6da1eb31c584173d1fbbd1c8539fb54c) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-12720.a4", 0x10000, 0x20000, CRC(7a0d8de1) SHA1(eca5e2104e5b3e772d083a718171234f06ea8a55) ) - ROM_LOAD( "mpr-12715.b4", 0x90000, 0x40000, CRC(07051a52) SHA1(d48658497f4a34665d3e051f893ff057c38925ae) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-12720.a4", 0x00000, 0x20000, CRC(7a0d8de1) SHA1(eca5e2104e5b3e772d083a718171234f06ea8a55) ) + ROM_LOAD( "mpr-12715.b4", 0x80000, 0x40000, CRC(07051a52) SHA1(d48658497f4a34665d3e051f893ff057c38925ae) ) ROM_END /************************************************************************************************************************** @@ -2997,9 +3006,9 @@ ROM_START( shdancer1 ) ROM_LOAD16_BYTE( "epr-12716.b8", 0x180001, 0x40000, CRC(a870e629) SHA1(29f6633240f9737ec19e16100decc7aa045b2060) ) ROM_LOAD16_BYTE( "epr-12723.a8", 0x180000, 0x40000, CRC(c606cf90) SHA1(cb53ae9a6da1eb31c584173d1fbbd1c8539fb54c) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-12720.a4", 0x10000, 0x20000, CRC(7a0d8de1) SHA1(eca5e2104e5b3e772d083a718171234f06ea8a55) ) - ROM_LOAD( "mpr-12715.b4", 0x90000, 0x40000, CRC(07051a52) SHA1(d48658497f4a34665d3e051f893ff057c38925ae) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-12720.a4", 0x00000, 0x20000, CRC(7a0d8de1) SHA1(eca5e2104e5b3e772d083a718171234f06ea8a55) ) + ROM_LOAD( "mpr-12715.b4", 0x80000, 0x40000, CRC(07051a52) SHA1(d48658497f4a34665d3e051f893ff057c38925ae) ) ROM_END @@ -3031,11 +3040,11 @@ ROM_START( wwallyj ) ROM_LOAD16_BYTE( "mpr-14728.c12", 0x400001, 0x080000, CRC(5b921587) SHA1(2779dc658bb7a51f2399af5a6463ccb2dd388e88) ) ROM_LOAD16_BYTE( "mpr-14734.a12", 0x400000, 0x080000, CRC(6f3f5ed9) SHA1(01972c8bd5bfde58715bc0adc7dea73bf6350a26) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14725.c7", 0x010000, 0x20000, CRC(2b29684f) SHA1(b83962a4f475f9b3e79d4f7ff577b170c4043156) ) - ROM_LOAD( "mpr-14724.c6", 0x090000, 0x80000, CRC(47cbea86) SHA1(c70d1fed2912c7c05223ce0bb0941706f957295f) ) - ROM_LOAD( "mpr-14723.c5", 0x110000, 0x80000, CRC(bc5adc27) SHA1(09405002b940a3d3eb0f1258f37af51e0b7581b9) ) - ROM_LOAD( "mpr-14722.c4", 0x190000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14725.c7", 0x000000, 0x20000, CRC(2b29684f) SHA1(b83962a4f475f9b3e79d4f7ff577b170c4043156) ) + ROM_LOAD( "mpr-14724.c6", 0x080000, 0x80000, CRC(47cbea86) SHA1(c70d1fed2912c7c05223ce0bb0941706f957295f) ) + ROM_LOAD( "mpr-14723.c5", 0x100000, 0x80000, CRC(bc5adc27) SHA1(09405002b940a3d3eb0f1258f37af51e0b7581b9) ) + ROM_LOAD( "mpr-14722.c4", 0x180000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) ) ROM_END ROM_START( wwallyjd ) @@ -3056,11 +3065,11 @@ ROM_START( wwallyjd ) ROM_LOAD16_BYTE( "mpr-14728.c12", 0x400001, 0x080000, CRC(5b921587) SHA1(2779dc658bb7a51f2399af5a6463ccb2dd388e88) ) ROM_LOAD16_BYTE( "mpr-14734.a12", 0x400000, 0x080000, CRC(6f3f5ed9) SHA1(01972c8bd5bfde58715bc0adc7dea73bf6350a26) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14725.c7", 0x010000, 0x20000, CRC(2b29684f) SHA1(b83962a4f475f9b3e79d4f7ff577b170c4043156) ) - ROM_LOAD( "mpr-14724.c6", 0x090000, 0x80000, CRC(47cbea86) SHA1(c70d1fed2912c7c05223ce0bb0941706f957295f) ) - ROM_LOAD( "mpr-14723.c5", 0x110000, 0x80000, CRC(bc5adc27) SHA1(09405002b940a3d3eb0f1258f37af51e0b7581b9) ) - ROM_LOAD( "mpr-14722.c4", 0x190000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14725.c7", 0x000000, 0x20000, CRC(2b29684f) SHA1(b83962a4f475f9b3e79d4f7ff577b170c4043156) ) + ROM_LOAD( "mpr-14724.c6", 0x080000, 0x80000, CRC(47cbea86) SHA1(c70d1fed2912c7c05223ce0bb0941706f957295f) ) + ROM_LOAD( "mpr-14723.c5", 0x100000, 0x80000, CRC(bc5adc27) SHA1(09405002b940a3d3eb0f1258f37af51e0b7581b9) ) + ROM_LOAD( "mpr-14722.c4", 0x180000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) ) ROM_END @@ -3090,11 +3099,11 @@ ROM_START( wwallyja ) ROM_LOAD16_BYTE( "mpr-14728.c12", 0x400001, 0x080000, CRC(5b921587) SHA1(2779dc658bb7a51f2399af5a6463ccb2dd388e88) ) ROM_LOAD16_BYTE( "mpr-14734.a12", 0x400000, 0x080000, CRC(6f3f5ed9) SHA1(01972c8bd5bfde58715bc0adc7dea73bf6350a26) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14725.c7", 0x010000, 0x20000, CRC(2b29684f) SHA1(b83962a4f475f9b3e79d4f7ff577b170c4043156) ) - ROM_LOAD( "mpr-14724.c6", 0x090000, 0x80000, CRC(47cbea86) SHA1(c70d1fed2912c7c05223ce0bb0941706f957295f) ) - ROM_LOAD( "mpr-14723.c5", 0x110000, 0x80000, CRC(bc5adc27) SHA1(09405002b940a3d3eb0f1258f37af51e0b7581b9) ) - ROM_LOAD( "mpr-14722.c4", 0x190000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14725.c7", 0x000000, 0x20000, CRC(2b29684f) SHA1(b83962a4f475f9b3e79d4f7ff577b170c4043156) ) + ROM_LOAD( "mpr-14724.c6", 0x080000, 0x80000, CRC(47cbea86) SHA1(c70d1fed2912c7c05223ce0bb0941706f957295f) ) + ROM_LOAD( "mpr-14723.c5", 0x100000, 0x80000, CRC(bc5adc27) SHA1(09405002b940a3d3eb0f1258f37af51e0b7581b9) ) + ROM_LOAD( "mpr-14722.c4", 0x180000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) ) ROM_END ROM_START( wwallyjad ) @@ -3115,11 +3124,11 @@ ROM_START( wwallyjad ) ROM_LOAD16_BYTE( "mpr-14728.c12", 0x400001, 0x080000, CRC(5b921587) SHA1(2779dc658bb7a51f2399af5a6463ccb2dd388e88) ) ROM_LOAD16_BYTE( "mpr-14734.a12", 0x400000, 0x080000, CRC(6f3f5ed9) SHA1(01972c8bd5bfde58715bc0adc7dea73bf6350a26) ) - ROM_REGION( 0x210000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU - ROM_LOAD( "epr-14725.c7", 0x010000, 0x20000, CRC(2b29684f) SHA1(b83962a4f475f9b3e79d4f7ff577b170c4043156) ) - ROM_LOAD( "mpr-14724.c6", 0x090000, 0x80000, CRC(47cbea86) SHA1(c70d1fed2912c7c05223ce0bb0941706f957295f) ) - ROM_LOAD( "mpr-14723.c5", 0x110000, 0x80000, CRC(bc5adc27) SHA1(09405002b940a3d3eb0f1258f37af51e0b7581b9) ) - ROM_LOAD( "mpr-14722.c4", 0x190000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) ) + ROM_REGION( 0x200000, "soundcpu", ROMREGION_ERASEFF ) // sound CPU + ROM_LOAD( "epr-14725.c7", 0x000000, 0x20000, CRC(2b29684f) SHA1(b83962a4f475f9b3e79d4f7ff577b170c4043156) ) + ROM_LOAD( "mpr-14724.c6", 0x080000, 0x80000, CRC(47cbea86) SHA1(c70d1fed2912c7c05223ce0bb0941706f957295f) ) + ROM_LOAD( "mpr-14723.c5", 0x100000, 0x80000, CRC(bc5adc27) SHA1(09405002b940a3d3eb0f1258f37af51e0b7581b9) ) + ROM_LOAD( "mpr-14722.c4", 0x180000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) ) ROM_END diff --git a/src/mame/drivers/segas32.cpp b/src/mame/drivers/segas32.cpp index f15551a94d0..edf488f0982 100644 --- a/src/mame/drivers/segas32.cpp +++ b/src/mame/drivers/segas32.cpp @@ -563,21 +563,26 @@ segas32_state::segas32_state(const machine_config &mconfig, const char *tag, dev } segas32_state::segas32_state(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) - : device_t(mconfig, type, tag, owner, clock), - m_z80_shared_ram(*this,"z80_shared_ram"), - m_system32_workram(*this,"workram"), - m_system32_videoram(*this,"videoram", 0), - m_system32_spriteram(*this,"spriteram", 0), - m_system32_paletteram(*this,"paletteram.%u", 0, uint8_t(0)), - m_maincpu(*this, "maincpu"), - m_soundcpu(*this, "soundcpu"), - m_multipcm(*this, "sega"), - m_gfxdecode(*this, "gfxdecode"), - m_screen(*this, "screen"), - m_palette(*this, "palette"), - m_irq_timer_0(*this, "v60_irq0"), - m_irq_timer_1(*this, "v60_irq1"), - m_s32comm(*this, "s32comm") + : device_t(mconfig, type, tag, owner, clock) + , m_z80_shared_ram(*this,"z80_shared_ram") + , m_system32_workram(*this,"workram") + , m_system32_videoram(*this,"videoram", 0) + , m_system32_spriteram(*this,"spriteram", 0) + , m_system32_paletteram(*this,"paletteram.%u", 0, uint8_t(0)) + , m_maincpu(*this, "maincpu") + , m_soundcpu(*this, "soundcpu") + , m_multipcm(*this, "sega") + , m_gfxdecode(*this, "gfxdecode") + , m_screen(*this, "screen") + , m_palette(*this, "palette") + , m_irq_timer_0(*this, "v60_irq0") + , m_irq_timer_1(*this, "v60_irq1") + , m_s32comm(*this, "s32comm") + , m_sprite_region(*this, "sprites") + , m_maincpu_region(*this, "maincpu") + , m_soundrom_bank(*this, "soundbank") + , m_multipcm_bank_lo(*this, "multipcmbanklo") + , m_multipcm_bank_hi(*this, "multipcmbankhi") { } @@ -999,28 +1004,28 @@ WRITE_LINE_MEMBER(segas32_state::ym3438_irq_handler) WRITE8_MEMBER(segas32_state::sound_bank_lo_w) { m_sound_bank = (m_sound_bank & ~0x3f) | (data & 0x3f); - membank("bank1")->set_entry(m_sound_bank); + m_soundrom_bank->set_entry(m_sound_bank); } WRITE8_MEMBER(segas32_state::sound_bank_hi_w) { m_sound_bank = (m_sound_bank & 0x3f) | ((data & 0x04) << 4) | ((data & 0x03) << 7); - membank("bank1")->set_entry(m_sound_bank); + m_soundrom_bank->set_entry(m_sound_bank); } WRITE8_MEMBER(segas32_state::multipcm_bank_w) { - membank("multipcmbankhi")->set_entry((data >> 3) & 7); - membank("multipcmbanklo")->set_entry(data & 7); + m_multipcm_bank_hi->set_entry((data >> 3) & 7); + m_multipcm_bank_lo->set_entry(data & 7); } WRITE8_MEMBER(segas32_state::scross_bank_w) { - membank("multipcmbankhi")->set_entry(data & 7); - membank("multipcmbanklo")->set_entry(data & 7); + m_multipcm_bank_hi->set_entry(data & 7); + m_multipcm_bank_lo->set_entry(data & 7); } @@ -1109,7 +1114,7 @@ void segas32_state::multi32_map(address_map &map) void segas32_state::system32_sound_map(address_map &map) { map(0x0000, 0x9fff).rom().region("soundcpu", 0); - map(0xa000, 0xbfff).bankr("bank1"); + map(0xa000, 0xbfff).bankr("soundbank"); map(0xc000, 0xc00f).mirror(0x0ff0).w("rfsnd", FUNC(rf5c68_device::rf5c68_w)); map(0xd000, 0xdfff).rw("rfsnd", FUNC(rf5c68_device::rf5c68_mem_r), FUNC(rf5c68_device::rf5c68_mem_w)); map(0xe000, 0xffff).ram().share("z80_shared_ram"); @@ -1128,11 +1133,17 @@ void segas32_state::system32_sound_portmap(address_map &map) map(0xf1, 0xf1).rw(this, FUNC(segas32_state::sound_dummy_r), FUNC(segas32_state::sound_dummy_w)); } +void segas32_state::rf5c68_map(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0xffff).ram(); +} + void segas32_state::multi32_sound_map(address_map &map) { map(0x0000, 0x9fff).rom().region("soundcpu", 0); - map(0xa000, 0xbfff).bankr("bank1"); + map(0xa000, 0xbfff).bankr("soundbank"); map(0xc000, 0xdfff).rw("sega", FUNC(multipcm_device::read), FUNC(multipcm_device::write)); map(0xe000, 0xffff).ram().share("z80_shared_ram"); } @@ -2166,10 +2177,9 @@ static const gfx_layout bgcharlayout = 16,16, RGN_FRAC(1,1), 4, - { 0,1,2,3 }, - { 0, 4, 16, 20, 8, 12, 24, 28, 32, 36, 48, 52, 40, 44, 56, 60 }, - { 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64, - 8*64, 9*64,10*64,11*64,12*64,13*64,14*64,15*64 }, + { STEP4(0,1) }, + { 0, 4, 16, 20, 8, 12, 24, 28, 32, 36, 48, 52, 40, 44, 56, 60 }, + { STEP16(0,4*16) }, 16*64 }; @@ -2246,6 +2256,7 @@ MACHINE_CONFIG_START(segas32_state::device_add_mconfig) MCFG_DEVICE_ADD("rfsnd", RF5C68, RFC_CLOCK/4) MCFG_SOUND_ROUTE(0, "lspeaker", 0.55) MCFG_SOUND_ROUTE(1, "rspeaker", 0.55) + MCFG_DEVICE_ADDRESS_MAP(0, rf5c68_map) MCFG_S32COMM_ADD("s32comm") MACHINE_CONFIG_END @@ -2905,7 +2916,7 @@ ROM_START( arescue ) ROM_LOAD32_BYTE( "mpr-14498.ic34", 0x000002, 0x080000, CRC(d4a764bd) SHA1(8434a9225ed1e01e8b1cfe169268e42cd3ce6ee3) ) ROM_LOAD32_BYTE( "mpr-14499.ic38", 0x000000, 0x080000, CRC(fadc4b2b) SHA1(01c02a4dfad1ab19bac8b81b61d37fdc035bc5c5) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14500.ic24", 0x000007, 0x100000, CRC(0a064e9b) SHA1(264761f4aacaeeac9426528caf180404cd7f6e18) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14501.ic28", 0x000006, 0x100000, CRC(4662bb41) SHA1(80774e680468e9ba9c5dd5eeaa4791fa3b3722fd) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14502.ic33", 0x000005, 0x100000, CRC(988555a9) SHA1(355e44319fd51358329cc7cd226e4c4725e045cb) , ROM_SKIP(7) ) @@ -2938,7 +2949,7 @@ ROM_START( arescue ) ROM_LOAD32_BYTE( "mpr-14498.ic34", 0x000002, 0x080000, CRC(d4a764bd) SHA1(8434a9225ed1e01e8b1cfe169268e42cd3ce6ee3) ) ROM_LOAD32_BYTE( "mpr-14499.ic38", 0x000000, 0x080000, CRC(fadc4b2b) SHA1(01c02a4dfad1ab19bac8b81b61d37fdc035bc5c5) ) - ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "slavepcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14500.ic24", 0x000007, 0x100000, CRC(0a064e9b) SHA1(264761f4aacaeeac9426528caf180404cd7f6e18) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14501.ic28", 0x000006, 0x100000, CRC(4662bb41) SHA1(80774e680468e9ba9c5dd5eeaa4791fa3b3722fd) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14502.ic33", 0x000005, 0x100000, CRC(988555a9) SHA1(355e44319fd51358329cc7cd226e4c4725e045cb) , ROM_SKIP(7) ) @@ -2982,7 +2993,7 @@ ROM_START( arescuej ) ROM_LOAD32_BYTE( "mpr-14498.ic34", 0x000002, 0x080000, CRC(d4a764bd) SHA1(8434a9225ed1e01e8b1cfe169268e42cd3ce6ee3) ) ROM_LOAD32_BYTE( "mpr-14499.ic38", 0x000000, 0x080000, CRC(fadc4b2b) SHA1(01c02a4dfad1ab19bac8b81b61d37fdc035bc5c5) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14500.ic24", 0x000007, 0x100000, CRC(0a064e9b) SHA1(264761f4aacaeeac9426528caf180404cd7f6e18) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14501.ic28", 0x000006, 0x100000, CRC(4662bb41) SHA1(80774e680468e9ba9c5dd5eeaa4791fa3b3722fd) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14502.ic33", 0x000005, 0x100000, CRC(988555a9) SHA1(355e44319fd51358329cc7cd226e4c4725e045cb) , ROM_SKIP(7) ) @@ -3015,7 +3026,7 @@ ROM_START( arescuej ) ROM_LOAD32_BYTE( "mpr-14498.ic34", 0x000002, 0x080000, CRC(d4a764bd) SHA1(8434a9225ed1e01e8b1cfe169268e42cd3ce6ee3) ) ROM_LOAD32_BYTE( "mpr-14499.ic38", 0x000000, 0x080000, CRC(fadc4b2b) SHA1(01c02a4dfad1ab19bac8b81b61d37fdc035bc5c5) ) - ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "slavepcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14500.ic24", 0x000007, 0x100000, CRC(0a064e9b) SHA1(264761f4aacaeeac9426528caf180404cd7f6e18) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14501.ic28", 0x000006, 0x100000, CRC(4662bb41) SHA1(80774e680468e9ba9c5dd5eeaa4791fa3b3722fd) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14502.ic33", 0x000005, 0x100000, CRC(988555a9) SHA1(355e44319fd51358329cc7cd226e4c4725e045cb) , ROM_SKIP(7) ) @@ -3057,7 +3068,7 @@ ROM_START( alien3 ) ROM_LOAD16_BYTE( "mpr-15863.ic14", 0x000000, 0x200000, CRC(9d36b645) SHA1(2977047780b615b64c3b4aec78fef0643d40490e) ) ROM_LOAD16_BYTE( "mpr-15862.ic5", 0x000001, 0x200000, CRC(9e277d25) SHA1(9f191484a42391268306a8d2d95c340ce8b2d6cd) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15864.ic32", 0x000000, 0x200000, CRC(58207157) SHA1(d1b0c7edac8b89b1322398d4cd3a976a88bc0b56) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15866.ic30", 0x000002, 0x200000, CRC(9c53732c) SHA1(9aa5103cc10b4927c16e0cf102b64a15dd038756) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15868.ic28", 0x000004, 0x200000, CRC(62d556e8) SHA1(d70cab0881784a3d4dd06d0c99587ca6054c2dc4) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3098,7 +3109,7 @@ ROM_START( alien3u ) ROM_LOAD16_BYTE( "mpr-15863.ic14", 0x000000, 0x200000, CRC(9d36b645) SHA1(2977047780b615b64c3b4aec78fef0643d40490e) ) ROM_LOAD16_BYTE( "mpr-15862.ic5", 0x000001, 0x200000, CRC(9e277d25) SHA1(9f191484a42391268306a8d2d95c340ce8b2d6cd) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15864.ic32", 0x000000, 0x200000, CRC(58207157) SHA1(d1b0c7edac8b89b1322398d4cd3a976a88bc0b56) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15866.ic30", 0x000002, 0x200000, CRC(9c53732c) SHA1(9aa5103cc10b4927c16e0cf102b64a15dd038756) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15868.ic28", 0x000004, 0x200000, CRC(62d556e8) SHA1(d70cab0881784a3d4dd06d0c99587ca6054c2dc4) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3139,7 +3150,7 @@ ROM_START( alien3j ) ROM_LOAD16_BYTE( "mpr-15863.ic14", 0x000000, 0x200000, CRC(9d36b645) SHA1(2977047780b615b64c3b4aec78fef0643d40490e) ) ROM_LOAD16_BYTE( "mpr-15862.ic5", 0x000001, 0x200000, CRC(9e277d25) SHA1(9f191484a42391268306a8d2d95c340ce8b2d6cd) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15864.ic32", 0x000000, 0x200000, CRC(58207157) SHA1(d1b0c7edac8b89b1322398d4cd3a976a88bc0b56) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15866.ic30", 0x000002, 0x200000, CRC(9c53732c) SHA1(9aa5103cc10b4927c16e0cf102b64a15dd038756) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15868.ic28", 0x000004, 0x200000, CRC(62d556e8) SHA1(d70cab0881784a3d4dd06d0c99587ca6054c2dc4) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3184,7 +3195,7 @@ ROM_START( arabfgt ) ROM_LOAD16_BYTE( "mpr-14599f.ic14", 0x000000, 0x200000, CRC(94f1cf10) SHA1(34ec86487bcb6726c025149c319f00a854eb7a1d) ) ROM_LOAD16_BYTE( "mpr-14598f.ic5", 0x000001, 0x200000, CRC(010656f3) SHA1(31619c022cba4f250ce174f186d3e34444f60faf) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14600f.ic32", 0x000000, 0x200000, CRC(e860988a) SHA1(328581877c0890519c854f75f0976b0e9c4560f8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14602.ic30", 0x000002, 0x200000, CRC(64524e4d) SHA1(86246185ab5ab638a73991c9e3aeb07c6d51be4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14604.ic28", 0x000004, 0x200000, CRC(5f8d5167) SHA1(1b08495e5a4cc2530c2895e47abd0e0b75496c68) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3218,7 +3229,7 @@ ROM_START( arabfgtu ) ROM_LOAD16_BYTE( "mpr-14599f.ic14", 0x000000, 0x200000, CRC(94f1cf10) SHA1(34ec86487bcb6726c025149c319f00a854eb7a1d) ) ROM_LOAD16_BYTE( "mpr-14598f.ic5", 0x000001, 0x200000, CRC(010656f3) SHA1(31619c022cba4f250ce174f186d3e34444f60faf) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14600f.ic32", 0x000000, 0x200000, CRC(e860988a) SHA1(328581877c0890519c854f75f0976b0e9c4560f8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14602.ic30", 0x000002, 0x200000, CRC(64524e4d) SHA1(86246185ab5ab638a73991c9e3aeb07c6d51be4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14604.ic28", 0x000004, 0x200000, CRC(5f8d5167) SHA1(1b08495e5a4cc2530c2895e47abd0e0b75496c68) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3252,7 +3263,7 @@ ROM_START( arabfgtj ) ROM_LOAD16_BYTE( "mpr-14599f.ic14", 0x000000, 0x200000, CRC(94f1cf10) SHA1(34ec86487bcb6726c025149c319f00a854eb7a1d) ) ROM_LOAD16_BYTE( "mpr-14598f.ic5", 0x000001, 0x200000, CRC(010656f3) SHA1(31619c022cba4f250ce174f186d3e34444f60faf) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14600f.ic32", 0x000000, 0x200000, CRC(e860988a) SHA1(328581877c0890519c854f75f0976b0e9c4560f8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14602.ic30", 0x000002, 0x200000, CRC(64524e4d) SHA1(86246185ab5ab638a73991c9e3aeb07c6d51be4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14604.ic28", 0x000004, 0x200000, CRC(5f8d5167) SHA1(1b08495e5a4cc2530c2895e47abd0e0b75496c68) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3286,7 +3297,7 @@ ROM_START( brival ) ROM_LOAD16_BYTE( "mpr-15629.ic14", 0x000000, 0x200000, CRC(2c8dd96d) SHA1(4a42a30485c19eb4f4a9d518a3dff3ae11911d01) ) ROM_LOAD16_BYTE( "mpr-15628.ic5", 0x000001, 0x200000, CRC(58d4ca40) SHA1(b1633acc803bba7e8283a9663b49abeda662a74d) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15637.ic32", 0x000000, 0x200000, CRC(b6cf2f05) SHA1(a308d40ce5165e03fccf7fcd615ee111f7840fdc) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15635.ic30", 0x000002, 0x200000, CRC(70f2eb2b) SHA1(9868c8b0dd8ce810a0e32f51e702eee7e1c9a967) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15633.ic28", 0x000004, 0x200000, CRC(005dfed5) SHA1(f555620d75d3886a890307be9df9c0879bcda695) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3321,7 +3332,7 @@ ROM_START( brivalj ) ROM_LOAD16_BYTE( "mpr-14599f.ic14", 0x000000, 0x200000, CRC(1de17e83) SHA1(04ee14b863f93b42a5bd1b6da71cff54ef11d4b7) ) /* Rom # matches tile rom # from Arabian Fight ??? */ ROM_LOAD16_BYTE( "mpr-14598f.ic5", 0x000001, 0x200000, CRC(cafb0de9) SHA1(94c6bfc7a4081dee373e9466a7b6f80889696087) ) /* Rom # matchrs tile rom # from Arabian Fight ??? */ - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "brivalj_mp15637.32", 0x000000, 0x200000, CRC(f39844c0) SHA1(c48dc8cccdd9d3756cf99a983c6a89ed43fcda22) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "brivalj_mp15635.30", 0x000002, 0x200000, CRC(263cf6d1) SHA1(7accd214502fd050edc0901c9929d6069dae4d00) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "brivalj_mp15633.28", 0x000004, 0x200000, CRC(44e9a88b) SHA1(57a930b9c3b83c889df54de60c90f847c2dcb614) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3353,7 +3364,7 @@ ROM_START( darkedge ) ROM_LOAD16_BYTE( "mpr-15248.ic14", 0x000000, 0x080000, CRC(185b308b) SHA1(a49c1b752b3c4355560e0cd712fb9a096140e37b) ) ROM_LOAD16_BYTE( "mpr-15247.ic5", 0x000001, 0x080000, CRC(be21548c) SHA1(2e315aadc2a0b781c3ee3fe71c75eb1f43514eff) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15249.ic32", 0x000000, 0x200000, CRC(2b4371a8) SHA1(47f448bfbc068f2d0cdedd81bcd280823d5758a3) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15251.ic30", 0x000002, 0x200000, CRC(efe2d689) SHA1(af22153ea3afdde3732f881087c642170f91d745) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15253.ic28", 0x000004, 0x200000, CRC(8356ed01) SHA1(a28747813807361c7d0c722a94e194caea8bfab6) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3382,7 +3393,7 @@ ROM_START( darkedgej ) ROM_LOAD16_BYTE( "mpr-15248.ic14", 0x000000, 0x080000, CRC(185b308b) SHA1(a49c1b752b3c4355560e0cd712fb9a096140e37b) ) ROM_LOAD16_BYTE( "mpr-15247.ic5", 0x000001, 0x080000, CRC(be21548c) SHA1(2e315aadc2a0b781c3ee3fe71c75eb1f43514eff) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15249.ic32", 0x000000, 0x200000, CRC(2b4371a8) SHA1(47f448bfbc068f2d0cdedd81bcd280823d5758a3) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15251.ic30", 0x000002, 0x200000, CRC(efe2d689) SHA1(af22153ea3afdde3732f881087c642170f91d745) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15253.ic28", 0x000004, 0x200000, CRC(8356ed01) SHA1(a28747813807361c7d0c722a94e194caea8bfab6) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3418,7 +3429,7 @@ ROM_START( dbzvrvs ) ROM_LOAD16_BYTE( "mpr-16545", 0x000000, 0x100000, CRC(51748bac) SHA1(b1cae16b62a8d29117c0adb140eb09c1092f6c37) ) ROM_LOAD16_BYTE( "mpr-16544", 0x000001, 0x100000, CRC(f6c93dfc) SHA1(a006cedb7d0151ccc8d22e6588b1c39e099da182) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16546", 0x000000, 0x200000, CRC(96f4be31) SHA1(ce3281630180d91de7850e9b1062382817fe0b1d) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16548", 0x000002, 0x200000, CRC(00377f59) SHA1(cf0f808d7730f334c5ac80d3171fa457be9ac88e) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16550", 0x000004, 0x200000, CRC(168e8966) SHA1(a18ec30f1358b09bcde6d8d2dbe0a82bea3bdae9) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3461,7 +3472,7 @@ ROM_START( f1en ) ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3488,7 +3499,7 @@ ROM_START( f1en ) ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "slavepcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3529,7 +3540,7 @@ ROM_START( f1enu ) // ROM PCB number is 834-8439-04 ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3556,7 +3567,7 @@ ROM_START( f1enu ) // ROM PCB number is 834-8439-04 ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "slavepcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3596,7 +3607,7 @@ ROM_START( f1enj ) // ROM PCB number is 834-8439-04 ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3623,7 +3634,7 @@ ROM_START( f1enj ) // ROM PCB number is 834-8439-04 ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "slavepcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3658,7 +3669,7 @@ ROM_START( f1lap ) ROM_LOAD16_BYTE( "mpr-15608.ic14", 0x000000, 0x200000, CRC(64462c69) SHA1(9501e83c52e3e16f73b94cef975b5a31b2ee5476) ) ROM_LOAD16_BYTE( "mpr-15609.ic5", 0x000001, 0x200000, CRC(d586e455) SHA1(aea190d31c590216eb19766ba749b1e9b710bdce) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15600.ic32", 0x000000, 0x200000, CRC(d2698d23) SHA1(996fbcc1d0814e6f14fa7e4870ece077ecda54e6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15602.ic30", 0x000002, 0x200000, CRC(1674764d) SHA1(bc39757a5d25df1a088f874ca2442854eb551e48) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15604.ic28", 0x000004, 0x200000, CRC(1552bbb9) SHA1(77edd3f9d8dec87fa0445d264309e6164eba9313) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3697,7 +3708,7 @@ ROM_START( f1lapj ) ROM_LOAD16_BYTE( "mpr-15608.ic14", 0x000000, 0x200000, CRC(64462c69) SHA1(9501e83c52e3e16f73b94cef975b5a31b2ee5476) ) ROM_LOAD16_BYTE( "mpr-15609.ic5", 0x000001, 0x200000, CRC(d586e455) SHA1(aea190d31c590216eb19766ba749b1e9b710bdce) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15600.ic32", 0x000000, 0x200000, CRC(d2698d23) SHA1(996fbcc1d0814e6f14fa7e4870ece077ecda54e6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15602.ic30", 0x000002, 0x200000, CRC(1674764d) SHA1(bc39757a5d25df1a088f874ca2442854eb551e48) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15604.ic28", 0x000004, 0x200000, CRC(1552bbb9) SHA1(77edd3f9d8dec87fa0445d264309e6164eba9313) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3738,7 +3749,7 @@ ROM_START( ga2 ) ROM_LOAD16_BYTE( "mpr-14948.ic14", 0x000000, 0x200000, CRC(75050d4a) SHA1(51d6bc9935abcf30af438e69c2cf4e09f57a803f) ) ROM_LOAD16_BYTE( "mpr-14947.ic5", 0x000001, 0x200000, CRC(b53e62f4) SHA1(5aa0f198e6eb070b77b0d180d30c0228a9bc691e) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14949.ic32", 0x000000, 0x200000, CRC(152c716c) SHA1(448d16ea036b66e886119c00af543dfa5e53fd84) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14951.ic30", 0x000002, 0x200000, CRC(fdb1a534) SHA1(3126b595bf69bf9952fedf8f9c6743eb10489dc6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14953.ic28", 0x000004, 0x200000, CRC(33bd1c15) SHA1(4e16562e3357d4db54b20543073e8f1fd6f74b1f) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3778,7 +3789,7 @@ ROM_START( ga2u ) ROM_LOAD16_BYTE( "mpr-14948.ic14", 0x000000, 0x200000, CRC(75050d4a) SHA1(51d6bc9935abcf30af438e69c2cf4e09f57a803f) ) ROM_LOAD16_BYTE( "mpr-14947.ic5", 0x000001, 0x200000, CRC(b53e62f4) SHA1(5aa0f198e6eb070b77b0d180d30c0228a9bc691e) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14949.ic32", 0x000000, 0x200000, CRC(152c716c) SHA1(448d16ea036b66e886119c00af543dfa5e53fd84) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14951.ic30", 0x000002, 0x200000, CRC(fdb1a534) SHA1(3126b595bf69bf9952fedf8f9c6743eb10489dc6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14953.ic28", 0x000004, 0x200000, CRC(33bd1c15) SHA1(4e16562e3357d4db54b20543073e8f1fd6f74b1f) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3813,7 +3824,7 @@ ROM_START( ga2j ) ROM_LOAD16_BYTE( "mpr-14948.ic14", 0x000000, 0x200000, CRC(75050d4a) SHA1(51d6bc9935abcf30af438e69c2cf4e09f57a803f) ) ROM_LOAD16_BYTE( "mpr-14947.ic5", 0x000001, 0x200000, CRC(b53e62f4) SHA1(5aa0f198e6eb070b77b0d180d30c0228a9bc691e) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14949.ic32", 0x000000, 0x200000, CRC(152c716c) SHA1(448d16ea036b66e886119c00af543dfa5e53fd84) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14951.ic30", 0x000002, 0x200000, CRC(fdb1a534) SHA1(3126b595bf69bf9952fedf8f9c6743eb10489dc6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14953.ic28", 0x000004, 0x200000, CRC(33bd1c15) SHA1(4e16562e3357d4db54b20543073e8f1fd6f74b1f) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3844,7 +3855,7 @@ ROM_START( harddunk ) ROM_LOAD16_BYTE( "mpr-16503.ic3", 0x000000, 0x080000, CRC(ac1b6f1a) SHA1(56482931adf7fe551acf796b74cd8af3773d4fef) ) ROM_LOAD16_BYTE( "mpr-16504.ic11", 0x000001, 0x080000, CRC(7c61fcd8) SHA1(ca4354f90fada752bf11ee22a7798a8aa22b1c61) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16495.ic14", 0x000000, 0x200000, CRC(6e5f26be) SHA1(146761072bbed08f4a9df8a474b34fab61afaa4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16497.ic15", 0x000002, 0x200000, CRC(42ab5859) SHA1(f50c51eb81186aec5f747ecab4c5c928f8701afc) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16499.ic10", 0x000004, 0x200000, CRC(a290ea36) SHA1(2503b44174f23a9d323caab86553977d1d6d9c94) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3875,7 +3886,7 @@ ROM_START( harddunkj ) ROM_LOAD16_BYTE( "mpr-16503.ic3", 0x000000, 0x080000, CRC(ac1b6f1a) SHA1(56482931adf7fe551acf796b74cd8af3773d4fef) ) ROM_LOAD16_BYTE( "mpr-16504.ic11", 0x000001, 0x080000, CRC(7c61fcd8) SHA1(ca4354f90fada752bf11ee22a7798a8aa22b1c61) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16495.ic14", 0x000000, 0x200000, CRC(6e5f26be) SHA1(146761072bbed08f4a9df8a474b34fab61afaa4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16497.ic15", 0x000002, 0x200000, CRC(42ab5859) SHA1(f50c51eb81186aec5f747ecab4c5c928f8701afc) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16499.ic10", 0x000004, 0x200000, CRC(a290ea36) SHA1(2503b44174f23a9d323caab86553977d1d6d9c94) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3916,7 +3927,7 @@ ROM_START( holo ) ROM_REGION( 0x000100, "mainpcb:gfx1", ROMREGION_ERASEFF ) /* tiles */ /* game doesn't use bg tilemaps */ - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14973", 0x000000, 0x100000, CRC(b3c3ff6b) SHA1(94e8dbfae37a5b122ee3d471aad1f758e4a39b9e) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14972", 0x000001, 0x100000, CRC(0c161374) SHA1(413ab45deb687ecdbdc06ae98aa32ad8a0d80e0c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14971", 0x000002, 0x100000, CRC(dfcf6fdf) SHA1(417291b54010be20dd6738a70d372b580615a8bb) , ROM_SKIP(7) ) @@ -3953,7 +3964,7 @@ ROM_START( jpark ) ROM_LOAD16_BYTE( "mpr-16404.ic14", 0x000000, 0x200000, CRC(11283807) SHA1(99e465c3fc31e640740b8257a349e203f026754a) ) ROM_LOAD16_BYTE( "mpr-16403.ic5", 0x000001, 0x200000, CRC(02530a9b) SHA1(b43e1b47f74c801bfc599cbe893fb8dc13453dd0) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16405.ic32", 0x000000, 0x200000, CRC(b425f182) SHA1(66c6bd29dd3450db816b895c4c9c5208a66aae67) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16407.ic30", 0x000002, 0x200000, CRC(bc49ffd9) SHA1(a50ba7ddccfdfd7638c4041978b39c1559afbbb4) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16409.ic28", 0x000004, 0x200000, CRC(fe73660d) SHA1(ec1a3ea5303d2ccb9e327da18476969953626e1c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3989,7 +4000,7 @@ ROM_START( jparkj ) ROM_LOAD16_BYTE( "mpr-16404.ic14", 0x000000, 0x200000, CRC(11283807) SHA1(99e465c3fc31e640740b8257a349e203f026754a) ) ROM_LOAD16_BYTE( "mpr-16403.ic5", 0x000001, 0x200000, CRC(02530a9b) SHA1(b43e1b47f74c801bfc599cbe893fb8dc13453dd0) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16405.ic32", 0x000000, 0x200000, CRC(b425f182) SHA1(66c6bd29dd3450db816b895c4c9c5208a66aae67) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16407.ic30", 0x000002, 0x200000, CRC(bc49ffd9) SHA1(a50ba7ddccfdfd7638c4041978b39c1559afbbb4) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16409.ic28", 0x000004, 0x200000, CRC(fe73660d) SHA1(ec1a3ea5303d2ccb9e327da18476969953626e1c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4025,7 +4036,7 @@ ROM_START( jparkja ) ROM_LOAD16_BYTE( "mpr-16404.ic14", 0x000000, 0x200000, CRC(11283807) SHA1(99e465c3fc31e640740b8257a349e203f026754a) ) ROM_LOAD16_BYTE( "mpr-16403.ic5", 0x000001, 0x200000, CRC(02530a9b) SHA1(b43e1b47f74c801bfc599cbe893fb8dc13453dd0) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16405.ic32", 0x000000, 0x200000, CRC(b425f182) SHA1(66c6bd29dd3450db816b895c4c9c5208a66aae67) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16407.ic30", 0x000002, 0x200000, CRC(bc49ffd9) SHA1(a50ba7ddccfdfd7638c4041978b39c1559afbbb4) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16409.ic28", 0x000004, 0x200000, CRC(fe73660d) SHA1(ec1a3ea5303d2ccb9e327da18476969953626e1c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4061,7 +4072,7 @@ ROM_START( jparkjc ) ROM_LOAD16_BYTE( "mpr-16404.ic14", 0x000000, 0x200000, CRC(11283807) SHA1(99e465c3fc31e640740b8257a349e203f026754a) ) ROM_LOAD16_BYTE( "mpr-16403.ic5", 0x000001, 0x200000, CRC(02530a9b) SHA1(b43e1b47f74c801bfc599cbe893fb8dc13453dd0) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16405.ic32", 0x000000, 0x200000, CRC(b425f182) SHA1(66c6bd29dd3450db816b895c4c9c5208a66aae67) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16407.ic30", 0x000002, 0x200000, CRC(bc49ffd9) SHA1(a50ba7ddccfdfd7638c4041978b39c1559afbbb4) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16409.ic28", 0x000004, 0x200000, CRC(fe73660d) SHA1(ec1a3ea5303d2ccb9e327da18476969953626e1c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4098,7 +4109,7 @@ ROM_START( kokoroj2 ) ROM_LOAD16_BYTE( "mpr-16188.ic14", 0x000000, 0x200000, CRC(83a450ab) SHA1(1d0b45512d784ed1d82135b84c7c540f92d789f7) ) ROM_LOAD16_BYTE( "mpr-16187.ic5", 0x000001, 0x200000, CRC(98b62f8b) SHA1(eaf98efd9eac7b7c385138a8a4dbc94b0ca38df5) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16189.ic32", 0x000000, 0x200000, CRC(0937f713) SHA1(4b2b09ec8ed97794ad3824d1c57eae7f7e01379c) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16191.ic30", 0x000002, 0x200000, CRC(cfef4aaa) SHA1(bc8a252dcbdb8facdd91eda7aed0f56fe7529d15) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16193.ic28", 0x000004, 0x200000, CRC(a0706e4e) SHA1(1f36d952971c05db4190b229aa4957db3e5224f1) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4141,7 +4152,7 @@ ROM_START( orunners ) ROM_LOAD16_BYTE( "mpr15548.ic3", 0x000000, 0x200000, CRC(b6470a66) SHA1(e1544590c02d41f62f82a4d771b893fb0f2734c7) ) ROM_LOAD16_BYTE( "mpr15549.ic11", 0x000001, 0x200000, CRC(81d12520) SHA1(1555893941e832f00ad3d0b3ad0c34a0d3a1c58a) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr15540.ic14", 0x000000, 0x200000, CRC(a10d72b4) SHA1(6d9d5e20be6721b53ce49df4d5a1bbd91f5b3aed) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15542.ic15", 0x000002, 0x200000, CRC(40952374) SHA1(c669ef52508bc2f49cf812dc86ac98fb535471fa) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15544.ic10", 0x000004, 0x200000, CRC(39e3df45) SHA1(38a7b21617b45613b05509dda388f8f7770b186c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4179,7 +4190,7 @@ ROM_START( orunnersu ) ROM_LOAD16_BYTE( "mpr15548.ic3", 0x000000, 0x200000, CRC(b6470a66) SHA1(e1544590c02d41f62f82a4d771b893fb0f2734c7) ) ROM_LOAD16_BYTE( "mpr15549.ic11", 0x000001, 0x200000, CRC(81d12520) SHA1(1555893941e832f00ad3d0b3ad0c34a0d3a1c58a) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr15540.ic14", 0x000000, 0x200000, CRC(a10d72b4) SHA1(6d9d5e20be6721b53ce49df4d5a1bbd91f5b3aed) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15542.ic15", 0x000002, 0x200000, CRC(40952374) SHA1(c669ef52508bc2f49cf812dc86ac98fb535471fa) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15544.ic10", 0x000004, 0x200000, CRC(39e3df45) SHA1(38a7b21617b45613b05509dda388f8f7770b186c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4217,7 +4228,7 @@ ROM_START( orunnersj ) ROM_LOAD16_BYTE( "mpr15548.ic3", 0x000000, 0x200000, CRC(b6470a66) SHA1(e1544590c02d41f62f82a4d771b893fb0f2734c7) ) ROM_LOAD16_BYTE( "mpr15549.ic11", 0x000001, 0x200000, CRC(81d12520) SHA1(1555893941e832f00ad3d0b3ad0c34a0d3a1c58a) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr15540.ic14", 0x000000, 0x200000, CRC(a10d72b4) SHA1(6d9d5e20be6721b53ce49df4d5a1bbd91f5b3aed) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15542.ic15", 0x000002, 0x200000, CRC(40952374) SHA1(c669ef52508bc2f49cf812dc86ac98fb535471fa) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15544.ic10", 0x000004, 0x200000, CRC(39e3df45) SHA1(38a7b21617b45613b05509dda388f8f7770b186c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4278,7 +4289,7 @@ ROM_START( radm ) ROM_LOAD32_BYTE( "mpr-13521.ic12", 0x000001, 0x080000, CRC(e9bca903) SHA1(18a73c830b9755262a1c525e3ad5ae084117b64d) ) ROM_LOAD32_BYTE( "mpr-13522.ic18", 0x000003, 0x080000, CRC(25e04648) SHA1(617e794e8f7aa2a435bac917b8968699fe88dafb) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -4317,7 +4328,7 @@ ROM_START( radmu ) ROM_LOAD32_BYTE( "mpr-13521.ic12", 0x000001, 0x080000, CRC(e9bca903) SHA1(18a73c830b9755262a1c525e3ad5ae084117b64d) ) ROM_LOAD32_BYTE( "mpr-13522.ic18", 0x000003, 0x080000, CRC(25e04648) SHA1(617e794e8f7aa2a435bac917b8968699fe88dafb) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -4365,7 +4376,7 @@ ROM_START( radr ) ROM_LOAD32_BYTE( "epr-14104.ic12", 0x000001, 0x040000, CRC(b0173646) SHA1(1ba4edc033e0e4f5a1e02987e9f6b8b1650b46d7) ) ROM_LOAD32_BYTE( "epr-14105.ic18", 0x000003, 0x040000, CRC(614843b6) SHA1(d4f2cd3b024f7152d6e89237f0da06adea2efe57) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -4410,7 +4421,7 @@ ROM_START( radru ) ROM_LOAD32_BYTE( "epr-14104.ic12", 0x000001, 0x040000, CRC(b0173646) SHA1(1ba4edc033e0e4f5a1e02987e9f6b8b1650b46d7) ) ROM_LOAD32_BYTE( "epr-14105.ic16", 0x000003, 0x040000, CRC(614843b6) SHA1(d4f2cd3b024f7152d6e89237f0da06adea2efe57) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -4455,7 +4466,7 @@ ROM_START( radrj ) ROM_LOAD32_BYTE( "epr-14104.ic12", 0x000001, 0x040000, CRC(b0173646) SHA1(1ba4edc033e0e4f5a1e02987e9f6b8b1650b46d7) ) ROM_LOAD32_BYTE( "epr-14105.ic16", 0x000003, 0x040000, CRC(614843b6) SHA1(d4f2cd3b024f7152d6e89237f0da06adea2efe57) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -4499,7 +4510,7 @@ ROM_START( slipstrm ) ROM_LOAD32_BYTE( "s32_scr02.ic29", 0x000001, 0x080000, CRC(52c4bb85) SHA1(4fbee1072a19c75c25b5fd269acc75640923d69c) ) ROM_LOAD32_BYTE( "s32_scr03.ic25", 0x000003, 0x080000, CRC(4948604a) SHA1(d5a1b9781fef7976a59a0af9b755a04fcacf9381) ) - ROM_REGION32_BE( 0x400000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x400000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "s32_obj00.ic36", 0x000000, 0x80000, CRC(cffe9e0d) SHA1(5272d54ff142de927a9abd61f3646e963c7d22c4) , ROM_SKIP(7) ) ROMX_LOAD( "s32_obj01.ic32", 0x000001, 0x80000, CRC(4ebd1383) SHA1(ce35f4d15e7904bfde55e58cdde925cba8002763) , ROM_SKIP(7) ) ROMX_LOAD( "s32_obj02.ic27", 0x000002, 0x80000, CRC(b3cf4fe2) SHA1(e13199522e1e3e8b9cfe72cc29b33f25dad542ef) , ROM_SKIP(7) ) @@ -4534,7 +4545,7 @@ ROM_START( slipstrmh ) ROM_LOAD32_BYTE( "s32_scr02.ic29", 0x000001, 0x080000, CRC(52c4bb85) SHA1(4fbee1072a19c75c25b5fd269acc75640923d69c) ) ROM_LOAD32_BYTE( "s32_scr03.ic25", 0x000003, 0x080000, CRC(4948604a) SHA1(d5a1b9781fef7976a59a0af9b755a04fcacf9381) ) - ROM_REGION32_BE( 0x400000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x400000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "s32_obj00.ic36", 0x000000, 0x80000, CRC(cffe9e0d) SHA1(5272d54ff142de927a9abd61f3646e963c7d22c4) , ROM_SKIP(7) ) ROMX_LOAD( "s32_obj01.ic32", 0x000001, 0x80000, CRC(4ebd1383) SHA1(ce35f4d15e7904bfde55e58cdde925cba8002763) , ROM_SKIP(7) ) ROMX_LOAD( "s32_obj02.ic27", 0x000002, 0x80000, CRC(b3cf4fe2) SHA1(e13199522e1e3e8b9cfe72cc29b33f25dad542ef) , ROM_SKIP(7) ) @@ -4573,7 +4584,7 @@ ROM_START( sonic ) ROM_LOAD16_BYTE( "mpr-15789.ic14", 0x000000, 0x100000, CRC(4378f12b) SHA1(826e0550a3c5f2b6e59c6531ac03658a4f826651) ) ROM_LOAD16_BYTE( "mpr-15788.ic5", 0x000001, 0x100000, CRC(a6ed5d7a) SHA1(d30f26b452d380e7657e044e144f7dbbc4dc13e5) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15790.ic32", 0x000000, 0x200000, CRC(c69d51b1) SHA1(7644fb64457855f9ed87ca25ddc28c21bcb61fd9) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15792.ic30", 0x000002, 0x200000, CRC(1006bb67) SHA1(38c752e634aa94b1a23c09c4dba6388b7d0358af) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15794.ic28", 0x000004, 0x200000, CRC(8672b480) SHA1(61659e3856cdff0b2bca190a7e60c81b86ea2089) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4611,7 +4622,7 @@ ROM_START( sonicp ) ROM_LOAD32_BYTE( "sonscl2.bin", 0x000001, 0x080000, CRC(a5de28b2) SHA1(49a16ac10cf01b5b8802b8b015a2e403086c206a) ) ROM_LOAD32_BYTE( "sonscl3.bin", 0x000003, 0x080000, CRC(7ce7554b) SHA1(8def3acae6baafbe9e350f18e245a9a833df5cc4) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "sonobj0.bin", 0x000000, 0x100000, CRC(ceea18e3) SHA1(f902a7e2f8e126fd7a7862c55de32ce6352a7716) , ROM_SKIP(7) ) ROMX_LOAD( "sonobj1.bin", 0x000001, 0x100000, CRC(6bbc226b) SHA1(5ef4256b6a93891daf1349def6db3bc428e5f4f3) , ROM_SKIP(7) ) ROMX_LOAD( "sonobj2.bin", 0x000002, 0x100000, CRC(fcd5ef0e) SHA1(e3e50d4838ac3cce41d69ee6cd31981fbe422a4b) , ROM_SKIP(7) ) @@ -4648,7 +4659,7 @@ ROM_START( spidman ) ROM_LOAD32_BYTE( "mpr-14289-s.ic29", 0x000001, 0x100000, CRC(38570582) SHA1(a9d810a02a1f5a6849c79d65fbebff21a4b82b59) ) ROM_LOAD32_BYTE( "mpr-14288-s.ic25", 0x000003, 0x100000, CRC(3188b636) SHA1(bc0adeeca5040caa563ee1e0eded9c323ca23446) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14299-h.ic36", 0x000000, 0x100000, CRC(ce59231b) SHA1(bcb1f11b74935694d0617ec8df66db2cc57b6219) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14298-h.ic32", 0x000001, 0x100000, CRC(2745c84c) SHA1(5a0528c921cba7a1047d3a2ece79925103d719a1) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14297-h.ic27", 0x000002, 0x100000, CRC(29cb9450) SHA1(7dc38d23a2f0cee2f4edde05c1a6f0dc83f331db) , ROM_SKIP(7) ) @@ -4690,7 +4701,7 @@ ROM_START( spidmanu ) ROM_LOAD32_BYTE( "mpr-14289-s.ic29", 0x000001, 0x100000, CRC(38570582) SHA1(a9d810a02a1f5a6849c79d65fbebff21a4b82b59) ) ROM_LOAD32_BYTE( "mpr-14288-s.ic25", 0x000003, 0x100000, CRC(3188b636) SHA1(bc0adeeca5040caa563ee1e0eded9c323ca23446) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14299-h.ic36", 0x000000, 0x100000, CRC(ce59231b) SHA1(bcb1f11b74935694d0617ec8df66db2cc57b6219) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14298-h.ic32", 0x000001, 0x100000, CRC(2745c84c) SHA1(5a0528c921cba7a1047d3a2ece79925103d719a1) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14297-h.ic27", 0x000002, 0x100000, CRC(29cb9450) SHA1(7dc38d23a2f0cee2f4edde05c1a6f0dc83f331db) , ROM_SKIP(7) ) @@ -4728,7 +4739,7 @@ ROM_START( spidmanj ) ROM_LOAD32_BYTE( "mpr-14289-s.ic29", 0x000001, 0x100000, CRC(38570582) SHA1(a9d810a02a1f5a6849c79d65fbebff21a4b82b59) ) ROM_LOAD32_BYTE( "mpr-14288-s.ic25", 0x000003, 0x100000, CRC(3188b636) SHA1(bc0adeeca5040caa563ee1e0eded9c323ca23446) ) - ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-14299-h.ic36", 0x000000, 0x100000, CRC(ce59231b) SHA1(bcb1f11b74935694d0617ec8df66db2cc57b6219) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14298-h.ic32", 0x000001, 0x100000, CRC(2745c84c) SHA1(5a0528c921cba7a1047d3a2ece79925103d719a1) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14297-h.ic27", 0x000002, 0x100000, CRC(29cb9450) SHA1(7dc38d23a2f0cee2f4edde05c1a6f0dc83f331db) , ROM_SKIP(7) ) @@ -4758,7 +4769,7 @@ ROM_START( scross ) ROM_LOAD16_BYTE( "mpr-15020.ic3", 0x000000, 0x100000, CRC(de47006a) SHA1(dbef7b9ff8c39992b8596d38985e65c627d6fa79) ) ROM_LOAD16_BYTE( "mpr-15021.ic11", 0x000001, 0x100000, CRC(3677db02) SHA1(7aeeb85f1632253fcdc8f7881512066e97837e5e) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15022.ic14", 0x000000, 0x100000, CRC(baee6fd5) SHA1(ddf022c61f0805af45a84c65eb5d01006c153c07) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15024.ic15", 0x000002, 0x100000, CRC(b9f339e2) SHA1(4b9a392459132a19d62928ef3939e1f2356e3994) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15026.ic10", 0x000004, 0x100000, CRC(b72e8df6) SHA1(a7a87f79814b022985121e163c7f88244c50e427) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4791,7 +4802,7 @@ ROM_START( scrossa ) ROM_LOAD16_BYTE( "mpr-15020.ic3", 0x000000, 0x100000, CRC(de47006a) SHA1(dbef7b9ff8c39992b8596d38985e65c627d6fa79) ) ROM_LOAD16_BYTE( "mpr-15021.ic11", 0x000001, 0x100000, CRC(3677db02) SHA1(7aeeb85f1632253fcdc8f7881512066e97837e5e) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15022.ic14", 0x000000, 0x100000, CRC(baee6fd5) SHA1(ddf022c61f0805af45a84c65eb5d01006c153c07) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15024.ic15", 0x000002, 0x100000, CRC(b9f339e2) SHA1(4b9a392459132a19d62928ef3939e1f2356e3994) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15026.ic10", 0x000004, 0x100000, CRC(b72e8df6) SHA1(a7a87f79814b022985121e163c7f88244c50e427) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4828,7 +4839,7 @@ ROM_START( scrossu ) ROM_LOAD16_BYTE( "mpr-15020.ic3", 0x000000, 0x100000, CRC(de47006a) SHA1(dbef7b9ff8c39992b8596d38985e65c627d6fa79) ) ROM_LOAD16_BYTE( "mpr-15021.ic11", 0x000001, 0x100000, CRC(3677db02) SHA1(7aeeb85f1632253fcdc8f7881512066e97837e5e) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15022.ic14", 0x000000, 0x100000, CRC(baee6fd5) SHA1(ddf022c61f0805af45a84c65eb5d01006c153c07) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15024.ic15", 0x000002, 0x100000, CRC(b9f339e2) SHA1(4b9a392459132a19d62928ef3939e1f2356e3994) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15026.ic10", 0x000004, 0x100000, CRC(b72e8df6) SHA1(a7a87f79814b022985121e163c7f88244c50e427) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4871,7 +4882,7 @@ ROM_START( svf ) ROM_LOAD16_BYTE( "mpr-16784.ic14", 0x000000, 0x100000, CRC(4608efe2) SHA1(9b41aa28f50af770e854ef9fdff1a55da7b7b131) ) ROM_LOAD16_BYTE( "mpr-16783.ic5", 0x000001, 0x100000, CRC(042eabe7) SHA1(a11df5c21d85f0c96dbdcaf57be37a79658ad648) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16785.ic32", 0x000000, 0x200000, CRC(51f775ce) SHA1(125b40bf47304d37b92e81df5081c81d9af6c8a2) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16787.ic30", 0x000002, 0x200000, CRC(dee7a204) SHA1(29acff4d5dd68609ac46853860788206d18262ab) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16789.ic28", 0x000004, 0x200000, CRC(6b6c8ad3) SHA1(97b0078c851845c31dcf0fe4b2a88393dcdf8988) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4899,7 +4910,7 @@ ROM_START( svfo ) ROM_LOAD16_BYTE( "mpr-16784.ic14", 0x000000, 0x100000, CRC(4608efe2) SHA1(9b41aa28f50af770e854ef9fdff1a55da7b7b131) ) ROM_LOAD16_BYTE( "mpr-16783.ic5", 0x000001, 0x100000, CRC(042eabe7) SHA1(a11df5c21d85f0c96dbdcaf57be37a79658ad648) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16785.ic32", 0x000000, 0x200000, CRC(51f775ce) SHA1(125b40bf47304d37b92e81df5081c81d9af6c8a2) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16787.ic30", 0x000002, 0x200000, CRC(dee7a204) SHA1(29acff4d5dd68609ac46853860788206d18262ab) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16789.ic28", 0x000004, 0x200000, CRC(6b6c8ad3) SHA1(97b0078c851845c31dcf0fe4b2a88393dcdf8988) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4931,7 +4942,7 @@ ROM_START( svs ) ROM_LOAD16_BYTE( "mpr-16784.ic14", 0x000000, 0x100000, CRC(4608efe2) SHA1(9b41aa28f50af770e854ef9fdff1a55da7b7b131) ) ROM_LOAD16_BYTE( "mpr-16783.ic5", 0x000001, 0x100000, CRC(042eabe7) SHA1(a11df5c21d85f0c96dbdcaf57be37a79658ad648) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16785.ic32", 0x000000, 0x200000, CRC(51f775ce) SHA1(125b40bf47304d37b92e81df5081c81d9af6c8a2) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16787.ic30", 0x000002, 0x200000, CRC(dee7a204) SHA1(29acff4d5dd68609ac46853860788206d18262ab) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16789.ic28", 0x000004, 0x200000, CRC(6b6c8ad3) SHA1(97b0078c851845c31dcf0fe4b2a88393dcdf8988) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4967,7 +4978,7 @@ ROM_START( jleague ) ROM_LOAD16_BYTE( "mpr-16784.ic14", 0x000000, 0x100000, CRC(4608efe2) SHA1(9b41aa28f50af770e854ef9fdff1a55da7b7b131) ) ROM_LOAD16_BYTE( "mpr-16783.ic5", 0x000001, 0x100000, CRC(042eabe7) SHA1(a11df5c21d85f0c96dbdcaf57be37a79658ad648) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16785.ic32", 0x000000, 0x200000, CRC(51f775ce) SHA1(125b40bf47304d37b92e81df5081c81d9af6c8a2) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16787.ic30", 0x000002, 0x200000, CRC(dee7a204) SHA1(29acff4d5dd68609ac46853860788206d18262ab) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16789.ic28", 0x000004, 0x200000, CRC(6b6c8ad3) SHA1(97b0078c851845c31dcf0fe4b2a88393dcdf8988) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4995,7 +5006,7 @@ ROM_START( jleagueo ) ROM_LOAD16_BYTE( "mpr-16784.ic14", 0x000000, 0x100000, CRC(4608efe2) SHA1(9b41aa28f50af770e854ef9fdff1a55da7b7b131) ) ROM_LOAD16_BYTE( "mpr-16783.ic5", 0x000001, 0x100000, CRC(042eabe7) SHA1(a11df5c21d85f0c96dbdcaf57be37a79658ad648) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-16785.ic32", 0x000000, 0x200000, CRC(51f775ce) SHA1(125b40bf47304d37b92e81df5081c81d9af6c8a2) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16787.ic30", 0x000002, 0x200000, CRC(dee7a204) SHA1(29acff4d5dd68609ac46853860788206d18262ab) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16789.ic28", 0x000004, 0x200000, CRC(6b6c8ad3) SHA1(97b0078c851845c31dcf0fe4b2a88393dcdf8988) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -5031,7 +5042,7 @@ ROM_START( titlef ) ROM_LOAD16_BYTE( "mpr-15381.ic3", 0x000000, 0x200000, CRC(162cc4d6) SHA1(2369d3d76ab5ef8f033aa45530ab957f0e5ff028) ) ROM_LOAD16_BYTE( "mpr-15382.ic11", 0x000001, 0x200000, CRC(fd03a130) SHA1(040c36383ef5d8298af714958cd5b0a4c7556ae7) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15379.ic14", 0x000000, 0x200000, CRC(e5c74b11) SHA1(67e4460efe5dcd88ffc12024b255efc843e6a8b5) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15375.ic15", 0x000002, 0x200000, CRC(046a9b50) SHA1(2b4c53f2a0264835cb7197daa9b3461c212541e8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15371.ic10", 0x000004, 0x200000, CRC(999046c6) SHA1(37ce4e8aaf537b5366eacabaf36e4477b5624121) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -5067,7 +5078,7 @@ ROM_START( titlefu ) ROM_LOAD16_BYTE( "mpr-15381.ic3", 0x000000, 0x200000, CRC(162cc4d6) SHA1(2369d3d76ab5ef8f033aa45530ab957f0e5ff028) ) ROM_LOAD16_BYTE( "mpr-15382.ic11", 0x000001, 0x200000, CRC(fd03a130) SHA1(040c36383ef5d8298af714958cd5b0a4c7556ae7) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15379.ic14", 0x000000, 0x200000, CRC(e5c74b11) SHA1(67e4460efe5dcd88ffc12024b255efc843e6a8b5) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15375.ic15", 0x000002, 0x200000, CRC(046a9b50) SHA1(2b4c53f2a0264835cb7197daa9b3461c212541e8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15371.ic10", 0x000004, 0x200000, CRC(999046c6) SHA1(37ce4e8aaf537b5366eacabaf36e4477b5624121) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -5103,7 +5114,7 @@ ROM_START( titlefj ) ROM_LOAD16_BYTE( "mpr-15381.ic3", 0x000000, 0x200000, CRC(162cc4d6) SHA1(2369d3d76ab5ef8f033aa45530ab957f0e5ff028) ) ROM_LOAD16_BYTE( "mpr-15382.ic11", 0x000001, 0x200000, CRC(fd03a130) SHA1(040c36383ef5d8298af714958cd5b0a4c7556ae7) ) - ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:sprites", 0 ) /* sprites */ ROMX_LOAD( "mpr-15379.ic14", 0x000000, 0x200000, CRC(e5c74b11) SHA1(67e4460efe5dcd88ffc12024b255efc843e6a8b5) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15375.ic15", 0x000002, 0x200000, CRC(046a9b50) SHA1(2b4c53f2a0264835cb7197daa9b3461c212541e8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15371.ic10", 0x000004, 0x200000, CRC(999046c6) SHA1(37ce4e8aaf537b5366eacabaf36e4477b5624121) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -5127,9 +5138,16 @@ ROM_END void segas32_state::segas32_common_init() { + if ((m_multipcm_bank_lo.found()) && (m_multipcm_bank_hi.found())) + { + uint8_t *ROM = memregion("sega")->base(); + uint32_t size = memregion("sega")->bytes(); + m_multipcm_bank_lo->configure_entries(0, size / 0x80000, &ROM[0], 0x80000); + m_multipcm_bank_hi->configure_entries(0, size / 0x80000, &ROM[0], 0x80000); + } uint8_t *Z80 = memregion("soundcpu")->base(); uint32_t size = memregion("soundcpu")->bytes(); - membank("bank1")->configure_entries(0, size / 0x2000, &Z80[0], 0x2000); + m_soundrom_bank->configure_entries(0, size / 0x2000, &Z80[0], 0x2000); /* reset the custom handlers and other pointers */ m_system32_prot_vblank = nullptr; m_sw1_output = nullptr; @@ -5137,15 +5155,6 @@ void segas32_state::segas32_common_init() m_sw3_output = nullptr; } -void segas32_state::multi32_common_init() -{ - uint8_t *ROM = memregion("sega")->base(); - uint32_t size = memregion("sega")->bytes(); - membank("multipcmbanklo")->configure_entries(0, size / 0x80000, &ROM[0], 0x80000); - membank("multipcmbankhi")->configure_entries(0, size / 0x80000, &ROM[0], 0x80000); - segas32_common_init(); -} - /************************************* * @@ -5515,7 +5524,7 @@ void segas32_state::init_ga2(void) void segas32_state::init_harddunk(void) { - multi32_common_init(); + segas32_common_init(); m_sw1_output = &segas32_state::harddunk_sw1_output; m_sw2_output = &segas32_state::harddunk_sw2_output; m_sw3_output = &segas32_state::harddunk_sw3_output; @@ -5531,7 +5540,7 @@ void segas32_state::init_holo(void) void segas32_state::init_jpark(void) { /* Temp. Patch until we emulate the 'Drive Board', thanks to Malice */ - uint16_t *pROM = (uint16_t *)memregion("maincpu")->base(); + uint16_t *pROM = (uint16_t *)m_maincpu_region->base(); segas32_common_init(); @@ -5544,7 +5553,7 @@ void segas32_state::init_jpark(void) void segas32_state::init_orunners(void) { - multi32_common_init(); + segas32_common_init(); m_sw1_output = &segas32_state::orunners_sw1_output; m_sw2_output = &segas32_state::orunners_sw2_output; @@ -5572,7 +5581,7 @@ void segas32_state::init_radr(void) void segas32_state::init_scross(void) { - multi32_common_init(); + segas32_common_init(); m_soundcpu->space(AS_PROGRAM).install_write_handler(0xb0, 0xbf, write8_delegate(FUNC(segas32_state::scross_bank_w),this)); m_sw1_output = &segas32_state::scross_sw1_output; @@ -5624,7 +5633,7 @@ void segas32_state::init_jleague(void) void segas32_state::init_titlef(void) { - multi32_common_init(); + segas32_common_init(); m_sw1_output = &segas32_state::titlef_sw1_output; m_sw2_output = &segas32_state::titlef_sw2_output; } diff --git a/src/mame/drivers/system16.cpp b/src/mame/drivers/system16.cpp index b3255f63472..fb5b5e9b6f1 100644 --- a/src/mame/drivers/system16.cpp +++ b/src/mame/drivers/system16.cpp @@ -301,15 +301,7 @@ WRITE16_MEMBER(segas1x_bootleg_state::sys16_tilebank_w) { if (ACCESSING_BITS_0_7) { - switch (offset & 1) - { - case 0: - m_tile_bank0 = data & 0x0f; - break; - case 1: - m_tile_bank1 = data & 0x0f; - break; - } + m_tile_bank[offset & 1] = data & 0x0f; } } @@ -393,7 +385,7 @@ READ8_MEMBER(segas1x_bootleg_state::tturfbl_soundbank_r) WRITE8_MEMBER(segas1x_bootleg_state::tturfbl_soundbank_w) { - uint8_t *mem = memregion("soundcpu")->base(); + uint8_t *mem = m_soundcpu_region->base(); switch(data) { @@ -493,11 +485,11 @@ void segas1x_bootleg_state::sound_7759_map(address_map &map) WRITE8_MEMBER(segas1x_bootleg_state::upd7759_bank_w)//* { - int offs, size = memregion("soundcpu")->bytes() - 0x10000; + int offs, size = m_soundcpu_region->bytes() - 0x10000; m_upd7759->reset_w(data & 0x40); offs = 0x10000 + (data * 0x4000) % size; - membank("bank1")->set_base(memregion("soundcpu")->base() + offs); + membank("bank1")->set_base(m_soundcpu_region->base() + offs); } @@ -515,24 +507,24 @@ void segas1x_bootleg_state::sound_7759_io_map(address_map &map) void segas1x_bootleg_state::set_tile_bank( int data ) { - m_tile_bank0 = (data >> 4) & 0x0f; - m_tile_bank1 = data & 0x0f; + m_tile_bank[0] = (data >> 4) & 0x0f; + m_tile_bank[1] = data & 0x0f; } void segas1x_bootleg_state::set_fg_page( int data ) { - m_fg_page[0] = data >> 12; - m_fg_page[1] = (data >> 8) & 0x0f; - m_fg_page[2] = (data >> 4) & 0x0f; - m_fg_page[3] = data & 0x0f; + m_fg_page[0][0] = data >> 12; + m_fg_page[0][1] = (data >> 8) & 0x0f; + m_fg_page[0][2] = (data >> 4) & 0x0f; + m_fg_page[0][3] = data & 0x0f; } void segas1x_bootleg_state::set_bg_page( int data ) { - m_bg_page[0] = data >> 12; - m_bg_page[1] = (data >> 8) & 0x0f; - m_bg_page[2] = (data >> 4) & 0x0f; - m_bg_page[3] = data & 0x0f; + m_bg_page[0][0] = data >> 12; + m_bg_page[0][1] = (data >> 8) & 0x0f; + m_bg_page[0][2] = (data >> 4) & 0x0f; + m_bg_page[0][3] = data & 0x0f; } @@ -668,27 +660,10 @@ void segas1x_bootleg_state::datsu_set_pages( ) set_bg_page(page); } -WRITE16_MEMBER(segas1x_bootleg_state::datsu_page0_w) +template +WRITE16_MEMBER(segas1x_bootleg_state::datsu_page_w) { - COMBINE_DATA(&m_datsu_page[0]); - datsu_set_pages(); -} - -WRITE16_MEMBER(segas1x_bootleg_state::datsu_page1_w) -{ - COMBINE_DATA(&m_datsu_page[1]); - datsu_set_pages(); -} - -WRITE16_MEMBER(segas1x_bootleg_state::datsu_page2_w) -{ - COMBINE_DATA(&m_datsu_page[2]); - datsu_set_pages(); -} - -WRITE16_MEMBER(segas1x_bootleg_state::datsu_page3_w) -{ - COMBINE_DATA(&m_datsu_page[3]); + COMBINE_DATA(&m_datsu_page[Page]); datsu_set_pages(); } @@ -703,10 +678,10 @@ void segas1x_bootleg_state::bayrouteb2_map(address_map &map) map(0x718008, 0x718009).w(this, FUNC(segas1x_bootleg_state::s16bl_fgscrollx_bank_w)); // and tile bank map(0x718010, 0x718011).w(this, FUNC(segas1x_bootleg_state::s16bl_bgscrolly_w)); map(0x718018, 0x718019).w(this, FUNC(segas1x_bootleg_state::s16bl_bgscrollx_w)); - map(0x718020, 0x718021).w(this, FUNC(segas1x_bootleg_state::datsu_page0_w)); - map(0x718022, 0x718023).w(this, FUNC(segas1x_bootleg_state::datsu_page1_w)); - map(0x718024, 0x718025).w(this, FUNC(segas1x_bootleg_state::datsu_page2_w)); - map(0x718026, 0x718027).w(this, FUNC(segas1x_bootleg_state::datsu_page3_w)); + map(0x718020, 0x718021).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<0>)); + map(0x718022, 0x718023).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<1>)); + map(0x718024, 0x718025).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<2>)); + map(0x718026, 0x718027).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<3>)); map(0x800000, 0x800fff).ram().w(this, FUNC(segas1x_bootleg_state::paletteram_w)).share("paletteram"); map(0x900000, 0x900001).portr("DSW1"); @@ -737,10 +712,10 @@ void segas1x_bootleg_state::dduxbl_map(address_map &map) map(0xC46008, 0xC46009).w(this, FUNC(segas1x_bootleg_state::s16bl_fgscrollx_w)); map(0xC46010, 0xC46011).w(this, FUNC(segas1x_bootleg_state::s16bl_bgscrolly_w)); map(0xC46018, 0xC46019).w(this, FUNC(segas1x_bootleg_state::s16bl_bgscrollx_w)); - map(0xC46020, 0xC46021).w(this, FUNC(segas1x_bootleg_state::datsu_page0_w)); - map(0xC46022, 0xC46023).w(this, FUNC(segas1x_bootleg_state::datsu_page1_w)); - map(0xC46024, 0xC46025).w(this, FUNC(segas1x_bootleg_state::datsu_page2_w)); - map(0xC46026, 0xC46027).w(this, FUNC(segas1x_bootleg_state::datsu_page3_w)); + map(0xC46020, 0xC46021).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<0>)); + map(0xC46022, 0xC46023).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<1>)); + map(0xC46024, 0xC46025).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<2>)); + map(0xC46026, 0xC46027).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<3>)); map(0xffc000, 0xffffff).ram(); // work ram } @@ -1000,10 +975,10 @@ void segas1x_bootleg_state::tturfbl_map(address_map &map) map(0xC46008, 0xC46009).w(this, FUNC(segas1x_bootleg_state::s16bl_fgscrollx_w)); map(0xC46010, 0xC46011).w(this, FUNC(segas1x_bootleg_state::s16bl_bgscrolly_w)); map(0xC46018, 0xC46019).w(this, FUNC(segas1x_bootleg_state::s16bl_bgscrollx_w)); - map(0xC46020, 0xC46021).w(this, FUNC(segas1x_bootleg_state::datsu_page0_w)); - map(0xc46022, 0xc46023).w(this, FUNC(segas1x_bootleg_state::datsu_page1_w)); - map(0xC46024, 0xC46025).w(this, FUNC(segas1x_bootleg_state::datsu_page2_w)); - map(0xC46026, 0xC46027).w(this, FUNC(segas1x_bootleg_state::datsu_page3_w)); + map(0xC46020, 0xC46021).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<0>)); + map(0xc46022, 0xc46023).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<1>)); + map(0xC46024, 0xC46025).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<2>)); + map(0xC46026, 0xC46027).w(this, FUNC(segas1x_bootleg_state::datsu_page_w<3>)); } /***************************************************************************/ @@ -1020,8 +995,8 @@ WRITE16_MEMBER(segas1x_bootleg_state::sys18_tilebank_w) { if (ACCESSING_BITS_0_7) { - m_tile_bank0 = (data >> 0) & 0x0f; - m_tile_bank1 = (data >> 4) & 0x0f; + m_tile_bank[0] = (data >> 0) & 0x0f; + m_tile_bank[1] = (data >> 4) & 0x0f; } } @@ -1046,7 +1021,7 @@ void segas1x_bootleg_state::sound_18_map(address_map &map) WRITE8_MEMBER(segas1x_bootleg_state::sys18_soundbank_w) { - uint8_t *mem = memregion("soundcpu")->base(); + uint8_t *mem = m_soundcpu_region->base(); int rom = (data >> 6) & 3; int bank = (data & 0x3f); int mask = m_sound_info[rom * 2 + 0]; @@ -1067,6 +1042,12 @@ void segas1x_bootleg_state::sound_18_io_map(address_map &map) map(0xc0, 0xc0).r(m_soundlatch, FUNC(generic_latch_8_device::read)); } +void segas1x_bootleg_state::pcm_map(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0xffff).ram(); +} + /*************************************************************************** @@ -1211,7 +1192,7 @@ READ8_MEMBER(segas1x_bootleg_state::shdancbl_soundbank_r) WRITE8_MEMBER(segas1x_bootleg_state::shdancbl_bankctrl_w) { - uint8_t *mem = memregion("soundcpu")->base(); + uint8_t *mem = m_soundcpu_region->base(); switch (data) { @@ -1326,7 +1307,7 @@ void segas1x_bootleg_state::mwalkbl_map(address_map &map) WRITE8_MEMBER(segas1x_bootleg_state::sys18bl_okibank_w) // TODO: verify correctness { //popmessage("okibank: %02x\n", data); - membank("okibank")->set_entry(data & 0x07); + m_okibank->set_entry(data & 0x07); } /* bootleg doesn't have real vdp or i/o */ @@ -1382,17 +1363,17 @@ void segas1x_bootleg_state::sys18bl_oki_map(address_map &map) WRITE16_MEMBER(segas1x_bootleg_state::ddcrewbl_spritebank_w) { -// printf("banking write %08x: %04x (%04x %04x)\n", m_maincpu->pc(), offset*2, data&mem_mask, mem_mask); +// printf("banking write %08x: %04x (%04x %04x)\n", m_maincpu->pc(), offset<<1, data&mem_mask, mem_mask); data &= mem_mask; // offset &= 0x7; offset += 4; - int maxbanks = memregion("sprites")->bytes() / 0x40000; + int maxbanks = m_sprites_region->bytes() >> 18; if (data >= maxbanks) data = 255; - m_sprites->set_bank((offset) * 2 + 0, data * 2 + 0); - m_sprites->set_bank((offset) * 2 + 1, data * 2 + 1); + m_sprites->set_bank((offset << 1) | 0, (data << 1) | 0); + m_sprites->set_bank((offset << 1) | 1, (data << 1) | 1); } @@ -2481,18 +2462,15 @@ MACHINE_CONFIG_START(segas1x_bootleg_state::system18) MCFG_DEVICE_ADD("3438.0", YM3438, 8000000) MCFG_SOUND_ROUTE(0, "lspeaker", 0.40) MCFG_SOUND_ROUTE(1, "rspeaker", 0.40) - MCFG_SOUND_ROUTE(2, "lspeaker", 0.40) - MCFG_SOUND_ROUTE(3, "rspeaker", 0.40) MCFG_DEVICE_ADD("3438.1", YM3438, 8000000) MCFG_SOUND_ROUTE(0, "lspeaker", 0.40) MCFG_SOUND_ROUTE(1, "rspeaker", 0.40) - MCFG_SOUND_ROUTE(2, "lspeaker", 0.40) - MCFG_SOUND_ROUTE(3, "rspeaker", 0.40) MCFG_DEVICE_ADD("5c68", RF5C68, 8000000) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0) + MCFG_DEVICE_ADDRESS_MAP(0, pcm_map) MACHINE_CONFIG_END @@ -3784,7 +3762,7 @@ DRIVER_INIT_MEMBER(segas1x_bootleg_state,common) if (m_soundbank.found()) { - m_soundbank->configure_entries(0, 8, memregion("soundcpu")->base(), 0x4000); + m_soundbank->configure_entries(0, 8, m_soundcpu_region->base(), 0x4000); m_soundbank->set_entry(0); } } @@ -3869,7 +3847,7 @@ DRIVER_INIT_MEMBER(segas1x_bootleg_state,bayrouteb1) DRIVER_INIT_MEMBER(segas1x_bootleg_state,bayrouteb2) { - uint8_t *mem = memregion("soundcpu")->base(); + uint8_t *mem = m_soundcpu_region->base(); memcpy(mem, mem + 0x10000, 0x8000); @@ -3885,7 +3863,7 @@ DRIVER_INIT_MEMBER(segas1x_bootleg_state,goldnaxeb2) DRIVER_INIT_MEMBER(segas1x_bootleg_state,tturfbl) { - uint8_t *mem = memregion("soundcpu")->base(); + uint8_t *mem = m_soundcpu_region->base(); memcpy(mem, mem + 0x10000, 0x8000); @@ -3937,26 +3915,26 @@ WRITE16_MEMBER(segas1x_bootleg_state::altbeastbl_gfx_w) } case 0x10: { - m_bg_page[0] = (data >> 0) & 0x0f; - m_fg_page[0] = (data >> 4) & 0x0f; + m_bg_page[0][0] = (data >> 0) & 0x0f; + m_fg_page[0][0] = (data >> 4) & 0x0f; break; } case 0x11: { - m_bg_page[1] = (data >> 0) & 0x0f; - m_fg_page[1] = (data >> 4) & 0x0f; + m_bg_page[0][1] = (data >> 0) & 0x0f; + m_fg_page[0][1] = (data >> 4) & 0x0f; break; } case 0x12: { - m_bg_page[2] = (data >> 0) & 0x0f; - m_fg_page[2] = (data >> 4) & 0x0f; + m_bg_page[0][2] = (data >> 0) & 0x0f; + m_fg_page[0][2] = (data >> 4) & 0x0f; break; } case 0x13: { - m_bg_page[3] = (data >> 0) & 0x0f; - m_fg_page[3] = (data >> 4) & 0x0f; + m_bg_page[0][3] = (data >> 0) & 0x0f; + m_fg_page[0][3] = (data >> 4) & 0x0f; break; } } @@ -3990,7 +3968,7 @@ DRIVER_INIT_MEMBER(segas1x_bootleg_state,beautyb) /* Sys18 */ DRIVER_INIT_MEMBER(segas1x_bootleg_state,shdancbl) { - uint8_t *mem = memregion("soundcpu")->base();; + uint8_t *mem = m_soundcpu_region->base();; /* Copy first 32K of IC45 to Z80 address space */ memcpy(mem, mem + 0x10000, 0x8000); @@ -4004,7 +3982,7 @@ DRIVER_INIT_MEMBER(segas1x_bootleg_state,shdancbl) DRIVER_INIT_MEMBER(segas1x_bootleg_state,astormbl) { - uint8_t *RAM = memregion("soundcpu")->base(); + uint8_t *RAM = m_soundcpu_region->base(); static const int astormbl_sound_info[] = { 0x0f, 0x00000, // ROM #1 = 128K @@ -4031,7 +4009,7 @@ DRIVER_INIT_MEMBER(segas1x_bootleg_state, sys18bl_oki) m_splittab_fg_x = &m_textram[0x0f80/2]; m_splittab_bg_x = &m_textram[0x0fc0/2]; - membank("okibank")->configure_entries(0, 8, memregion("oki")->base() + 0x30000, 0x10000); + m_okibank->configure_entries(0, 8, memregion("oki")->base() + 0x30000, 0x10000); } DRIVER_INIT_MEMBER(segas1x_bootleg_state, astormb2) diff --git a/src/mame/includes/fmtowns.h b/src/mame/includes/fmtowns.h index 2ba20b38064..fd69c8f3d03 100644 --- a/src/mame/includes/fmtowns.h +++ b/src/mame/includes/fmtowns.h @@ -88,43 +88,45 @@ class towns_state : public driver_device { public: towns_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), - m_maincpu(*this, "maincpu"), - m_speaker(*this, "speaker"), - m_pic_master(*this, "pic8259_master"), - m_pic_slave(*this, "pic8259_slave"), - m_pit(*this, "pit"), - m_dma_1(*this, "dma_1"), - m_dma_2(*this, "dma_2"), - m_palette(*this, "palette256"), - m_palette16_0(*this, "palette16_0"), - m_palette16_1(*this, "palette16_1"), - m_ram(*this, RAM_TAG), - m_fdc(*this, "fdc"), - m_flop0(*this, "fdc:0"), - m_flop1(*this, "fdc:1"), - m_icmemcard(*this, "icmemcard"), - m_i8251(*this, "i8251"), - m_rs232(*this, "rs232c"), - m_screen(*this, "screen"), - m_rtc(*this, "rtc58321"), - m_nvram(*this, "nvram"), - m_nvram16(*this, "nvram16"), - m_ctrltype(*this, "ctrltype"), - m_kb_ports(*this, {"key1", "key2", "key3", "key4"}), - m_joy1(*this, "joy1"), - m_joy2(*this, "joy2"), - m_joy1_ex(*this, "joy1_ex"), - m_joy2_ex(*this, "joy2_ex"), - m_6b_joy1(*this, "6b_joy1"), - m_6b_joy2(*this, "6b_joy2"), - m_6b_joy1_ex(*this, "6b_joy1_ex"), - m_6b_joy2_ex(*this, "6b_joy2_ex"), - m_mouse1(*this, "mouse1"), - m_mouse2(*this, "mouse2"), - m_mouse3(*this, "mouse3"), - m_user(*this,"user"), - m_serial(*this,"serial") + : driver_device(mconfig, type, tag) + , m_maincpu(*this, "maincpu") + , m_speaker(*this, "speaker") + , m_pic_master(*this, "pic8259_master") + , m_pic_slave(*this, "pic8259_slave") + , m_pit(*this, "pit") + , m_dma(*this, "dma_%u", 1U) + , m_palette(*this, "palette256") + , m_palette16(*this, "palette16_%u", 0U) + , m_ram(*this, RAM_TAG) + , m_fdc(*this, "fdc") + , m_flop0(*this, "fdc:0") + , m_flop1(*this, "fdc:1") + , m_icmemcard(*this, "icmemcard") + , m_i8251(*this, "i8251") + , m_rs232(*this, "rs232c") + , m_screen(*this, "screen") + , m_rtc(*this, "rtc58321") + , m_bank_cb000_r(*this, "bank_cb000_r") + , m_bank_cb000_w(*this, "bank_cb000_w") + , m_bank_f8000_r(*this, "bank_f8000_r") + , m_bank_f8000_w(*this, "bank_f8000_w") + , m_nvram(*this, "nvram") + , m_nvram16(*this, "nvram16") + , m_ctrltype(*this, "ctrltype") + , m_kb_ports(*this, "key%u", 1U) + , m_joy1(*this, "joy1") + , m_joy2(*this, "joy2") + , m_joy1_ex(*this, "joy1_ex") + , m_joy2_ex(*this, "joy2_ex") + , m_6b_joy1(*this, "6b_joy1") + , m_6b_joy2(*this, "6b_joy2") + , m_6b_joy1_ex(*this, "6b_joy1_ex") + , m_6b_joy2_ex(*this, "6b_joy2_ex") + , m_mouse1(*this, "mouse1") + , m_mouse2(*this, "mouse2") + , m_mouse3(*this, "mouse3") + , m_user(*this,"user") + , m_serial(*this,"serial") { } /* devices */ @@ -133,11 +135,9 @@ class towns_state : public driver_device required_device m_pic_master; required_device m_pic_slave; required_device m_pit; - required_device m_dma_1; - required_device m_dma_2; + required_device_array m_dma; required_device m_palette; - required_device m_palette16_0; - required_device m_palette16_1; + required_device_array m_palette16; required_device m_ram; required_device m_fdc; required_device m_flop0; @@ -147,6 +147,12 @@ class towns_state : public driver_device required_device m_rs232; required_device m_screen; required_device m_rtc; + + required_memory_bank m_bank_cb000_r; + required_memory_bank m_bank_cb000_w; + required_memory_bank m_bank_f8000_r; + required_memory_bank m_bank_f8000_w; + ram_device* m_messram; cdrom_image_device* m_cdrom; cdda_device* m_cdda; @@ -246,10 +252,8 @@ class towns_state : public driver_device DECLARE_WRITE8_MEMBER(towns_intervaltimer2_w); DECLARE_READ8_MEMBER(towns_sys6c_r); DECLARE_WRITE8_MEMBER(towns_sys6c_w); - DECLARE_READ8_MEMBER(towns_dma1_r); - DECLARE_WRITE8_MEMBER(towns_dma1_w); - DECLARE_READ8_MEMBER(towns_dma2_r); - DECLARE_WRITE8_MEMBER(towns_dma2_w); + template DECLARE_READ8_MEMBER(towns_dma_r); + template DECLARE_WRITE8_MEMBER(towns_dma_w); DECLARE_READ8_MEMBER(towns_floppy_r); DECLARE_WRITE8_MEMBER(towns_floppy_w); DECLARE_READ8_MEMBER(towns_keyboard_r); @@ -352,6 +356,7 @@ class towns_state : public driver_device void townshr(machine_config &config); void townssj(machine_config &config); void marty_mem(address_map &map); + void pcm_mem(address_map &map); void towns16_io(address_map &map); void towns_io(address_map &map); void towns_mem(address_map &map); diff --git a/src/mame/includes/segas18.h b/src/mame/includes/segas18.h index be944e3b315..4b42dcdba3f 100644 --- a/src/mame/includes/segas18.h +++ b/src/mame/includes/segas18.h @@ -25,26 +25,29 @@ class segas18_state : public sega_16bit_common_base public: // construction/destruction segas18_state(const machine_config &mconfig, device_type type, const char *tag) - : sega_16bit_common_base(mconfig, type, tag), - m_mapper(*this, "mapper"), - m_maincpu(*this, "maincpu"), - m_maincpu_region(*this, "maincpu"), - m_soundcpu(*this, "soundcpu"), - m_mcu(*this, "mcu"), - m_vdp(*this, "gen_vdp"), - m_io(*this, "io"), - m_nvram(*this, "nvram"), - m_sprites(*this, "sprites"), - m_segaic16vid(*this, "segaic16vid"), - m_gfxdecode(*this, "gfxdecode"), - m_upd4701(*this, {"upd1", "upd2", "upd3"}), - m_workram(*this, "workram"), - m_romboard(ROM_BOARD_INVALID), - m_grayscale_enable(false), - m_vdp_enable(false), - m_vdp_mixing(0), - m_lghost_value(0), - m_lghost_select(0) + : sega_16bit_common_base(mconfig, type, tag) + , m_mapper(*this, "mapper") + , m_maincpu(*this, "maincpu") + , m_maincpu_region(*this, "maincpu") + , m_soundcpu(*this, "soundcpu") + , m_mcu(*this, "mcu") + , m_vdp(*this, "gen_vdp") + , m_io(*this, "io") + , m_nvram(*this, "nvram") + , m_sprites(*this, "sprites") + , m_segaic16vid(*this, "segaic16vid") + , m_gfxdecode(*this, "gfxdecode") + , m_upd4701(*this, {"upd1", "upd2", "upd3"}) + , m_workram(*this, "workram") + , m_sprites_region(*this, "sprites") + , m_soundbank(*this, "soundbank") + , m_gun_recoil(*this, "P%u_Gun_Recoil", 1U) + , m_romboard(ROM_BOARD_INVALID) + , m_grayscale_enable(false) + , m_vdp_enable(false) + , m_vdp_mixing(0) + , m_lghost_value(0) + , m_lghost_select(0) { } @@ -102,6 +105,7 @@ public: void system18_i8751(machine_config &config); void decrypted_opcodes_map(address_map &map); void mcu_io_map(address_map &map); + void pcm_map(address_map &map); void sound_map(address_map &map); void sound_portmap(address_map &map); void system18_map(address_map &map); @@ -150,6 +154,11 @@ protected: // memory pointers required_shared_ptr m_workram; + required_memory_region m_sprites_region; + optional_memory_bank m_soundbank; + + output_finder<3> m_gun_recoil; + // configuration segas18_rom_board m_romboard; read16_delegate m_custom_io_r; diff --git a/src/mame/includes/segas32.h b/src/mame/includes/segas32.h index 7462d398a0a..3ae63918c3a 100644 --- a/src/mame/includes/segas32.h +++ b/src/mame/includes/segas32.h @@ -40,6 +40,12 @@ public: required_device m_irq_timer_1; optional_device m_s32comm; + required_region_ptr m_sprite_region; + required_memory_region m_maincpu_region; + required_memory_bank m_soundrom_bank; + optional_memory_bank m_multipcm_bank_hi; + optional_memory_bank m_multipcm_bank_lo; + typedef void (segas32_state::*sys32_output_callback)(int which, uint16_t data); struct layer_info @@ -174,7 +180,6 @@ public: void signal_v60_irq(int which); void update_sound_irq_state(); void segas32_common_init(); - void multi32_common_init(); void radm_sw1_output( int which, uint16_t data ); void radm_sw2_output( int which, uint16_t data ); void radr_sw2_output( int which, uint16_t data ); @@ -234,6 +239,7 @@ public: void multi32_sound_map(address_map &map); void multi32_sound_portmap(address_map &map); void multipcm_map(address_map &map); + void rf5c68_map(address_map &map); void system32_4player_map(address_map &map); void system32_analog_map(address_map &map); void system32_cd_map(address_map &map); diff --git a/src/mame/includes/system16.h b/src/mame/includes/system16.h index 791b8d14e10..d4f35bb5070 100644 --- a/src/mame/includes/system16.h +++ b/src/mame/includes/system16.h @@ -12,23 +12,27 @@ class segas1x_bootleg_state : public sega_16bit_common_base { public: segas1x_bootleg_state(const machine_config &mconfig, device_type type, const char *tag) - : sega_16bit_common_base(mconfig, type, tag) , - m_textram(*this, "textram"), - m_bg0_tileram(*this, "bg0_tileram"), - m_bg1_tileram(*this, "bg1_tileram"), - m_tileram(*this, "tileram"), - m_goldnaxeb2_bgpage(*this, "gab2_bgpage"), - m_goldnaxeb2_fgpage(*this, "gab2_fgpage"), - m_soundbank(*this, "soundbank"), - m_sprites(*this, "sprites"), - m_maincpu(*this, "maincpu"), - m_soundcpu(*this, "soundcpu"), - m_msm(*this, "5205"), - m_upd7759(*this, "7759"), - m_gfxdecode(*this, "gfxdecode"), - m_soundlatch(*this, "soundlatch"), - m_adpcm_select(*this, "adpcm_select"), - m_decrypted_opcodes(*this, "decrypted_opcodes") { } + : sega_16bit_common_base(mconfig, type, tag) + , m_textram(*this, "textram") + , m_bg0_tileram(*this, "bg0_tileram") + , m_bg1_tileram(*this, "bg1_tileram") + , m_tileram(*this, "tileram") + , m_goldnaxeb2_bgpage(*this, "gab2_bgpage") + , m_goldnaxeb2_fgpage(*this, "gab2_fgpage") + , m_sprites_region(*this, "sprites") + , m_soundcpu_region(*this, "soundcpu") + , m_soundbank(*this, "soundbank") + , m_okibank(*this, "okibank") + , m_sprites(*this, "sprites") + , m_maincpu(*this, "maincpu") + , m_soundcpu(*this, "soundcpu") + , m_msm(*this, "5205") + , m_upd7759(*this, "7759") + , m_gfxdecode(*this, "gfxdecode") + , m_soundlatch(*this, "soundlatch") + , m_adpcm_select(*this, "adpcm_select") + , m_decrypted_opcodes(*this, "decrypted_opcodes") + { } required_shared_ptr m_textram; optional_shared_ptr m_bg0_tileram; @@ -37,7 +41,10 @@ public: optional_shared_ptr m_goldnaxeb2_bgpage; optional_shared_ptr m_goldnaxeb2_fgpage; + optional_memory_region m_sprites_region; + optional_memory_region m_soundcpu_region; optional_memory_bank m_soundbank; + optional_memory_bank m_okibank; optional_device m_sprites; @@ -56,11 +63,9 @@ public: /* video-related */ - tilemap_t *m_background; - tilemap_t *m_foreground; + tilemap_t *m_background[2]; + tilemap_t *m_foreground[2]; tilemap_t *m_text_layer; - tilemap_t *m_background2; - tilemap_t *m_foreground2; tilemap_t *m_bg_tilemaps[2]; tilemap_t *m_text_tilemap; double m_weights[2][3][6]; @@ -72,22 +77,15 @@ public: int m_bg1_trans; // alien syn + sys18 - int m_tile_bank1; - int m_tile_bank0; - int m_bg_page[4]; - int m_fg_page[4]; + int m_tile_bank[2]; + int m_bg_page[2][4]; + int m_fg_page[2][4]; uint16_t m_datsu_page[4]; - int m_bg2_page[4]; - int m_fg2_page[4]; - - int m_old_bg_page[4]; - int m_old_fg_page[4]; - int m_old_tile_bank1; - int m_old_tile_bank0; - int m_old_bg2_page[4]; - int m_old_fg2_page[4]; + int m_old_bg_page[2][4]; + int m_old_fg_page[2][4]; + int m_old_tile_bank[2]; int m_bg_scrollx; int m_bg_scrolly; @@ -152,10 +150,7 @@ public: DECLARE_WRITE16_MEMBER(s16bl_fgscrolly_w); DECLARE_WRITE16_MEMBER(s16bl_bgscrollx_w); DECLARE_WRITE16_MEMBER(s16bl_bgscrolly_w); - DECLARE_WRITE16_MEMBER(datsu_page0_w); - DECLARE_WRITE16_MEMBER(datsu_page1_w); - DECLARE_WRITE16_MEMBER(datsu_page2_w); - DECLARE_WRITE16_MEMBER(datsu_page3_w); + template DECLARE_WRITE16_MEMBER(datsu_page_w); DECLARE_WRITE16_MEMBER(goldnaxeb2_fgscrollx_w); DECLARE_WRITE16_MEMBER(goldnaxeb2_bgscrollx_w); DECLARE_WRITE16_MEMBER(goldnaxeb2_fgscrolly_w); @@ -273,6 +268,7 @@ public: void mwalkbl_map(address_map &map); void passht4b_map(address_map &map); void passshtb_map(address_map &map); + void pcm_map(address_map &map); void shdancbl_map(address_map &map); void shdancbl_sound_io_map(address_map &map); void shdancbl_sound_map(address_map &map); diff --git a/src/mame/machine/megacd.cpp b/src/mame/machine/megacd.cpp index 032f7f71588..593e4de3e25 100644 --- a/src/mame/machine/megacd.cpp +++ b/src/mame/machine/megacd.cpp @@ -124,6 +124,12 @@ void sega_segacd_device::segacd_map(address_map &map) } +void sega_segacd_device::segacd_pcm_map(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0xffff).ram(); +} + // the tiles in RAM are 8x8 tiles // they are referenced in the cell look-up map as either 16x16 or 32x32 tiles (made of 4 / 16 8x8 tiles) @@ -146,7 +152,7 @@ void sega_segacd_device::segacd_map(address_map &map) 16,16, \ SEGACD_NUM_TILES16, \ 4, \ - { 0,1,2,3 }, + { STEP4(0,1) }, #define _16x16_END \ 8*128 \ }; @@ -155,7 +161,7 @@ void sega_segacd_device::segacd_map(address_map &map) 32,32, \ SEGACD_NUM_TILES32, \ 4, \ - { 0,1,2,3 }, + { STEP4(0,1) }, #define _32x32_END \ 8*512 \ @@ -308,6 +314,7 @@ MACHINE_CONFIG_START(sega_segacd_device::device_add_mconfig) MCFG_DEVICE_ADD("rfsnd", RF5C68, SEGACD_CLOCK) // RF5C164! MCFG_SOUND_ROUTE( 0, ":lspeaker", 0.50 ) MCFG_SOUND_ROUTE( 1, ":rspeaker", 0.50 ) + MCFG_DEVICE_ADDRESS_MAP(0, segacd_pcm_map) MCFG_NVRAM_ADD_0FILL("backupram") @@ -1065,8 +1072,8 @@ inline uint8_t sega_segacd_device::get_stampmap_16x16_1x1_tile_info_pixel(int xp int wraparound = segacd_stampsize&1; - int xtile = xpos / (1<> tilesize; + int ytile = ypos >> tilesize; if (wraparound) { @@ -1103,8 +1110,8 @@ inline uint8_t sega_segacd_device::get_stampmap_32x32_1x1_tile_info_pixel(int xp int wraparound = segacd_stampsize&1; - int xtile = xpos / (1<> tilesize; + int ytile = ypos >> tilesize; if (wraparound) { @@ -1141,8 +1148,8 @@ inline uint8_t sega_segacd_device::get_stampmap_16x16_16x16_tile_info_pixel(int int wraparound = segacd_stampsize&1; - int xtile = xpos / (1<> tilesize; + int ytile = ypos >> tilesize; if (wraparound) { @@ -1179,8 +1186,8 @@ inline uint8_t sega_segacd_device::get_stampmap_32x32_16x16_tile_info_pixel(int int wraparound = segacd_stampsize&1; - int xtile = xpos / (1<> tilesize; + int ytile = ypos >> tilesize; if (wraparound) { diff --git a/src/mame/machine/megacd.h b/src/mame/machine/megacd.h index 90e2b28ed3f..6ae5df9e616 100644 --- a/src/mame/machine/megacd.h +++ b/src/mame/machine/megacd.h @@ -97,6 +97,7 @@ public: READ16_MEMBER( font_converted_r ); void segacd_map(address_map &map); + void segacd_pcm_map(address_map &map); protected: sega_segacd_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); diff --git a/src/mame/machine/segas32.cpp b/src/mame/machine/segas32.cpp index abb0cabd6c7..008b0f29609 100644 --- a/src/mame/machine/segas32.cpp +++ b/src/mame/machine/segas32.cpp @@ -103,7 +103,7 @@ WRITE16_MEMBER(segas32_state::sonic_level_load_protection) } else { - const uint8_t *ROM = memregion("maincpu")->base(); + const uint8_t *ROM = m_maincpu_region->base(); level = *((ROM + LEVEL_ORDER_ARRAY) + (m_system32_workram[CLEARED_LEVELS / 2] * 2) - 1); level |= *((ROM + LEVEL_ORDER_ARRAY) + (m_system32_workram[CLEARED_LEVELS / 2] * 2) - 2) << 8; } @@ -153,7 +153,7 @@ WRITE16_MEMBER(segas32_state::brival_protection_w) }; char ret[32]; int curProtType; - uint8_t *ROM = memregion("maincpu")->base(); + uint8_t *ROM = m_maincpu_region->base(); switch (offset) { diff --git a/src/mame/video/fmtowns.cpp b/src/mame/video/fmtowns.cpp index ed9ae071c1f..2acf9e8b7fc 100644 --- a/src/mame/video/fmtowns.cpp +++ b/src/mame/video/fmtowns.cpp @@ -533,10 +533,8 @@ void towns_state::towns_update_palette() switch(m_video.towns_video_reg[1] & 0x30) // Palette select { case 0x00: - m_palette16_0->set_pen_color(entry, r, g, b); - break; case 0x20: - m_palette16_1->set_pen_color(entry, r, g, b); + m_palette16[(m_video.towns_video_reg[1] & 0x20) >> 5]->set_pen_color(entry, r, g, b); break; case 0x10: case 0x30: @@ -562,10 +560,8 @@ READ8_MEMBER(towns_state::towns_video_fd90_r) if(m_video.towns_video_reg[1] & 0x10) pal = m_palette; - else if(m_video.towns_video_reg[1] & 0x20) - pal = m_palette16_1; else - pal = m_palette16_0; + pal = m_palette16[(m_video.towns_video_reg[1] & 0x20) >> 5]; // if(LOG_VID) logerror("VID: read port %04x\n",offset+0xfd90); switch(offset) { @@ -1199,7 +1195,7 @@ void towns_state::towns_crtc_draw_scan_layer_16(bitmap_rgb32 &bitmap,const recta uint32_t scroll; int pixel; int page = 0; - palette_device* pal = (layer == 0) ? m_palette16_0 : m_palette16_1; + palette_device* pal = m_palette16[layer]; bool sphscroll = !(m_video.towns_crtc_reg[28] & (layer ? 0x20 : 0x10)); if(m_video.towns_display_page_sel != 0) diff --git a/src/mame/video/segas32.cpp b/src/mame/video/segas32.cpp index 15c3c098b4d..9242f9656cc 100644 --- a/src/mame/video/segas32.cpp +++ b/src/mame/video/segas32.cpp @@ -416,33 +416,33 @@ WRITE16_MEMBER(segas32_state::system32_paletteram_w) READ32_MEMBER(segas32_state::multi32_paletteram_0_r) { - return common_paletteram_r(space, 0, offset*2+0) | - (common_paletteram_r(space, 0, offset*2+1) << 16); + return common_paletteram_r(space, 0, (offset<<1)|0) | + (common_paletteram_r(space, 0, (offset<<1)|1) << 16); } WRITE32_MEMBER(segas32_state::multi32_paletteram_0_w) { if (ACCESSING_BITS_0_15) - common_paletteram_w(space, 0, offset*2+0, data, mem_mask); + common_paletteram_w(space, 0, (offset<<1)|0, data, mem_mask); if (ACCESSING_BITS_16_31) - common_paletteram_w(space, 0, offset*2+1, data >> 16, mem_mask >> 16); + common_paletteram_w(space, 0, (offset<<1)|1, data >> 16, mem_mask >> 16); } READ32_MEMBER(segas32_state::multi32_paletteram_1_r) { - return common_paletteram_r(space, 1, offset*2+0) | - (common_paletteram_r(space, 1, offset*2+1) << 16); + return common_paletteram_r(space, 1, (offset<<1)|0) | + (common_paletteram_r(space, 1, (offset<<1)|1) << 16); } WRITE32_MEMBER(segas32_state::multi32_paletteram_1_w) { if (ACCESSING_BITS_0_15) - common_paletteram_w(space, 1, offset*2+0, data, mem_mask); + common_paletteram_w(space, 1, (offset<<1)|0, data, mem_mask); if (ACCESSING_BITS_16_31) - common_paletteram_w(space, 1, offset*2+1, data >> 16, mem_mask >> 16); + common_paletteram_w(space, 1, (offset<<1)|1, data >> 16, mem_mask >> 16); } @@ -467,8 +467,8 @@ WRITE16_MEMBER(segas32_state::system32_videoram_w) if (offset < 0x1ff00/2) { struct cache_entry *entry; - int page = offset / 0x200; - offset %= 0x200; + int page = offset >> 9; + offset &= 0x1ff; /* scan the cache for a matching pages */ for (entry = m_cache_head; entry != nullptr; entry = entry->next) @@ -565,7 +565,7 @@ READ16_MEMBER(segas32_state::system32_spriteram_r) WRITE16_MEMBER(segas32_state::system32_spriteram_w) { COMBINE_DATA(&m_system32_spriteram[offset]); - m_spriteram_32bit[offset/2] = + m_spriteram_32bit[offset>>1] = ((m_system32_spriteram[offset | 1] >> 8 ) & 0x000000ff) | ((m_system32_spriteram[offset | 1] << 8 ) & 0x0000ff00) | ((m_system32_spriteram[offset & ~1] << 8 ) & 0x00ff0000) | @@ -575,8 +575,8 @@ WRITE16_MEMBER(segas32_state::system32_spriteram_w) READ32_MEMBER(segas32_state::multi32_spriteram_r) { - return m_system32_spriteram[offset*2+0] | - (m_system32_spriteram[offset*2+1] << 16); + return m_system32_spriteram[(offset<<1)|0] | + (m_system32_spriteram[(offset<<1)|1] << 16); } @@ -584,8 +584,8 @@ WRITE32_MEMBER(segas32_state::multi32_spriteram_w) { data = SWAP_HALVES(data); mem_mask = SWAP_HALVES(mem_mask); - COMBINE_DATA((uint32_t *)&m_system32_spriteram[offset*2]); - m_spriteram_32bit[offset/2] = + COMBINE_DATA((uint32_t *)&m_system32_spriteram[offset<<1]); + m_spriteram_32bit[offset>>1] = ((m_system32_spriteram[offset | 1] >> 8 ) & 0x000000ff) | ((m_system32_spriteram[offset | 1] << 8 ) & 0x0000ff00) | ((m_system32_spriteram[offset & ~1] << 8 ) & 0x00ff0000) | @@ -615,7 +615,7 @@ WRITE32_MEMBER(segas32_state::multi32_mixer_0_w) { data = SWAP_HALVES(data); mem_mask = SWAP_HALVES(mem_mask); - COMBINE_DATA((uint32_t *)&m_mixer_control[0][offset*2]); + COMBINE_DATA((uint32_t *)&m_mixer_control[0][offset<<1]); } @@ -623,7 +623,7 @@ WRITE32_MEMBER(segas32_state::multi32_mixer_1_w) { data = SWAP_HALVES(data); mem_mask = SWAP_HALVES(mem_mask); - COMBINE_DATA((uint32_t *)&m_mixer_control[1][offset*2]); + COMBINE_DATA((uint32_t *)&m_mixer_control[1][offset<<1]); } @@ -686,8 +686,8 @@ tilemap_t *segas32_state::find_cache_entry(int page, int bank) TILE_GET_INFO_MEMBER(segas32_state::get_tile_info) { struct segas32_state::cache_entry *entry = (struct segas32_state::cache_entry *)tilemap.user_data(); - uint16_t data = m_system32_videoram[(entry->page & 0x7f) * 0x200 + tile_index]; - SET_TILE_INFO_MEMBER(0, (entry->bank << 13) + (data & 0x1fff), (data >> 4) & 0x1ff, (data >> 14) & 3); + uint16_t data = m_system32_videoram[((entry->page & 0x7f) << 9) | tile_index]; + SET_TILE_INFO_MEMBER(0, (entry->bank << 13) | (data & 0x1fff), (data >> 4) & 0x1ff, (data >> 14) & 3); } @@ -1201,44 +1201,44 @@ void segas32_state::update_tilemap_text(screen_device &screen, struct segas32_st pix = (pixels >> 4) & 0x0f; if (pix) - pix += color; + pix |= color; dst[0] = pix; pix = (pixels >> 0) & 0x0f; if (pix) - pix += color; + pix |= color; dst[1] = pix; pix = (pixels >> 12) & 0x0f; if (pix) - pix += color; + pix |= color; dst[2] = pix; pix = (pixels >> 8) & 0x0f; if (pix) - pix += color; + pix |= color; dst[3] = pix; pixels = *src++; pix = (pixels >> 4) & 0x0f; if (pix) - pix += color; + pix |= color; dst[4] = pix; pix = (pixels >> 0) & 0x0f; if (pix) - pix += color; + pix |= color; dst[5] = pix; pix = (pixels >> 12) & 0x0f; if (pix) - pix += color; + pix |= color; dst[6] = pix; pix = (pixels >> 8) & 0x0f; if (pix) - pix += color; + pix |= color; dst[7] = pix; dst += bitmap.rowpixels(); @@ -1262,44 +1262,44 @@ void segas32_state::update_tilemap_text(screen_device &screen, struct segas32_st pix = (pixels >> 4) & 0x0f; if (pix) - pix += color; + pix |= color; dst[0] = pix; pix = (pixels >> 0) & 0x0f; if (pix) - pix += color; + pix |= color; dst[-1] = pix; pix = (pixels >> 12) & 0x0f; if (pix) - pix += color; + pix |= color; dst[-2] = pix; pix = (pixels >> 8) & 0x0f; if (pix) - pix += color; + pix |= color; dst[-3] = pix; pix = *src++; pix = (pixels >> 4) & 0x0f; if (pix) - pix += color; + pix |= color; dst[-4] = pix; pix = (pixels >> 0) & 0x0f; if (pix) - pix += color; + pix |= color; dst[-5] = pix; pix = (pixels >> 12) & 0x0f; if (pix) - pix += color; + pix |= color; dst[-6] = pix; pix = (pixels >> 8) & 0x0f; if (pix) - pix += color; + pix |= color; dst[-7] = pix; dst -= bitmap.rowpixels(); @@ -1618,8 +1618,7 @@ int segas32_state::draw_one_sprite(uint16_t *data, int xoffs, int yoffs, const r }; bitmap_ind16 &bitmap = *m_layer_data[(!m_is_multi32 || !(data[3] & 0x0800)) ? MIXER_LAYER_SPRITES_2 : MIXER_LAYER_MULTISPR_2].bitmap; - uint8_t numbanks = memregion("gfx2")->bytes() / 0x400000; - const uint32_t *spritebase = (const uint32_t *)memregion("gfx2")->base(); + uint8_t numbanks = m_sprite_region.length() >> 20; int indirect = data[0] & 0x2000; int indlocal = data[0] & 0x1000; @@ -1678,7 +1677,7 @@ int segas32_state::draw_one_sprite(uint16_t *data, int xoffs, int yoffs, const r { if (numbanks) bank %= numbanks; - spritedata = spritebase + 0x100000 * bank; + spritedata = &m_sprite_region[bank << 20]; addrmask = 0xfffff; } diff --git a/src/mame/video/system16.cpp b/src/mame/video/system16.cpp index 5f4190bd577..d7e66cf9c21 100644 --- a/src/mame/video/system16.cpp +++ b/src/mame/video/system16.cpp @@ -157,69 +157,69 @@ void segas1x_bootleg_state::update_page( ) int all_dirty = 0; int i, offset; - if (m_old_tile_bank1 != m_tile_bank1) + if (m_old_tile_bank[1] != m_tile_bank[1]) { all_dirty = 1; - m_old_tile_bank1 = m_tile_bank1; + m_old_tile_bank[1] = m_tile_bank[1]; } - if (m_old_tile_bank0 != m_tile_bank0) + if (m_old_tile_bank[0] != m_tile_bank[0]) { all_dirty = 1; - m_old_tile_bank0 = m_tile_bank0; + m_old_tile_bank[0] = m_tile_bank[0]; m_text_layer->mark_all_dirty(); } if (all_dirty) { - m_background->mark_all_dirty(); - m_foreground->mark_all_dirty(); + m_background[0]->mark_all_dirty(); + m_foreground[0]->mark_all_dirty(); if (m_system18) { - m_background2->mark_all_dirty(); - m_foreground2->mark_all_dirty(); + m_background[1]->mark_all_dirty(); + m_foreground[1]->mark_all_dirty(); } } else { for (i = 0; i < 4; i++) { int page0 = 64 * 32 * i; - if (m_old_bg_page[i] != m_bg_page[i]) + if (m_old_bg_page[0][i] != m_bg_page[0][i]) { - m_old_bg_page[i] = m_bg_page[i]; + m_old_bg_page[0][i] = m_bg_page[0][i]; for (offset = page0; offset < page0 + 64 * 32; offset++) { - m_background->mark_tile_dirty(offset); + m_background[0]->mark_tile_dirty(offset); } } - if (m_old_fg_page[i] != m_fg_page[i]) + if (m_old_fg_page[0][i] != m_fg_page[0][i]) { - m_old_fg_page[i] = m_fg_page[i]; + m_old_fg_page[0][i] = m_fg_page[0][i]; for (offset = page0; offset < page0 + 64 * 32; offset++) { - m_foreground->mark_tile_dirty(offset); + m_foreground[0]->mark_tile_dirty(offset); } } if (m_system18) { - if (m_old_bg2_page[i] != m_bg2_page[i]) + if (m_old_bg_page[1][i] != m_bg_page[1][i]) { - m_old_bg2_page[i] = m_bg2_page[i]; + m_old_bg_page[1][i] = m_bg_page[1][i]; for (offset = page0; offset < page0 + 64 * 32; offset++) { - m_background2->mark_tile_dirty(offset); + m_background[1]->mark_tile_dirty(offset); } } - if (m_old_fg2_page[i] != m_fg2_page[i]) + if (m_old_fg_page[1][i] != m_fg_page[1][i]) { - m_old_fg2_page[i] = m_fg2_page[i]; + m_old_fg_page[1][i] = m_fg_page[1][i]; for (offset = page0; offset < page0 + 64 * 32; offset++) { - m_foreground2->mark_tile_dirty(offset); + m_foreground[1]->mark_tile_dirty(offset); } } } @@ -229,9 +229,9 @@ void segas1x_bootleg_state::update_page( ) TILE_GET_INFO_MEMBER(segas1x_bootleg_state::get_bg_tile_info) { - const uint16_t *source = 64 * 32 * m_bg_page[tile_index / (64 * 32)] + m_tileram; - int data = source[tile_index%(64*32)]; - int tile_number = (data & 0xfff) + 0x1000 * ((data & m_tilebank_switch) ? m_tile_bank1 : m_tile_bank0); + const uint16_t *source = (m_bg_page[0][tile_index >> 11] << 11) + m_tileram; + int data = source[tile_index & 0x7ff]; + int tile_number = (data & 0xfff) | (((data & m_tilebank_switch) ? m_tile_bank[1] : m_tile_bank[0]) << 12); SET_TILE_INFO_MEMBER(0, tile_number, @@ -241,9 +241,9 @@ TILE_GET_INFO_MEMBER(segas1x_bootleg_state::get_bg_tile_info) TILE_GET_INFO_MEMBER(segas1x_bootleg_state::get_fg_tile_info) { - const uint16_t *source = 64 * 32 * m_fg_page[tile_index / (64 * 32)] + m_tileram; - int data = source[tile_index % (64 * 32)]; - int tile_number = (data & 0xfff) + 0x1000 * ((data & m_tilebank_switch) ? m_tile_bank1 : m_tile_bank0); + const uint16_t *source = (m_fg_page[0][tile_index >> 11] << 11) + m_tileram; + int data = source[tile_index & 0x7ff]; + int tile_number = (data & 0xfff) | (((data & m_tilebank_switch) ? m_tile_bank[1] : m_tile_bank[0]) << 12); SET_TILE_INFO_MEMBER(0, tile_number, @@ -253,9 +253,9 @@ TILE_GET_INFO_MEMBER(segas1x_bootleg_state::get_fg_tile_info) TILE_GET_INFO_MEMBER(segas1x_bootleg_state::get_bg2_tile_info) { - const uint16_t *source = 64 * 32 * m_bg2_page[tile_index / (64 * 32)] + m_tileram; - int data = source[tile_index % (64 * 32)]; - int tile_number = (data & 0xfff) + 0x1000 * ((data & 0x1000) ? m_tile_bank1 : m_tile_bank0); + const uint16_t *source = (m_bg_page[1][tile_index >> 11] << 11) + m_tileram; + int data = source[tile_index & 0x7ff]; + int tile_number = (data & 0xfff) | (m_tile_bank[(data & 0x1000) >> 12] << 12); SET_TILE_INFO_MEMBER(0, tile_number, @@ -265,9 +265,9 @@ TILE_GET_INFO_MEMBER(segas1x_bootleg_state::get_bg2_tile_info) TILE_GET_INFO_MEMBER(segas1x_bootleg_state::get_fg2_tile_info) { - const uint16_t *source = 64 * 32 * m_fg2_page[tile_index / (64 * 32)] + m_tileram; - int data = source[tile_index % (64 * 32)]; - int tile_number = (data & 0xfff) + 0x1000 * ((data & 0x1000) ? m_tile_bank1 : m_tile_bank0); + const uint16_t *source = (m_fg_page[1][tile_index >> 11] << 11) + m_tileram; + int data = source[tile_index & 0x7ff]; + int tile_number = (data & 0xfff) | (m_tile_bank[(data & 0x1000) >> 12] << 12); SET_TILE_INFO_MEMBER(0, tile_number, @@ -283,30 +283,30 @@ WRITE16_MEMBER(segas1x_bootleg_state::sys16_tileram_w) if (oldword != m_tileram[offset]) { - int page = offset / (64 * 32); - offset = offset % (64 * 32); + int page = offset >> 11; + offset = offset & 0x7ff; - if (m_bg_page[0] == page) m_background->mark_tile_dirty(offset + 64 * 32 * 0); - if (m_bg_page[1] == page) m_background->mark_tile_dirty(offset + 64 * 32 * 1); - if (m_bg_page[2] == page) m_background->mark_tile_dirty(offset + 64 * 32 * 2); - if (m_bg_page[3] == page) m_background->mark_tile_dirty(offset + 64 * 32 * 3); + if (m_bg_page[0][0] == page) m_background[0]->mark_tile_dirty(offset); + if (m_bg_page[0][1] == page) m_background[0]->mark_tile_dirty(offset | (1 << 11)); + if (m_bg_page[0][2] == page) m_background[0]->mark_tile_dirty(offset | (2 << 11)); + if (m_bg_page[0][3] == page) m_background[0]->mark_tile_dirty(offset | (3 << 11)); - if (m_fg_page[0] == page) m_foreground->mark_tile_dirty(offset + 64 * 32 * 0); - if (m_fg_page[1] == page) m_foreground->mark_tile_dirty(offset + 64 * 32 * 1); - if (m_fg_page[2] == page) m_foreground->mark_tile_dirty(offset + 64 * 32 * 2); - if (m_fg_page[3] == page) m_foreground->mark_tile_dirty(offset + 64 * 32 * 3); + if (m_fg_page[0][0] == page) m_foreground[0]->mark_tile_dirty(offset); + if (m_fg_page[0][1] == page) m_foreground[0]->mark_tile_dirty(offset | (1 << 11)); + if (m_fg_page[0][2] == page) m_foreground[0]->mark_tile_dirty(offset | (2 << 11)); + if (m_fg_page[0][3] == page) m_foreground[0]->mark_tile_dirty(offset | (3 << 11)); if (m_system18) { - if (m_bg2_page[0] == page) m_background2->mark_tile_dirty(offset + 64 * 32 * 0); - if (m_bg2_page[1] == page) m_background2->mark_tile_dirty(offset + 64 * 32 * 1); - if (m_bg2_page[2] == page) m_background2->mark_tile_dirty(offset + 64 * 32 * 2); - if (m_bg2_page[3] == page) m_background2->mark_tile_dirty(offset + 64 * 32 * 3); + if (m_bg_page[1][0] == page) m_background[1]->mark_tile_dirty(offset); + if (m_bg_page[1][1] == page) m_background[1]->mark_tile_dirty(offset | (1 << 11)); + if (m_bg_page[1][2] == page) m_background[1]->mark_tile_dirty(offset | (2 << 11)); + if (m_bg_page[1][3] == page) m_background[1]->mark_tile_dirty(offset | (3 << 11)); - if (m_fg2_page[0] == page) m_foreground2->mark_tile_dirty(offset + 64 * 32 * 0); - if (m_fg2_page[1] == page) m_foreground2->mark_tile_dirty(offset + 64 * 32 * 1); - if (m_fg2_page[2] == page) m_foreground2->mark_tile_dirty(offset + 64 * 32 * 2); - if (m_fg2_page[3] == page) m_foreground2->mark_tile_dirty(offset + 64 * 32 * 3); + if (m_fg_page[1][0] == page) m_foreground[1]->mark_tile_dirty(offset); + if (m_fg_page[1][1] == page) m_foreground[1]->mark_tile_dirty(offset | (1 << 11)); + if (m_fg_page[1][2] == page) m_foreground[1]->mark_tile_dirty(offset | (2 << 11)); + if (m_fg_page[1][3] == page) m_foreground[1]->mark_tile_dirty(offset | (3 << 11)); } } } @@ -322,14 +322,14 @@ TILE_GET_INFO_MEMBER(segas1x_bootleg_state::get_text_tile_info) if (!m_shinobl_kludge) { SET_TILE_INFO_MEMBER(0, - (tile_number & 0x1ff) + m_tile_bank0 * 0x1000, + (tile_number & 0x1ff) | (m_tile_bank[0] << 12), (tile_number >> 9) % 8, 0); } else { SET_TILE_INFO_MEMBER(0, - (tile_number & 0xff) + m_tile_bank0 * 0x1000, + (tile_number & 0xff) | (m_tile_bank[0] << 12), (tile_number >> 8) % 8, 0); } @@ -365,17 +365,17 @@ VIDEO_START_MEMBER(segas1x_bootleg_state,system16) ); if (!m_bg1_trans) - m_background = &machine().tilemap().create( + m_background[0] = &machine().tilemap().create( *m_gfxdecode, tilemap_get_info_delegate(FUNC(segas1x_bootleg_state::get_bg_tile_info),this), tilemap_mapper_delegate(FUNC(segas1x_bootleg_state::sys16_bg_map),this), 8,8, 64*2,32*2 ); else - m_background = &machine().tilemap().create( + m_background[0] = &machine().tilemap().create( *m_gfxdecode, tilemap_get_info_delegate(FUNC(segas1x_bootleg_state::get_bg_tile_info),this), tilemap_mapper_delegate(FUNC(segas1x_bootleg_state::sys16_bg_map),this), 8,8, 64*2,32*2 ); - m_foreground = &machine().tilemap().create( + m_foreground[0] = &machine().tilemap().create( *m_gfxdecode, tilemap_get_info_delegate(FUNC(segas1x_bootleg_state::get_fg_tile_info),this), tilemap_mapper_delegate(FUNC(segas1x_bootleg_state::sys16_bg_map),this), 8,8, 64*2,32*2 ); @@ -385,12 +385,12 @@ VIDEO_START_MEMBER(segas1x_bootleg_state,system16) 8,8, 40,28 ); - if (m_bg1_trans) m_background->set_transparent_pen(0); - m_foreground->set_transparent_pen(0); + if (m_bg1_trans) m_background[0]->set_transparent_pen(0); + m_foreground[0]->set_transparent_pen(0); m_text_layer->set_transparent_pen(0); - m_tile_bank0 = 0; - m_tile_bank1 = 1; + m_tile_bank[0] = 0; + m_tile_bank[1] = 1; m_fg_scrollx = 0; m_fg_scrolly = 0; @@ -421,28 +421,28 @@ VIDEO_START_MEMBER(segas1x_bootleg_state,system18old) m_bg1_trans = 1; - m_background2 = &machine().tilemap().create( + m_background[1] = &machine().tilemap().create( *m_gfxdecode, tilemap_get_info_delegate(FUNC(segas1x_bootleg_state::get_bg2_tile_info),this), tilemap_mapper_delegate(FUNC(segas1x_bootleg_state::sys16_bg_map),this), 8,8, 64*2,32*2 ); - m_foreground2 = &machine().tilemap().create( + m_foreground[1] = &machine().tilemap().create( *m_gfxdecode, tilemap_get_info_delegate(FUNC(segas1x_bootleg_state::get_fg2_tile_info),this), tilemap_mapper_delegate(FUNC(segas1x_bootleg_state::sys16_bg_map),this), 8,8, 64*2,32*2 ); - m_foreground2->set_transparent_pen(0); + m_foreground[1]->set_transparent_pen(0); if (m_splittab_fg_x) { - m_foreground ->set_scroll_rows(64); - m_foreground2 ->set_scroll_rows(64); + m_foreground[0] ->set_scroll_rows(64); + m_foreground[1] ->set_scroll_rows(64); } if (m_splittab_bg_x) { - m_background ->set_scroll_rows(64); - m_background2 ->set_scroll_rows(64); + m_background[0] ->set_scroll_rows(64); + m_background[1] ->set_scroll_rows(64); } m_textlayer_lo_min = 0; @@ -762,20 +762,20 @@ uint32_t segas1x_bootleg_state::screen_update_system16(screen_device &screen, bi screen.priority().fill(0, cliprect); - m_background->set_scrollx(0, -320 - m_bg_scrollx); - m_background->set_scrolly(0, -256 + m_bg_scrolly + m_back_yscroll); - m_foreground->set_scrollx(0, -320 - m_fg_scrollx); - m_foreground->set_scrolly(0, -256 + m_fg_scrolly + m_fore_yscroll); + m_background[0]->set_scrollx(0, -320 - m_bg_scrollx); + m_background[0]->set_scrolly(0, -256 + m_bg_scrolly + m_back_yscroll); + m_foreground[0]->set_scrollx(0, -320 - m_fg_scrollx); + m_foreground[0]->set_scrolly(0, -256 + m_fg_scrolly + m_fore_yscroll); m_text_layer->set_scrollx(0, 0); m_text_layer->set_scrolly(0, 0 + m_text_yscroll); /* Background */ - m_background->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE, 0x00); + m_background[0]->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE, 0x00); /* Foreground */ - m_foreground->draw(screen, bitmap, cliprect, 0, 0x03); - m_foreground->draw(screen, bitmap, cliprect, 1, 0x07); + m_foreground[0]->draw(screen, bitmap, cliprect, 0, 0x03); + m_foreground[0]->draw(screen, bitmap, cliprect, 1, 0x07); /* Text Layer */ @@ -842,14 +842,14 @@ uint32_t segas1x_bootleg_state::screen_update_system18old(screen_device &screen, bitmap.fill(0, cliprect); - m_background->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE, 0); - m_background->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE | 1, 0); //?? - m_background->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE | 2, 0); //?? - m_background->draw(screen, bitmap, cliprect, 1, 0x1); - m_background->draw(screen, bitmap, cliprect, 2, 0x3); + m_background[0]->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE, 0); + m_background[0]->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE | 1, 0); //?? + m_background[0]->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE | 2, 0); //?? + m_background[0]->draw(screen, bitmap, cliprect, 1, 0x1); + m_background[0]->draw(screen, bitmap, cliprect, 2, 0x3); - m_foreground->draw(screen, bitmap, cliprect, 0, 0x3); - m_foreground->draw(screen, bitmap, cliprect, 1, 0x7); + m_foreground[0]->draw(screen, bitmap, cliprect, 0, 0x3); + m_foreground[0]->draw(screen, bitmap, cliprect, 1, 0x7); m_text_layer->draw(screen, bitmap, cliprect, 1, 0x7); m_text_layer->draw(screen, bitmap, cliprect, 0, 0xf);