summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/nes/pirate.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/nes/pirate.h')
-rw-r--r--src/devices/bus/nes/pirate.h69
1 files changed, 27 insertions, 42 deletions
diff --git a/src/devices/bus/nes/pirate.h b/src/devices/bus/nes/pirate.h
index 2185387f71d..9f7be76cc56 100644
--- a/src/devices/bus/nes/pirate.h
+++ b/src/devices/bus/nes/pirate.h
@@ -14,15 +14,9 @@ class nes_agci_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_agci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_agci_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;
};
@@ -32,15 +26,11 @@ class nes_dreamtech_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_dreamtech_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_dreamtech_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual void write_l(offs_t offset, uint8_t 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;
};
@@ -75,11 +65,11 @@ class nes_futuremedia_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_futuremedia_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_futuremedia_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 hblank_irq(int scanline, int vblank, int blanked) override;
+ virtual void hblank_irq(int scanline, bool vblank, bool blanked) override;
virtual void pcb_reset() override;
protected:
@@ -87,8 +77,7 @@ protected:
virtual void device_start() override;
private:
- uint16_t m_irq_count, m_irq_count_latch;
- uint8_t m_irq_clear;
+ u8 m_irq_count, m_irq_count_latch;
int m_irq_enable;
};
@@ -99,15 +88,9 @@ class nes_magseries_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_magseries_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
- virtual void write_h(offs_t offset, uint8_t data) override;
+ nes_magseries_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
- virtual void pcb_reset() override;
-
-protected:
- // device-level overrides
- virtual void device_start() override;
+ virtual void write_h(offs_t offset, u8 data) override;
};
@@ -117,9 +100,9 @@ class nes_daou306_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_daou306_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_daou306_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;
@@ -128,7 +111,7 @@ protected:
virtual void device_start() override;
private:
- uint8_t m_reg[16];
+ u8 m_reg[16];
};
@@ -141,6 +124,8 @@ public:
nes_cc21_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
virtual void write_h(offs_t offset, u8 data) override;
+
+ virtual void pcb_reset() override;
};
@@ -155,10 +140,6 @@ public:
virtual void write_l(offs_t offset, uint8_t data) override;
virtual void pcb_reset() override;
-
-protected:
- // device-level overrides
- virtual void device_start() override;
};
@@ -185,17 +166,18 @@ private:
};
-// ======================> nes_mk2_device
+// ======================> nes_jy830623c_device
-class nes_mk2_device : public nes_nrom_device
+class nes_jy830623c_device : public nes_nrom_device
{
public:
// construction/destruction
- nes_mk2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ nes_jy830623c_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_m(offs_t offset, u8 data) override;
+ virtual void write_h(offs_t offset, u8 data) override;
- virtual void hblank_irq(int scanline, int vblank, int blanked) override;
+ virtual void hblank_irq(int scanline, bool vblank, bool blanked) override;
virtual void pcb_reset() override;
protected:
@@ -203,8 +185,11 @@ protected:
virtual void device_start() override;
private:
- uint16_t m_irq_count, m_irq_count_latch;
- uint8_t m_irq_clear;
+ void update_banks();
+ u8 m_latch;
+ u8 m_reg[6];
+
+ u16 m_irq_count, m_irq_count_latch;
int m_irq_enable;
};
@@ -290,7 +275,7 @@ DECLARE_DEVICE_TYPE(NES_DAOU306, nes_daou306_device)
DECLARE_DEVICE_TYPE(NES_CC21, nes_cc21_device)
DECLARE_DEVICE_TYPE(NES_XIAOZY, nes_xiaozy_device)
DECLARE_DEVICE_TYPE(NES_EDU2K, nes_edu2k_device)
-DECLARE_DEVICE_TYPE(NES_MK2, nes_mk2_device)
+DECLARE_DEVICE_TYPE(NES_JY830623C, nes_jy830623c_device)
DECLARE_DEVICE_TYPE(NES_43272, nes_43272_device)
DECLARE_DEVICE_TYPE(NES_EH8813A, nes_eh8813a_device)
//DECLARE_DEVICE_TYPE(NES_FUJIYA, nes_fujiya_device)