Re: [hatari-devel] IDE IO register range access commit

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Hi,

There still remains couple of places where only
first IDE device is referred:
* Floppy_GetBootDrive():
  https://git.tuxfamily.org/hatari/hatari.git/tree/src/floppy.c#n166
* TP_HDIMAGE_OFF check in Tos_FixRom():
  https://git.tuxfamily.org/hatari/hatari.git/tree/src/tos.c#n758

Shouldn't those also check for both devices?


(Or is IDE check in latter redundant as I asked
in the SCSI thread...)


	- Eero

On 9/27/20 10:27 AM, Thomas Huth wrote:
Am Sat, 26 Sep 2020 18:57:00 +0200
schrieb Uwe Seimet <Uwe.Seimet@xxxxxxxxx>:
I've now had a look, and I think I've successfully fixed the issue
reported by Uwe, and another crash that occurred when there was
only a secondary IDE drive attached, without a primary one.

BTW, the hard disk driver Cecile now also seems to work fine in
Falcon mode when no IDE drive has been specified (it used to crash
with a bus error before) :-)

The crash is gone, but strictly speaking there is still something
wrong, or at least unusual:

When I assign an IDE slave drive only, without master drive, the IDE
interface is available and the slave drive is accessible. But a slave
without master is not supported by IDE.

Honestly, that's also what I thought first. But apparently some hard
disk drivers can deal just nicely with that situation...

Also on https://en.wikipedia.org/wiki/Parallel_ATA they write:

"Master and slave clarification

[...] Since ATA-2 the two devices are referred to as "Device 0" and "Device 1", respectively. This is more appropriate since the two devices have always operated, since the earliest ATA specification, as equal peers on the cable, with neither having control or priority over the other.

It is a common myth that the controller on the device 0 drive assumes control over the device 1 drive, or that the device 0 drive may claim priority of communication over the other device on the same ATA interface. In fact, the drivers in the host operating system perform the necessary arbitration and serialization, and each drive's onboard controller operates independently of the other."

... and that rather sounds like the secondary drive could also operate
without the primary one?

  Thomas





Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/