Catweasel online manual for the Amiga versions
Click here for page Title 1 2 3 4 5 6 7 8 9 10 11 12 13 14
for 5.25" drives spinning at 360 RPM:
16 Commodore64 1541 170 Kbytes single-sided 17 MS-DOS HD 1200 Kbytes double-sided 18 MS-DOS DD 40 Track 360 Kbytes double-sided 19 Amiga DD 880 Kbytes double-sided 20 MS-DOS DD 80 Track 720 Kbytes double-sided 21 MS-DOS DD 180 Kbytes single-sided 22 Apple IIe 140 Kbytes single-sided 23 Atari 800 XL 130 Kbytes single-sided 24 Atari 800 XL 180 Kbytes single-sided
Other numbers will return an error (error on OpenDevice()). Multidisk.device can't check the type of the drive. It doesn't even check the presence of a drive, so it's up to you to choose the correct unit number and the correct flags number. Choosing wrong numbers will simply cause a lot of unreadable disks.
Surfaces = 2This is the number of read/write heads accessing the disk. You must enter the correct value here, otherwise your disk will have a wrong size, and formatting such a disk may destroy data! Please look at the table above for the correct number of surfaces.
BlocksPerTrack = 11This is the number of datablocks on a track. Mind the difference between a track and a cylinder: A track is always associated with a full revolution of the disk accessed with one read/write head. A cylinder is associated with a full revolution accessed with all the heads available, therefore the number of blocks per cylinder is Surfaces * BlocksPerTrack, so in this case you have 22 datablocks on a cylinder.
Reserved = 2This is the number of blocks that shall not be used by the filesystem from the beginning of a disk. The two blocks of the Amiga 880K-disk are reserved for the bootblock. If you'd choose this value too small, you might destroy data on the disk by using the install command. It's better to change this value only for testing purposes.
mask = 0x7ffffffcThis value is a bit difficult to understand. If multidisk.device receives the command to transfer data, this value is a logical AND-mask for the start-address. The idea is to reduce hardware requirements when designing a DMA controller if you can rely on the lower address bits being zero. The Catweasel only accesses it's own memory directly, so this value isn't really important. We have set the upper bit to zero because the Amiga uses a 31 bit address space. The lower two bits are set zero to make the start-address longword-aligned, so the performance of the controller is always the same.
This document © Copyright 2000 Jens Schönfeld, individual Computers.