1 // license:LGPL-2.1+ 2 // copyright-holders:Michael Zapf 3 /**************************************************************************** 4 5 TI-99 32K memory expansion 6 See ti32kmem.c for documentation 7 8 Michael Zapf 9 10 February 2012: Rewritten as class 11 12 *****************************************************************************/ 13 14 #ifndef MAME_BUS_TI99_PEB_TI_32KMEM_H 15 #define MAME_BUS_TI99_PEB_TI_32KMEM_H 16 17 #pragma once 18 19 #include "peribox.h" 20 #include "machine/ram.h" 21 22 namespace bus { namespace ti99 { namespace peb { 23 24 class ti_32k_expcard_device : public device_t, public device_ti99_peribox_card_interface 25 { 26 public: 27 ti_32k_expcard_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); 28 void readz(offs_t offset, uint8_t *value) override; 29 void write(offs_t offset, uint8_t data) override; 30 crureadz(offs_t offset,uint8_t * value)31 void crureadz(offs_t offset, uint8_t *value) override { } cruwrite(offs_t offset,uint8_t data)32 void cruwrite(offs_t offset, uint8_t data) override { } 33 34 protected: 35 void device_start() override; 36 virtual void device_add_mconfig(machine_config &config) override; 37 38 private: 39 required_device<ram_device> m_ram; 40 }; 41 42 } } } // end namespace bus::ti99::peb 43 44 DECLARE_DEVICE_TYPE_NS(TI99_32KMEM, bus::ti99::peb, ti_32k_expcard_device) 45 46 #endif // MAME_BUS_TI99_PEB_TI_32KMEM_H 47