more crash fixes (nw)

This commit is contained in:
Miodrag Milanovic 2014-03-02 18:04:19 +00:00
parent e3035b01a4
commit c074e83a33
9 changed files with 32 additions and 21 deletions

View File

@ -112,6 +112,7 @@ public:
required_shared_ptr<UINT8> m_nvram;
required_device<eeprom_serial_93cxx_device> m_eeprom;
required_device<gfxdecode_device> m_gfxdecode;
dynamic_array<UINT8> m_paletteram;
UINT8 m_reg;
UINT8 m_rombank;
@ -1214,7 +1215,7 @@ WRITE8_MEMBER(sigmab98_state::itazuram_palette_w)
READ8_MEMBER(sigmab98_state::itazuram_palette_r)
{
return m_generic_paletteram_8[offset];
return m_paletteram[offset];
}
static ADDRESS_MAP_START( itazuram_map, AS_PROGRAM, 8, sigmab98_state )
@ -1396,7 +1397,7 @@ READ8_MEMBER(sigmab98_state::tdoboon_c000_r)
case 0x66: // PALETTERAM + TABLE?
if (offset < 0x200)
return m_generic_paletteram_8[offset];
return m_paletteram[offset];
break;
case 0x67: // REGS
@ -2142,9 +2143,10 @@ DRIVER_INIT_MEMBER(sigmab98_state,itazuram)
m_rombank = 0x0f;
// RAM banks
m_generic_paletteram_8.allocate(0x3000);
memset(m_generic_paletteram_8, 0, 0x3000);
membank("palbank")->set_base(m_generic_paletteram_8);
m_paletteram.resize(0x3000);
m_palette->basemem().set(m_paletteram, ENDIANNESS_BIG, 2);
memset(m_paletteram, 0, 0x3000);
membank("palbank")->set_base(m_paletteram);
m_rambank = 0x64;
m_spriteram.allocate(0x1000 * 5);

View File

@ -35,7 +35,7 @@ READ8_MEMBER(spy_state::spy_bankedram1_r)
{
if (m_rambank & 1)
{
return m_generic_paletteram_8[offset];
return m_paletteram[offset];
}
else if (m_rambank & 2)
{
@ -496,9 +496,12 @@ void spy_state::machine_start()
membank("bank1")->configure_entries(0, 12, &ROM[0x10000], 0x2000);
m_generic_paletteram_8.allocate(0x800);
m_paletteram.resize(0x800);
m_palette->basemem().set(m_paletteram, ENDIANNESS_BIG, 2);
memset(m_pmcram, 0, sizeof(m_pmcram));
save_item(NAME(m_paletteram));
save_item(NAME(m_rambank));
save_item(NAME(m_pmcbank));
save_item(NAME(m_video_enable));

View File

@ -29,9 +29,9 @@ READ8_MEMBER(surpratk_state::bankedram_r)
if (m_videobank & 0x02)
{
if (m_videobank & 0x04)
return m_generic_paletteram_8[offset + 0x0800];
return m_paletteram[offset + 0x0800];
else
return m_generic_paletteram_8[offset];
return m_paletteram[offset];
}
else if (m_videobank & 0x01)
return m_k053244->k053245_r(space, offset);
@ -178,8 +178,10 @@ void surpratk_state::machine_start()
membank("bank1")->configure_entries(28, 4, &ROM[0x08000], 0x2000);
membank("bank1")->set_entry(0);
m_generic_paletteram_8.allocate(0x1000);
m_paletteram.resize(0x1000);
m_palette->basemem().set(m_paletteram, ENDIANNESS_BIG, 2);
save_item(NAME(m_paletteram));
save_item(NAME(m_videobank));
save_item(NAME(m_sprite_colorbase));
save_item(NAME(m_layer_colorbase));

View File

@ -45,7 +45,7 @@ void thunderx_state::device_timer(emu_timer &timer, device_timer_id id, int para
READ8_MEMBER(thunderx_state::scontra_bankedram_r)
{
if (m_palette_selected)
return m_generic_paletteram_8[offset];
return m_paletteram[offset];
else
return m_ram[offset];
}
@ -76,7 +76,7 @@ READ8_MEMBER(thunderx_state::thunderx_bankedram_r)
}
}
else
return m_generic_paletteram_8[offset];
return m_paletteram[offset];
}
WRITE8_MEMBER(thunderx_state::thunderx_bankedram_w)
@ -602,8 +602,10 @@ static const k051960_interface thunderx_k051960_intf =
MACHINE_START_MEMBER(thunderx_state,scontra)
{
m_generic_paletteram_8.allocate(0x800);
m_paletteram.resize(0x800);
m_palette->basemem().set(m_paletteram, ENDIANNESS_BIG, 2);
save_item(NAME(m_paletteram));
save_item(NAME(m_priority));
save_item(NAME(m_1f98_data));
save_item(NAME(m_palette_selected));

View File

@ -156,7 +156,7 @@ void vendetta_state::vendetta_video_banking( int select )
space.install_read_bank(m_video_banking_base + 0x2000, m_video_banking_base + 0x2fff, "bank4" );
space.install_write_handler(m_video_banking_base + 0x2000, m_video_banking_base + 0x2fff, write8_delegate(FUNC(palette_device::write), m_palette.target()) );
space.install_readwrite_handler(m_video_banking_base + 0x0000, m_video_banking_base + 0x0fff, read8_delegate(FUNC(k053247_device::k053247_r), (k053247_device*)m_k053246), write8_delegate(FUNC(k053247_device::k053247_w), (k053247_device*)m_k053246) );
membank("bank4")->set_base(m_generic_paletteram_8);
membank("bank4")->set_base(m_paletteram);
}
else
{
@ -449,8 +449,10 @@ void vendetta_state::machine_start()
membank("bank1")->configure_entries(0, 28, &ROM[0x10000], 0x2000);
membank("bank1")->set_entry(0);
m_generic_paletteram_8.allocate(0x1000);
m_paletteram.resize(0x1000);
m_palette->basemem().set(m_paletteram, ENDIANNESS_BIG, 2);
save_item(NAME(m_paletteram));
save_item(NAME(m_irq_enabled));
save_item(NAME(m_sprite_colorbase));
save_item(NAME(m_layer_colorbase));

View File

@ -24,7 +24,7 @@ public:
/* memory pointers */
required_shared_ptr<UINT8> m_ram;
UINT8 m_pmcram[0x800];
// UINT8 * m_paletteram; // currently this uses generic palette handling
dynamic_array<UINT8> m_paletteram;
/* video-related */
int m_layer_colorbase[3];

View File

@ -22,7 +22,7 @@ public:
/* memory pointers */
required_shared_ptr<UINT8> m_ram;
// UINT8 * m_paletteram; // currently this uses generic palette handling
dynamic_array<UINT8> m_paletteram;
/* video-related */
int m_layer_colorbase[3];

View File

@ -28,7 +28,7 @@ public:
/* memory pointers */
required_shared_ptr<UINT8> m_ram;
UINT8 m_pmcram[0x800];
// UINT8 * m_paletteram; // currently this uses generic palette handling
dynamic_array<UINT8> m_paletteram;
/* video-related */
int m_layer_colorbase[3];

View File

@ -32,7 +32,7 @@ public:
/* memory pointers */
UINT8 * m_ram;
// UINT8 * m_paletteram; // currently this uses generic palette handling
dynamic_array<UINT8> m_paletteram;
/* video-related */
int m_layer_colorbase[3];