Previous 199869 Revisions Next

r26758 Thursday 26th December, 2013 at 01:14:41 UTC by Robbbert
(MESS) fp6000 : fixed random crash after 11th star (nw)
[src/mess/drivers]fp6000.c

trunk/src/mess/drivers/fp6000.c
r26757r26758
3030      : driver_device(mconfig, type, tag),
3131      m_gvram(*this, "gvram"),
3232      m_vram(*this, "vram"),
33      m_maincpu(*this, "maincpu") { }
33      m_maincpu(*this, "maincpu")
34      , m_crtc(*this, "crtc")
35   { }
3436
3537   UINT8 *m_char_rom;
3638   required_shared_ptr<UINT16> m_gvram;
3739   required_shared_ptr<UINT16> m_vram;
3840   UINT8 m_crtc_vreg[0x100],m_crtc_index;
3941
40   mc6845_device *m_mc6845;
41
4242   struct {
4343      UINT16 cmd;
4444   }m_key;
r26757r26758
5656   virtual void video_start();
5757   UINT32 screen_update_fp6000(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
5858   required_device<cpu_device> m_maincpu;
59   required_device<mc6845_device>m_crtc;
5960};
6061
6162void fp6000_state::video_start()
r26757r26758
158159WRITE8_MEMBER(fp6000_state::fp6000_6845_address_w)
159160{
160161   m_crtc_index = data;
161   m_mc6845->address_w(space, offset, data);
162   m_crtc->address_w(space, offset, data);
162163}
163164
164165WRITE8_MEMBER(fp6000_state::fp6000_6845_data_w)
165166{
166167   m_crtc_vreg[m_crtc_index] = data;
167   m_mc6845->register_w(space, offset, data);
168   m_crtc->register_w(space, offset, data);
168169}
169170
170171static ADDRESS_MAP_START(fp6000_map, AS_PROGRAM, 16, fp6000_state )
r26757r26758
277278void fp6000_state::machine_start()
278279{
279280   m_char_rom = memregion("pcg")->base();
280   m_mc6845 = machine().device<mc6845_device>("crtc");
281281}
282282
283283void fp6000_state::machine_reset()

Previous 199869 Revisions Next


© 1997-2024 The MAME Team