summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/devices/sound/multipcm.cpp1
-rw-r--r--src/mame/drivers/segas32.cpp20
-rw-r--r--src/mame/includes/segas32.h6
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;