Subject: fdformat output
To: None <current-users@netbsd.org>
From: Mike M. Volokhov <mishka@apk.od.ua>
List: current-users
Date: 07/26/2004 14:36:24
This is a multi-part message in MIME format.

--Multipart=_Mon__26_Jul_2004_14_36_24_+0300_ays7kelN_5RBgb9u
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Greetings!

In bin/15897 Ryo HAYASAKA provides a solution for "damaged" fdformat(1)
output (see details in PR). I have a bit alternate patch for this -
fdformat will print the formatting position, and in case if error
occurs, it will explain the problem and jump to next line. Some example
output will looks like this:

nostromo# ./fdformat
Ready to format /dev/rfd0a with 80 cylinders, 2 tracks, 18 sectors of 512 bytes
(1440 KB) Yes/no [y]?
Formatting track 5 / head 0 - VERIFY ERROR
Formatting track 6 / head 0 - VERIFY ERROR
Formatting track 20 / head 0 - IO ERROR
Formatting track 20 / head 1 - IO ERROR
Formatting track 21 / head 0 - IO ERROR
Formatting track 79 / head 1 (all done)
fdformat: 5 track formatting errors

The tracks 5 and 6 on head 0 have a real errors, and the rest errors
was manualy generated by ejecting floppy from FDD.

The "features" of this:
- works in generic way (\n, \r, etc.)
- more informative than standard fdformat
- no need to cross over theterminal line boundary (for not too narrow
  terminals)
- bit shorten than current implementation

The patch applies to fdformat.c revision 1.12.

Any objections, please?

--
Mishka.

--Multipart=_Mon__26_Jul_2004_14_36_24_+0300_ays7kelN_5RBgb9u
Content-Type: text/plain;
 name="fdformat.c.patch"
Content-Disposition: attachment;
 filename="fdformat.c.patch"
Content-Transfer-Encoding: base64

