From 7216fe6a99d90c2a67b1b8140c37fb755b1b86e0 Mon Sep 17 00:00:00 2001 From: 0kmg <9137159+0kmg@users.noreply.github.com> Date: Wed, 30 Jun 2021 09:23:44 -0800 Subject: bus/nes: add support for 2 more FDS conversions (#8238) * add KS7010 PCB device unique to akumafds * add KS7030 PCB device unique to dokidokia * do some sorting and tidying of Kaiser board tags New working software list additions ----------------------------------- Akumajou Dracula (Asia, FDS conversion) [Kevtris] Doki Doki Panic (Asia, FDS conversion, alt PCB) [famiac] --- src/devices/bus/nes/kaiser.h | 60 ++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 55 insertions(+), 5 deletions(-) (limited to 'src/devices/bus/nes/kaiser.h') diff --git a/src/devices/bus/nes/kaiser.h b/src/devices/bus/nes/kaiser.h index 8b57957e501..0b71e59cb51 100644 --- a/src/devices/bus/nes/kaiser.h +++ b/src/devices/bus/nes/kaiser.h @@ -127,6 +127,28 @@ private: }; +// ======================> nes_ks7010_device + +class nes_ks7010_device : public nes_nrom_device +{ +public: + // construction/destruction + nes_ks7010_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + + virtual u8 read_m(offs_t offset) override; + virtual u8 read_h(offs_t offset) override; + + virtual void pcb_reset() override; + +protected: + // device-level overrides + virtual void device_start() override; + +private: + u8 m_latch; +}; + + // ======================> nes_ks7012_device class nes_ks7012_device : public nes_nrom_device @@ -144,6 +166,7 @@ protected: virtual void device_start() override; }; + // ======================> nes_ks7013b_device class nes_ks7013b_device : public nes_nrom_device @@ -163,6 +186,30 @@ protected: }; +// ======================> nes_ks7030_device + +class nes_ks7030_device : public nes_nrom_device +{ +public: + // construction/destruction + nes_ks7030_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + + 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; + +protected: + // device-level overrides + virtual void device_start() override; + +private: + u8 m_reg[2]; +}; + + // ======================> nes_ks7031_device class nes_ks7031_device : public nes_nrom_device @@ -207,6 +254,7 @@ private: uint8_t m_reg; }; + // ======================> nes_ks7037_device class nes_ks7037_device : public nes_nrom_device @@ -257,16 +305,18 @@ private: // device type definition -DECLARE_DEVICE_TYPE(NES_KS7058, nes_ks7058_device) -DECLARE_DEVICE_TYPE(NES_KS7022, nes_ks7022_device) -DECLARE_DEVICE_TYPE(NES_KS7032, nes_ks7032_device) DECLARE_DEVICE_TYPE(NES_KS202, nes_ks202_device) -DECLARE_DEVICE_TYPE(NES_KS7017, nes_ks7017_device) +DECLARE_DEVICE_TYPE(NES_KS7010, nes_ks7010_device) DECLARE_DEVICE_TYPE(NES_KS7012, nes_ks7012_device) +DECLARE_DEVICE_TYPE(NES_KS7016, nes_ks7016_device) +DECLARE_DEVICE_TYPE(NES_KS7017, nes_ks7017_device) DECLARE_DEVICE_TYPE(NES_KS7013B, nes_ks7013b_device) +DECLARE_DEVICE_TYPE(NES_KS7022, nes_ks7022_device) +DECLARE_DEVICE_TYPE(NES_KS7030, nes_ks7030_device) DECLARE_DEVICE_TYPE(NES_KS7031, nes_ks7031_device) -DECLARE_DEVICE_TYPE(NES_KS7016, nes_ks7016_device) +DECLARE_DEVICE_TYPE(NES_KS7032, nes_ks7032_device) DECLARE_DEVICE_TYPE(NES_KS7037, nes_ks7037_device) DECLARE_DEVICE_TYPE(NES_KS7057, nes_ks7057_device) +DECLARE_DEVICE_TYPE(NES_KS7058, nes_ks7058_device) #endif // MAME_BUS_NES_KAISER_H -- cgit v1.2.3