summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/ekara/rom.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/ekara/rom.h')
-rw-r--r--src/devices/bus/ekara/rom.h47
1 files changed, 31 insertions, 16 deletions
diff --git a/src/devices/bus/ekara/rom.h b/src/devices/bus/ekara/rom.h
index 76c5ed45e46..d28584cf2a0 100644
--- a/src/devices/bus/ekara/rom.h
+++ b/src/devices/bus/ekara/rom.h
@@ -18,14 +18,14 @@ public:
ekara_rom_plain_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// reading and writing
- virtual DECLARE_READ8_MEMBER(read_cart) override;
- virtual DECLARE_WRITE8_MEMBER(write_cart) override;
+ virtual uint8_t read_cart(offs_t offset) override;
+ virtual void write_cart(offs_t offset, uint8_t data) override;
- virtual DECLARE_READ8_MEMBER(read_extra) override { return 0xff; };
- virtual DECLARE_WRITE8_MEMBER(write_extra) override { };
+ virtual uint8_t read_extra(offs_t offset) override { return 0xff; }
+ virtual void write_extra(offs_t offset, uint8_t data) override { }
- virtual READ8_MEMBER(read_rom);
- virtual WRITE8_MEMBER(write_rom);
+ virtual uint8_t read_rom(offs_t offset);
+ virtual void write_rom(offs_t offset, uint8_t data);
protected:
ekara_rom_plain_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -47,15 +47,15 @@ protected:
ekara_rom_i2c_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
// reading and writing
- virtual READ8_MEMBER(read_rom) override;
- virtual WRITE8_MEMBER(write_rom) override;
+ virtual uint8_t read_rom(offs_t offset) override;
+ virtual void write_rom(offs_t offset, uint8_t data) override;
optional_device<i2cmem_device> m_i2cmem;
- virtual DECLARE_READ8_MEMBER(read_extra) override;
- virtual DECLARE_WRITE8_MEMBER(write_extra) override;
+ virtual uint8_t read_extra(offs_t offset) override;
+ virtual void write_extra(offs_t offset, uint8_t data) override;
- virtual DECLARE_WRITE8_MEMBER(write_bus_control) override;
+ virtual void write_bus_control(offs_t offset, uint8_t data) override;
virtual bool is_read_access_not_rom(void) override;
virtual bool is_write_access_not_rom(void) override;
@@ -114,17 +114,31 @@ public:
ekara_rom_i2c_24lc02_gc0010_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
+ ekara_rom_i2c_24lc02_gc0010_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
+
virtual void device_add_mconfig(machine_config &config) override;
bool is_read_access_not_rom(void) override;
bool is_write_access_not_rom(void) override;
- DECLARE_READ8_MEMBER(read_extra) override;
- DECLARE_WRITE8_MEMBER(write_extra) override;
- DECLARE_WRITE_LINE_MEMBER(write_sda) override;
- DECLARE_WRITE_LINE_MEMBER(write_scl) override;
- DECLARE_READ_LINE_MEMBER(read_sda ) override;
+ uint8_t read_extra(offs_t offset) override;
+ void write_extra(offs_t offset, uint8_t data) override;
+ void write_sda(int state) override;
+ void write_scl(int state) override;
+ int read_sda() override;
};
+class ekara_rom_i2c_24lc08_evio_device : public ekara_rom_i2c_24lc02_gc0010_device
+{
+public:
+ // construction/destruction
+ ekara_rom_i2c_24lc08_evio_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+
+protected:
+ virtual void device_add_mconfig(machine_config &config) override;
+
+};
+
+
// device type definition
DECLARE_DEVICE_TYPE(EKARA_ROM_PLAIN, ekara_rom_plain_device)
DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_BASE, ekara_rom_i2c_base_device)
@@ -132,5 +146,6 @@ DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_24C08_EPITCH, ekara_rom_i2c_24c08_epitch_dev
DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_24LC04, ekara_rom_i2c_24lc04_device)
DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_24LC02, ekara_rom_i2c_24lc02_device)
DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_24LC02_GC0010, ekara_rom_i2c_24lc02_gc0010_device)
+DECLARE_DEVICE_TYPE(EKARA_ROM_I2C_24LC08_EVIO, ekara_rom_i2c_24lc08_evio_device)
#endif // MAME_BUS_EKARA_ROM_H