summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/audio
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2019-11-10 23:10:39 -0500
committer AJR <ajrhacker@users.noreply.github.com>2019-11-10 23:10:39 -0500
commit3bc0aad093d7eb5bc06fc2aa6396f84069dd1b25 (patch)
treea6d4d826a1a26f5033d5a3c814680d020b6c11e7 /src/mame/audio
parent67f30c15981080b007f02e80a4b631858f75df44 (diff)
Eliminate a few more uses of auto_alloc (nw)
Diffstat (limited to 'src/mame/audio')
-rw-r--r--src/mame/audio/dcs.cpp17
-rw-r--r--src/mame/audio/dcs.h3
2 files changed, 11 insertions, 9 deletions
diff --git a/src/mame/audio/dcs.cpp b/src/mame/audio/dcs.cpp
index cd4b208c29c..52202db87fc 100644
--- a/src/mame/audio/dcs.cpp
+++ b/src/mame/audio/dcs.cpp
@@ -860,7 +860,8 @@ void dcs2_audio_device::device_start()
if (m_dram_in_mb != 0)
{
m_sounddata_words = (m_dram_in_mb << 20) / 2;
- m_sounddata = auto_alloc_array(machine(), uint16_t, m_sounddata_words);
+ m_sounddata_ptr = std::make_unique<uint16_t[]>(m_sounddata_words);
+ m_sounddata = m_sounddata_ptr.get();
save_pointer(NAME(m_sounddata), m_sounddata_words);
}
else
@@ -879,7 +880,7 @@ void dcs2_audio_device::device_start()
/* allocate memory for the SRAM */
- m_sram = auto_alloc_array(machine(), uint16_t, 0x8000*4/2);
+ m_sram = std::make_unique<uint16_t[]>(0x8000*4/2);
/* create the timers */
m_internal_timer = subdevice<timer_device>("dcs_int_timer");
@@ -1022,23 +1023,23 @@ void dcs_audio_device::sdrc_remap_memory()
else
{
/* first start with a clean program map */
- m_program->install_ram(0x0800, 0x3fff, m_sram + 0x4800);
+ m_program->install_ram(0x0800, 0x3fff, &m_sram[0x4800]);
/* set up the data map based on the SRAM banking */
/* map 0: ram from 0800-37ff */
if (SDRC_SM_BK == 0)
{
- m_data->install_ram(0x0800, 0x17ff, m_sram + 0x0000);
- m_data->install_ram(0x1800, 0x27ff, m_sram + 0x1000);
- m_data->install_ram(0x2800, 0x37ff, m_sram + 0x2000);
+ m_data->install_ram(0x0800, 0x17ff, &m_sram[0x0000]);
+ m_data->install_ram(0x1800, 0x27ff, &m_sram[0x1000]);
+ m_data->install_ram(0x2800, 0x37ff, &m_sram[0x2000]);
}
/* map 1: nothing from 0800-17ff, alternate RAM at 1800-27ff, same RAM at 2800-37ff */
else
{
m_data->unmap_readwrite(0x0800, 0x17ff);
- m_data->install_ram(0x1800, 0x27ff, m_sram + 0x3000);
- m_data->install_ram(0x2800, 0x37ff, m_sram + 0x2000);
+ m_data->install_ram(0x1800, 0x27ff, &m_sram[0x3000]);
+ m_data->install_ram(0x2800, 0x37ff, &m_sram[0x2000]);
}
}
diff --git a/src/mame/audio/dcs.h b/src/mame/audio/dcs.h
index 717416ce0fc..c2a58f44580 100644
--- a/src/mame/audio/dcs.h
+++ b/src/mame/audio/dcs.h
@@ -192,6 +192,7 @@ protected:
uint16_t * m_bootrom;
uint32_t m_bootrom_words;
uint16_t * m_sounddata;
+ std::unique_ptr<uint16_t[]> m_sounddata_ptr;
uint32_t m_sounddata_words;
uint32_t m_sounddata_banks;
uint16_t m_sounddata_bank;
@@ -229,7 +230,7 @@ protected:
uint32_t m_timer_period;
uint32_t m_timers_fired;
- uint16_t *m_sram;
+ std::unique_ptr<uint16_t[]>(m_sram);
uint16_t m_polling_value;
uint32_t m_polling32_value;
uint32_t *m_internal_program_ram;