diff options
Diffstat (limited to 'src/devices/bus/ieee488/c2040fdc.h')
-rw-r--r-- | src/devices/bus/ieee488/c2040fdc.h | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/src/devices/bus/ieee488/c2040fdc.h b/src/devices/bus/ieee488/c2040fdc.h index b2b78452b84..cd3b277c82b 100644 --- a/src/devices/bus/ieee488/c2040fdc.h +++ b/src/devices/bus/ieee488/c2040fdc.h @@ -11,10 +11,6 @@ #pragma once -#include "formats/c3040_dsk.h" -#include "formats/c4040_dsk.h" -#include "formats/d64_dsk.h" -#include "formats/g64_dsk.h" #include "imagedev/floppy.h" @@ -37,16 +33,16 @@ public: uint8_t read(); void write(uint8_t data); - DECLARE_WRITE_LINE_MEMBER( ds0_w ); - DECLARE_WRITE_LINE_MEMBER( ds1_w ); - DECLARE_WRITE_LINE_MEMBER( drv_sel_w ); - DECLARE_WRITE_LINE_MEMBER( mode_sel_w ); - DECLARE_WRITE_LINE_MEMBER( rw_sel_w ); - DECLARE_WRITE_LINE_MEMBER( mtr0_w ); - DECLARE_WRITE_LINE_MEMBER( mtr1_w ); + void ds0_w(int state); + void ds1_w(int state); + void drv_sel_w(int state); + void mode_sel_w(int state); + void rw_sel_w(int state); + void mtr0_w(int state); + void mtr1_w(int state); - DECLARE_READ_LINE_MEMBER( wps_r ) { return checkpoint_live.drv_sel ? m_floppy1->wpt_r() : m_floppy0->wpt_r(); } - DECLARE_READ_LINE_MEMBER( sync_r ) { return checkpoint_live.sync; } + int wps_r() { return checkpoint_live.drv_sel ? m_floppy1->wpt_r() : m_floppy0->wpt_r(); } + int sync_r() { return checkpoint_live.sync; } void stp0_w(int stp); void stp1_w(int stp); @@ -59,11 +55,12 @@ protected: virtual void device_start() override; virtual void device_clock_changed() override; virtual void device_reset() override; - virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override; // optional information overrides virtual const tiny_rom_entry *device_rom_region() const override; + TIMER_CALLBACK_MEMBER(update_state); + void stp_w(floppy_image_device *floppy, int mtr, int &old_stp, int stp); enum { |