summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2014-03-02 18:04:19 +0000
committer Miodrag Milanovic <mmicko@gmail.com>2014-03-02 18:04:19 +0000
commitc074e83a3350727d60c9b0ad53fc09274b5670e5 (patch)
tree7f835a475291f7940e7c198e465f7d720f860c6f /src
parente3035b01a468bfcd99f466a13fb544a3be46f0af (diff)
more crash fixes (nw)
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/sigmab98.c12
-rw-r--r--src/mame/drivers/spy.c7
-rw-r--r--src/mame/drivers/surpratk.c8
-rw-r--r--src/mame/drivers/thunderx.c10
-rw-r--r--src/mame/drivers/vendetta.c8
-rw-r--r--src/mame/includes/spy.h2
-rw-r--r--src/mame/includes/surpratk.h2
-rw-r--r--src/mame/includes/thunderx.h2
-rw-r--r--src/mame/includes/vendetta.h2
9 files changed, 32 insertions, 21 deletions
diff --git a/src/mame/drivers/sigmab98.c b/src/mame/drivers/sigmab98.c
index 5a2d0f01cea..777ec19cdc3 100644
--- a/src/mame/drivers/sigmab98.c
+++ b/src/mame/drivers/sigmab98.c
@@ -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);
diff --git a/src/mame/drivers/spy.c b/src/mame/drivers/spy.c
index 4151decd943..f4782bfbc62 100644
--- a/src/mame/drivers/spy.c
+++ b/src/mame/drivers/spy.c
@@ -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));
diff --git a/src/mame/drivers/surpratk.c b/src/mame/drivers/surpratk.c
index 9306a302061..d3800b10e86 100644
--- a/src/mame/drivers/surpratk.c
+++ b/src/mame/drivers/surpratk.c
@@ -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));
diff --git a/src/mame/drivers/thunderx.c b/src/mame/drivers/thunderx.c
index b4f2a980754..9d09f8b5a43 100644
--- a/src/mame/drivers/thunderx.c
+++ b/src/mame/drivers/thunderx.c
@@ -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));
diff --git a/src/mame/drivers/vendetta.c b/src/mame/drivers/vendetta.c
index bd68fc18da0..5ccc21327dc 100644
--- a/src/mame/drivers/vendetta.c
+++ b/src/mame/drivers/vendetta.c
@@ -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));
diff --git a/src/mame/includes/spy.h b/src/mame/includes/spy.h
index ac4d8706462..33db43a205d 100644
--- a/src/mame/includes/spy.h
+++ b/src/mame/includes/spy.h
@@ -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];
diff --git a/src/mame/includes/surpratk.h b/src/mame/includes/surpratk.h
index da5d53345a1..92c9a5fe044 100644
--- a/src/mame/includes/surpratk.h
+++ b/src/mame/includes/surpratk.h
@@ -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];
diff --git a/src/mame/includes/thunderx.h b/src/mame/includes/thunderx.h
index e607dcfa39a..adc67bb4beb 100644
--- a/src/mame/includes/thunderx.h
+++ b/src/mame/includes/thunderx.h
@@ -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];
diff --git a/src/mame/includes/vendetta.h b/src/mame/includes/vendetta.h
index e8ba3158b99..bce7ba8275d 100644
--- a/src/mame/includes/vendetta.h
+++ b/src/mame/includes/vendetta.h
@@ -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];