Previous 199869 Revisions Next

r34691 Wednesday 28th January, 2015 at 00:39:32 UTC by Angelo Salese
BREAKs now, added drawgfx VRAM dumper.
[src/mess/drivers]c65.c

trunk/src/mess/drivers/c65.c
r243202r243203
3030         m_maincpu(*this, "maincpu"),
3131         m_screen(*this, "screen"),
3232         m_palette(*this, "palette"),
33         m_workram(*this, "wram"),
3334         m_palred(*this, "redpal"),
3435         m_palgreen(*this, "greenpal"),
3536         m_palblue(*this, "bluepal"),
3637         m_dmalist(*this, "dmalist"),
37         m_cram(*this, "cram")
38         m_cram(*this, "cram"),
39         m_gfxdecode(*this, "gfxdecode")
3840   { }
3941
4042   // devices
4143   required_device<m4510_device> m_maincpu;
4244   required_device<screen_device> m_screen;
4345   required_device<palette_device> m_palette;
46   required_shared_ptr<UINT8> m_workram;
4447   required_shared_ptr<UINT8> m_palred;
4548   required_shared_ptr<UINT8> m_palgreen;
4649   required_shared_ptr<UINT8> m_palblue;
4750   required_shared_ptr<UINT8> m_dmalist;
4851   required_shared_ptr<UINT8> m_cram;
49   
52   required_device<gfxdecode_device> m_gfxdecode;
53
5054   DECLARE_READ8_MEMBER(vic4567_dummy_r);
5155   DECLARE_WRITE8_MEMBER(vic4567_dummy_w);
5256   DECLARE_WRITE8_MEMBER(PalRed_w);
r243202r243203
8488
8589UINT32 c65_state::screen_update( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect )
8690{
91   int y,x;
92   gfx_element *gfx = m_gfxdecode->gfx(0);
93
94   for(y=0;y<30;y++)
95   {
96      for(x=0;x<40;x++)
97      {
98         UINT8 tile = m_workram[x+y*40+0x800];
99         gfx->opaque(bitmap,cliprect,tile,0,0,0,x*8,y*8);
100      }
101   }
102
87103   return 0;
88104}
89105
r243202r243203
264280
265281READ8_MEMBER(c65_state::dummy_r)
266282{
267   return 0xff;
283   return 0;
268284}
269285
270286static ADDRESS_MAP_START( c65_map, AS_PROGRAM, 8, c65_state )
271   AM_RANGE(0x00000, 0x07fff) AM_RAM // TODO: bank
287   AM_RANGE(0x00000, 0x07fff) AM_RAM AM_SHARE("wram") // TODO: bank
272288   AM_RANGE(0x0c800, 0x0cfff) AM_ROM AM_REGION("maincpu", 0xc800)
273289   AM_RANGE(0x0d000, 0x0d07f) AM_READWRITE(vic4567_dummy_r,vic4567_dummy_w) // 0x0d000, 0x0d07f VIC-4567
274290   AM_RANGE(0x0d080, 0x0d081) AM_READ(dummy_r) // 0x0d080, 0x0d09f FDC
r243202r243203
289305   // 0x0df00, 0x0df** Ext I/O Select 2 (RAM window?)
290306   AM_RANGE(0x0e000, 0x0ffff) AM_ROM AM_REGION("maincpu",0x0e000)
291307   AM_RANGE(0x10000, 0x1f7ff) AM_RAM
292   AM_RANGE(0x1f800, 0x1ffff) AM_RAM // VRAM
308   AM_RANGE(0x1f800, 0x1ffff) AM_RAM // VRAM attributes
293309   AM_RANGE(0x20000, 0x3ffff) AM_ROM AM_REGION("maincpu",0)
294310ADDRESS_MAP_END
295311


Previous 199869 Revisions Next


© 1997-2024 The MAME Team