Re: [hatari-devel] Re: Hatari floppy drive detection with EmuTOS |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/hatari-devel Archives
]
- To: hatari-devel@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [hatari-devel] Re: Hatari floppy drive detection with EmuTOS
- From: David Savinkoff <dsavnkff@xxxxxxxxx>
- Date: Thu, 16 Jan 2014 22:19:09 -0700 (MST)
- Thread-index: IUbAPjJEF+nOCnNJMx9LhOybFa9Mjw==
- Thread-topic: Hatari floppy drive detection with EmuTOS
----- Roger Burrows wrote:
> Hi David,
> On 16 Jan 2014 at 20:33, David Savinkoff wrote:
> >
> > I just compiled EmuTOS two different ways:
> >
> > --- emutos/bios/floppy.c 2014-01-13 20:04:47.000000000 -0800
> > +++ emutos/bios/floppy.c 2014-01-16 18:29:43.000000000 -0800
> > @@ -292,7 +292,7 @@
> > #if CONF_WITH_FDC
> > floplock(dev);
> > select(dev, 0);
> > - set_fdc_reg(FDC_CS, FDC_RESTORE | finfo[dev].actual_rate);
> > + set_fdc_reg(FDC_CS, FDC_RESTORE | FDC_HBIT | finfo[dev].actual_rate);
> > if(timeout_gpip(TIMEOUT)) {
> > /* timeout */
> > KDEBUG(("flop_detect_drive(%d) timeout\n",dev));
> >
> > The first way is:
> > - set_fdc_reg(FDC_CS, FDC_RESTORE | finfo[dev].actual_rate);
> > This way has the problems as currently noted.
> >
> > The second way disables spin-up:
> > + set_fdc_reg(FDC_CS, FDC_RESTORE | FDC_HBIT | finfo[dev].actual_rate);
> > This way works in Hatari.
> >
> Are you running Hatari with just floppy disks enabled (no ACSi disk, no GEMDOS
> disk) and no "patch timer D", no "boot faster ..." ? Under these conditions,
> EmuTOS does not see drive B on my system.
>
Yes.
I used Hatari initial default configuration.
(patch timer D + boot faster were by default selected)
(there was No ACSI, and No GEMDOS)
>
> If you have a GEMDOS disk, for sure you will see two drives due to Hatari
> patching the drivebits.
>
> Roger
>
>
Here is the result of testing to your specification. I made sure Patch Timer D
and Boot Faster by patching... were Not selected this time.
The result is the same as before with the Exception that I saw the Drive A
light flash first every time.
The test result is:
With Both drives Enabled and No disks inserted:
When spin-up is disabled (1) Drive B light comes on dim for a moment,
then goes dark as Drive A light comes on bright for a moment before
going dim on Hatari. Hatari then takes a Long time to get to the desktop
with Both Drive A and Drive B displayed.
With Both drives Disabled and No disks inserted:
When spin-up is disabled Drive A light comes on bright for a moment,
then goes dark as Drive B light comes on bright for a moment before
going dim on Hatari. Hatari then takes a Short time to get to the desktop
with No drives displayed.
With Drive A Enabled and Drive B Disabled and No disks inserted:
When spin-up is disabled (1) Drive B light comes on bright for a moment,
then goes dim, then goes dark as Drive A light comes on bright for a
longer moment before going dim on Hatari. Hatari then takes a Long
time to get to the desktop with Drive A displayed.
With Drive B Enabled and Drive A Disabled and No disks inserted:
When spin-up is disabled Drive A light comes on bright for a moment,
then goes dark as Drive B light comes on dim on Hatari. Hatari then
takes a Short time to get to the desktop with Drive B displayed.
1) Drive A light flashes here -- (NO Patch Timer D, NO Boot Faster...)
***** line 295 of floppy.c *****
set_fdc_reg(FDC_CS, FDC_RESTORE | FDC_HBIT | finfo[dev].actual_rate);
*****
Note FDC_HBIT was added to line 295 of the latest emutos/bios/floppy.c,
then EmuTOS was compiled and run on a very recent Hatari.
Note that when I compile the latest EmuTOS 'unmodified' and test on Hatari,
I get the same results as you.
David