From 29bef61a3e3a3f966fb9d03ff67a6f17efdda9e3 Mon Sep 17 00:00:00 2001 From: SarahW Date: Sun, 16 Jul 2017 15:31:32 +0100 Subject: [PATCH] Eject floppy drives on reset - fixes loaded discs persisting through config changes. --- src/disc.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/disc.c b/src/disc.c index f4ccb2b..10274cc 100644 --- a/src/disc.c +++ b/src/disc.c @@ -205,9 +205,25 @@ void disc_set_rate(int drive, int drvden, int rate) void disc_reset() { + int drive; + curdrive = 0; disc_period = 32; timer_add(disc_poll, &disc_poll_time, &motoron, NULL); + + for (drive = 0; drive < 2; drive++) + { + if (loaders[driveloaders[drive]].close) + loaders[driveloaders[drive]].close(drive); + drive_empty[drive] = 1; + drives[drive].hole = NULL; + drives[drive].poll = NULL; + drives[drive].seek = NULL; + drives[drive].readsector = NULL; + drives[drive].writesector = NULL; + drives[drive].readaddress = NULL; + drives[drive].format = NULL; + } } void disc_init()