diff options
author | David Haywood <hazemamewip@hotmail.com> | 2018-01-27 15:17:37 +0000 |
---|---|---|
committer | R. Belmont <rb6502@users.noreply.github.com> | 2018-01-27 10:17:37 -0500 |
commit | ff61c2c50d4873a2fe0bea9a27a41e0be3d983e5 (patch) | |
tree | a2aca740abb6ba8637a0a53ca258271e40c20963 /src/devices/bus/psx/gamebooster.h | |
parent | 9560cc97d903ce5abad7030ff48f55319b029e18 (diff) |
framework for adding 'gamebooster' (need to figure out how it actually works / maps tho) (#3134)
* fix/tidy tvboy driver (nw)
* missed file (nw)
* framework for adding 'gamebooster' (need to figure out how it actually works / maps tho) (nw)
(code based on zx spectrum expansion port code)
* (nw)
* lost a line (nw)
* allow it to run (nw)
* continued work (nw)
* mame64 psj -parallel gamebooster -cart tetris now works
* rm outdated (nw)
* remove unneeded code (nw)
* limit accesses, log unexpected ones, might have custom banking (nw)
* write bytes in an order that keeps the gb code happier , sml boots (nw)
Diffstat (limited to 'src/devices/bus/psx/gamebooster.h')
-rw-r--r-- | src/devices/bus/psx/gamebooster.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/devices/bus/psx/gamebooster.h b/src/devices/bus/psx/gamebooster.h new file mode 100644 index 00000000000..a6c06844d7e --- /dev/null +++ b/src/devices/bus/psx/gamebooster.h @@ -0,0 +1,49 @@ +// license:BSD-3-Clause +// copyright-holders:David Haywood + +#ifndef MAME_BUS_PSX_GAMEBOOSTER_H +#define MAME_BUS_PSX_GAMEBOOSTER_H + +#pragma once + + +#include "parallel.h" +#include "bus/gameboy/rom.h" +#include "bus/gameboy/mbc.h" + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> psx_gamebooster_device + +class psx_gamebooster_device : + public device_t, + public psx_parallel_interface +{ +public: + // construction/destruction + psx_gamebooster_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + +protected: + // device-level overrides + virtual void device_start() override; + virtual void device_reset() override; + + // optional information overrides + virtual const tiny_rom_entry *device_rom_region() const override; + virtual void device_add_mconfig(machine_config &config) override; + + virtual DECLARE_READ16_MEMBER(exp_r) override; + virtual DECLARE_WRITE16_MEMBER(exp_w) override; + +private: + required_memory_region m_rom; + required_device<gb_cart_slot_device> m_cartslot; +}; + + +// device type definition +DECLARE_DEVICE_TYPE(PSX_GAMEBOOSTER, psx_gamebooster_device) + +#endif // MAME_BUS_PSX_GAMEBOOSTER_H |