summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Ivan Vangelista <mesgnet@yahoo.it>2015-01-28 16:10:36 +0100
committer Ivan Vangelista <mesgnet@yahoo.it>2015-01-28 16:10:36 +0100
commit8317717dd546c6133d5685d39863477d8bc200da (patch)
treecb1f801b3f837c8174816b4ad1b0a19aa8827ad8
parentfc3a4001e68402922f9329895227c468f88feb2b (diff)
silkroad,c: enabled save state support (nw)
-rw-r--r--src/mame/drivers/silkroad.c4
-rw-r--r--src/mame/includes/silkroad.h28
2 files changed, 19 insertions, 13 deletions
diff --git a/src/mame/drivers/silkroad.c b/src/mame/drivers/silkroad.c
index aeaa99910de..24bb219ef3b 100644
--- a/src/mame/drivers/silkroad.c
+++ b/src/mame/drivers/silkroad.c
@@ -388,5 +388,5 @@ ROM_START( silkroada )
ROM_END
-GAME( 1999, silkroad, 0, silkroad, silkroad, driver_device, 0, ROT0, "Unico", "The Legend of Silkroad", 0 )
-GAME( 1999, silkroada, silkroad, silkroad, silkroad, driver_device, 0, ROT0, "Unico", "The Legend of Silkroad (larger ROMs)", 0 ) // same content but fewer GFX roms of a larger size
+GAME( 1999, silkroad, 0, silkroad, silkroad, driver_device, 0, ROT0, "Unico", "The Legend of Silkroad", GAME_SUPPORTS_SAVE )
+GAME( 1999, silkroada, silkroad, silkroad, silkroad, driver_device, 0, ROT0, "Unico", "The Legend of Silkroad (larger ROMs)", GAME_SUPPORTS_SAVE ) // same content but fewer GFX roms of a larger size
diff --git a/src/mame/includes/silkroad.h b/src/mame/includes/silkroad.h
index 368cb8786a8..bdd169b896d 100644
--- a/src/mame/includes/silkroad.h
+++ b/src/mame/includes/silkroad.h
@@ -5,40 +5,46 @@ class silkroad_state : public driver_device
public:
silkroad_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
- m_vidram(*this, "vidram"),
- m_vidram2(*this, "vidram2"),
- m_vidram3(*this, "vidram3"),
- m_sprram(*this, "sprram"),
- m_regs(*this, "regs"),
m_maincpu(*this, "maincpu"),
m_oki1(*this, "oki1"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
- m_generic_paletteram_32(*this, "paletteram") { }
+ m_generic_paletteram_32(*this, "paletteram"),
+ m_vidram(*this, "vidram"),
+ m_vidram2(*this, "vidram2"),
+ m_vidram3(*this, "vidram3"),
+ m_sprram(*this, "sprram"),
+ m_regs(*this, "regs") { }
+ required_device<cpu_device> m_maincpu;
+ required_device<okim6295_device> m_oki1;
+ required_device<gfxdecode_device> m_gfxdecode;
+ required_device<palette_device> m_palette;
+
+ required_shared_ptr<UINT32> m_generic_paletteram_32;
required_shared_ptr<UINT32> m_vidram;
required_shared_ptr<UINT32> m_vidram2;
required_shared_ptr<UINT32> m_vidram3;
required_shared_ptr<UINT32> m_sprram;
required_shared_ptr<UINT32> m_regs;
+
tilemap_t *m_fg_tilemap;
tilemap_t *m_fg2_tilemap;
tilemap_t *m_fg3_tilemap;
+
DECLARE_WRITE32_MEMBER(paletteram32_xRRRRRGGGGGBBBBB_dword_w);
DECLARE_WRITE32_MEMBER(silk_coin_counter_w);
DECLARE_WRITE32_MEMBER(silkroad_fgram_w);
DECLARE_WRITE32_MEMBER(silkroad_fgram2_w);
DECLARE_WRITE32_MEMBER(silkroad_fgram3_w);
DECLARE_WRITE32_MEMBER(silk_6295_bank_w);
+
TILE_GET_INFO_MEMBER(get_fg_tile_info);
TILE_GET_INFO_MEMBER(get_fg2_tile_info);
TILE_GET_INFO_MEMBER(get_fg3_tile_info);
+
virtual void video_start();
+
UINT32 screen_update_silkroad(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- required_device<cpu_device> m_maincpu;
- required_device<okim6295_device> m_oki1;
- required_device<gfxdecode_device> m_gfxdecode;
- required_device<palette_device> m_palette;
- required_shared_ptr<UINT32> m_generic_paletteram_32;
};