summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/machine/wd_fdc.h
diff options
context:
space:
mode:
author Olivier Galibert <galibert@pobox.com>2013-09-05 13:21:51 +0000
committer Olivier Galibert <galibert@pobox.com>2013-09-05 13:21:51 +0000
commitd2e5a7db13f71466cfe3a96f0729b689bcdd1d30 (patch)
tree60cd77ed1940cf947b0e87f7a6da0f7c0d3634ee /src/emu/machine/wd_fdc.h
parent217a0fbbd18e13a5a6837b844c391e35bf65d60a (diff)
(mess) wd_fdc: Fix ready handling, allow ready connected to vcc [O. Galibert]
(mess) wd_fdc: Data overrun drops drq [O. Galibert] (mess) kaypro: Fix motor on line, connect ready to vcc, disable the floppy delay [O. Galibert]
Diffstat (limited to 'src/emu/machine/wd_fdc.h')
-rw-r--r--src/emu/machine/wd_fdc.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/emu/machine/wd_fdc.h b/src/emu/machine/wd_fdc.h
index 90f99941134..e21650269fb 100644
--- a/src/emu/machine/wd_fdc.h
+++ b/src/emu/machine/wd_fdc.h
@@ -108,6 +108,9 @@
#define MCFG_WD1773x_ADD(_tag, _clock) \
MCFG_DEVICE_ADD(_tag, WD1773x, _clock)
+#define MCFG_WD_FDC_FORCE_READY \
+ downcast<wd_fdc_t *>(device)->set_force_ready(true);
+
class wd_fdc_t : public device_t {
public:
typedef delegate<void (bool state)> line_cb;
@@ -120,6 +123,7 @@ public:
void setup_drq_cb(line_cb cb);
void setup_hld_cb(line_cb cb);
void setup_enp_cb(line_cb cb);
+ void set_force_ready(bool force_ready);
void cmd_w(UINT8 val);
UINT8 status_r();
@@ -336,7 +340,7 @@ private:
emu_timer *t_gen, *t_cmd, *t_track, *t_sector;
- bool dden, status_type_1, intrq, drq, hld, hlt, enp;
+ bool dden, status_type_1, intrq, drq, hld, hlt, enp, force_ready;
int main_state, sub_state;
UINT8 command, track, sector, data, status, intrq_cond;
int last_dir;