summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/gameboy/rom.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/gameboy/rom.h')
-rw-r--r--src/devices/bus/gameboy/rom.h95
1 files changed, 52 insertions, 43 deletions
diff --git a/src/devices/bus/gameboy/rom.h b/src/devices/bus/gameboy/rom.h
index 99a1602efa9..a5439fba598 100644
--- a/src/devices/bus/gameboy/rom.h
+++ b/src/devices/bus/gameboy/rom.h
@@ -1,7 +1,7 @@
// license:BSD-3-Clause
// copyright-holders:Fabio Priuli, Wilbert Pol
-#ifndef __GB_ROM_H
-#define __GB_ROM_H
+#ifndef MAME_BUS_GAMEBOY_ROM_H
+#define MAME_BUS_GAMEBOY_ROM_H
#include "gb_slot.h"
@@ -13,20 +13,22 @@ class gb_rom_device : public device_t,
{
public:
// construction/destruction
- gb_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source);
gb_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- // device-level overrides
- virtual void device_start() override { shared_start(); };
- virtual void device_reset() override { shared_reset(); };
-
- void shared_start();
- void shared_reset();
-
// reading and writing
virtual DECLARE_READ8_MEMBER(read_rom) override;
virtual DECLARE_READ8_MEMBER(read_ram) override;
virtual DECLARE_WRITE8_MEMBER(write_ram) override;
+
+protected:
+ gb_rom_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
+
+ // device-level overrides
+ virtual void device_start() override { shared_start(); }
+ virtual void device_reset() override { shared_reset(); }
+
+ void shared_start();
+ void shared_reset();
};
// ======================> gb_rom_tama5_device
@@ -36,15 +38,16 @@ public:
// construction/destruction
gb_rom_tama5_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- // device-level overrides
- virtual void device_start() override;
- virtual void device_reset() override;
-
// reading and writing
virtual DECLARE_READ8_MEMBER(read_rom) override;
virtual DECLARE_READ8_MEMBER(read_ram) override;
virtual DECLARE_WRITE8_MEMBER(write_ram) override;
+protected:
+ // device-level overrides
+ virtual void device_start() override;
+ virtual void device_reset() override;
+
uint16_t m_tama5_data, m_tama5_addr, m_tama5_cmd;
uint8_t m_regs[32];
uint8_t m_rtc_reg;
@@ -57,13 +60,14 @@ public:
// construction/destruction
gb_rom_wisdom_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- // device-level overrides
- virtual void device_start() override { shared_start(); };
- virtual void device_reset() override { shared_reset(); };
-
// reading and writing
virtual DECLARE_READ8_MEMBER(read_rom) override;
virtual DECLARE_WRITE8_MEMBER(write_bank) override;
+
+protected:
+ // device-level overrides
+ virtual void device_start() override { shared_start(); }
+ virtual void device_reset() override { shared_reset(); }
};
// ======================> gb_rom_yong_device
@@ -73,13 +77,14 @@ public:
// construction/destruction
gb_rom_yong_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- // device-level overrides
- virtual void device_start() override { shared_start(); };
- virtual void device_reset() override { shared_reset(); };
-
// reading and writing
virtual DECLARE_READ8_MEMBER(read_rom) override;
virtual DECLARE_WRITE8_MEMBER(write_bank) override;
+
+protected:
+ // device-level overrides
+ virtual void device_start() override { shared_start(); }
+ virtual void device_reset() override { shared_reset(); }
};
// ======================> gb_rom_atvrac_device
@@ -89,13 +94,14 @@ public:
// construction/destruction
gb_rom_atvrac_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- // device-level overrides
- virtual void device_start() override { shared_start(); };
- virtual void device_reset() override { shared_reset(); };
-
// reading and writing
virtual DECLARE_READ8_MEMBER(read_rom) override;
virtual DECLARE_WRITE8_MEMBER(write_bank) override;
+
+protected:
+ // device-level overrides
+ virtual void device_start() override { shared_start(); }
+ virtual void device_reset() override { shared_reset(); }
};
// ======================> gb_rom_lasama_device
@@ -105,13 +111,14 @@ public:
// construction/destruction
gb_rom_lasama_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- // device-level overrides
- virtual void device_start() override { shared_start(); };
- virtual void device_reset() override { shared_reset(); };
-
// reading and writing
virtual DECLARE_READ8_MEMBER(read_rom) override;
virtual DECLARE_WRITE8_MEMBER(write_bank) override;
+
+protected:
+ // device-level overrides
+ virtual void device_start() override { shared_start(); }
+ virtual void device_reset() override { shared_reset(); }
};
@@ -121,27 +128,29 @@ class megaduck_rom_device :public device_t,
{
public:
// construction/destruction
- megaduck_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname, const char *source);
megaduck_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- // device-level overrides
- virtual void device_start() override;
- virtual void device_reset() override;
-
// reading and writing
virtual DECLARE_READ8_MEMBER(read_rom) override;
virtual DECLARE_WRITE8_MEMBER(write_bank) override;
virtual DECLARE_WRITE8_MEMBER(write_ram) override;
+
+protected:
+ megaduck_rom_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
+
+ // device-level overrides
+ virtual void device_start() override;
+ virtual void device_reset() override;
};
// device type definition
-extern const device_type GB_STD_ROM;
-extern const device_type GB_ROM_TAMA5;
-extern const device_type GB_ROM_WISDOM;
-extern const device_type GB_ROM_YONG;
-extern const device_type GB_ROM_ATVRAC;
-extern const device_type GB_ROM_LASAMA;
+DECLARE_DEVICE_TYPE(GB_STD_ROM, gb_rom_device)
+DECLARE_DEVICE_TYPE(GB_ROM_TAMA5, gb_rom_tama5_device)
+DECLARE_DEVICE_TYPE(GB_ROM_WISDOM, gb_rom_wisdom_device)
+DECLARE_DEVICE_TYPE(GB_ROM_YONG, gb_rom_yong_device)
+DECLARE_DEVICE_TYPE(GB_ROM_ATVRAC, gb_rom_atvrac_device)
+DECLARE_DEVICE_TYPE(GB_ROM_LASAMA, gb_rom_lasama_device)
-extern const device_type MEGADUCK_ROM;
+DECLARE_DEVICE_TYPE(MEGADUCK_ROM, megaduck_rom_device)
-#endif
+#endif // MAME_BUS_GAMEBOY_ROM_H