SW5kZXg6IGZkZm9ybWF0LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2c3Jvb3Qvc3JjL3Vzci5i
aW4vZmRmb3JtYXQvZmRmb3JtYXQuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xMgpkaWZmIC11
IC1yMS4xMiBmZGZvcm1hdC5jCi0tLSBmZGZvcm1hdC5jCTIzIEFwciAyMDA0IDE1OjA0OjI3IC0w
MDAwCTEuMTIKKysrIGZkZm9ybWF0LmMJMjYgSnVsIDIwMDQgMTA6NTY6MjQgLTAwMDAKQEAgLTc2
LDcgKzc2LDYgQEAKIHN0YXRpYyBpbnQJY29uZmlybShpbnQpOwogc3RhdGljIHZvaWQJdXNhZ2Uo
dm9pZCkgX19hdHRyaWJ1dGVfXygoX19ub3JldHVybl9fKSk7CiBzdGF0aWMgaW50CXZlcmlmeV90
cmFjayhpbnQsIGludCwgaW50LCBzdHJ1Y3QgZmRmb3JtYXRfcGFybXMgKiwgY2hhciAqKTsKLXN0
YXRpYyBpbnQJd2luY29sc2l6ZSh2b2lkKTsKIAogaW50CW1haW4oaW50LCBjaGFyICoqKTsKIApA
QCAtMTExLDE0ICsxMTAsMTMgQEAKIAlvZmZzZXQgPSB0cmFja3NpemUgKiAoY3lsICogcGFybXMt
Pm50cmsgKyB0cmspOyAvKiB0cmFjayBvZmZzZXQgKi8KIAogCWlmIChsc2VlayhmZCwgb2Zmc2V0
LCBTRUVLX1NFVCkgPT0gKG9mZl90KSAtMSkgewotCQkodm9pZClwdXRjaGFyKCdFJyk7CisJCSh2
b2lkKXByaW50ZigiLSBTRUVLIEVSUk9SXG4iKTsKIAkJcmV0dXJuIDE7CiAJfQogCWlmIChyZWFk
KGZkLCBidWYsIHRyYWNrc2l6ZSkgIT0gdHJhY2tzaXplKSB7Ci0JCSh2b2lkKXB1dGNoYXIoJ0Un
KTsKKwkJKHZvaWQpcHJpbnRmKCItIFZFUklGWSBFUlJPUlxuIik7CiAJCXJldHVybiAxOwotCX0g
ZWxzZQotCQkodm9pZClwdXRjaGFyKCdWJyk7CisJfQogCXJldHVybiAwOwogfQogCkBAIC0xMzIs
MTggKzEzMCw2IEBACiAJZXhpdCgxKTsKIH0KIAotc3RhdGljIGludAotd2luY29sc2l6ZSh2b2lk
KQotewotCXN0cnVjdCB3aW5zaXplIHdpbjsKLQotCWlmIChpb2N0bChTVERJTl9GSUxFTk8sIFRJ
T0NHV0lOU1osICZ3aW4pID09IC0xKSB7Ci0JCXdhcm4oIlRJT0NHV0lOU1oiKTsKLQkJcmV0dXJu
IDgwOwotCX0KLQlyZXR1cm4gd2luLndzX2NvbDsKLX0KLQogI2RlZmluZSBudW1hcmcod2hpY2gs
IG1hc2tuLCBvcCkgCQkJCVwKIAlkbyB7CQkJCQkJCVwKIAkJdG1wbG9uZyA9IHN0cnRvbChvcHRh
cmcsICZ0bXBjaGFycCwgMCk7IAlcCkBAIC0xOTAsOCArMTc2LDYgQEAKIAljb25zdCBjaGFyICpm
aWxlbmFtZSA9IF9QQVRIX0ZMT1BQWV9ERVY7CiAJaW50IGZkOwogCWludCB0cmssIGN5bDsKLSAg
ICAgICAgaW50IGNvbGNudCA9IDA7Ci0gICAgICAgIGludCBjb2xzaXplID0gd2luY29sc2l6ZSgp
OwogCiAJd2hpbGUgKChjaCA9IGdldG9wdChhcmdjLCBhcmd2LCAiZjp0Om5COkM6UzpUOlA6RzpG
Olg6SToiKSkgIT0gLTEpCiAJCXN3aXRjaCAoY2gpIHsKQEAgLTMxMywxOCArMjk3LDkgQEAKIAkJ
Y21kLmN5bGluZGVyID0gY3lsOwogCQlmb3IgKHRyayA9IDA7IHRyayA8IHBhcm1zLm50cms7IHRy
aysrKSB7CiAJCQljbWQuaGVhZCA9IHRyazsKKwkJCSh2b2lkKXByaW50ZigiXHJGb3JtYXR0aW5n
IHRyYWNrICVpIC8gaGVhZCAlaSAiLCBjeWwsIHRyayk7CisJCQkodm9pZClmZmx1c2goc3Rkb3V0
KTsKIAkJCWlmIChpb2N0bChmZCwgRkRJT0NGT1JNQVRfVFJBQ0ssICZjbWQpID09IDApIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZlcmlmeSAmJiBjb2xzaXplKSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sY250Kys7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvbGNudCAlIGNvbHNpemUgPT0g
MCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZv
aWQpcHV0Y2hhcignXG4nKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbGNudCsrOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQotCQkJCSh2b2lkKXB1dGNo
YXIoJ0YnKTsKLQkJCQlpZiAodmVyaWZ5KQotCQkJCQkodm9pZClwdXRjaGFyKCdcYicpOwotCQkJ
CSh2b2lkKWZmbHVzaChzdGRvdXQpOwogCQkJCWlmICh2ZXJpZnkpCiAJCQkJCWVycmNudCArPSB2
ZXJpZnlfdHJhY2soZmQsIGN5bCwgdHJrLAogCQkJCQkgICAgJnBhcm1zLCB0cmFja2J1Zik7CkBA
IC0zMzMsMTMgKzMwOCwxMiBAQAogCQkJCWVycngoMSwgIkZvcm1hdHRpbmcgYm90Y2ggYXQgPCVk
LCVkPiIsCiAJCQkJICAgICBjeWwsIHRyayk7CiAJCQl9IGVsc2UgaWYgKGVycm5vID09IEVJTykg
ewotCQkJCSh2b2lkKXB1dGNoYXIoJ0UnKTsKLQkJCQkodm9pZClmZmx1c2goc3Rkb3V0KTsKKwkJ
CQkodm9pZClwcmludGYoIi0gSU8gRVJST1JcbiIpOwogCQkJCWVycmNudCsrOwogCQkJfQogCQl9
CiAJfQotCSh2b2lkKXB1dGNoYXIoJ1xuJyk7CisJKHZvaWQpcHJpbnRmKCIoYWxsIGRvbmUpXG4i
KTsKIAlpZiAoZXJyY250KQogCQllcnJ4KDEsICIlZCB0cmFjayBmb3JtYXR0aW5nIGVycm9yJXMi
LAogCQkgICAgZXJyY250LCBlcnJjbnQgPT0gMSA/ICIiIDogInMiKTsK

--Multipart=_Mon__26_Jul_2004_14_36_24_+0300_ays7kelN_5RBgb9u--