diff options
author | 2018-04-16 21:35:03 -0500 | |
---|---|---|
committer | 2018-04-16 22:35:03 -0400 | |
commit | ba1da30df2ff42e3b05e8fd1603c19573f0d3174 (patch) | |
tree | fa640c60dc870fd6c0b55b06358c466629cb04a0 /src/devices/bus/gameboy/mbc.h | |
parent | 261bcfa3cdc15e409ae34be1ba637f8319743353 (diff) |
Gameboy camera rom functional (#3442)
* cleaned up midvunit inputs and outputs. cleaned up seattle outputs.
* better motion inputs and sorted main buttons for midvunit
* keep case the same
* removed runtime tagmap lookup
* gameboy camera functional
Diffstat (limited to 'src/devices/bus/gameboy/mbc.h')
-rw-r--r-- | src/devices/bus/gameboy/mbc.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/devices/bus/gameboy/mbc.h b/src/devices/bus/gameboy/mbc.h index a99f859639b..4bc169488bf 100644 --- a/src/devices/bus/gameboy/mbc.h +++ b/src/devices/bus/gameboy/mbc.h @@ -403,6 +403,28 @@ protected: uint8_t m_bank_mask, m_bank, m_reg, m_mode; }; +// ======================> gb_rom_camera_device +class gb_rom_camera_device : public gb_rom_mbc_device +{ +public: + // construction/destruction + gb_rom_camera_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + + virtual DECLARE_READ8_MEMBER(read_rom) override; + virtual DECLARE_WRITE8_MEMBER(write_bank) 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; + +private: + void update_camera(); + uint8_t m_camera_regs[54]; +}; + // device type definition @@ -423,5 +445,6 @@ DECLARE_DEVICE_TYPE(GB_ROM_LICHENG, gb_rom_licheng_device) DECLARE_DEVICE_TYPE(GB_ROM_DIGIMON, gb_rom_digimon_device) DECLARE_DEVICE_TYPE(GB_ROM_ROCKMAN8, gb_rom_rockman8_device) DECLARE_DEVICE_TYPE(GB_ROM_SM3SP, gb_rom_sm3sp_device) +DECLARE_DEVICE_TYPE(GB_ROM_CAMERA, gb_rom_camera_device) #endif // MAME_BUS_GAMEBOY_MBC_H |