diff options
Diffstat (limited to 'src/devices/bus/z88/z88.h')
-rw-r--r-- | src/devices/bus/z88/z88.h | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/src/devices/bus/z88/z88.h b/src/devices/bus/z88/z88.h index 15207ff66df..3fe6b24ff0c 100644 --- a/src/devices/bus/z88/z88.h +++ b/src/devices/bus/z88/z88.h @@ -56,7 +56,7 @@ #pragma once -#include "softlist_dev.h" +#include "imagedev/cartrom.h" /*************************************************************************** @@ -74,6 +74,7 @@ public: // reading and writing virtual uint8_t read(offs_t offset) { return 0xff; } virtual void write(offs_t offset, uint8_t data) { } + virtual void vpp_w(int state) { } virtual uint8_t* get_cart_base() { return nullptr; } virtual uint32_t get_cart_size() { return 0; } @@ -85,7 +86,7 @@ protected: // ======================> z88cart_slot_device class z88cart_slot_device : public device_t, - public device_image_interface, + public device_cartrom_image_interface, public device_single_card_slot_interface<device_z88cart_interface> { public: @@ -103,38 +104,30 @@ public: auto out_flp_callback() { return m_out_flp_cb.bind(); } - // image-level overrides - virtual image_init_result call_load() override; + // device_image_interface implementation + virtual std::pair<std::error_condition, std::string> call_load() override; virtual void call_unload() override; - virtual iodevice_t image_type() const noexcept override { return IO_CARTSLOT; } - virtual bool is_readable() const noexcept override { return true; } - virtual bool is_writeable() const noexcept override { return true; } - virtual bool is_creatable() const noexcept override { return true; } - virtual bool must_be_loaded() const noexcept override { return false; } virtual bool is_reset_on_load() const noexcept override { return false; } virtual const char *image_interface() const noexcept override { return "z88_cart"; } virtual const char *file_extensions() const noexcept override { return "epr,bin"; } - // slot interface overrides + // device_slot_interface implementation virtual std::string get_default_card_software(get_default_card_software_hook &hook) const override; // reading and writing uint8_t read(offs_t offset); void write(offs_t offset, uint8_t data); + void vpp_w(int state); uint8_t* get_cart_base(); protected: - // device-level overrides + // device_t implementation virtual void device_start() override; - virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; - // device_image_interface implementation - virtual const software_list_loader &get_software_list_loader() const override { return rom_software_list_loader::instance(); } + TIMER_CALLBACK_MEMBER(close_flap); private: - static constexpr device_timer_id TIMER_FLP_CLEAR = 0; - devcb_write_line m_out_flp_cb; device_z88cart_interface* m_cart; emu_timer * m_flp_timer; |