Como nenhum programa de formatação parece existir, eu escrevi o seguinte shell script que envia os comandos apropriados do FORMAT UNIT para formatar todas as 80 trilhas de um disquete. O dispositivo da0
é formatado, a menos que um dispositivo diferente seja fornecido como um argumento. O CDB foi retirado da especificação da UFI .
#!/bin/sh
set -e
exec >&2
drive=${1:-da0}
numblocks=2880
blocklen=512
tracks=80
track=0
progress() {
[ -t 2 ] && printf "\r%2d/%2d" $track $tracks
}
for track in 'seq 0 $((tracks-1))'
do
progress
# format bottom
camcontrol cmd "$drive" -v \
-c '04 17 i1 00 00 00 00 00 0c 00 00 00' $track \
-o 12 '00 b0 00 08 i4 00 i3' $numblocks $blocklen
# format top
camcontrol cmd "$drive" -v \
-c '04 17 i1 00 00 00 00 00 0c 00 00 00' $track \
-o 12 '00 b1 00 08 i4 00 i3' $numblocks $blocklen
done
track=$tracks
progress
[ -t 2 ] && echo