summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/nes/mmc1_clones.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/nes/mmc1_clones.h')
-rw-r--r--src/devices/bus/nes/mmc1_clones.h28
1 files changed, 27 insertions, 1 deletions
diff --git a/src/devices/bus/nes/mmc1_clones.h b/src/devices/bus/nes/mmc1_clones.h
index a20e1169ef4..993a0c1366d 100644
--- a/src/devices/bus/nes/mmc1_clones.h
+++ b/src/devices/bus/nes/mmc1_clones.h
@@ -1,5 +1,5 @@
// license:BSD-3-Clause
-// copyright-holders: kmg, Fabio Priuli
+// copyright-holders:kmg
#ifndef MAME_BUS_NES_MMC1_CLONES_H
#define MAME_BUS_NES_MMC1_CLONES_H
@@ -8,6 +8,30 @@
#include "mmc1.h"
+// ======================> nes_bmc_jy012005_device
+
+class nes_bmc_jy012005_device : public nes_sxrom_device
+{
+public:
+ // construction/destruction
+ nes_bmc_jy012005_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
+
+ virtual void write_m(offs_t offset, u8 data) override;
+
+ virtual void pcb_reset() override;
+
+protected:
+ // device-level overrides
+ virtual void device_start() override;
+
+ virtual void set_prg() override;
+ virtual void set_chr() override;
+
+private:
+ u8 m_latch0;
+};
+
+
// ======================> nes_bmc_jy820845c_device
class nes_bmc_jy820845c_device : public nes_sxrom_device
@@ -141,6 +165,7 @@ protected:
virtual void set_prg() override { nes_sxrom_device::set_prg(0x08, 0x07); }
virtual void set_chr() override { nes_sxrom_device::set_chr(0x20, 0x1f); }
+ virtual void set_mirror() override {} // hardwired to vertical mirroring
private:
void update_banks();
@@ -149,6 +174,7 @@ private:
// device type definition
+DECLARE_DEVICE_TYPE(NES_BMC_JY012005, nes_bmc_jy012005_device)
DECLARE_DEVICE_TYPE(NES_BMC_JY820845C, nes_bmc_jy820845c_device)
DECLARE_DEVICE_TYPE(NES_FARID_SLROM, nes_farid_slrom_device)
DECLARE_DEVICE_TYPE(NES_NINJARYU, nes_ninjaryu_device)