."\ valid.1 .TH VALID P "Manual V2.22 for Program V2.29" "Julian Stacey" "Julian Stacey, Vector Systems Ltd" .\" A4 the cludgy way. .pl 29.6c .UC 4 .SH NAME valid \- Msdos & Unix disc data recovery & manipulation. .SH SYNTAX .B valid [ [-ddrive] [-a/i] [-Rattempts] [-r/w] [-p] [-P] [-0] [-tfirst_track] [-Tlast_track] [-sfirst_sector] [-Slast_sector] [-hfirst_head] [-Hlast_head] [-cinterval] [-f [file_names]] [-nseekable_sectors_per_track] [-Nseekable_heads] [-eErase] [-Bbytes_per_sector] [-C] ] .SH SUMMARY .I Valid is not a standard Unix command, it is unique to VSL systems with the Ournix overlay. .I Valid is a disc sector manipulation and diagnostic tool, serving several different purposes: .in +5 .ti -2 To validate the media of a floppy disc, listing bad sectors. .ti -2 To recover data from disc sectors that report CRC errors, and to allow the recovered data to be moved to a good disc. .ti -2 To select data from individual tracks, sectors, & heads for specialised disc handling purposes, such as bootstrap copying, format analysis, data porting between different media types, raw sector access for conversion of filesystem types (msdos/minix/unix etc). (This last usage is similar to the .I dd command on Unix. .in -5 A separate VSL tool `testblock' also exists, designed primarily for tapes. .SH OPTIONS .PP All parameters may be in any order relative to each other. .br All parameters must precede file names. .br Parameter default values are shown in brackets. .TP .B \-d Drive name. .in +5 .ti -4 Msdos: For Msdos, a single letter a, b, c, etc, A, B, C, or 1,2,3 [None]. Default values being for a 720K Msdos disk (2 * 80 * 9 * 512 byte). .ti -4 Unix: For Unix, a file name (normal or special) [/dev/fd_35/rflp40t9s2s, then /dev/fd_35/rflp80t9s2s]. .TP .B \-R Retry Number of attempts before error is considered irretrievable. [1] Note the operating system driver may retry a number of time too ! Esix tries about 12 times per read(2) call, so .I valid -R3 causes 36 reads ! DOS (at the level called by this command) does not retry, so -R7 causes the expected 7 single sector reads. .TP .B \-r Read disc only (& optionally write a copy to current directory (if -f specified)). [ON] .TP .B \-w Write disc, with prior read from disc or files. [OFF] .TP .B \-i Ignore errors [OFF] .TP .B \-a Abort on first error. [ON] .TP .B \-t First track [0]. .TP .B \-T Last track [79] .TP .B \-h First head [0]. .TP .B \-H Last head [default 1], no maximum, but above 1 a warning is produced (of course current floppy technology uses only 2 side, but newer technology and/or future application of .I valid to hard discs requires we do not constrain functionality to just 2 surfaces). .TP .B \-b Both heads [0,1] (Msdos diskcopy side 1 and .I valid head 1 are synonymous (I believe)). .\" JJLATER check this ! .TP .B \-B Number of bytes per sector [512]. No restriction on minimum or maximum on Unix, but bytes per sector must be 512 at present, if .I valid is running on an Msdos host. .\" restriction of 512 only may disappear if I later use a different software interface to the physical drive. .TP .B \-s First sector [1]. .TP .B \-S Last sector [default 18 or 9 dependent on host], no maximum, but above 18 a warning is produced. .\" up to version 2.20, 18 was the maximum, earlier 9 was the maximum .TP .B \-n Normally only useful for Unix. .br Number of sectors per track [default 18 or 9 dependent on host] implemented by the device driver you have chosen to access your disk. This only needs to be specified if it is numerically greater than the -S (last sector) value. It is needed so the unix driver can be properly used by lseek() to seek the correct number of sectors after the last sector of track 0 head 0, to access subsequent tracks. .br NOTE As msdos does not have file addressable device drivers (unlike unix), at first this parameter would seem useless under msdos, however, if a foreign op system reads an 11 sector disc as an image, and the image file is then transferred to msdos, if you want to use .I Valid to access just the first 9 sectors, you would then want to use -N. .TP .B \-N Normally only useful for Unix (though see note for -n above). .br Number of heads per track [default 2] implemented by the device driver you have chosen to access your disk. This only needs to be specified if it is numerically greater than <1 + the -H (last head)> value. It is needed so the unix driver can be properly used by lseek() to seek the correct number of sectors after the last sector of track 0 head 0, to access subsequent tracks. .TP .B \-P Print software release version number. .TP .B \-0 Suppress reverse read tracking; go instead in direction track 0 to 79. Most media errors occur on the innermost tracks of floppy discs. On writing, .I valid starts on the outermost track (track 0) to enable the maximum amount of data to be written (or erased) before media errors are encountered. On reading, .I valid normally starts working in the reverse direction, reading from the innermost track, so that if the media has an error detected, it is reported as soon as possible; however if this -0 option is invoked, read goes in direction 0-->79 just like write. .TP .B \-p Issue prompt and wait before doing each of one or more discs (useful if you only have a single drive computer, or have to do many discs). .TP .B \-f File IO: Write recovered data to automatically generated files, or Read named files & write to disc. If -r is ON (& -w is OFF). .in +5 If all read attempts on a sector fail, .I valid returns for each bit of data the most frequent setting (neither merely the value at the last attempt to read the bit, nor as complexly analysed a bit as would result from Gaussian normalisation). .in -5 If -w is ON (& -r is OFF). .in +5 All named files will be written to disc, .TP .B \-P Print software release version number. .TP .B \-p Issue prompt and wait before doing each of one or more discs (useful if you only have a single drive computer, or have to do many discs). .TP .B \-f File IO: Write recovered data to automatically generated files, or Read named files & write to disc. If -r is ON (& -w is OFF). .in +5 If all read attempts on a sector fail, .I valid returns for each bit of data the most frequent setting (neither merely the value at the last attempt to read the bit, nor as complexly analysed a bit as would result from Gaussian normalisation). .in -5 If -w is ON (& -r is OFF). .in +5 All named files will be written to disc, Main part of file name must be in format as specified below, extension can be anything. .in -5 When using -f to recover a bad disc you must also use -i, else recover will abort. [default for -f is off]. .TP .B \-q Quieter running, opposite of -v. [OFF] .TP .B \-v Verbose running, opposite of -q. [ON] .TP .B \-c reCalibrate head (ie seek to track zero), specifies how ofter retries may occur with continuously failing CRC (or other) errors, before a reseek to track 0 occurs, prior to a further seek to the required track.) [10]. .TP .B \-e Erase data on specific sectors, making every data byte an 0xF6 (just like Msdos 3.2 720K format command). Name sectors using file name syntax (even though actual file names will not be accessed) (if no file names are listed, all sectors will be erased). Useful as an alternative to formatting when you want to blank the previous contents of a disc to retain privacy, particularly useful on Symmetric Unix system, where formatting can only be done slowly, affecting multi user performance. .TP .B \-C Like -e, with the following differences: the name of each sector is placed at the beginning of each single sector, trailing bytes are set to space rather than the normal -e value, last byte in each sector is a new line (so editors dont have to suffer extremely long lines). This option is particularly useful when you want to create a test disc, labeling the sectors using a trusted computer, before taking the disc to a new and untrusted computer and/or disc driver, to check the new system is really accessing the correct sectors. .SH DESCRIPTION .I Valid validates part or all of a disc with options to read or write part or all of a disc to or from files. .I Valid displays bad sector names. Disc sectors to be accessed need not be Msdos format. Nomenclature: .in +5 .I Valid program and documentation currently use the old fashioned terms: .ce Track, Head, and Sector, .br these terms were developed to refer to floppies, with the advent of multi platter hard disks, the newer terms: .ce Cylinder, Track, and Sector .br will soon be adopted by .I valid instead. .in -5 .I Valid accesses heads, tracks, and sectors using no intrinsic knowledge of msdos, unix, minix, or any other filesystem types, thus it can safely be used to manipulate arbitrary chunks of disc. The Msdos version successfully recovers data with CRC errors, but Unix versions cannot be expected to without kernel changes, as Unix floppy drivers are not believed to normally return the data buffer read from the disc if a CRC error is encountered. Suprisingly, Msdos 3.2 does return it, (so with that and loadable device drivers, even Msdos can teach Unix a couple of things!). When soon .I valid is ported to Minix, as kernel sources are available, .I valid running on Minix will be able to recover data. Nomenclature for Sides, Heads, Cylinders, Tracks, Sectors .in +5 .ti -2 Tracks .br Remember the first track on a floppy is track 0, the first sector is sector 1 (yes it' inconsistent, no it's not my fault, it's an industry standard!). .ti -2 Heads .br I number the first head to be head 0; head 0 accesses side 1 of a floppy disc, head 1 accesses side 2 (I use the frequent computer convention of starting at zero, if you dont like it, sorry, but the reason for this is that .I valid will be extended to handle hard discs with multiple surfaces, these are assumed to have heads 0,1,2,3,4 etc, and not 1,2,3,4,5 etc.) .ti -2 .I Valid floppy Heads equate to BSD winchester tracks !. .br References to the number of floppy heads can be taken to be synonymous to number of tracks as referred to in the .I Symmetric /etc/format combined winchester & floppy format program, and the BSD 4.2 /etc/disktab combined winchester and floppy attribute description list, containing typical floppy standard entries such as :nt#2:. .ti -2 .I Valid floppy Tracks equate to BSD winchester cylinders ! .br References to the number of floppy tracks can be taken to be synonymous to the number of cylinders as referred to in the .I Symmetric /etc/format combined winchester & floppy format program; also synonymous with BSD 4.2 /etc/disktab combined winchester and floppy attribute description list containing typical floppy standard entries such as :nc#80:. .in -5 The Unix version accesses the `disc' as a Unix file name, this conveniently allows two alternate scenarios: .in +5 .ti -2 - We can give .I valid as the name of the `disc', a device special file name that is a unix floppy driver, resulting in floppy access. .ti -2 - We can give .I valid as the name of the `disc', a normal unix file name, thus enabling fast manipulation of floppy disc images by storing them on standard Unix files (automatically ram cached just like any other Unix file). .in -5 Non concatenation of separately read sectors. .in +5 Although .I valid usually tries to read all sectors from a track in one go, and stores the entire read block in a uniquely named file (if -r and -f are specified), when a disc has been read by successive single sectors if a multiple sector read fails, separate files are created for each sector, and not concatenated. Though concatenation would reduce directory entries produced, & reduce resulting disc usage, this is not done as the user would be deprived of a written record of sectors .I valid found it harder than usual to access. .in -5 Valid can be used for data porting purposes, for example although Symmetric msget command does not support sub directories, .I Valid can be used to read in all sectors from a 5.25" disc, the sectors can then be transmitted to an Msdos laptop, the sectors can be written out to 3.25" floppy by an msdos version of .I valid; standard msdos can then be used to access the files. .in -5 Sector Ordering on Unix & Minix: .in +5 A test file was written with dd on to /dev/fd_35/rflp40t9s2s on the 4.2 BSD Symmetric, and with dd on to /dev/fd1 on a Minix 1.3 system. The data was read by valid, and in both cases, the test data was found sequentially through the sectors in the following order: .in +5 t00h0s19.ok t00h1s19.ok t01h0s19.ok t01h1s19.ok. .in -5 It is thus confirmed that for either of these 2 systems, you may use .ce cat *.ok > dd_file .br to create a single file for later use by dd. Relative pathnames for .ok (& .bad) files. .in +5 Pathnames such as /usr/fred/t02s19h0.ok are acceptable, the /usr/fred/ component will be used to create /usr/fred/t02s11h0.ok, /usr/fred/t02s22h0.ok, etc, if data cannot be read in a single large sector. .in -5 Similarly, single file dd data may be sequentially split into .ok files, subject to availability of a splitter that generates: a) correct uniform sizing for each .ok file, b) sequential naming, c) correct initial offset name. On Msdos be careful to use a cat.exe type tool that has been compiled to internally process *.ok alphabetically; use of any primitive .ce command.com dir *.ok .br like tool that uses a list ordered by the random occurrence order of *.ok files, as they physically appear within an msdos directory, could lead to scrambled .ok data ordering. .in -5 Unix Device Driver Naming and Accessing Conventions: .in +5 Default names and auto 48tpi / 96tpi Sensing .in +5 If no drive name is specified, .I valid tests to see if it is possible to use the Symmetric's floppy driver that allows access to 48 tpi floppies using the Symmetric's 96 tpi drive. .I Valid does this by trying to read the first sector of the second track of /dev/fd_35/rflp40t9s2s, if this read fails, .I valid assumes the floppy has been formatted by a Symmetric 96 tpi drive. .I Valid knows the Symmetric floppy driver can not read or write 96 tpi formatted floppies using the /dev/fd_35/rflp40t9s2s driver, so .I valid switches to access the 96tpi formatted disc through the `straight' 96 tpi floppy driver (/dev/fd_35/rflp80t9s2s). .\" Before version 2.20 (90/06/18), unix names accessed were /dev/rfdG0 then /dev/rfdg0. .in -5 .sp The fd_35 Component. .in +5 This component of the default unix device driver names such as /dev/fd_35/rflp40t9s2s is just a means of allowing a normal user to vary the system default physical drive number accessed by .I valid and other programs (such as the Mtools package), thus allowing all tools to access either the 3.5" drive or the 5.25" drive. /dev/fd_35 contains links, pointing to all the device drivers in /dev, capable of accessing the particular floppy drive, using a variety of different device drive parameters. It is a publicly writable directory, maintained by a standard shell script ( .I fd_35, appended as an annex). Default drive names can of course be circumvented by using the -d flag. .in -5 .in -5 .SH EXAMPLES .B Example 1 .in +5 .I valid -r -da -t4 -T6 -s2 -S5 -h0 -H0 -i -R50 -c14 -f .in -5 .B Explanation 1 .in +5 On Msdos, Read drive A, tracks 4 to 6 inclusive, sectors 2 to 5 inclusive, head 0 only, ignore errors up to 50 times for each sector (though re-calibrating every 14 successive failed reads), write output to files. .in -5 .B Example 2 .in +5 .I valid -w -db -f t23h0s47.dsk T45H1s22.DSK .in -5 .B Explanation 2 .in +5 On Msdos, Write drive B taking data from files, blocks to be written are: Track 23, Head 0, Sectors 4 to 7, & Track 45, Head 1, Sector 2. .in -5 .B Example 3 .in +5 .I valid -r -d/dev/fd_35/rflp40t8s1s -f -H0 -S8 -T39 .br .I transfer -s *.ok (On Symmetric Unix) .br .I transfer -r (On laptop Msdos) .br .I valid -da -f -w *.ok (On laptop Msdos) .br Access and change A: floppy file system structure as needed, using laptop Msdos. .\" The next bit needs testing, presumably it will blow up if the disc .\" has been formatted on the symmetric. .\" .br .\" .I valid .\" -da -f -r -S8 -H0 -T39 .\" .br .\" .I transfer .\" -r (On Symmetric Unix) .\" .br .\" .I transfer .\" -b -s *.ok (On laptop Msdos) .\" .br .\" Insert a 360k 9 sector floppy in .\" Symmetric Unix .\" .br .\" .I valid .\" -w -f *.ok .in -5 .B Explanation 3 .in +5 On Unix (Symmetric), Read a Sanyo Msdos 5.25" 163840 Byte floppy, 8 sectors/track, 512 bytes/track, 40 track, single sided (the device driver makes the symmetric 96 tpi / 80 track drive emulate a 48 tpi / 40 track drive). . Ship data to a peripheral Msdos computer; recreate the floppy in 3.5" format; manipulate the data under Msdos. .in -5 .B Example 4 .in +5 .I valid -da -S18 -T79 .in -5 .B Explanation 4 .in +5 On an IBM System 30 validate an Msdos 1.4 M byte 3.25" disc. .in -5 .B Example 5 .in +5 :bla pause Insert a Source Disc, then hit a key. valid -da -f -S15 pause Insert a Target Disc, then hit a key. valid -da -f -w *.ok del *.ok goto bla .in -5 .B Explanation 5 .in +5 Msdos batch script (doit.bat) to copy 1.2M floppies. .in -5 .B Example 6 .in +5 while [ "a" = "a" ] do cd /tmp echo Name the next disc, use a single word  read jname command /c md $jname cd $jname echo Insert a Source Disc, then hit return.  read dummy valid -da -f -S15 echo Insert a Target Disc, then hit return.  read dummy command /c valid -da -f -w \*.ok done .in -5 .B Explanation 6 .in +5 Shell script to run under MKS shell utility on Msdos (doit.sh) to copy 1.2M floppies. .in -5 .B Example 7 .in +5 valid -d/dev/rfd0.720 -f -w -n9 *.ok .in -5 .B Explanation 7 .in +5 Write a 720K floppy using as Op. System FreeBSD 2.1.0-Development, from 160 files on hard disc, named: t00h0s19.ok, t00h1s19.ok, ..t79h1s19.ok. .in -5 .SH DIAGNOSTICS .I Valid conforms to the normal Ournix convention, that unless it says otherwise, all your requested actions (at least up to the first error report) succeeded. .I Valid continuously uses a vdu screen line to display details of track, head, & sector under test (using CR & BS characters to continuously update the display). When a sector is troublesome, a CR is output so the details are not overwritten. Although .I Valid may initially announce it has failed to access part(s) of a disc, if you have asserted the -R flag, .I valid will repeat its disc access attempts. If you have asserted the -r and -f flags, you can also look to see if .OK files have been written to your current directory, if so, reads with no CRC errors occurred for parts of the disc implied by the filename(s). .SH LIMITATIONS Media Type Detection .in +5 Although there is some degree of auto-detect for 40/80 track per side drives, there is no automatic 8 / 9 / 10 / 15 / 18 sector per track detection. .in -5 Unix & Minix - Appropriate Device Drivers .in +5 On the Unix and Minix versions you must ensure you access the floppy disc via an appropriate device driver configured for the right number of sectors, heads, and tracks, if you call .I valid to work with 9 sectors per track, and your driver deals with 8 or 10 per track, you will experience problems, unless you are accessing track 0, head 0. .in -5 Msdos - Disc Type Checking .in +5 No check is made as to whether the `disc' is a floppy or winchester. ( Msdos ensures .I Valid fails to read msdos ram disc sectors.) .in -5 Msdos - Media Byte Checking .in +5 .I Valid is of course not allowed to check msdos media bytes, because .I valid can be run on msdos to manipulate non minix floppies, such as .I Minix file systems. .in -5 Directory Platform Undermining .in +5 .I Valid can be made to undermine its current working directory disc. No check is made as to whether your current working directory, (that may be required to house -f files), is on the same media (& possibly even the same sector) as the disc being worked on by -r, -w or -e. .br Of course, Unix & Minix can provide some protection, by having read-only, or no normal user access, to device driver names that the current working directory is based on, however Msdos provides no such protection. .br An example of what NOT to do in Msdos follows: .in +15 .nf a: mkdir \flp join b: \flp cd \flp valid -db -f -w *.ok .fi .in -15 .in -5 Msdos Bios Incompatibilities .in +5 When .I valid has finished writing sectors, some Msdos PC Bios es read cache are unaware the contents of the floppy have changed, thus it is necessary to remove the floppy, & re insert, thus causing Msdos to look again. .in -5 Format can sense more media problems than .I Valid. .in +5 On a Toshiba T1100+, msdos auto-exec.bat sometimes reported disc read errors on booting, but when validated sequentially with an Msdos version of .I valid, no problems were reported, however when the Msdos format was used, it failed to format 10K bytes. Possible Explanations: .in +5 .ti -2 - The format command probably allocated a slightly different part of the media than that previously used, if those different parts had a media error, it would have only show up when the track was re-laid with format. .ti -2 - Non sequential access may detect faults .I valid's default sequential access validation sequence does not (possibly because of mechanical slack on the stepper motor head lead screw. .ti -2 - The disc / head mechanics and / or electronics could have just been exhibiting intermittent behaviour. .in -5 .in -5 Sector Portability Problems, as yet unexplained, include: .in +5 MSDOS Inefficiency on some 5.25 drives. .in +5 Valid -T79 -S15 on an IBM PC AT and R&S PC AT 1.2 M byte drives, and an XT clone, .\" Stuart Arnold's XT clone 360 or 1.2M ? and a PC 386, .\" Joe McBeth's reads tracks on head 0 normally, but cant read tracks on head 1 in large 15 sector chunks, and so is forced to resort to slower single sector per rotation reads. This is very slow, temporarily a work around to achieve a speed up is to invoke .I Valid twice: .in +5 .I valid -s1 -S9 ........... .br .I valid -s10 -S15 ........... .in -5 .in -5 Another way round the problem is to first use msdos diskcopy or format, as this seems to temporarily reset the bios to a sane state. .\" Joe uses int 13 in a program developed independent of me, .\" he suffers the same problem. Msdos Bios Motor Up To Speed Routine .in +5 This bios function on a T1000 .\" Joe McBeth's computer consistently failed to get the disc up to speed before .I Valid read the disk, the solution was simply to use the -R2 retry parameter. .\" Duncan book says something about this problem. No such problem has occurred with the author's Toshiba T1100+. This could possibly be related to 15 sector fails on AT's. .in -5 Disk Control / BIOS / Emulation Note: .in +5 If you wish to try running .I Valid on things such as msdos emulators running on Atari hardware, the following may be of interest: The Msdos version of .I Valid is written entirely in C apart from a few disc primitives, all other bios calls (such as to open a file) are as provided by the C library. .I Valid uses only the Int 13H Function to access the disc, with in.h.ah set to one of the following: .in +5 .ti -2 0 Reset floppy disk system via rom driver. .ti -2 1 Obtain status of disk drive controller. .ti -2 2 Read sector(s). .ti -2 3 Write sector(s). .in -5 .in -5 HD Hole: .in +5 A MF2HD Fuji Disc (3.5" 1.4 Mbyte 135 tpi, 80 track) was formated to 720 K byte format by an .\" Stuart's IBM system 30 (using the Msdos 3.3 format a: /t:80 /n:9 command, with no tape placed over the HD hole). The Symmetric (running Unix), connected to a Chinon 1.4 M capability drive experienced problems reading the disc with /dev/rflp1_80t9s2s. Tracks 0 & 1 could be read, but beyond that head 1 was mostly unreadable, and head 0 also gave occasional problems. .br Once the HD hole was taped over the disc was readable with no further problem. This taping over was not necessary on either NEC or Toshiba Laptop PCs, both running Msdos 3.2, equipped with 720K drives. .in -5 .SH HOST OP SYSTEM This utility runs on both Msdos 3.2 & Unix UCB BSD 4.2. This utility does not run on Msdos 2.?. This tool will be one of the first Ournix/VSL tools ported to Minix. .SH REFERENCES Sector IO as serviced by Msdos: .in +5 `Advanced Msdos' by Ray Duncan, Page 422. .br Publisher: Microsoft Press ISBN 0-914845-77-2 .in -5 .SH FUTURE ENHANCEMENTS CONTEMPLATED .TP .B Threshold limiting .br -r -t3 -T5 *.ok should only do between tracks 3 and 5, currently it does all listed in *.ok names. .TP .B Decrementing track count. .br As 3.25" floppies usually fail on high number tracks, it would be better to validate tracks 80 though 1 rather than 1 to 80 as at present. Both for purposes of validation & capture of data from intermittently bad discs prior to data rescue. .TP .B Interleaving of sector reads. .br If a head is dirty, then valid recovers sectors one at a time, the floppy spinning a whole revolution between each successive fetch of a sector, this is very slow, & causes unnecessary wear on the floppy disc media and drive. .TP .B Variable size sectors. .br Currently the only single sector size allowed is 512 bytes. .TP .B Winchester access. .br .I Valid has not yet been extended to access winchester sectors. .TP I have considered adding supoports for CDs & DVD, but havent yet. Meantime for that, here's a tool by someone else, Free that runs just on MS & is presumably binary only, no source. http://www.heise.de/software/download/cd_recovery_toolbox_free/42111 -> http://www.oemailrecovery.com/cd_recovery.html .SH BUGS Possible Bug reported, pending verification: .\" who by ? .in +5 When -R -f -r is used, file names .BAD are said not to be created. .in -5 .sp If you say .I valid -f -T5 -0 -w *.ok and *.ok expands to include (for example) t24h1s1i.ok then these file(s) will be written, -T is silently ignored ! .SH COPYRIGHT Program and Document Copyright, Munich, Julian H. Stacey 1987. .so author.jhs .SH FILES Specially named data files are created & read by .I valid when reading (or writing) a disc ; .in +5 For the 3 names next listed: .in +5 ab = Track number (0-79), .br c = Head 0 or 1, .br d = First sector (0-0xF). .br e = Last sector (0-0xF). .br fgh = Extension strings created by -r -f are OK and BAD. .TP .B TabHcSde.OK A block of one or more sectors read with no CRC errors. .TP .B TabHcSde.BAD A Block read with CRC errors. .TP .B TabHcSde.fgh A Block to be written to disc. .in -5 Unix on the Symmetric by default first attempts to access /dev/fd_35/rt40_h2_s9 then /dev/fd_35/rt80_h2_s9. .in -5 .SH SEE ALSO fd_35(p), fd_4080(p), dd(1), wd(4), transfer(p), flio(p) (flio only available on Msdos, flio has no manual). .\" End of file