|Re: [hatari-devel] Improved timings for the FDC emulation|
[ Thread Index |
| More lists.tuxfamily.org/hatari-devel Archives
- To: hatari-devel@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [hatari-devel] Improved timings for the FDC emulation
- From: David Savinkoff <dsavnkff@xxxxxxxxx>
- Date: Sat, 23 Nov 2013 15:29:26 -0700 (MST)
- Thread-index: lMDeibBQELd2ocUx3nYC7XHVfVmU6A==
- Thread-topic: Improved timings for the FDC emulation
----- Nicolas Pomarède wrote:
> I committed a new version of fdc.c with many internal changes.
> This should give very few compatibility's improvements compared to
> previous version, as I don't know of many programs which had problems
> with FDC's emulation, but it should be much closer to the WD1772
> datasheet and avoid future incompatibilities with usage not yet encountered.
> The changes are :
> - much improved status register and commands' behaviour when the drive
> is off, or not selected or there's no floppy in it. Also, correct
> timeout (or no timeout at all) for those case (most commands should wait
> forever when a drive is off or empty).
> - more accurate index emulation ; delays are now counted using
> indexes, instead of using the corresponding number of expected cycles
> (which didn't take into account the case of disabled/empty drive)
> - much closer to the statemachine described in the WD1772 doc. Timings
> were OK, but not always applied at the exact place or in the correct
> order. This would certainly not have made a game/demo crash before, as
> those timings are hard to measure exactly on a real STF, but still,
> experiment prooved it's always better to stick to the HW as close as
> - some code's reorganisation to try to have a general emulation's
> logic that follows all the steps described in the WD1772's doc.
> I tested many demos/games I use as reference for FDC's emulation and
> didn't see any problem so far, don't hesisate do test some of your
> favorites ones (from my experience, games (even if cracked) are often
> more likely to show errors in FDC's emulation)
> (one game not working so far is "Knightmare" on DBug 24, the way it
> worked in Hatari 1.7 was not correct anyway, so this needs more
The latest changes to Hatari solved the problem of a
- [Emutos-devel] Slow EmuTOS boot-up -.
However, there may be a little clean-up required.
Hatari changeset 4748 mentions:
Update manuals about giving an empty string for a floppy/HD image to disable it
This is not quite right because:
- a floppy drive can be ON and have a floppy inserted
- a floppy drive can be ON and have a floppy not inserted
- a floppy drive can be OFF and have a floppy inserted
- a floppy drive can be OFF and have a floppy not inserted
This can be seen by pressing F12 > Floppy Disks
and noting the [check boxes] and [Eject button].
I also noticed that Hatari/EmuTOS always shows Drive B:
when both drives are disabled now.
Hatari needs to be tested for Floppy disk / Floppy drive / EmuTOS
combinations so that the F12 > Floppy Disks menu makes sense.