


Low-level formatting is different from high-level formatting, which is done when you use the AmigaDOS Format command. This section gives a detailed explanation of what happens when a disk is low-level formatted and how bad sectors are remapped. You don't have to understand this in order to use MO disks.
The PDL and SDL (primary and secondary defect lists) are areas on the disk that store information about which sectors are bad, so that the drive knows to map the bad sectors out. This is all transparent to the Amiga, it is handled by the drive.
When a disk is low-level formatted, the drive completely erases the disk and checks its surface for defective sectors. If any bad sectors are found their positions are recorded in the PDL (primary defect list), and mapped out using a "sector slipping" algorithm. For a new disk, sectors recorded in the PDL correspond to sectors which really are bad, due to imperfections in the disk manufacturing process.
MO disks are normally low-level formatted and certified at the factory, so you do not need to low-level format new disks (but see below for my experience with a Sony 230MB disk). However, it is possible that some brands of disk are not certified (that is, the disk surface has not been checked at the factory). For uncertified disks, it is a good idea to low-level format them before use. Almost all makes of MO disk are certified at the factory; it should say so on the disk packaging.
MO disks have a number of spare sectors which are used when bad sectors are remapped. For example, 640MB 3½" disks have 2244 spare sectors. Typically the number of bad sectors recorded in the PDL of a new disk is between 0 and 7.
The use of sector slipping means that bad sectors found during low-level formatting do not slow down disk access at all. It works like this. Suppose that sectors 3 and 7 are bad. Then the logical sectors as seen by the Amiga correspond to physical sectors like this:
Logical Physical sector sector 0 ----------> 0 1 ----------> 1 2 ----------> 2 BAD 3 3 ----------> 4 4 ----------> 5 5 ----------> 6 BAD 7 6 ----------> 8 7 ----------> 9
When accessing the disk, the drive simply skips over the bad sectors. The extra time needed to skip a sector is simply the time taken for one sector to be read, which is very small.
The secondary defect list is used to record sectors which go bad after the disk has been low-level formatted. If a disk is quite old and has been used for a long time, dust or dirt on the surface may cause some sectors to become bad. If a verify error occurs when a sector is written to, the drive remaps that sector and records its position in the SDL.
Unlike bad sectors which are found during a low-level format, it is not possible to use a sector slipping algorithm for sectors which become bad later. Instead a linear replacement algorithm is used. For this, the drive replaces the bad sector by a sector from the spare area. This method of replacement does slow down access to replaced sectors, because the drive has to seek to the spare area to read the sector, and then seek back again if more sectors are to be read.
The sectors in the SDL are probably not really defective, it's just that the drive cannot read them properly due to dirt or dust on the disk surface. For this reason, it is a good idea if you have a disk that has accumulated a large number of "bad" sectors, to clean the disk surface and then low-level format the disk. Of course you must backup all data on the disk before doing this!
To clean the disk surface, use an MO disk cleaning kit. These are very cheap; I have seen them sold for about 2 pounds. Low-level formatting after the disk surface is cleaned will clear the PDL and SDL, and completely erase and test the disk surface.
To put the situation into perspective, I have had my MO drive for about a year. Only one disk has developed a single bad sector since then, so unless you are in a very dusty environment you probably will not have to concern yourself with low-level formatting.
I have a new Sony 230MB MO disk that from the factory had 5 sectors recorded in the PDL. I initially did a high-level AmigaDOS Format (not quick) on the disk. Afterwards I used ProbeSCSI too see whether any other blocks had been mapped out by the drive, recorded in the SDL. Surprisingly, there were several sectors which the drive found to be bad, even though the disk was brand new. So I low-level formatted the disk, in order to have the extra bad sectors recorded in the PDL. In view of this, I recommend that you do a high-level format of new MO disks, and see whether any additional sectors have been mapped out by the drive after this. If so, it is a good idea to low-level format the disk.
Groups
The spare blocks are distributed over the disk depending how many "groups" are used. The number of groups is fixed except for 230MB disks:
Type of Number of disk groups 128MB 1 230MB 1 or 10 540MB 18 640MB 11
For 230MB disks, when low-level formatting you can specify how many groups to use, one or ten. Which you choose has a very subtle effect, and for most applications it will not matter (just as well, because there is currently no Amiga program to set the number of groups).
The number of groups determines how the spare sectors are arranged on the disk. With a single group, all the spare sectors are located after the user sectors. With ten groups, there are ten groups of spare sectors spread over the disk.
To illustrate this, suppose a (hypothetical) disk has 100,000 user sectors and 1,000 spare sectors. The diagram below illustrates how the spare sectors are arranged.
One group Ten groups _____________ _____________ 0| | 0| | | | | Group 1 | | | 9,999|_____________| | | Group 1 spare -> |_____________| | | 10,100| | | | | Group 2 | |100,000 user | 20,099|_____________| | sectors | Group 2 spare -> |_____________| | | 20,200| | | | | Group 3 | | | 30,199|_____________| | | : . . : | | : . . : | | :_____________: | | 80,800| | | | | Group 9 | | | 90,799|_____________| 99,999|_____________| Group 9 spare -> |_____________| 100,000| | 90,900| | | 1,000 spare | | Group 10 | | sectors | 100,899|_____________| 100,999|_____________| Group 10 spare -> |_____________|
For a disk formatted to have one group, if a sector is replaced, the drive head must seek to near the end of the disk to access the replacement sector. On average, this will mean that the head seeks half-way across the disk to access the replacement sector.
For a disk formatted to have ten groups, if a sector is replaced, the replacement sector is taken from the spare area for that group. On average, this will mean that the head seeks half-way across the group, i.e. 1/20 of the way across the disk, to access the replacement sector.
You can see that accessing replacement sectors is quicker for disks which have 10 groups than for disks with a single group. Why would anyone want to low-level format disks to have a single group then? It depends what the disk will be used for.
Imagine you want to store digitised video footage on a disk. If the playback rate of the footage is close to the maximum transfer rate of the drive, any interruption, no matter how small, to the data flow may cause problems. When playing back from a disk with ten groups, when the head reaches the end of one group it must skip over the spare area to get to the next sector, which is at the beginning of the next group. This will cause a (very brief) interruption to the flow of data to the computer.
For most Amiga users ten groups will be preferable, but there is little to choose either way.
Programs for Low-Level Formatting
Not all Amiga SCSI software is capable of low-level formatting. Commodore's
HDToolBox fails to low-level format MO disks for me. One program which can, at
least some of the time, successfully low-level format MO disks is GVP's
ExpertPrep, which can be downloaded from:
http://www.gvp-m.com/expert.lzh
ExpertPrep does not allow the number of groups to be specified; to do this you
would need to use an MO-specific low-level formatting program, which does not
exist yet on the Amiga. Another option is to use Macintosh MO/SCSI driver
software under a Mac emulator like ShapeShifter.
If something interrupts the low-level format process, such as a power cut, or
the Amiga crashes or resets, you must start the low-level format again. The
disk is only useable when the low-level format is complete.


