Aussiebyte: fixed RTC (nw)
This commit is contained in:
parent
fe8a008997
commit
fcbbc0a0ac
@ -17,7 +17,6 @@
|
|||||||
- Hard drive controllers and drives
|
- Hard drive controllers and drives
|
||||||
- Test Centronics printer
|
- Test Centronics printer
|
||||||
- PIO connections
|
- PIO connections
|
||||||
- RTC not working
|
|
||||||
|
|
||||||
Note of MAME restrictions:
|
Note of MAME restrictions:
|
||||||
- Votrax doesn't sound anything like the real thing
|
- Votrax doesn't sound anything like the real thing
|
||||||
@ -76,7 +75,7 @@ static ADDRESS_MAP_START( aussiebyte_io, AS_IO, 8, aussiebyte_state )
|
|||||||
AM_RANGE(0x35, 0x35) AM_WRITE(port35_w) // data to vram and aram
|
AM_RANGE(0x35, 0x35) AM_WRITE(port35_w) // data to vram and aram
|
||||||
AM_RANGE(0x36, 0x36) AM_READ(port36_r) // data from vram and aram
|
AM_RANGE(0x36, 0x36) AM_READ(port36_r) // data from vram and aram
|
||||||
AM_RANGE(0x37, 0x37) AM_READ(port37_r) // read dispen flag
|
AM_RANGE(0x37, 0x37) AM_READ(port37_r) // read dispen flag
|
||||||
AM_RANGE(0x40, 0x4f) AM_DEVREADWRITE("rtc", msm5832_device, data_r, data_w)
|
AM_RANGE(0x40, 0x4f) AM_READWRITE(rtc_r, rtc_w)
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
/***********************************************************
|
/***********************************************************
|
||||||
@ -222,6 +221,32 @@ READ8_MEMBER( aussiebyte_state::port28_r )
|
|||||||
return m_port28;
|
return m_port28;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/***********************************************************
|
||||||
|
|
||||||
|
RTC
|
||||||
|
|
||||||
|
************************************************************/
|
||||||
|
READ8_MEMBER( aussiebyte_state::rtc_r )
|
||||||
|
{
|
||||||
|
m_rtc->cs_w(1);
|
||||||
|
m_rtc->read_w(1);
|
||||||
|
m_rtc->address_w(offset);
|
||||||
|
uint8_t data = m_rtc->data_r(space,0);
|
||||||
|
m_rtc->read_w(0);
|
||||||
|
m_rtc->cs_w(0);
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
WRITE8_MEMBER( aussiebyte_state::rtc_w )
|
||||||
|
{
|
||||||
|
m_rtc->cs_w(1);
|
||||||
|
m_rtc->address_w(offset);
|
||||||
|
m_rtc->data_w(space,0,data);
|
||||||
|
m_rtc->write_w(1);
|
||||||
|
m_rtc->write_w(0);
|
||||||
|
m_rtc->cs_w(0);
|
||||||
|
}
|
||||||
|
|
||||||
/***********************************************************
|
/***********************************************************
|
||||||
|
|
||||||
DMA
|
DMA
|
||||||
|
@ -49,6 +49,7 @@ public:
|
|||||||
, m_crtc(*this, "crtc")
|
, m_crtc(*this, "crtc")
|
||||||
, m_speaker(*this, "speaker")
|
, m_speaker(*this, "speaker")
|
||||||
, m_votrax(*this, "votrax")
|
, m_votrax(*this, "votrax")
|
||||||
|
, m_rtc(*this, "rtc")
|
||||||
{}
|
{}
|
||||||
|
|
||||||
DECLARE_READ8_MEMBER(memory_read_byte);
|
DECLARE_READ8_MEMBER(memory_read_byte);
|
||||||
@ -71,6 +72,8 @@ public:
|
|||||||
DECLARE_WRITE8_MEMBER(port35_w);
|
DECLARE_WRITE8_MEMBER(port35_w);
|
||||||
DECLARE_READ8_MEMBER(port36_r);
|
DECLARE_READ8_MEMBER(port36_r);
|
||||||
DECLARE_READ8_MEMBER(port37_r);
|
DECLARE_READ8_MEMBER(port37_r);
|
||||||
|
DECLARE_READ8_MEMBER(rtc_r);
|
||||||
|
DECLARE_WRITE8_MEMBER(rtc_w);
|
||||||
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
|
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
|
||||||
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
|
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
|
||||||
DECLARE_WRITE_LINE_MEMBER(busreq_w);
|
DECLARE_WRITE_LINE_MEMBER(busreq_w);
|
||||||
@ -124,4 +127,5 @@ private:
|
|||||||
required_device<mc6845_device> m_crtc;
|
required_device<mc6845_device> m_crtc;
|
||||||
required_device<speaker_sound_device> m_speaker;
|
required_device<speaker_sound_device> m_speaker;
|
||||||
required_device<votrax_sc01_device> m_votrax;
|
required_device<votrax_sc01_device> m_votrax;
|
||||||
|
required_device<msm5832_device> m_rtc;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user