[MT #4268] Don't refresh the stream during post_load, that makes the core die [R. Belmont]

This commit is contained in:
R. Belmont 2012-01-28 05:31:59 +00:00
parent 840fea2863
commit 689c16a4b5
2 changed files with 8 additions and 5 deletions

View File

@ -165,7 +165,7 @@ void okim6295_device::device_reset()
void okim6295_device::device_post_load() void okim6295_device::device_post_load()
{ {
set_bank_base(m_bank_offs); set_bank_base(m_bank_offs, true);
device_clock_changed(); device_clock_changed();
} }
@ -214,10 +214,13 @@ void okim6295_device::sound_stream_update(sound_stream &stream, stream_sample_t
// assumes multiple 256k banks // assumes multiple 256k banks
//------------------------------------------------- //-------------------------------------------------
void okim6295_device::set_bank_base(offs_t base) void okim6295_device::set_bank_base(offs_t base, bool bDontUpdateStream)
{ {
// flush out anything pending // flush out anything pending (but not on e.g. a state load)
m_stream->update(); if (!bDontUpdateStream)
{
m_stream->update();
}
// if we are setting a non-zero base, and we have no bank, allocate one // if we are setting a non-zero base, and we have no bank, allocate one
if (!m_bank_installed && base != 0) if (!m_bank_installed && base != 0)

View File

@ -86,7 +86,7 @@ public:
static void static_set_pin7(device_t &device, int pin7); static void static_set_pin7(device_t &device, int pin7);
// runtime configuration // runtime configuration
void set_bank_base(offs_t base); void set_bank_base(offs_t base, bool bDontUpdateStream = false);
void set_pin7(int pin7); void set_pin7(int pin7);
UINT8 read_status(); UINT8 read_status();