Previous 199869 Revisions Next

r31189 Friday 4th July, 2014 at 18:18:53 UTC by R. Belmont
feversoc: add memory bypasses, good for another 600% speed ;-) (nw)
[src/mame/drivers]feversoc.c

trunk/src/mame/drivers/feversoc.c
r31188r31189
7171public:
7272   feversoc_state(const machine_config &mconfig, device_type type, const char *tag)
7373      : driver_device(mconfig, type, tag),
74      m_mainram(*this, "workram"),
7475      m_spriteram(*this, "spriteram"),
7576      m_maincpu(*this, "maincpu"),
7677      m_oki(*this, "oki"),
r31188r31189
7879      m_palette(*this, "palette") { }
7980
8081   UINT16 m_x;
82   required_shared_ptr<UINT32> m_mainram;
8183   required_shared_ptr<UINT32> m_spriteram;
8284   DECLARE_READ32_MEMBER(in0_r);
8385   DECLARE_WRITE32_MEMBER(output_w);
r31188r31189
8587   virtual void video_start();
8688   UINT32 screen_update_feversoc(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
8789   INTERRUPT_GEN_MEMBER(feversoc_irq);
88   required_device<cpu_device> m_maincpu;
90   required_device<sh2_device> m_maincpu;
8991   required_device<okim6295_device> m_oki;
9092   required_device<gfxdecode_device> m_gfxdecode;
9193   required_device<palette_device> m_palette;
r31188r31189
160162
161163static ADDRESS_MAP_START( feversoc_map, AS_PROGRAM, 32, feversoc_state )
162164   AM_RANGE(0x00000000, 0x0003ffff) AM_ROM
163   AM_RANGE(0x02000000, 0x0203dfff) AM_RAM //work ram
165   AM_RANGE(0x02000000, 0x0203dfff) AM_RAM AM_SHARE("workram") //work ram
164166   AM_RANGE(0x0203e000, 0x0203ffff) AM_RAM AM_SHARE("spriteram")
165167   AM_RANGE(0x06000000, 0x06000003) AM_WRITE(output_w)
166168   AM_RANGE(0x06000004, 0x06000007) AM_WRITENOP //???
r31188r31189
293295
294296DRIVER_INIT_MEMBER(feversoc_state,feversoc)
295297{
298   UINT32 *rom = (UINT32 *)memregion("maincpu")->base();
299
296300   seibuspi_rise11_sprite_decrypt_feversoc(memregion("gfx1")->base(), 0x200000);
301
302   m_maincpu->sh2drc_set_options(SH2DRC_FASTEST_OPTIONS);
303   m_maincpu->sh2drc_add_fastram(0x00000000, 0x0003ffff, 1, rom);
304   m_maincpu->sh2drc_add_fastram(0x02000000, 0x0203dfff, 0, &m_mainram[0]);
305   m_maincpu->sh2drc_add_fastram(0x0203e000, 0x0203ffff, 0, &m_spriteram[0]);
297306}
298307
299308GAME( 2004, feversoc,  0,       feversoc,  feversoc, feversoc_state,  feversoc, ROT0, "Seibu Kaihatsu", "Fever Soccer", 0 )

Previous 199869 Revisions Next


© 1997-2024 The MAME Team