summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/nes/kaiser.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/nes/kaiser.h')
-rw-r--r--src/devices/bus/nes/kaiser.h95
1 files changed, 38 insertions, 57 deletions
diff --git a/src/devices/bus/nes/kaiser.h b/src/devices/bus/nes/kaiser.h
index 690201233d0..bfed01f40f9 100644
--- a/src/devices/bus/nes/kaiser.h
+++ b/src/devices/bus/nes/kaiser.h
@@ -33,15 +33,9 @@ class nes_ks7058_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_ks7058_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_ks7058_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual void write_h(offs_t offset, uint8_t data) override;
-
- virtual void pcb_reset() override;
-
-protected:
- // device-level overrides
- virtual void device_start() override;
+ virtual void write_h(offs_t offset, u8 data) override;
};
@@ -51,10 +45,10 @@ class nes_ks7022_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_ks7022_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_ks7022_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual uint8_t read_h(offs_t offset) override;
- virtual void write_h(offs_t offset, uint8_t data) override;
+ virtual u8 read_h(offs_t offset) override;
+ virtual void write_h(offs_t offset, u8 data) override;
virtual void pcb_reset() override;
@@ -63,7 +57,7 @@ protected:
virtual void device_start() override;
private:
- uint8_t m_latch;
+ u8 m_latch;
};
@@ -86,7 +80,8 @@ protected:
// device-level overrides
virtual void device_start() override;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
+ TIMER_CALLBACK_MEMBER(irq_timer_tick);
u8 m_reg[8];
@@ -95,9 +90,8 @@ private:
u8 m_latch;
u16 m_irq_count, m_irq_count_latch;
- int m_irq_enable;
+ u8 m_irq_enable;
- static const device_timer_id TIMER_IRQ = 0;
emu_timer *irq_timer;
};
@@ -130,13 +124,14 @@ public:
protected:
// construction/destruction
- nes_ks7016_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 mask);
+ nes_ks7016_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 a15_flip);
// device-level overrides
virtual void device_start() override;
private:
- u8 m_latch, m_mask;
+ u8 m_latch;
+ const u8 m_a15_flip;
};
@@ -156,27 +151,27 @@ class nes_ks7017_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_ks7017_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_ks7017_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual uint8_t read_ex(offs_t offset) override;
- virtual void write_ex(offs_t offset, uint8_t data) override;
- virtual void write_l(offs_t offset, uint8_t data) override;
+ virtual u8 read_ex(offs_t offset) override;
+ virtual void write_ex(offs_t offset, u8 data) override;
+ virtual void write_l(offs_t offset, u8 data) override;
virtual void pcb_reset() override;
protected:
// device-level overrides
virtual void device_start() override;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
+ TIMER_CALLBACK_MEMBER(irq_timer_tick);
private:
- uint8_t m_latch;
+ u8 m_latch;
- uint16_t m_irq_count;
- uint8_t m_irq_status;
- int m_irq_enable;
+ u16 m_irq_count;
+ u8 m_irq_status;
+ u8 m_irq_enable;
- static const device_timer_id TIMER_IRQ = 0;
emu_timer *irq_timer;
};
@@ -192,10 +187,6 @@ public:
virtual void write_h(offs_t offset, u8 data) override;
virtual void pcb_reset() override;
-
-protected:
- // device-level overrides
- virtual void device_start() override;
};
@@ -227,15 +218,11 @@ class nes_ks7012_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_ks7012_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_ks7012_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual void write_h(offs_t offset, uint8_t data) override;
+ virtual void write_h(offs_t offset, u8 data) override;
virtual void pcb_reset() override;
-
-protected:
- // device-level overrides
- virtual void device_start() override;
};
@@ -245,16 +232,12 @@ class nes_ks7013b_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_ks7013b_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_ks7013b_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual void write_m(offs_t offset, uint8_t data) override;
- virtual void write_h(offs_t offset, uint8_t data) override;
+ virtual void write_m(offs_t offset, u8 data) override;
+ virtual void write_h(offs_t offset, u8 data) override;
virtual void pcb_reset() override;
-
-protected:
- // device-level overrides
- virtual void device_start() override;
};
@@ -288,11 +271,11 @@ class nes_ks7031_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_ks7031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_ks7031_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual uint8_t read_m(offs_t offset) override;
- virtual uint8_t read_h(offs_t offset) override;
- virtual void write_h(offs_t offset, uint8_t data) override;
+ virtual u8 read_m(offs_t offset) override;
+ virtual u8 read_h(offs_t offset) override;
+ virtual void write_h(offs_t offset, u8 data) override;
virtual void pcb_reset() override;
@@ -301,7 +284,7 @@ protected:
virtual void device_start() override;
private:
- uint8_t m_reg[4];
+ u8 m_reg[4];
};
@@ -311,12 +294,12 @@ class nes_ks7037_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_ks7037_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_ks7037_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual uint8_t read_m(offs_t offset) override;
- virtual uint8_t read_h(offs_t offset) override;
- virtual void write_m(offs_t offset, uint8_t data) override;
- virtual void write_h(offs_t offset, uint8_t data) override;
+ virtual u8 read_m(offs_t offset) override;
+ virtual u8 read_h(offs_t offset) override;
+ virtual void write_m(offs_t offset, u8 data) override;
+ virtual void write_h(offs_t offset, u8 data) override;
virtual void pcb_reset() override;
@@ -325,9 +308,7 @@ protected:
virtual void device_start() override;
private:
- void update_prg();
- uint8_t m_latch;
- uint8_t m_reg[8];
+ u8 m_reg;
};