Previous 199869 Revisions Next

r35095 Tuesday 17th February, 2015 at 19:01:28 UTC by Osso
bestleag.c: enabled save state support (nw)
[src/mame/drivers]bestleag.c

trunk/src/mame/drivers/bestleag.c
r243606r243607
3030public:
3131   bestleag_state(const machine_config &mconfig, device_type type, const char *tag)
3232      : driver_device(mconfig, type, tag),
33      m_maincpu(*this, "maincpu"),
34      m_oki(*this, "oki"),
35      m_gfxdecode(*this, "gfxdecode"),
36      m_palette(*this, "palette"),
3337      m_bgram(*this, "bgram"),
3438      m_fgram(*this, "fgram"),
3539      m_txram(*this, "txram"),
3640      m_vregs(*this, "vregs"),
37      m_spriteram(*this, "spriteram"),
38      m_maincpu(*this, "maincpu"),
39      m_oki(*this, "oki"),
40      m_gfxdecode(*this, "gfxdecode"),
41      m_palette(*this, "palette") { }
41      m_spriteram(*this, "spriteram") { }
4242
43   required_device<cpu_device> m_maincpu;
44   required_device<okim6295_device> m_oki;
45   required_device<gfxdecode_device> m_gfxdecode;
46   required_device<palette_device> m_palette;
47
4348   required_shared_ptr<UINT16> m_bgram;
4449   required_shared_ptr<UINT16> m_fgram;
4550   required_shared_ptr<UINT16> m_txram;
4651   required_shared_ptr<UINT16> m_vregs;
4752   required_shared_ptr<UINT16> m_spriteram;
53
4854   tilemap_t *m_tx_tilemap;
4955   tilemap_t *m_bg_tilemap;
5056   tilemap_t *m_fg_tilemap;
51   DECLARE_WRITE16_MEMBER(bestleag_txram_w);
52   DECLARE_WRITE16_MEMBER(bestleag_bgram_w);
53   DECLARE_WRITE16_MEMBER(bestleag_fgram_w);
57
58   DECLARE_WRITE16_MEMBER(txram_w);
59   DECLARE_WRITE16_MEMBER(bgram_w);
60   DECLARE_WRITE16_MEMBER(fgram_w);
5461   DECLARE_WRITE16_MEMBER(oki_bank_w);
62
5563   TILE_GET_INFO_MEMBER(get_tx_tile_info);
5664   TILE_GET_INFO_MEMBER(get_bg_tile_info);
5765   TILE_GET_INFO_MEMBER(get_fg_tile_info);
5866   TILEMAP_MAPPER_MEMBER(bsb_bg_scan);
67
5968   virtual void video_start();
69
6070   UINT32 screen_update_bestleag(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
6171   UINT32 screen_update_bestleaw(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
6272   void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
63   required_device<cpu_device> m_maincpu;
64   required_device<okim6295_device> m_oki;
65   required_device<gfxdecode_device> m_gfxdecode;
66   required_device<palette_device> m_palette;
6773};
6874
6975
r243606r243607
213219   return 0;
214220}
215221
216WRITE16_MEMBER(bestleag_state::bestleag_txram_w)
222WRITE16_MEMBER(bestleag_state::txram_w)
217223{
218224   m_txram[offset] = data;
219225   m_tx_tilemap->mark_tile_dirty(offset);
220226}
221227
222WRITE16_MEMBER(bestleag_state::bestleag_bgram_w)
228WRITE16_MEMBER(bestleag_state::bgram_w)
223229{
224230   m_bgram[offset] = data;
225231   m_bg_tilemap->mark_tile_dirty(offset);
226232}
227233
228WRITE16_MEMBER(bestleag_state::bestleag_fgram_w)
234WRITE16_MEMBER(bestleag_state::fgram_w)
229235{
230236   m_fgram[offset] = data;
231237   m_fg_tilemap->mark_tile_dirty(offset);
r243606r243607
242248static ADDRESS_MAP_START( bestleag_map, AS_PROGRAM, 16, bestleag_state )
243249   AM_RANGE(0x000000, 0x03ffff) AM_ROM
244250   AM_RANGE(0x0d2000, 0x0d3fff) AM_NOP // left over from the original game (only read / written in memory test)
245   AM_RANGE(0x0e0000, 0x0e3fff) AM_RAM_WRITE(bestleag_bgram_w) AM_SHARE("bgram")
246   AM_RANGE(0x0e8000, 0x0ebfff) AM_RAM_WRITE(bestleag_fgram_w) AM_SHARE("fgram")
247   AM_RANGE(0x0f0000, 0x0f3fff) AM_RAM_WRITE(bestleag_txram_w) AM_SHARE("txram")
251   AM_RANGE(0x0e0000, 0x0e3fff) AM_RAM_WRITE(bgram_w) AM_SHARE("bgram")
252   AM_RANGE(0x0e8000, 0x0ebfff) AM_RAM_WRITE(fgram_w) AM_SHARE("fgram")
253   AM_RANGE(0x0f0000, 0x0f3fff) AM_RAM_WRITE(txram_w) AM_SHARE("txram")
248254   AM_RANGE(0x0f8000, 0x0f800b) AM_RAM AM_SHARE("vregs")
249255   AM_RANGE(0x100000, 0x100fff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette")
250256   AM_RANGE(0x200000, 0x200fff) AM_RAM AM_SHARE("spriteram")
r243606r243607
466472
467473/* GAME drivers */
468474
469GAME( 1993, bestleag, bigstrik, bestleag, bestleag, driver_device, 0, ROT0, "bootleg", "Best League (bootleg of Big Striker, Italian Serie A)", GAME_NO_COCKTAIL )
470GAME( 1993, bestleaw, bigstrik, bestleaw, bestleag, driver_device, 0, ROT0, "bootleg", "Best League (bootleg of Big Striker, World Cup)", GAME_NO_COCKTAIL )
475GAME( 1993, bestleag, bigstrik, bestleag, bestleag, driver_device, 0, ROT0, "bootleg", "Best League (bootleg of Big Striker, Italian Serie A)", GAME_NO_COCKTAIL | GAME_SUPPORTS_SAVE )
476GAME( 1993, bestleaw, bigstrik, bestleaw, bestleag, driver_device, 0, ROT0, "bootleg", "Best League (bootleg of Big Striker, World Cup)", GAME_NO_COCKTAIL | GAME_SUPPORTS_SAVE )


Previous 199869 Revisions Next


© 1997-2024 The MAME Team