17

The Amiga computers would by default automatically detect a disk being inserted and respond by reading from it and displaying its icon. Polling the drive(s) for a new disk would produce a clicking sound every 1-2s.

If one had more than one drive or used the computer hard drive only with no disk(s) inserted, the drive checking sound would keep going.

Patches existed to stop this without loss of the auto-detection of inserted disks - how did these work?

18

The sound came from the fact that drives would only report on the presence of a disk if the heads were moved. Thus by default, the OS would move the heads back and forth.

Alternatively, the heads could be moved fully to one side and then asked to step further to that side (by default the heads would be centered to minimise seek time or read the central rootblock immediately).

Most drives would then refuse to move the heads, but report on disk presence anyway. (Some older drives would not, therefore if a noise was still heard after trying the patch, it was time to reboot and not try again!)

  • So just to clarify, the trick that the "no disk click" patches was simply that it would tell the OS to move the drive heads all the way to the end/stop and then only tell it to try to move further into the stop, thus making it that they didn't move and thus didn't click. Correct? – bjb Aug 4 '17 at 13:25
  • That is correct. – nsandersen Aug 5 '17 at 18:32
8

Since at least Kickstart 2.0, the OS has built-in code that allows for drive checking without making the click noise. To enable it, just set the TDPB_NOCLICK flag in the tdu_PubFlags of trackdisk.device's unit structure (of type struct TDU_PublicUnit) for the drive you want to silence.

Don't know about earlier. I guess trackdisk.device was patched with custom code, as it may be that some of the internal functions of the device appear - undocumented - in the LVO table.

  • Ah, so newer noclick patches might just set that flag. – nsandersen Aug 16 '16 at 5:52
  • Correct. The noclick tool in Commodore's development kit does just that. – user180940 Aug 16 '16 at 7:14
  • So at least later it was simply not enabled by default due to some drives not liking it - and it being impractical to change the ROM if the drives changed? – nsandersen Aug 16 '16 at 7:49
  • 1
    Guess we will never know... According to comments by ex Commodore employees, Commodore liked to source floppy drives from multiple vendors as a cost-cutting measure, and the reason for the clicking behavior was due to some early sourced drives not sensing disk changes without the head being moved. How much "early" means I forgot. Maybe still in the 2.0 timeframe, and nobody ever changed the default later. Or maybe Commodore did use proper drives since after A1000, but third parties did not and there was no will to force them otherwise. Or just yet another quirk in the OS development process? – user180940 Aug 16 '16 at 8:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.