summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/upd765.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/upd765.h')
-rw-r--r--src/devices/machine/upd765.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/devices/machine/upd765.h b/src/devices/machine/upd765.h
index d0c7c6ac3ae..c4fd1acb2da 100644
--- a/src/devices/machine/upd765.h
+++ b/src/devices/machine/upd765.h
@@ -34,7 +34,7 @@
downcast<upd72065_device *>(device)->set_select_lines_connected(_select);
#define MCFG_I82072_ADD(_tag, _ready) \
- MCFG_DEVICE_ADD(_tag, I82072, 0) \
+ MCFG_DEVICE_ADD(_tag, I82072, 24_MHz_XTAL) \
downcast<i82072_device *>(device)->set_ready_line_connected(_ready);
#define MCFG_SMC37C78_ADD(_tag) \
@@ -434,6 +434,9 @@ protected:
bool read_one_bit(const attotime &limit);
bool write_one_bit(const attotime &limit);
+
+ virtual u8 get_drive_busy() const { return 0; }
+ virtual void clr_drive_busy() { };
};
class upd765a_device : public upd765_family_device {
@@ -483,11 +486,16 @@ protected:
virtual void execute_command(int cmd) override;
virtual void command_end(floppy_info &fi, bool data_completion) override;
virtual void index_callback(floppy_image_device *floppy, int state) override;
+ virtual u8 get_drive_busy() const override { return drive_busy; };
+ virtual void clr_drive_busy() override { drive_busy = 0; };
void motor_control(int fid, bool start_motor);
+private:
u8 motor_off_counter;
u8 motor_on_counter;
+ u8 drive_busy;
+ int delayed_command;
};
class smc37c78_device : public upd765_family_device {