mirror of
https://github.com/holub/mame
synced 2025-06-05 04:16:28 +03:00
bus/bbc/1mhzbus, bus/bbc/tube, bus/electron, tube: Eliminate address_space arguments from handlers (nw)
This commit is contained in:
parent
4b14d5876a
commit
af639956ca
@ -92,18 +92,18 @@ void bbc_1mhzbus_slot_device::device_reset()
|
||||
// read
|
||||
//-------------------------------------------------
|
||||
|
||||
READ8_MEMBER(bbc_1mhzbus_slot_device::fred_r)
|
||||
uint8_t bbc_1mhzbus_slot_device::fred_r(offs_t offset)
|
||||
{
|
||||
if (m_card)
|
||||
return m_card->fred_r(space, offset);
|
||||
return m_card->fred_r(offset);
|
||||
else
|
||||
return 0xff;
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_1mhzbus_slot_device::jim_r)
|
||||
uint8_t bbc_1mhzbus_slot_device::jim_r(offs_t offset)
|
||||
{
|
||||
if (m_card)
|
||||
return m_card->jim_r(space, offset);
|
||||
return m_card->jim_r(offset);
|
||||
else
|
||||
return 0xff;
|
||||
}
|
||||
@ -112,16 +112,16 @@ READ8_MEMBER(bbc_1mhzbus_slot_device::jim_r)
|
||||
// write
|
||||
//-------------------------------------------------
|
||||
|
||||
WRITE8_MEMBER(bbc_1mhzbus_slot_device::fred_w)
|
||||
void bbc_1mhzbus_slot_device::fred_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (m_card)
|
||||
m_card->fred_w(space, offset, data);
|
||||
m_card->fred_w(offset, data);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_1mhzbus_slot_device::jim_w)
|
||||
void bbc_1mhzbus_slot_device::jim_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (m_card)
|
||||
m_card->jim_w(space, offset, data);
|
||||
m_card->jim_w(offset, data);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
|
@ -107,10 +107,10 @@ public:
|
||||
auto irq_handler() { return m_irq_handler.bind(); }
|
||||
auto nmi_handler() { return m_nmi_handler.bind(); }
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r);
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w);
|
||||
virtual DECLARE_READ8_MEMBER(jim_r);
|
||||
virtual DECLARE_WRITE8_MEMBER(jim_w);
|
||||
virtual uint8_t fred_r(offs_t offset);
|
||||
virtual void fred_w(offs_t offset, uint8_t data);
|
||||
virtual uint8_t jim_r(offs_t offset);
|
||||
virtual void jim_w(offs_t offset, uint8_t data);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( irq_w ) { m_irq_handler(state); }
|
||||
DECLARE_WRITE_LINE_MEMBER( nmi_w ) { m_nmi_handler(state); }
|
||||
@ -134,10 +134,10 @@ private:
|
||||
class device_bbc_1mhzbus_interface : public device_slot_card_interface
|
||||
{
|
||||
public:
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) { return 0xff; }
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w) { }
|
||||
virtual DECLARE_READ8_MEMBER(jim_r) { return 0xff; }
|
||||
virtual DECLARE_WRITE8_MEMBER(jim_w) { }
|
||||
virtual uint8_t fred_r(offs_t offset) { return 0xff; }
|
||||
virtual void fred_w(offs_t offset, uint8_t data) { }
|
||||
virtual uint8_t jim_r(offs_t offset) { return 0xff; }
|
||||
virtual void jim_w(offs_t offset, uint8_t data) { }
|
||||
|
||||
protected:
|
||||
device_bbc_1mhzbus_interface(const machine_config &mconfig, device_t &device);
|
||||
|
@ -65,7 +65,7 @@ void bbc_beebsid_device::device_start()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_beebsid_device::fred_r)
|
||||
uint8_t bbc_beebsid_device::fred_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -74,31 +74,31 @@ READ8_MEMBER(bbc_beebsid_device::fred_r)
|
||||
data = m_sid->read(offset);
|
||||
}
|
||||
|
||||
data &= m_1mhzbus->fred_r(space, offset);
|
||||
data &= m_1mhzbus->fred_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_beebsid_device::fred_w)
|
||||
void bbc_beebsid_device::fred_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (offset >= 0x20 && offset < 0x40)
|
||||
{
|
||||
m_sid->write(offset, data);
|
||||
}
|
||||
|
||||
m_1mhzbus->fred_w(space, offset, data);
|
||||
m_1mhzbus->fred_w(offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_beebsid_device::jim_r)
|
||||
uint8_t bbc_beebsid_device::jim_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
data &= m_1mhzbus->jim_r(space, offset);
|
||||
data &= m_1mhzbus->jim_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_beebsid_device::jim_w)
|
||||
void bbc_beebsid_device::jim_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_1mhzbus->jim_w(space, offset, data);
|
||||
m_1mhzbus->jim_w(offset, data);
|
||||
}
|
||||
|
@ -34,10 +34,10 @@ protected:
|
||||
// optional information overrides
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w) override;
|
||||
virtual DECLARE_READ8_MEMBER(jim_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(jim_w) override;
|
||||
virtual uint8_t fred_r(offs_t offset) override;
|
||||
virtual void fred_w(offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t jim_r(offs_t offset) override;
|
||||
virtual void jim_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
required_device<bbc_1mhzbus_slot_device> m_1mhzbus;
|
||||
|
@ -98,7 +98,7 @@ void cfa3000_opt_device::device_start()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(cfa3000_opt_device::fred_r)
|
||||
uint8_t cfa3000_opt_device::fred_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
|
@ -35,7 +35,7 @@ protected:
|
||||
// optional information overrides
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
virtual uint8_t fred_r(offs_t offset) override;
|
||||
|
||||
private:
|
||||
required_ioport m_opt;
|
||||
|
@ -81,7 +81,7 @@ void bbc_emrmidi_device::device_start()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_emrmidi_device::fred_r)
|
||||
uint8_t bbc_emrmidi_device::fred_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -93,7 +93,7 @@ READ8_MEMBER(bbc_emrmidi_device::fred_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_emrmidi_device::fred_w)
|
||||
void bbc_emrmidi_device::fred_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (offset >= 0xf0 && offset < 0xf2)
|
||||
{
|
||||
|
@ -36,8 +36,8 @@ protected:
|
||||
// optional information overrides
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w) override;
|
||||
virtual uint8_t fred_r(offs_t offset) override;
|
||||
virtual void fred_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
|
||||
|
@ -197,7 +197,7 @@ void bbc_b488_device::device_start()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_ieee488_device::fred_r)
|
||||
uint8_t bbc_ieee488_device::fred_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -206,37 +206,37 @@ READ8_MEMBER(bbc_ieee488_device::fred_r)
|
||||
data = m_tms9914->read(offset & 0x07);
|
||||
}
|
||||
|
||||
data &= m_1mhzbus->fred_r(space, offset);
|
||||
data &= m_1mhzbus->fred_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_ieee488_device::fred_w)
|
||||
void bbc_ieee488_device::fred_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (offset >= 0x20 && offset < 0x28)
|
||||
{
|
||||
m_tms9914->write(offset & 0x07, data);
|
||||
}
|
||||
|
||||
m_1mhzbus->fred_w(space, offset, data);
|
||||
m_1mhzbus->fred_w(offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_ieee488_device::jim_r)
|
||||
uint8_t bbc_ieee488_device::jim_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
data &= m_1mhzbus->jim_r(space, offset);
|
||||
data &= m_1mhzbus->jim_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_ieee488_device::jim_w)
|
||||
void bbc_ieee488_device::jim_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_1mhzbus->jim_w(space, offset, data);
|
||||
m_1mhzbus->jim_w(offset, data);
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(bbc_b488_device::fred_r)
|
||||
uint8_t bbc_b488_device::fred_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -248,7 +248,7 @@ READ8_MEMBER(bbc_b488_device::fred_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_b488_device::fred_w)
|
||||
void bbc_b488_device::fred_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (offset >= 0x20 && offset < 0x28)
|
||||
{
|
||||
@ -257,7 +257,7 @@ WRITE8_MEMBER(bbc_b488_device::fred_w)
|
||||
}
|
||||
|
||||
|
||||
//READ8_MEMBER(bbc_procyon_device::fred_r)
|
||||
//uint8_t bbc_procyon_device::fred_r(offs_t offset)
|
||||
//{
|
||||
//uint8_t data = 0xff;
|
||||
|
||||
@ -269,7 +269,7 @@ WRITE8_MEMBER(bbc_b488_device::fred_w)
|
||||
//return data;
|
||||
//}
|
||||
|
||||
//WRITE8_MEMBER(bbc_procyon_device::fred_w)
|
||||
//void bbc_procyon_device::fred_w(offs_t offset, uint8_t data)
|
||||
//{
|
||||
//if (offset >= 0x20 && offset < 0x28)
|
||||
//{
|
||||
|
@ -42,10 +42,10 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w) override;
|
||||
virtual DECLARE_READ8_MEMBER(jim_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(jim_w) override;
|
||||
virtual uint8_t fred_r(offs_t offset) override;
|
||||
virtual void fred_w(offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t jim_r(offs_t offset) override;
|
||||
virtual void jim_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
required_device<ieee488_device> m_ieee;
|
||||
@ -69,8 +69,8 @@ protected:
|
||||
// optional information overrides
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w) override;
|
||||
virtual uint8_t fred_r(offs_t offset) override;
|
||||
virtual void fred_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
required_device<ieee488_device> m_ieee;
|
||||
@ -94,8 +94,8 @@ private:
|
||||
// virtual void device_add_mconfig(machine_config &config) override;
|
||||
// virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
//
|
||||
// virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
// virtual DECLARE_WRITE8_MEMBER(fred_w) override;
|
||||
// virtual uint8_t fred_r(offs_t offset) override;
|
||||
// virtual void fred_w(offs_t offset, uint8_t data) override;
|
||||
//
|
||||
//private:
|
||||
// required_device<ieee488_device> m_ieee;
|
||||
|
@ -91,7 +91,7 @@ void bbc_m2000_device::device_start()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_m2000_device::fred_r)
|
||||
uint8_t bbc_m2000_device::fred_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -113,12 +113,12 @@ READ8_MEMBER(bbc_m2000_device::fred_r)
|
||||
}
|
||||
}
|
||||
|
||||
data &= m_1mhzbus->fred_r(space, offset);
|
||||
data &= m_1mhzbus->fred_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_m2000_device::fred_w)
|
||||
void bbc_m2000_device::fred_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (offset >= 0x08 && offset < 0x10)
|
||||
{
|
||||
@ -138,21 +138,21 @@ WRITE8_MEMBER(bbc_m2000_device::fred_w)
|
||||
}
|
||||
}
|
||||
|
||||
m_1mhzbus->fred_w(space, offset, data);
|
||||
m_1mhzbus->fred_w(offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_m2000_device::jim_r)
|
||||
uint8_t bbc_m2000_device::jim_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
data &= m_1mhzbus->jim_r(space, offset);
|
||||
data &= m_1mhzbus->jim_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_m2000_device::jim_w)
|
||||
void bbc_m2000_device::jim_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_1mhzbus->jim_w(space, offset, data);
|
||||
m_1mhzbus->jim_w(offset, data);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER(bbc_m2000_device::write_acia_clock)
|
||||
|
@ -38,10 +38,10 @@ protected:
|
||||
// optional information overrides
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w) override;
|
||||
virtual DECLARE_READ8_MEMBER(jim_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(jim_w) override;
|
||||
virtual uint8_t fred_r(offs_t offset) override;
|
||||
virtual void fred_w(offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t jim_r(offs_t offset) override;
|
||||
virtual void jim_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
|
||||
|
@ -159,7 +159,7 @@ void bbc_opusa_device::device_start()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_opus3_device::fred_r)
|
||||
uint8_t bbc_opus3_device::fred_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -175,7 +175,7 @@ READ8_MEMBER(bbc_opus3_device::fred_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_opus3_device::fred_w)
|
||||
void bbc_opus3_device::fred_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
floppy_image_device *floppy = nullptr;
|
||||
|
||||
@ -219,7 +219,7 @@ WRITE_LINE_MEMBER(bbc_opus3_device::fdc_drq_w)
|
||||
m_slot->nmi_w((m_fdc_drq && m_fdc_ie) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_opus3_device::jim_r)
|
||||
uint8_t bbc_opus3_device::jim_r(offs_t offset)
|
||||
{
|
||||
if ((m_ramdisk_page << 8) < m_ramdisk->size())
|
||||
return m_ramdisk->read((m_ramdisk_page << 8) + offset);
|
||||
@ -227,7 +227,7 @@ READ8_MEMBER(bbc_opus3_device::jim_r)
|
||||
return 0xff;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_opus3_device::jim_w)
|
||||
void bbc_opus3_device::jim_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if ((m_ramdisk_page << 8) < m_ramdisk->size())
|
||||
m_ramdisk->write((m_ramdisk_page << 8) + offset, data);
|
||||
|
@ -39,10 +39,10 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w) override;
|
||||
virtual DECLARE_READ8_MEMBER(jim_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(jim_w) override;
|
||||
virtual uint8_t fred_r(offs_t offset) override;
|
||||
virtual void fred_w(offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t jim_r(offs_t offset) override;
|
||||
virtual void jim_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
DECLARE_FLOPPY_FORMATS(floppy_formats);
|
||||
|
@ -69,7 +69,7 @@ void bbc_sprite_device::device_reset()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_sprite_device::fred_r)
|
||||
uint8_t bbc_sprite_device::fred_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -85,7 +85,7 @@ READ8_MEMBER(bbc_sprite_device::fred_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_sprite_device::fred_w)
|
||||
void bbc_sprite_device::fred_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
switch (offset)
|
||||
{
|
||||
|
@ -34,8 +34,8 @@ protected:
|
||||
// optional information overrides
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER(fred_r) override;
|
||||
virtual DECLARE_WRITE8_MEMBER(fred_w) override;
|
||||
virtual uint8_t fred_r(offs_t offset) override;
|
||||
virtual void fred_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
required_device<tms9129_device> m_vdp;
|
||||
|
@ -116,22 +116,22 @@ void bbc_mertec_device::upd7002_eoc(int data)
|
||||
|
||||
READ8_MEMBER(bbc_mertec_device::fred_r)
|
||||
{
|
||||
return m_2mhzbus->fred_r(space, offset);
|
||||
return m_2mhzbus->fred_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_mertec_device::fred_w)
|
||||
{
|
||||
m_2mhzbus->fred_w(space, offset, data);
|
||||
m_2mhzbus->fred_w(offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_mertec_device::jim_r)
|
||||
{
|
||||
return m_2mhzbus->jim_r(space, offset);
|
||||
return m_2mhzbus->jim_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_mertec_device::jim_w)
|
||||
{
|
||||
m_2mhzbus->jim_w(space, offset, data);
|
||||
m_2mhzbus->jim_w(offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_mertec_device::sheila_r)
|
||||
|
@ -92,10 +92,10 @@ void bbc_tube_slot_device::device_reset()
|
||||
// host_r
|
||||
//-------------------------------------------------
|
||||
|
||||
READ8_MEMBER(bbc_tube_slot_device::host_r)
|
||||
uint8_t bbc_tube_slot_device::host_r(offs_t offset)
|
||||
{
|
||||
if (m_card)
|
||||
return m_card->host_r(space, offset);
|
||||
return m_card->host_r(offset);
|
||||
else
|
||||
return 0xfe;
|
||||
}
|
||||
@ -104,10 +104,10 @@ READ8_MEMBER(bbc_tube_slot_device::host_r)
|
||||
// host_w
|
||||
//-------------------------------------------------
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_slot_device::host_w)
|
||||
void bbc_tube_slot_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (m_card)
|
||||
m_card->host_w(space, offset, data);
|
||||
m_card->host_w(offset, data);
|
||||
}
|
||||
|
||||
|
||||
|
@ -66,8 +66,8 @@ public:
|
||||
// callbacks
|
||||
auto irq_handler() { return m_irq_handler.bind(); }
|
||||
|
||||
DECLARE_READ8_MEMBER( host_r );
|
||||
DECLARE_WRITE8_MEMBER( host_w );
|
||||
uint8_t host_r(offs_t offset);
|
||||
void host_w(offs_t offset, uint8_t data);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( irq_w ) { m_irq_handler(state); }
|
||||
|
||||
@ -90,8 +90,8 @@ class device_bbc_tube_interface : public device_slot_card_interface
|
||||
{
|
||||
public:
|
||||
// reading and writing
|
||||
virtual DECLARE_READ8_MEMBER(host_r) { return 0xfe; }
|
||||
virtual DECLARE_WRITE8_MEMBER(host_w) { }
|
||||
virtual uint8_t host_r(offs_t offset) { return 0xfe; }
|
||||
virtual void host_w(offs_t offset, uint8_t data) { }
|
||||
|
||||
protected:
|
||||
device_bbc_tube_interface(const machine_config &mconfig, device_t &device);
|
||||
|
@ -168,27 +168,27 @@ void bbc_tube_6502_device::device_reset()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_tube_6502_device::host_r)
|
||||
uint8_t bbc_tube_6502_device::host_r(offs_t offset)
|
||||
{
|
||||
return m_ula->host_r(space, offset);
|
||||
return m_ula->host_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_6502_device::host_w)
|
||||
void bbc_tube_6502_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ula->host_w(space, offset, data);
|
||||
m_ula->host_w(offset, data);
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(bbc_tube_6502_device::tube_r)
|
||||
uint8_t bbc_tube_6502_device::tube_r(offs_t offset)
|
||||
{
|
||||
// Disable ROM on first access
|
||||
if (!machine().side_effects_disabled())
|
||||
m_bankdev->set_bank(1);
|
||||
|
||||
return m_ula->parasite_r(space, offset);
|
||||
return m_ula->parasite_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_6502_device::tube_w)
|
||||
void bbc_tube_6502_device::tube_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ula->parasite_w(space, offset, data);
|
||||
m_ula->parasite_w(offset, data);
|
||||
}
|
||||
|
@ -52,11 +52,11 @@ protected:
|
||||
|
||||
void add_common_devices(machine_config &config);
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( host_r ) override;
|
||||
virtual DECLARE_WRITE8_MEMBER( host_w ) override;
|
||||
virtual uint8_t host_r(offs_t offset) override;
|
||||
virtual void host_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( tube_r );
|
||||
virtual DECLARE_WRITE8_MEMBER( tube_w );
|
||||
virtual uint8_t tube_r(offs_t offset);
|
||||
virtual void tube_w(offs_t offset, uint8_t data);
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<address_map_bank_device> m_bankdev;
|
||||
|
@ -126,12 +126,12 @@ void bbc_tube_80186_device::device_reset()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_tube_80186_device::host_r)
|
||||
uint8_t bbc_tube_80186_device::host_r(offs_t offset)
|
||||
{
|
||||
return m_ula->host_r(space, offset);
|
||||
return m_ula->host_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_80186_device::host_w)
|
||||
void bbc_tube_80186_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ula->host_w(space, offset, data);
|
||||
m_ula->host_w(offset, data);
|
||||
}
|
||||
|
@ -40,8 +40,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( host_r ) override;
|
||||
virtual DECLARE_WRITE8_MEMBER( host_w ) override;
|
||||
virtual uint8_t host_r(offs_t offset) override;
|
||||
virtual void host_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
required_device<i80186_cpu_device> m_i80186;
|
||||
|
@ -129,24 +129,25 @@ void bbc_tube_80286_device::device_reset()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_tube_80286_device::host_r)
|
||||
uint8_t bbc_tube_80286_device::host_r(offs_t offset)
|
||||
{
|
||||
return m_ula->host_r(space, offset);
|
||||
return m_ula->host_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_80286_device::host_w)
|
||||
void bbc_tube_80286_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ula->host_w(space, offset, data);
|
||||
m_ula->host_w(offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_tube_80286_device::disable_boot_rom)
|
||||
uint8_t bbc_tube_80286_device::disable_boot_rom()
|
||||
{
|
||||
m_i80286->space(AS_PROGRAM).install_ram(0xc0000, 0xfffff, m_ram->pointer() + 0xc0000);
|
||||
if (!machine().side_effects_disabled())
|
||||
m_i80286->space(AS_PROGRAM).install_ram(0xc0000, 0xfffff, m_ram->pointer() + 0xc0000);
|
||||
|
||||
return 0xff;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_80286_device::irq_latch_w)
|
||||
void bbc_tube_80286_device::irq_latch_w(uint8_t data)
|
||||
{
|
||||
m_irq_latch = data;
|
||||
}
|
||||
|
@ -38,8 +38,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( host_r ) override;
|
||||
virtual DECLARE_WRITE8_MEMBER( host_w ) override;
|
||||
virtual uint8_t host_r(offs_t offset) override;
|
||||
virtual void host_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
uint8_t m_irq_latch;
|
||||
@ -51,8 +51,8 @@ private:
|
||||
required_device<ram_device> m_ram;
|
||||
required_memory_region m_bootstrap;
|
||||
|
||||
DECLARE_READ8_MEMBER( disable_boot_rom );
|
||||
DECLARE_WRITE8_MEMBER( irq_latch_w );
|
||||
uint8_t disable_boot_rom();
|
||||
void irq_latch_w(uint8_t data);
|
||||
|
||||
void tube_80286_io(address_map &map);
|
||||
void tube_80286_mem(address_map &map);
|
||||
|
@ -120,18 +120,18 @@ void bbc_tube_arm_device::device_reset()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_tube_arm_device::host_r)
|
||||
uint8_t bbc_tube_arm_device::host_r(offs_t offset)
|
||||
{
|
||||
return m_ula->host_r(space, offset);
|
||||
return m_ula->host_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_arm_device::host_w)
|
||||
void bbc_tube_arm_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ula->host_w(space, offset, data);
|
||||
m_ula->host_w(offset, data);
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(bbc_tube_arm_device::ram_r)
|
||||
uint8_t bbc_tube_arm_device::ram_r(offs_t offset)
|
||||
{
|
||||
uint8_t data;
|
||||
|
||||
@ -143,7 +143,7 @@ READ8_MEMBER(bbc_tube_arm_device::ram_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_arm_device::ram_w)
|
||||
void bbc_tube_arm_device::ram_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
/* clear ROM select on first write */
|
||||
if (!machine().side_effects_disabled()) m_rom_select = false;
|
||||
|
@ -38,8 +38,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( host_r ) override;
|
||||
virtual DECLARE_WRITE8_MEMBER( host_w ) override;
|
||||
virtual uint8_t host_r(offs_t offset) override;
|
||||
virtual void host_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
required_device<arm_cpu_device> m_arm;
|
||||
@ -49,8 +49,8 @@ private:
|
||||
|
||||
bool m_rom_select;
|
||||
|
||||
DECLARE_READ8_MEMBER( ram_r );
|
||||
DECLARE_WRITE8_MEMBER( ram_w );
|
||||
uint8_t ram_r(offs_t offset);
|
||||
void ram_w(offs_t offset, uint8_t data);
|
||||
|
||||
void tube_arm_mem(address_map &map);
|
||||
};
|
||||
|
@ -109,12 +109,12 @@ void bbc_tube_casper_device::device_start()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_tube_casper_device::host_r)
|
||||
uint8_t bbc_tube_casper_device::host_r(offs_t offset)
|
||||
{
|
||||
return m_via6522_0->read(offset & 0xf);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_casper_device::host_w)
|
||||
void bbc_tube_casper_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_via6522_0->write(offset & 0xf, data);
|
||||
}
|
||||
|
@ -36,8 +36,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( host_r ) override;
|
||||
virtual DECLARE_WRITE8_MEMBER( host_w ) override;
|
||||
virtual uint8_t host_r(offs_t offset) override;
|
||||
virtual void host_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
required_device<cpu_device> m_m68000;
|
||||
|
@ -233,23 +233,23 @@ void bbc_tube_rc6502_device::device_reset()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_tube_rc6502_device::host_r)
|
||||
uint8_t bbc_tube_rc6502_device::host_r(offs_t offset)
|
||||
{
|
||||
return m_ula->host_r(space, offset);
|
||||
return m_ula->host_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_rc6502_device::host_w)
|
||||
void bbc_tube_rc6502_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ula->host_w(space, offset, data);
|
||||
m_ula->host_w(offset, data);
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(bbc_tube_rc6502_device::config_r)
|
||||
uint8_t bbc_tube_rc6502_device::config_r()
|
||||
{
|
||||
return m_banknum;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_rc6502_device::register_w)
|
||||
void bbc_tube_rc6502_device::register_w(uint8_t data)
|
||||
{
|
||||
switch (data & 0x06)
|
||||
{
|
||||
|
@ -47,11 +47,11 @@ protected:
|
||||
|
||||
void add_common_devices(machine_config &config);
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( host_r ) override;
|
||||
virtual DECLARE_WRITE8_MEMBER( host_w ) override;
|
||||
virtual uint8_t host_r(offs_t offset) override;
|
||||
virtual void host_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
DECLARE_READ8_MEMBER(config_r);
|
||||
DECLARE_WRITE8_MEMBER(register_w);
|
||||
uint8_t config_r();
|
||||
void register_w(uint8_t data);
|
||||
|
||||
void tube_rc6502_bank(address_map &map);
|
||||
|
||||
|
@ -134,18 +134,18 @@ void bbc_tube_z80_device::device_reset()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_tube_z80_device::host_r)
|
||||
uint8_t bbc_tube_z80_device::host_r(offs_t offset)
|
||||
{
|
||||
return m_ula->host_r(space, offset);
|
||||
return m_ula->host_r(offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_z80_device::host_w)
|
||||
void bbc_tube_z80_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ula->host_w(space, offset, data);
|
||||
m_ula->host_w(offset, data);
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(bbc_tube_z80_device::opcode_r)
|
||||
uint8_t bbc_tube_z80_device::opcode_r(offs_t offset)
|
||||
{
|
||||
if (!machine().side_effects_disabled())
|
||||
{
|
||||
@ -158,7 +158,7 @@ READ8_MEMBER(bbc_tube_z80_device::opcode_r)
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(bbc_tube_z80_device::mem_r)
|
||||
uint8_t bbc_tube_z80_device::mem_r(offs_t offset)
|
||||
{
|
||||
uint8_t data;
|
||||
|
||||
@ -170,7 +170,7 @@ READ8_MEMBER(bbc_tube_z80_device::mem_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_z80_device::mem_w)
|
||||
void bbc_tube_z80_device::mem_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ram->pointer()[offset] = data;
|
||||
}
|
||||
|
@ -40,8 +40,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( host_r ) override;
|
||||
virtual DECLARE_WRITE8_MEMBER( host_w ) override;
|
||||
virtual uint8_t host_r(offs_t offset) override;
|
||||
virtual void host_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
IRQ_CALLBACK_MEMBER( irq_callback );
|
||||
@ -54,9 +54,9 @@ private:
|
||||
|
||||
bool m_rom_enabled;
|
||||
|
||||
DECLARE_READ8_MEMBER( mem_r );
|
||||
DECLARE_WRITE8_MEMBER( mem_w );
|
||||
DECLARE_READ8_MEMBER( opcode_r );
|
||||
uint8_t mem_r(offs_t offset);
|
||||
void mem_w(offs_t offset, uint8_t data);
|
||||
uint8_t opcode_r(offs_t offset);
|
||||
|
||||
void tube_z80_fetch(address_map &map);
|
||||
void tube_z80_io(address_map &map);
|
||||
|
@ -146,12 +146,12 @@ void bbc_tube_zep100_device::device_reset()
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(bbc_tube_zep100_device::host_r)
|
||||
uint8_t bbc_tube_zep100_device::host_r(offs_t offset)
|
||||
{
|
||||
return m_via->read(offset & 0x0f);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_zep100_device::host_w)
|
||||
void bbc_tube_zep100_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (offset & 0x10)
|
||||
m_z80->reset();
|
||||
@ -160,7 +160,7 @@ WRITE8_MEMBER(bbc_tube_zep100_device::host_w)
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(bbc_tube_zep100_device::mem_r)
|
||||
uint8_t bbc_tube_zep100_device::mem_r(offs_t offset)
|
||||
{
|
||||
uint8_t data;
|
||||
|
||||
@ -172,13 +172,13 @@ READ8_MEMBER(bbc_tube_zep100_device::mem_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_zep100_device::mem_w)
|
||||
void bbc_tube_zep100_device::mem_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ram->pointer()[offset] = data;
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(bbc_tube_zep100_device::io_r)
|
||||
uint8_t bbc_tube_zep100_device::io_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -190,23 +190,23 @@ READ8_MEMBER(bbc_tube_zep100_device::io_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_zep100_device::io_w)
|
||||
void bbc_tube_zep100_device::io_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_ppi->write(offset & 0x03, data);
|
||||
}
|
||||
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_zep100_device::via_pb_w)
|
||||
void bbc_tube_zep100_device::via_pb_w(uint8_t data)
|
||||
{
|
||||
m_port_b = data;
|
||||
}
|
||||
|
||||
READ8_MEMBER(bbc_tube_zep100_device::ppi_pb_r)
|
||||
uint8_t bbc_tube_zep100_device::ppi_pb_r()
|
||||
{
|
||||
return m_port_b;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(bbc_tube_zep100_device::ppi_pc_w)
|
||||
void bbc_tube_zep100_device::ppi_pc_w(uint8_t data)
|
||||
{
|
||||
m_via->write_ca1(BIT(data, 7));
|
||||
m_via->write_cb1(BIT(data, 1));
|
||||
|
@ -43,8 +43,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual DECLARE_READ8_MEMBER( host_r ) override;
|
||||
virtual DECLARE_WRITE8_MEMBER( host_w ) override;
|
||||
virtual uint8_t host_r(offs_t offset) override;
|
||||
virtual void host_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
bool m_rom_enabled;
|
||||
|
||||
@ -57,14 +57,14 @@ private:
|
||||
|
||||
uint8_t m_port_b;
|
||||
|
||||
DECLARE_READ8_MEMBER( mem_r );
|
||||
DECLARE_WRITE8_MEMBER( mem_w );
|
||||
DECLARE_READ8_MEMBER( io_r );
|
||||
DECLARE_WRITE8_MEMBER( io_w );
|
||||
uint8_t mem_r(offs_t offset);
|
||||
void mem_w(offs_t offset, uint8_t data);
|
||||
uint8_t io_r(offs_t offset);
|
||||
void io_w(offs_t offset, uint8_t data);
|
||||
|
||||
DECLARE_WRITE8_MEMBER( via_pb_w );
|
||||
DECLARE_READ8_MEMBER( ppi_pb_r );
|
||||
DECLARE_WRITE8_MEMBER( ppi_pc_w );
|
||||
void via_pb_w(uint8_t data);
|
||||
uint8_t ppi_pb_r();
|
||||
void ppi_pc_w(uint8_t data);
|
||||
|
||||
void tube_zep100_io(address_map &map);
|
||||
void tube_zep100_mem(address_map &map);
|
||||
|
@ -46,7 +46,7 @@ void electron_abr_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_abr_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_abr_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -62,7 +62,7 @@ uint8_t electron_abr_device::read(address_space &space, offs_t offset, int infc,
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_abr_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_abr_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
|
@ -32,8 +32,8 @@ protected:
|
||||
virtual void device_start() override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
bool m_bank_locked[2];
|
||||
|
@ -81,7 +81,7 @@ void electron_ap34_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_ap34_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_ap34_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -116,14 +116,14 @@ uint8_t electron_ap34_device::read(address_space &space, offs_t offset, int infc
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_ap34_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_ap34_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
switch (offset & 0xff)
|
||||
{
|
||||
case 0xc0:
|
||||
wd1770_control_w(space, 0, data);
|
||||
wd1770_control_w(data);
|
||||
break;
|
||||
case 0xc4:
|
||||
case 0xc5:
|
||||
@ -147,7 +147,7 @@ void electron_ap34_device::write(address_space &space, offs_t offset, uint8_t da
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
WRITE8_MEMBER(electron_ap34_device::wd1770_control_w)
|
||||
void electron_ap34_device::wd1770_control_w(uint8_t data)
|
||||
{
|
||||
floppy_image_device *floppy = nullptr;
|
||||
|
||||
|
@ -36,11 +36,11 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
DECLARE_WRITE8_MEMBER(wd1770_control_w);
|
||||
void wd1770_control_w(uint8_t data);
|
||||
DECLARE_FLOPPY_FORMATS(floppy_formats);
|
||||
|
||||
required_device<wd1770_device> m_fdc;
|
||||
|
@ -82,13 +82,13 @@ void electron_ap5_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_ap5_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_ap5_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
if (infc)
|
||||
{
|
||||
data = m_1mhzbus->fred_r(space, offset);
|
||||
data = m_1mhzbus->fred_r(offset);
|
||||
|
||||
switch (offset & 0xf0)
|
||||
{
|
||||
@ -97,13 +97,13 @@ uint8_t electron_ap5_device::read(address_space &space, offs_t offset, int infc,
|
||||
break;
|
||||
|
||||
case 0xe0:
|
||||
data &= m_tube->host_r(space, offset & 0x0f);
|
||||
data &= m_tube->host_r(offset & 0x0f);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (infd)
|
||||
{
|
||||
data = m_1mhzbus->jim_r(space, offset);
|
||||
data = m_1mhzbus->jim_r(offset);
|
||||
}
|
||||
else if (oe)
|
||||
{
|
||||
@ -121,11 +121,11 @@ uint8_t electron_ap5_device::read(address_space &space, offs_t offset, int infc,
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_ap5_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_ap5_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
m_1mhzbus->fred_w(space, offset, data);
|
||||
m_1mhzbus->fred_w(offset, data);
|
||||
|
||||
switch (offset & 0xf0)
|
||||
{
|
||||
@ -134,13 +134,13 @@ void electron_ap5_device::write(address_space &space, offs_t offset, uint8_t dat
|
||||
break;
|
||||
|
||||
case 0xe0:
|
||||
m_tube->host_w(space, offset & 0x0f, data);
|
||||
m_tube->host_w(offset & 0x0f, data);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (infd)
|
||||
{
|
||||
m_1mhzbus->jim_w(space, offset, data);
|
||||
m_1mhzbus->jim_w(offset, data);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -37,8 +37,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
image_init_result load_rom(device_image_interface &image, generic_slot_device *slot);
|
||||
|
@ -48,7 +48,7 @@ void electron_aqr_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_aqr_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_aqr_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -64,7 +64,7 @@ uint8_t electron_aqr_device::read(address_space &space, offs_t offset, int infc,
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_aqr_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_aqr_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
|
@ -32,8 +32,8 @@ protected:
|
||||
virtual void device_start() override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
uint8_t m_page_register;
|
||||
|
@ -88,7 +88,7 @@ void electron_click_device::device_reset()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_click_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_click_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -98,7 +98,7 @@ uint8_t electron_click_device::read(address_space &space, offs_t offset, int inf
|
||||
{
|
||||
case 0xf8:
|
||||
case 0xf9:
|
||||
data = m_rtc->read(space, offset & 0x01);
|
||||
data = m_rtc->read(machine().dummy_space(), offset & 0x01);
|
||||
break;
|
||||
case 0xfc:
|
||||
data = m_page_register;
|
||||
@ -127,7 +127,7 @@ uint8_t electron_click_device::read(address_space &space, offs_t offset, int inf
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_click_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_click_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
@ -135,7 +135,7 @@ void electron_click_device::write(address_space &space, offs_t offset, uint8_t d
|
||||
{
|
||||
case 0xf8:
|
||||
case 0xf9:
|
||||
m_rtc->write(space, offset & 0x01, data);
|
||||
m_rtc->write(machine().dummy_space(), offset & 0x01, data);
|
||||
break;
|
||||
case 0xfc:
|
||||
m_page_register = data;
|
||||
|
@ -41,8 +41,8 @@ protected:
|
||||
virtual void device_reset() override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
required_device<mc146818_device> m_rtc;
|
||||
|
@ -87,7 +87,7 @@ void electron_cumana_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_cumana_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_cumana_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -103,7 +103,7 @@ uint8_t electron_cumana_device::read(address_space &space, offs_t offset, int in
|
||||
break;
|
||||
case 0x98:
|
||||
case 0x9c:
|
||||
data = m_rtc->read(space, BIT(offset, 2));
|
||||
data = m_rtc->read(machine().dummy_space(), BIT(offset, 2));
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -134,7 +134,7 @@ uint8_t electron_cumana_device::read(address_space &space, offs_t offset, int in
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_cumana_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_cumana_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
@ -147,12 +147,11 @@ void electron_cumana_device::write(address_space &space, offs_t offset, uint8_t
|
||||
m_fdc->write(offset & 0x03, data);
|
||||
break;
|
||||
case 0x94:
|
||||
wd1793_control_w(space, 0, data);
|
||||
wd1793_control_w(data);
|
||||
break;
|
||||
case 0x98:
|
||||
case 0x9c:
|
||||
m_rtc->write(space, BIT(offset, 2), data);
|
||||
break;
|
||||
m_rtc->write(machine().dummy_space(), BIT(offset, 2), data);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -170,7 +169,7 @@ void electron_cumana_device::write(address_space &space, offs_t offset, uint8_t
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
WRITE8_MEMBER(electron_cumana_device::wd1793_control_w)
|
||||
void electron_cumana_device::wd1793_control_w(uint8_t data)
|
||||
{
|
||||
floppy_image_device *floppy = nullptr;
|
||||
|
||||
|
@ -37,11 +37,11 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
DECLARE_WRITE8_MEMBER(wd1793_control_w);
|
||||
void wd1793_control_w(uint8_t data);
|
||||
DECLARE_FLOPPY_FORMATS(floppy_formats);
|
||||
|
||||
required_device<fd1793_device> m_fdc;
|
||||
|
@ -65,7 +65,7 @@ void electron_mgc_device::device_reset()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_mgc_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_mgc_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -82,7 +82,7 @@ uint8_t electron_mgc_device::read(address_space &space, offs_t offset, int infc,
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_mgc_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_mgc_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
|
@ -33,8 +33,8 @@ protected:
|
||||
virtual void device_reset() override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
uint8_t m_page_latch;
|
||||
|
@ -79,7 +79,7 @@ void electron_peg400_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_peg400_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_peg400_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -122,14 +122,14 @@ uint8_t electron_peg400_device::read(address_space &space, offs_t offset, int in
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_peg400_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_peg400_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
switch (offset & 0xff)
|
||||
{
|
||||
case 0xc0:
|
||||
wd1770_control_w(space, 0, data);
|
||||
wd1770_control_w(data);
|
||||
break;
|
||||
case 0xc4:
|
||||
case 0xc5:
|
||||
@ -153,7 +153,7 @@ void electron_peg400_device::write(address_space &space, offs_t offset, uint8_t
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
WRITE8_MEMBER(electron_peg400_device::wd1770_control_w)
|
||||
void electron_peg400_device::wd1770_control_w(uint8_t data)
|
||||
{
|
||||
floppy_image_device *floppy = nullptr;
|
||||
|
||||
|
@ -34,11 +34,11 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
DECLARE_WRITE8_MEMBER(wd1770_control_w);
|
||||
void wd1770_control_w(uint8_t data);
|
||||
DECLARE_FLOPPY_FORMATS(floppy_formats);
|
||||
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
|
||||
|
||||
|
@ -229,13 +229,13 @@ std::string electron_cartslot_device::get_default_card_software(get_default_card
|
||||
// read - cartridge read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_cartslot_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_cartslot_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
if (m_cart != nullptr)
|
||||
{
|
||||
data = m_cart->read(space, offset, infc, infd, romqa, oe, oe2);
|
||||
data = m_cart->read(offset, infc, infd, romqa, oe, oe2);
|
||||
}
|
||||
|
||||
return data;
|
||||
@ -245,11 +245,11 @@ uint8_t electron_cartslot_device::read(address_space &space, offs_t offset, int
|
||||
// write - cartridge write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_cartslot_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_cartslot_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (m_cart != nullptr)
|
||||
{
|
||||
m_cart->write(space, offset, data, infc, infd, romqa, oe, oe2);
|
||||
m_cart->write(offset, data, infc, infd, romqa, oe, oe2);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -158,8 +158,8 @@ public:
|
||||
virtual std::string get_default_card_software(get_default_card_software_hook &hook) const override;
|
||||
|
||||
// reading and writing
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2);
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2);
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2);
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER(irq_w) { m_irq_handler(state); }
|
||||
DECLARE_WRITE_LINE_MEMBER(nmi_w) { m_nmi_handler(state); }
|
||||
@ -182,8 +182,8 @@ public:
|
||||
virtual ~device_electron_cart_interface();
|
||||
|
||||
// reading and writing
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) { return 0xff; }
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) { }
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) { return 0xff; }
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) { }
|
||||
|
||||
void rom_alloc(uint32_t size, const char *tag);
|
||||
void ram_alloc(uint32_t size);
|
||||
|
@ -89,7 +89,7 @@ void electron_sndexp_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_sndexp_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_sndexp_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -126,7 +126,7 @@ uint8_t electron_sndexp_device::read(address_space &space, offs_t offset, int in
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_sndexp_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_sndexp_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
|
@ -33,8 +33,8 @@ protected:
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
required_device<sn76489_device> m_sn;
|
||||
|
@ -62,7 +62,7 @@ void electron_sndexp3_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_sndexp3_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_sndexp3_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -85,7 +85,7 @@ uint8_t electron_sndexp3_device::read(address_space &space, offs_t offset, int i
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_sndexp3_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_sndexp3_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
|
@ -32,8 +32,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
required_device<sn76489_device> m_sn;
|
||||
|
@ -55,7 +55,7 @@ void electron_sp64_device::device_reset()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_sp64_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_sp64_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -90,7 +90,7 @@ uint8_t electron_sp64_device::read(address_space &space, offs_t offset, int infc
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_sp64_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_sp64_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
|
@ -33,8 +33,8 @@ protected:
|
||||
virtual void device_reset() override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
uint8_t m_page_register;
|
||||
|
@ -43,7 +43,7 @@ void electron_stdcart_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_stdcart_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_stdcart_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
|
@ -31,7 +31,7 @@ protected:
|
||||
virtual void device_start() override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
};
|
||||
|
||||
// device type definition
|
||||
|
@ -83,7 +83,7 @@ void electron_stlefs_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_stlefs_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_stlefs_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -111,14 +111,14 @@ uint8_t electron_stlefs_device::read(address_space &space, offs_t offset, int in
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_stlefs_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_stlefs_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
switch (offset & 0xff)
|
||||
{
|
||||
case 0xc0:
|
||||
wd1770_control_w(space, 0, data);
|
||||
wd1770_control_w(data);
|
||||
break;
|
||||
case 0xc4:
|
||||
case 0xc5:
|
||||
@ -137,7 +137,7 @@ void electron_stlefs_device::write(address_space &space, offs_t offset, uint8_t
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
WRITE8_MEMBER(electron_stlefs_device::wd1770_control_w)
|
||||
void electron_stlefs_device::wd1770_control_w(uint8_t data)
|
||||
{
|
||||
floppy_image_device *floppy = nullptr;
|
||||
|
||||
|
@ -36,11 +36,11 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
DECLARE_WRITE8_MEMBER(wd1770_control_w);
|
||||
void wd1770_control_w(uint8_t data);
|
||||
DECLARE_FLOPPY_FORMATS(floppy_formats);
|
||||
|
||||
required_device<wd1770_device> m_fdc;
|
||||
|
@ -56,7 +56,7 @@ void electron_tube_device::device_start()
|
||||
// read - cartridge data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_tube_device::read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
uint8_t electron_tube_device::read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -64,7 +64,7 @@ uint8_t electron_tube_device::read(address_space &space, offs_t offset, int infc
|
||||
{
|
||||
if (offset >= 0xe0 && offset < 0xf0)
|
||||
{
|
||||
data = m_tube->host_r(space, offset & 0x0f);
|
||||
data = m_tube->host_r(offset & 0x0f);
|
||||
}
|
||||
}
|
||||
else if (oe2)
|
||||
@ -79,13 +79,13 @@ uint8_t electron_tube_device::read(address_space &space, offs_t offset, int infc
|
||||
// write - cartridge data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_tube_device::write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
void electron_tube_device::write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2)
|
||||
{
|
||||
if (infc)
|
||||
{
|
||||
if (offset >= 0xe0 && offset < 0xf0)
|
||||
{
|
||||
m_tube->host_w(space, offset & 0x0f, data);
|
||||
m_tube->host_w(offset & 0x0f, data);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -32,8 +32,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
// electron_cart_interface overrides
|
||||
virtual uint8_t read(address_space &space, offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(address_space &space, offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual uint8_t read(offs_t offset, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
virtual void write(offs_t offset, uint8_t data, int infc, int infd, int romqa, int oe, int oe2) override;
|
||||
|
||||
private:
|
||||
required_device<bbc_tube_slot_device> m_tube;
|
||||
|
@ -75,13 +75,13 @@ void electron_expansion_slot_device::device_reset()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_expansion_slot_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_expansion_slot_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
if (m_card != nullptr)
|
||||
{
|
||||
data = m_card->expbus_r(space, offset);
|
||||
data = m_card->expbus_r(offset);
|
||||
}
|
||||
|
||||
return data;
|
||||
@ -91,11 +91,11 @@ uint8_t electron_expansion_slot_device::expbus_r(address_space &space, offs_t of
|
||||
// expbus_w - expansion data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_expansion_slot_device::expbus_w(address_space &space, offs_t offset, uint8_t data)
|
||||
void electron_expansion_slot_device::expbus_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (m_card != nullptr)
|
||||
{
|
||||
m_card->expbus_w(space, offset, data);
|
||||
m_card->expbus_w(offset, data);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -117,8 +117,8 @@ public:
|
||||
auto irq_handler() { return m_irq_handler.bind(); }
|
||||
auto nmi_handler() { return m_nmi_handler.bind(); }
|
||||
|
||||
uint8_t expbus_r(address_space &space, offs_t offset);
|
||||
void expbus_w(address_space &space, offs_t offset, uint8_t data);
|
||||
uint8_t expbus_r(offs_t offset);
|
||||
void expbus_w(offs_t offset, uint8_t data);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( irq_w ) { m_irq_handler(state); }
|
||||
DECLARE_WRITE_LINE_MEMBER( nmi_w ) { m_nmi_handler(state); }
|
||||
@ -141,8 +141,8 @@ private:
|
||||
class device_electron_expansion_interface : public device_slot_card_interface
|
||||
{
|
||||
public:
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) { return 0xff; }
|
||||
virtual void expbus_w(address_space &space, offs_t offset, uint8_t data) { }
|
||||
virtual uint8_t expbus_r(offs_t offset) { return 0xff; }
|
||||
virtual void expbus_w(offs_t offset, uint8_t data) { }
|
||||
|
||||
protected:
|
||||
device_electron_expansion_interface(const machine_config &mconfig, device_t &device);
|
||||
|
@ -67,7 +67,7 @@ void electron_fbjoy_device::device_start()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_fbjoy_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_fbjoy_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
|
@ -33,7 +33,7 @@ public:
|
||||
// optional information overrides
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) override;
|
||||
virtual uint8_t expbus_r(offs_t offset) override;
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
|
@ -154,7 +154,7 @@ void electron_m2105_device::device_reset()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_m2105_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_m2105_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -214,7 +214,7 @@ uint8_t electron_m2105_device::expbus_r(address_space &space, offs_t offset)
|
||||
// expbus_w - expansion data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_m2105_device::expbus_w(address_space &space, offs_t offset, uint8_t data)
|
||||
void electron_m2105_device::expbus_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
switch (offset >> 12)
|
||||
{
|
||||
|
@ -41,8 +41,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) override;
|
||||
virtual void expbus_w(address_space &space, offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t expbus_r(offs_t offset) override;
|
||||
virtual void expbus_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
required_memory_region m_exp_rom;
|
||||
|
@ -163,7 +163,7 @@ void electron_plus1_device::device_start()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_plus1_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_plus1_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -177,18 +177,18 @@ uint8_t electron_plus1_device::expbus_r(address_space &space, offs_t offset)
|
||||
{
|
||||
case 0:
|
||||
case 1:
|
||||
data = m_cart_sk2->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
data = m_cart_sk2->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
data = m_cart_sk1->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
data = m_cart_sk1->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 12:
|
||||
data = m_exp_rom->base()[offset & 0x1fff];
|
||||
break;
|
||||
case 13:
|
||||
data &= m_cart_sk1->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart_sk2->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart_sk1->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart_sk2->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@ -197,8 +197,8 @@ uint8_t electron_plus1_device::expbus_r(address_space &space, offs_t offset)
|
||||
switch (offset >> 8)
|
||||
{
|
||||
case 0xfc:
|
||||
data &= m_cart_sk1->read(space, offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart_sk2->read(space, offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart_sk1->read(offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart_sk2->read(offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
|
||||
if (offset == 0xfc70)
|
||||
{
|
||||
@ -211,8 +211,8 @@ uint8_t electron_plus1_device::expbus_r(address_space &space, offs_t offset)
|
||||
break;
|
||||
|
||||
case 0xfd:
|
||||
data &= m_cart_sk1->read(space, offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart_sk2->read(space, offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart_sk1->read(offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart_sk2->read(offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -225,7 +225,7 @@ uint8_t electron_plus1_device::expbus_r(address_space &space, offs_t offset)
|
||||
// expbus_w - expansion data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_plus1_device::expbus_w(address_space &space, offs_t offset, uint8_t data)
|
||||
void electron_plus1_device::expbus_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
switch (offset >> 12)
|
||||
{
|
||||
@ -237,11 +237,11 @@ void electron_plus1_device::expbus_w(address_space &space, offs_t offset, uint8_
|
||||
{
|
||||
case 0:
|
||||
case 1:
|
||||
m_cart_sk2->write(space, offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
m_cart_sk2->write(offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
m_cart_sk1->write(space, offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
m_cart_sk1->write(offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@ -250,8 +250,8 @@ void electron_plus1_device::expbus_w(address_space &space, offs_t offset, uint8_
|
||||
switch (offset >> 8)
|
||||
{
|
||||
case 0xfc:
|
||||
m_cart_sk1->write(space, offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart_sk2->write(space, offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart_sk1->write(offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart_sk2->write(offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
|
||||
if (offset == 0xfc70)
|
||||
{
|
||||
@ -264,8 +264,8 @@ void electron_plus1_device::expbus_w(address_space &space, offs_t offset, uint8_
|
||||
break;
|
||||
|
||||
case 0xfd:
|
||||
m_cart_sk1->write(space, offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart_sk2->write(space, offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart_sk1->write(offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart_sk2->write(offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
break;
|
||||
|
||||
case 0xfe:
|
||||
|
@ -37,8 +37,8 @@ protected:
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) override;
|
||||
virtual void expbus_w(address_space &space, offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t expbus_r(offs_t offset) override;
|
||||
virtual void expbus_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
u8 status_r();
|
||||
|
@ -98,7 +98,7 @@ void electron_plus2_device::device_start()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_plus2_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_plus2_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -112,15 +112,15 @@ uint8_t electron_plus2_device::expbus_r(address_space &space, offs_t offset)
|
||||
{
|
||||
case 4:
|
||||
case 5:
|
||||
data = m_cart[1]->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
data = m_cart[1]->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 6:
|
||||
case 7:
|
||||
data = m_cart[0]->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
data = m_cart[0]->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 13:
|
||||
data &= m_cart[0]->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart[1]->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart[0]->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart[1]->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
case 14:
|
||||
case 15:
|
||||
data &= m_rom[m_romsel - 13]->read_rom(offset & 0x3fff);
|
||||
@ -132,8 +132,8 @@ uint8_t electron_plus2_device::expbus_r(address_space &space, offs_t offset)
|
||||
switch (offset >> 8)
|
||||
{
|
||||
case 0xfc:
|
||||
data &= m_cart[0]->read(space, offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[1]->read(space, offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[0]->read(offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[1]->read(offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
|
||||
if (offset >= 0xfcb0 && offset < 0xfcc0)
|
||||
{
|
||||
@ -142,13 +142,13 @@ uint8_t electron_plus2_device::expbus_r(address_space &space, offs_t offset)
|
||||
break;
|
||||
|
||||
case 0xfd:
|
||||
data &= m_cart[0]->read(space, offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[1]->read(space, offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[0]->read(offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[1]->read(offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
data &= m_exp->expbus_r(space, offset);
|
||||
data &= m_exp->expbus_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
@ -158,7 +158,7 @@ uint8_t electron_plus2_device::expbus_r(address_space &space, offs_t offset)
|
||||
// expbus_w - expansion data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_plus2_device::expbus_w(address_space &space, offs_t offset, uint8_t data)
|
||||
void electron_plus2_device::expbus_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
switch (offset >> 12)
|
||||
{
|
||||
@ -170,11 +170,11 @@ void electron_plus2_device::expbus_w(address_space &space, offs_t offset, uint8_
|
||||
{
|
||||
case 4:
|
||||
case 5:
|
||||
m_cart[1]->write(space, offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
m_cart[1]->write(offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 6:
|
||||
case 7:
|
||||
m_cart[0]->write(space, offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
m_cart[0]->write(offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@ -183,8 +183,8 @@ void electron_plus2_device::expbus_w(address_space &space, offs_t offset, uint8_
|
||||
switch (offset >> 8)
|
||||
{
|
||||
case 0xfc:
|
||||
m_cart[0]->write(space, offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart[1]->write(space, offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart[0]->write(offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart[1]->write(offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
|
||||
if (offset >= 0xfcb0 && offset < 0xfcc0)
|
||||
{
|
||||
@ -193,8 +193,8 @@ void electron_plus2_device::expbus_w(address_space &space, offs_t offset, uint8_
|
||||
break;
|
||||
|
||||
case 0xfd:
|
||||
m_cart[0]->write(space, offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart[1]->write(space, offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart[0]->write(offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart[1]->write(offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
break;
|
||||
|
||||
case 0xfe:
|
||||
@ -206,7 +206,7 @@ void electron_plus2_device::expbus_w(address_space &space, offs_t offset, uint8_
|
||||
}
|
||||
}
|
||||
|
||||
m_exp->expbus_w(space, offset, data);
|
||||
m_exp->expbus_w(offset, data);
|
||||
}
|
||||
|
||||
|
||||
|
@ -36,8 +36,8 @@ protected:
|
||||
// optional information overrides
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) override;
|
||||
virtual void expbus_w(address_space &space, offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t expbus_r(offs_t offset) override;
|
||||
virtual void expbus_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
image_init_result load_rom(device_image_interface &image, generic_slot_device *slot);
|
||||
|
@ -117,7 +117,7 @@ void electron_plus3_device::device_start()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_plus3_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_plus3_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -137,7 +137,7 @@ uint8_t electron_plus3_device::expbus_r(address_space &space, offs_t offset)
|
||||
data = m_fdc->read(offset & 0x03);
|
||||
}
|
||||
|
||||
data &= m_exp->expbus_r(space, offset);
|
||||
data &= m_exp->expbus_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
@ -146,13 +146,13 @@ uint8_t electron_plus3_device::expbus_r(address_space &space, offs_t offset)
|
||||
// expbus_w - expansion data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_plus3_device::expbus_w(address_space &space, offs_t offset, uint8_t data)
|
||||
void electron_plus3_device::expbus_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_exp->expbus_w(space, offset, data);
|
||||
m_exp->expbus_w(offset, data);
|
||||
|
||||
if (offset == 0xfcc0)
|
||||
{
|
||||
wd1770_status_w(space, offset, data);
|
||||
wd1770_status_w(data);
|
||||
}
|
||||
else if (offset >= 0xfcc4 && offset < 0xfcc8)
|
||||
{
|
||||
@ -169,7 +169,7 @@ void electron_plus3_device::expbus_w(address_space &space, offs_t offset, uint8_
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
WRITE8_MEMBER(electron_plus3_device::wd1770_status_w)
|
||||
void electron_plus3_device::wd1770_status_w(uint8_t data)
|
||||
{
|
||||
floppy_image_device *floppy = nullptr;
|
||||
|
||||
|
@ -34,11 +34,11 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) override;
|
||||
virtual void expbus_w(address_space &space, offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t expbus_r(offs_t offset) override;
|
||||
virtual void expbus_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
DECLARE_WRITE8_MEMBER(wd1770_status_w);
|
||||
void wd1770_status_w(uint8_t data);
|
||||
DECLARE_FLOPPY_FORMATS(floppy_formats);
|
||||
|
||||
required_device<electron_expansion_slot_device> m_exp;
|
||||
|
@ -78,7 +78,7 @@ void electron_pwrjoy_device::device_start()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_pwrjoy_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_pwrjoy_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -102,7 +102,7 @@ uint8_t electron_pwrjoy_device::expbus_r(address_space &space, offs_t offset)
|
||||
// expbus_w - expansion data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_pwrjoy_device::expbus_w(address_space &space, offs_t offset, uint8_t data)
|
||||
void electron_pwrjoy_device::expbus_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
if (offset == 0xfe05)
|
||||
{
|
||||
|
@ -32,8 +32,8 @@ public:
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) override;
|
||||
virtual void expbus_w(address_space &space, offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t expbus_r(offs_t offset) override;
|
||||
virtual void expbus_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
|
@ -117,7 +117,7 @@ void electron_rombox_device::device_reset()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_rombox_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_rombox_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -155,7 +155,7 @@ uint8_t electron_rombox_device::expbus_r(address_space &space, offs_t offset)
|
||||
}
|
||||
}
|
||||
|
||||
data &= m_exp->expbus_r(space, offset);
|
||||
data &= m_exp->expbus_r(offset);
|
||||
|
||||
return data;
|
||||
}
|
||||
@ -164,9 +164,9 @@ uint8_t electron_rombox_device::expbus_r(address_space &space, offs_t offset)
|
||||
// expbus_w - expansion data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_rombox_device::expbus_w(address_space &space, offs_t offset, uint8_t data)
|
||||
void electron_rombox_device::expbus_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
m_exp->expbus_w(space, offset, data);
|
||||
m_exp->expbus_w(offset, data);
|
||||
|
||||
if (offset == 0xfe05)
|
||||
{
|
||||
|
@ -35,8 +35,8 @@ protected:
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) override;
|
||||
virtual void expbus_w(address_space &space, offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t expbus_r(offs_t offset) override;
|
||||
virtual void expbus_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
image_init_result load_rom(device_image_interface &image, generic_slot_device *slot);
|
||||
|
@ -160,7 +160,7 @@ void electron_romboxp_device::device_reset()
|
||||
// expbus_r - expansion data read
|
||||
//-------------------------------------------------
|
||||
|
||||
uint8_t electron_romboxp_device::expbus_r(address_space &space, offs_t offset)
|
||||
uint8_t electron_romboxp_device::expbus_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xff;
|
||||
|
||||
@ -174,11 +174,11 @@ uint8_t electron_romboxp_device::expbus_r(address_space &space, offs_t offset)
|
||||
{
|
||||
case 0:
|
||||
case 1:
|
||||
data = m_cart[1]->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
data = m_cart[1]->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
data = m_cart[0]->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
data = m_cart[0]->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 4:
|
||||
case 5:
|
||||
@ -193,8 +193,8 @@ uint8_t electron_romboxp_device::expbus_r(address_space &space, offs_t offset)
|
||||
data = m_exp_rom->base()[offset & 0x1fff];
|
||||
break;
|
||||
case 13:
|
||||
data &= m_cart[0]->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart[1]->read(space, offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart[0]->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
data &= m_cart[1]->read(offset & 0x3fff, 0, 0, m_romsel & 0x01, 0, 1);
|
||||
case 14:
|
||||
case 15:
|
||||
if (m_rom_base == 12)
|
||||
@ -209,18 +209,18 @@ uint8_t electron_romboxp_device::expbus_r(address_space &space, offs_t offset)
|
||||
switch (offset >> 8)
|
||||
{
|
||||
case 0xfc:
|
||||
data &= m_cart[0]->read(space, offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[1]->read(space, offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[0]->read(offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[1]->read(offset & 0xff, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
|
||||
if (offset == 0xfc72)
|
||||
{
|
||||
data &= status_r(space, offset);
|
||||
data &= status_r();
|
||||
}
|
||||
break;
|
||||
|
||||
case 0xfd:
|
||||
data &= m_cart[0]->read(space, offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[1]->read(space, offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[0]->read(offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
data &= m_cart[1]->read(offset & 0xff, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -232,7 +232,7 @@ uint8_t electron_romboxp_device::expbus_r(address_space &space, offs_t offset)
|
||||
// expbus_w - expansion data write
|
||||
//-------------------------------------------------
|
||||
|
||||
void electron_romboxp_device::expbus_w(address_space &space, offs_t offset, uint8_t data)
|
||||
void electron_romboxp_device::expbus_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
switch (offset >> 12)
|
||||
{
|
||||
@ -244,11 +244,11 @@ void electron_romboxp_device::expbus_w(address_space &space, offs_t offset, uint
|
||||
{
|
||||
case 0:
|
||||
case 1:
|
||||
m_cart[1]->write(space, offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
m_cart[1]->write(offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
m_cart[0]->write(space, offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
m_cart[0]->write(offset & 0x3fff, data, 0, 0, m_romsel & 0x01, 1, 0);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@ -257,8 +257,8 @@ void electron_romboxp_device::expbus_w(address_space &space, offs_t offset, uint
|
||||
switch (offset >> 8)
|
||||
{
|
||||
case 0xfc:
|
||||
m_cart[0]->write(space, offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart[1]->write(space, offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart[0]->write(offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
m_cart[1]->write(offset & 0xff, data, 1, 0, m_romsel & 0x01, 0, 0);
|
||||
|
||||
if (offset == 0xfc71)
|
||||
{
|
||||
@ -267,8 +267,8 @@ void electron_romboxp_device::expbus_w(address_space &space, offs_t offset, uint
|
||||
break;
|
||||
|
||||
case 0xfd:
|
||||
m_cart[0]->write(space, offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart[1]->write(space, offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart[0]->write(offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
m_cart[1]->write(offset & 0xff, data, 0, 1, m_romsel & 0x01, 0, 0);
|
||||
break;
|
||||
|
||||
case 0xfe:
|
||||
@ -285,7 +285,7 @@ void electron_romboxp_device::expbus_w(address_space &space, offs_t offset, uint
|
||||
// IMPLEMENTATION
|
||||
//**************************************************************************
|
||||
|
||||
READ8_MEMBER(electron_romboxp_device::status_r)
|
||||
uint8_t electron_romboxp_device::status_r()
|
||||
{
|
||||
// Status: b7: printer Busy
|
||||
return (m_centronics_busy << 7) | 0x7f;
|
||||
|
@ -40,11 +40,11 @@ protected:
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
|
||||
virtual uint8_t expbus_r(address_space &space, offs_t offset) override;
|
||||
virtual void expbus_w(address_space &space, offs_t offset, uint8_t data) override;
|
||||
virtual uint8_t expbus_r(offs_t offset) override;
|
||||
virtual void expbus_w(offs_t offset, uint8_t data) override;
|
||||
|
||||
private:
|
||||
DECLARE_READ8_MEMBER(status_r);
|
||||
uint8_t status_r();
|
||||
DECLARE_WRITE_LINE_MEMBER(busy_w);
|
||||
|
||||
image_init_result load_rom(device_image_interface &image, generic_slot_device *slot);
|
||||
|
@ -79,7 +79,7 @@ void tube_device::update_interrupts()
|
||||
m_drq_handler(!BIT(m_r1stat, 4) && ((m_hp3pos > BIT(m_r1stat, 4)) || (m_ph3pos == 0)) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
READ8_MEMBER(tube_device::host_r)
|
||||
uint8_t tube_device::host_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0xfe;
|
||||
|
||||
@ -143,7 +143,7 @@ READ8_MEMBER(tube_device::host_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(tube_device::host_w)
|
||||
void tube_device::host_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
switch (offset & 0x07)
|
||||
{
|
||||
@ -197,7 +197,7 @@ WRITE8_MEMBER(tube_device::host_w)
|
||||
update_interrupts();
|
||||
}
|
||||
|
||||
READ8_MEMBER(tube_device::parasite_r)
|
||||
uint8_t tube_device::parasite_r(offs_t offset)
|
||||
{
|
||||
uint8_t data = 0x00;
|
||||
|
||||
@ -265,7 +265,7 @@ READ8_MEMBER(tube_device::parasite_r)
|
||||
return data;
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(tube_device::parasite_w)
|
||||
void tube_device::parasite_w(offs_t offset, uint8_t data)
|
||||
{
|
||||
switch (offset & 0x07)
|
||||
{
|
||||
|
@ -32,10 +32,10 @@ public:
|
||||
auto pirq_handler() { return m_pirq_handler.bind(); }
|
||||
auto drq_handler() { return m_drq_handler.bind(); }
|
||||
|
||||
DECLARE_READ8_MEMBER(host_r);
|
||||
DECLARE_WRITE8_MEMBER(host_w);
|
||||
DECLARE_READ8_MEMBER(parasite_r);
|
||||
DECLARE_WRITE8_MEMBER(parasite_w);
|
||||
uint8_t host_r(offs_t offset);
|
||||
void host_w(offs_t offset, uint8_t data);
|
||||
uint8_t parasite_r(offs_t offset);
|
||||
void parasite_w(offs_t offset, uint8_t data);
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
|
@ -360,12 +360,12 @@ READ8_MEMBER(bbc_state::bbcm_tube_r)
|
||||
if (m_acccon_itu)
|
||||
{
|
||||
/* internal Tube */
|
||||
if (m_intube) data = m_intube->host_r(space, offset);
|
||||
if (m_intube) data = m_intube->host_r(offset);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* external Tube */
|
||||
if (m_extube) data = m_extube->host_r(space, offset);
|
||||
if (m_extube) data = m_extube->host_r(offset);
|
||||
}
|
||||
|
||||
return data;
|
||||
@ -376,12 +376,12 @@ WRITE8_MEMBER(bbc_state::bbcm_tube_w)
|
||||
if (m_acccon_itu)
|
||||
{
|
||||
/* internal Tube */
|
||||
if (m_intube) m_intube->host_w(space, offset, data);
|
||||
if (m_intube) m_intube->host_w(offset, data);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* external Tube */
|
||||
if (m_extube) m_extube->host_w(space, offset, data);
|
||||
if (m_extube) m_extube->host_w(offset, data);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -237,7 +237,7 @@ READ8_MEMBER(electron_state::electron_paged_r)
|
||||
|
||||
default:
|
||||
/* ROM in extension devices */
|
||||
data = m_exp->expbus_r(space, 0x8000 + offset);
|
||||
data = m_exp->expbus_r(0x8000 + offset);
|
||||
break;
|
||||
}
|
||||
return data;
|
||||
@ -248,7 +248,7 @@ WRITE8_MEMBER(electron_state::electron_paged_w)
|
||||
/* The processor will run at 2MHz during an access cycle to the ROM */
|
||||
m_maincpu->set_clock_scale(1.0f);
|
||||
|
||||
m_exp->expbus_w(space, 0x8000 + offset, data);
|
||||
m_exp->expbus_w(0x8000 + offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(electron_state::electron_mos_r)
|
||||
@ -265,7 +265,7 @@ WRITE8_MEMBER(electron_state::electron_mos_w)
|
||||
m_maincpu->set_clock_scale(1.0f);
|
||||
|
||||
logerror("MOS: write %04x %02x\n", offset + 0xc000, data);
|
||||
m_exp->expbus_w(space, 0xc000 + offset, data);
|
||||
m_exp->expbus_w(0xc000 + offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(electron_state::electron_fred_r)
|
||||
@ -275,7 +275,7 @@ READ8_MEMBER(electron_state::electron_fred_r)
|
||||
|
||||
/* The Issue 4 ULA returns data from OS ROM, whereas Issue 6 ULA will return 0xff */
|
||||
//logerror("FRED: read fc%02x\n", offset);
|
||||
return m_exp->expbus_r(space, 0xfc00 + offset);
|
||||
return m_exp->expbus_r(0xfc00 + offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(electron_state::electron_fred_w)
|
||||
@ -287,7 +287,7 @@ WRITE8_MEMBER(electron_state::electron_fred_w)
|
||||
if (offset == 0x7f) m_mrb_mapped = !(data & 0x80);
|
||||
|
||||
//logerror("FRED: write fc%02x\n", offset);
|
||||
m_exp->expbus_w(space, 0xfc00 + offset, data);
|
||||
m_exp->expbus_w(0xfc00 + offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(electron_state::electron_jim_r)
|
||||
@ -297,7 +297,7 @@ READ8_MEMBER(electron_state::electron_jim_r)
|
||||
|
||||
/* The Issue 4 ULA returns data from OS ROM, whereas Issue 6 ULA will return 0xff */
|
||||
//logerror("JIM: read fd%02x\n", offset);
|
||||
return m_exp->expbus_r(space, 0xfd00 + offset);
|
||||
return m_exp->expbus_r(0xfd00 + offset);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(electron_state::electron_jim_w)
|
||||
@ -306,7 +306,7 @@ WRITE8_MEMBER(electron_state::electron_jim_w)
|
||||
m_maincpu->set_clock_scale(1.0f);
|
||||
|
||||
//logerror("JIM: write fd%02x\n", offset);
|
||||
m_exp->expbus_w(space, 0xfd00 + offset, data);
|
||||
m_exp->expbus_w(0xfd00 + offset, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(electron_state::electron_sheila_r)
|
||||
@ -343,7 +343,7 @@ WRITE8_MEMBER(electron_state::electron_sheila_w)
|
||||
/* The processor will run at 2MHz during an access cycle to the ROM */
|
||||
m_maincpu->set_clock_scale(1.0f);
|
||||
|
||||
m_exp->expbus_w(space, 0xfe00 + offset, data);
|
||||
m_exp->expbus_w(0xfe00 + offset, data);
|
||||
|
||||
int i = electron_palette_offset[(( offset >> 1 ) & 0x03)];
|
||||
//logerror( "ULA: write fe%02x <- %02x\n", offset & 0x0f, data );
|
||||
|
Loading…
Reference in New Issue
Block a user