summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/mame/video/k054156_k054157_k056832.c5
-rw-r--r--src/mame/video/k054156_k054157_k056832.h4
2 files changed, 5 insertions, 4 deletions
diff --git a/src/mame/video/k054156_k054157_k056832.c b/src/mame/video/k054156_k054157_k056832.c
index 1fc1f05ce21..573c906bc07 100644
--- a/src/mame/video/k054156_k054157_k056832.c
+++ b/src/mame/video/k054156_k054157_k056832.c
@@ -186,7 +186,6 @@ k056832_device::k056832_device(const machine_config &mconfig, const char *tag, d
//m_regs[0x20],
//m_regsb[4],
m_rombase(NULL),
- m_videoram(NULL),
m_num_gfx_banks(0),
m_cur_gfx_banks(0),
m_gfx_memory_region(NULL),
@@ -280,7 +279,7 @@ void k056832_device::create_tilemaps()
- m_videoram = auto_alloc_array_clear(machine(), UINT16, 0x2000 * (K056832_PAGE_COUNT + 1) / 2);
+ m_videoram.resize_and_clear(0x2000 * (K056832_PAGE_COUNT + 1) / 2);
m_tilemap[0x0] = &machine().tilemap().create(m_gfxdecode, tilemap_get_info_delegate(FUNC(k056832_device::get_tile_info0),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 32);
m_tilemap[0x1] = &machine().tilemap().create(m_gfxdecode, tilemap_get_info_delegate(FUNC(k056832_device::get_tile_info1),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 32);
@@ -319,7 +318,7 @@ void k056832_device::finalize_init()
change_rambank();
change_rombank();
- save_pointer(NAME(m_videoram), 0x10000);
+ save_item(NAME(m_videoram));
save_item(NAME(m_regs));
save_item(NAME(m_regsb));
save_item(NAME(m_x));
diff --git a/src/mame/video/k054156_k054157_k056832.h b/src/mame/video/k054156_k054157_k056832.h
index 4b13d435bce..77c98f0babc 100644
--- a/src/mame/video/k054156_k054157_k056832.h
+++ b/src/mame/video/k054156_k054157_k056832.h
@@ -125,11 +125,13 @@ private:
tilemap_t *m_tilemap[K056832_PAGE_COUNT];
bitmap_ind16 *m_pixmap[K056832_PAGE_COUNT];
+ dynamic_array<UINT16> m_videoram;
+
UINT16 m_regs[0x20]; // 157/832 regs group 1
UINT16 m_regsb[4]; // 157/832 regs group 2, board dependent
UINT8 * m_rombase; // pointer to tile gfx data
- UINT16 * m_videoram;
+
int m_num_gfx_banks; // depends on size of graphics ROMs
int m_cur_gfx_banks; // cached info for K056832_regs[0x1a]