diff options
Diffstat (limited to 'src/devices/bus/astrocde/rom.h')
-rw-r--r-- | src/devices/bus/astrocde/rom.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/devices/bus/astrocde/rom.h b/src/devices/bus/astrocde/rom.h index 0471ada8dd1..efd17b16ded 100644 --- a/src/devices/bus/astrocde/rom.h +++ b/src/devices/bus/astrocde/rom.h @@ -6,6 +6,7 @@ #pragma once #include "slot.h" +#include "imagedev/cassette.h" // ======================> astrocade_rom_device @@ -64,10 +65,30 @@ private: uint8_t m_base_bank; }; +// ======================> astrocade_rom_cass_device + +class astrocade_rom_cass_device : public astrocade_rom_device +{ +public: + // construction/destruction + astrocade_rom_cass_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + + // reading and writing + virtual DECLARE_READ8_MEMBER(read_rom) override; + +private: + virtual void device_start() override { } + virtual void device_reset() override { } + virtual void device_add_mconfig(machine_config &config) override; + + required_device<cassette_image_device> m_cassette; +}; + // device type definition DECLARE_DEVICE_TYPE(ASTROCADE_ROM_STD, astrocade_rom_device) DECLARE_DEVICE_TYPE(ASTROCADE_ROM_256K, astrocade_rom_256k_device) DECLARE_DEVICE_TYPE(ASTROCADE_ROM_512K, astrocade_rom_512k_device) +DECLARE_DEVICE_TYPE(ASTROCADE_ROM_CASS, astrocade_rom_cass_device) #endif // MAME_BUS_ASTROCADE_ROM_H |