diff options
-rw-r--r-- | src/devices/sound/multipcm.cpp | 1 | ||||
-rw-r--r-- | src/mame/drivers/segas32.cpp | 20 | ||||
-rw-r--r-- | src/mame/includes/segas32.h | 6 |
3 files changed, 14 insertions, 13 deletions
diff --git a/src/devices/sound/multipcm.cpp b/src/devices/sound/multipcm.cpp index f614f9f4ba8..af83798165b 100644 --- a/src/devices/sound/multipcm.cpp +++ b/src/devices/sound/multipcm.cpp @@ -83,6 +83,7 @@ void multipcm_device::init_sample(sample_t *sample, uint32_t index) sample->m_start = (read_byte(address) << 16) | (read_byte(address + 1) << 8) | read_byte(address + 2); sample->m_format = (sample->m_start>>20) & 0xfe; + logerror("format = %02x\n", sample->m_format); sample->m_start &= 0x3fffff; sample->m_loop = (read_byte(address + 3) << 8) | read_byte(address + 4); sample->m_end = 0xffff - ((read_byte(address + 5) << 8) | read_byte(address + 6)); diff --git a/src/mame/drivers/segas32.cpp b/src/mame/drivers/segas32.cpp index 61cb81fa5ac..d6bba5184d6 100644 --- a/src/mame/drivers/segas32.cpp +++ b/src/mame/drivers/segas32.cpp @@ -566,10 +566,10 @@ segas32_state::segas32_state(const machine_config &mconfig, device_type type, co : device_t(mconfig, type, tag, owner, clock) , m_z80_shared_ram(*this,"z80_shared_ram") , m_system32_workram(*this,"workram") - , m_videoram(*this,"videoram") - , m_spriteram(*this,"spriteram") + , m_videoram(*this,"videoram", 0x20000, ENDIANNESS_LITTLE) + , m_spriteram(*this,"spriteram", 0x20000, ENDIANNESS_LITTLE) , m_soundram(*this, "soundram") - , m_paletteram(*this,"paletteram.%u", 0) + , m_paletteram(*this,"paletteram.%u", 0U, 0x10000U, ENDIANNESS_LITTLE) , m_maincpu(*this, "maincpu") , m_soundcpu(*this, "soundcpu") , m_multipcm(*this, "sega") @@ -1161,10 +1161,10 @@ void segas32_state::system32_map(address_map &map) map.unmap_value_high(); map(0x000000, 0x1fffff).rom(); map(0x200000, 0x20ffff).mirror(0x0f0000).ram().share("workram"); - map(0x300000, 0x31ffff).mirror(0x0e0000).rw(FUNC(segas32_state::videoram_r), FUNC(segas32_state::videoram_w)).share("videoram"); - map(0x400000, 0x41ffff).mirror(0x0e0000).rw(FUNC(segas32_state::spriteram_r), FUNC(segas32_state::spriteram_w)).share("spriteram"); + map(0x300000, 0x31ffff).mirror(0x0e0000).rw(FUNC(segas32_state::videoram_r), FUNC(segas32_state::videoram_w)); + map(0x400000, 0x41ffff).mirror(0x0e0000).rw(FUNC(segas32_state::spriteram_r), FUNC(segas32_state::spriteram_w)); map(0x500000, 0x50000f).mirror(0x0ffff0).rw(FUNC(segas32_state::sprite_control_r), FUNC(segas32_state::sprite_control_w)).umask16(0x00ff); - map(0x600000, 0x60ffff).mirror(0x0e0000).rw(FUNC(segas32_state::paletteram_r<0>), FUNC(segas32_state::paletteram_w<0>)).share("paletteram.0"); + map(0x600000, 0x60ffff).mirror(0x0e0000).rw(FUNC(segas32_state::paletteram_r<0>), FUNC(segas32_state::paletteram_w<0>)); map(0x610000, 0x61007f).mirror(0x0eff80).rw(FUNC(segas32_state::mixer_r<0>), FUNC(segas32_state::mixer_w<0>)); map(0x700000, 0x701fff).mirror(0x0fe000).rw(FUNC(segas32_state::shared_ram_r), FUNC(segas32_state::shared_ram_w)); map(0x800000, 0x800fff).rw("s32comm", FUNC(s32comm_device::share_r), FUNC(s32comm_device::share_w)).umask16(0x00ff); @@ -1184,12 +1184,12 @@ void segas32_state::multi32_map(address_map &map) map.global_mask(0xffffff); map(0x000000, 0x1fffff).rom(); map(0x200000, 0x21ffff).mirror(0x0e0000).ram(); - map(0x300000, 0x31ffff).mirror(0x0e0000).rw(FUNC(segas32_state::videoram_r), FUNC(segas32_state::videoram_w)).share("videoram"); - map(0x400000, 0x41ffff).mirror(0x0e0000).rw(FUNC(segas32_state::spriteram_r), FUNC(segas32_state::spriteram_w)).share("spriteram"); + map(0x300000, 0x31ffff).mirror(0x0e0000).rw(FUNC(segas32_state::videoram_r), FUNC(segas32_state::videoram_w)); + map(0x400000, 0x41ffff).mirror(0x0e0000).rw(FUNC(segas32_state::spriteram_r), FUNC(segas32_state::spriteram_w)); map(0x500000, 0x50000f).mirror(0x0ffff0).rw(FUNC(segas32_state::sprite_control_r), FUNC(segas32_state::sprite_control_w)).umask32(0x00ff00ff); - map(0x600000, 0x60ffff).mirror(0x060000).rw(FUNC(segas32_state::paletteram_r<0>), FUNC(segas32_state::paletteram_w<0>)).share("paletteram.0"); + map(0x600000, 0x60ffff).mirror(0x060000).rw(FUNC(segas32_state::paletteram_r<0>), FUNC(segas32_state::paletteram_w<0>)); map(0x610000, 0x61007f).mirror(0x06ff80).rw(FUNC(segas32_state::mixer_r<0>), FUNC(segas32_state::mixer_w<0>)); - map(0x680000, 0x68ffff).mirror(0x060000).rw(FUNC(segas32_state::paletteram_r<1>), FUNC(segas32_state::paletteram_w<1>)).share("paletteram.1"); + map(0x680000, 0x68ffff).mirror(0x060000).rw(FUNC(segas32_state::paletteram_r<1>), FUNC(segas32_state::paletteram_w<1>)); map(0x690000, 0x69007f).mirror(0x06ff80).rw(FUNC(segas32_state::mixer_r<1>), FUNC(segas32_state::mixer_w<1>)); map(0x700000, 0x701fff).mirror(0x0fe000).rw(FUNC(segas32_state::shared_ram_r), FUNC(segas32_state::shared_ram_w)); map(0x800000, 0x800fff).rw("s32comm", FUNC(s32comm_device::share_r), FUNC(s32comm_device::share_w)).umask32(0x00ff00ff); diff --git a/src/mame/includes/segas32.h b/src/mame/includes/segas32.h index f4b9ee8ba17..3907880cf0d 100644 --- a/src/mame/includes/segas32.h +++ b/src/mame/includes/segas32.h @@ -209,10 +209,10 @@ protected: required_shared_ptr<uint8_t> m_z80_shared_ram; optional_shared_ptr<uint16_t> m_system32_workram; - required_shared_ptr<uint16_t> m_videoram; - required_shared_ptr<uint16_t> m_spriteram; + memory_share_creator<uint16_t> m_videoram; + memory_share_creator<uint16_t> m_spriteram; optional_shared_ptr<uint8_t> m_soundram; - optional_shared_ptr_array<uint16_t, 2> m_paletteram; + memory_share_array_creator<uint16_t, 2> m_paletteram; required_device<cpu_device> m_maincpu; required_device<cpu_device> m_soundcpu; |