FDC provides a means of rapidly reading or writing of floppies to or from disk files followed by optional verification of the copied data. It is installed under a Task Name of ...FDC. The actual number of blocks copied may range from a minimum established by the symbol BLKCNT defined in the next section through a maximum equal to the floppy diskette size if copying to a disk file, or equal to either the file size or the floppy diskette size, whichever is smaller, if copying from a disk file. Command line syntax is: >FDC filspec=dev:[/SZ:nnnn][/VE] ! To copy from a floppy to a disk file -- OR -- >FDC dev:[/SZ:nnnn][/VE]=filspec ! To copy from a disk file to a floppy where: filspec = Any valid file specification for a disk file - may include device and/or UIC specifications; may also include a version specification, however, if any pre-existing file with an identical specification will be superseded. dev: = Any valid device specification for a floppy diskette drive. nnnn = The number of blocks to be copied to or from the floppy - this number will be assumed to be a decimal (base 10) number, even if it is not followed by an decimal point (optional), and must be less than or equal to the volume size as specified in Control Words 2 and 3 of the device's Unit Control Block (UCB). Note that both the verification selection switch (/VE) and the size specification switch (/SZ:nnnn) are optional. If the verification selection switch is absent, no verification is performed; if the size selection switch is absent, the entire volume is copied as spe- cified in CW2 and CW3 of the UCB. While both switches are shown appended to the floppy diskette drive specification, each switch may actually appear either there or appended to the disk file specification. ------------------------------------------------------------------------------ In addition to reporting various error conditions it detects to the User via TI:, this program also uses the Exit Status word to inform any parent task of its success or lack thereof. The following table shows how the Exit Status word is used: High Low Word Byte Byte Indication ------ ---- ---- -------------------------------------------- 000001 000 001 EX$SUC - Unqualified success! 000000 000 000 EX$WAR - Warning, caused by some internally detected discrepancy which does not preclude executing the command issued to it, such as specifying a switch more than once. 000002 000 002 EX$ERR - Fatal error, caused by some internally detected error which prevents executing the command issued to it without totally aborting the Task, such as specifying more blocks than the floppy diskette can hold. 000004 000 004 EX$SEV - Severe error, caused by either a TRAP instruction (executed when an internal inconsistency is detected) or by some other unforseen event which prevents the Task from reach- ing completion. 000nnn 000 nnn I/O error - nnn is in the range 377 through 200 (-1 through -128.) and is the I/O error code. 177xnn 377 ynn Executive Directive error - xnn (9 bits, 777 through 600) and ynn (8 bits, 377 through 200) are the Directive error code (-1 through -128). Revision: --------- 18-Aug-1989 VCH001 The number of logical blocks on a device were not calculated in the correct way. Not all 32 bits of U.CW2 and U.CW3 of device UCB are valid. The highest byte should be ignored and only the lower 24 bit are now taken into account. 19-Aug-1989 VCH002 Filename may now contain a named directory as possible on RSX11M-Plus and Micro-RSX. Volker C. Huck, TH Darmstadt, Inst. f. Kernphysik, D-6100 Darmstadt, Fed. Rep. of Germany