.SPACING 3 .CENTER ^&RAT \& \\ .NUMBER .CENTER ^^^&REMOTE AID TO TAPE CONTROL\^\& .CENTER ^AUTHORS: ^G.^E.^WARNKE, ^M.^M.^NIELSEN .CENTER ^PROGRAM ^VERSION: ^^ZZ-3307-9-RSX\\ .CENTER ^&^^LOCAL DOCUMENTATION\&\\ .SKIP 2 .SPACING 1 .BLANK 3 ^^NOTE:\\ ^THIS IS A LOCALLY WRITTEN AND MAINTAINED DOCUMENT. ^IT IS WRITTEN SO THAT A PERSON WITH A MINIMAL AMOUNT OF EXPERIENCE WITH TAPES AND TAPE DRIVES SHOULD BE ABLE TO UNDERSTAND IT. ^HOWEVER, IF ANY PART OF THIS DOCUMENT IS UNCLEAROR INSUFFICIENT, PLEASE BRING IT TO THE ATTENTION OF THE DOCUMENT MAINTAINER(S), NAMED BELOW. ^ALL CONSTRUCTIVE CRITICISM ON ^^RAT\\ AND ITS OPERATION IS WELCOME. .BLANK 2 ^DOCUMENT ^MAINTAINERS: ^MIKE ^M. ^NIELSEN, AND ^GORDON ^E. .INDENT 23 ^WARNKE .BLANK 1 ^LAST UPDATE: ^^14-JULY-77\\ .BLANK 3 ^THIS PROGRAM WRITTEN AND SUPPORTED LOCALLY BY THE STAFF OF THE ^ALBERTA ^HAIL ^PROJECT. .TITLE ^R^A^T .SUBTITLE ^INTRODUCTION .PAGE .INDEX INTRODUCTION .CENTER ^^^&INTRODUCTION\\\& .SKIP 1 .PARAGRAPH ^R^A^T IS AN INTERACTIVE TOOL DESIGNED SPECIFICALLY WITH THE TAPE USER IN MIND. ^IT ALLOWS A USER TO CONTROL THE TAPE DRIVES FROM A REMOTE TERMINAL. ^A COMMAND LINE (SIMILAR TO THE COMMAND LINES USED IN OTHER ^R^S^X UTILITIES) MAY BE ENTERED FROM A TERMINAL, WITH THE RESULT THAT A SPECIFIC ACTION WILL BE CARRIED OUT ON A SPECIFIED DEVICE. ^THE DEVICE LAST SPECIFIED BECOMES THE DEFAULT DEVICE, AND REMAINS SO UNTIL RESPECIFICATION OF A DEVICE. ^THE ORIGINAL DEFAULT DEVICE IS ^M^T0: (E.G. ^IF THE COMMAND WAS ^M^M0:/^R^W THEN ANY FURTHER COMMAND WITHOUT A DEVICE SPECIFIED ASSUMES ^M^M0: TO BE THE DEVICE UNTIL A NEW DEVICE IS SPECIFIED .SUBTITLE ^OPERATION ^OF ^^RAT\\ IN A ^R^A^T COMMAND LINE). * ^NOTE * ^IF A DEVICE NUMBER IS NOT SPECIFIED , 0 IS USED BY DEFAULT. ^THUS, ^^MT0:\\ AND ^^MT:\\ ARE EQUIVALENT. .INDEX DEFAULT DEVICE NUMBER .SKIP 3 ^^ .CENTER ^&OPERATION OF RAT\& .SKIP 1 .PARAGRAPH \\ ^THE USER HAS MERELY TO TYPE "^^RAT\\". ^THE RESPONSE WILL BE: ^^ .BLANK 1 .CENTER RAT> .BLANK 1 \\ TO WHICH THE USER SHOULD REPLY WITH ONE OF THE FOLLOWING TYPES OF COMMANDS: .SKIP1 \\ .INDEX COMMAND LINE TYPES .CENTER /SW[:N] .CENTER [DEV:]/SW[:N] .CENTER [FILESPEC=]/SW[:N] .CENTER \O\R: [FILESPEC=][DEV:]/SW[:N] .PARAGRAPH \\ WHERE SW MAY BE ANY ONE OF THE FOLLOWING: .INDEX SWITCHES .SKIP 1 .LEFT MARGIN 10 .INDEX ^B^S .INDEX BYTE SIZE .INDENT -5 ^B^S (BLOCK SIZE) \\ .BLANK 1 .INDENT -3 SYNTAX: [FILESPEC=][DEV:]/^B^S[:N] .PARAGRAPH ^THIS SWITCH DISPLAYS THE SIZE IN BYTES OF EVERY BLOCK ON THE TAPE FROM THE CURRENT TAPE POSITION TO EITHER THE END OF THE TAPE OR TO THE END OF THE NUMBER OF FILES SPECIFIED IN THE SWITCH VALUE (E.G. /^B^S:3 WOULD CAUSE ^M^T0: TO GIVE A BLOCK SIZE SUMMARY OF THE NEXT THREE FILES ON THE TAPE). ^THIS SUMMARY MAY BE DISPLAYED IN ONE OF TWO WAYS. ^IF A FILE SPECIFIER IS GIVEN IN THE COMMAND LINE (E.G. ^^HANK.SNO=MM0:/BS\\) THE SUMMARY WOULD BE WRITTEN INTO THE FILE. ^IF NO SPECIFIER IS GIVEN, THE SUMMARY IS WRITTEN TO ^^TI:\\. .INDEX DEFAULT DEVICE .PARAGRAPH ^THE VALUE GIVEN FOR THE BLOCK SIZE IS IN BYTES. ^WHEN FILE STRUCTURE IS ASSUMED (SEE ^D^F), THE VOLUME HEADER AND ALL FILE HEADERS ARE SKIPPED IN THIS SUMMARY. ^BAD BLOCKS ARE MARKED WITH A "*". .BLANK 1 .INDEX ^D^F .INDEX DEFAULT TAPE STRUCTURE .INDENT -5 ^D^F (SET DEFAULTS) .INDEX FILE STRUCTURE .INDEX DEFAULT FILE STRUCTURE .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^D^F:V .PARAGRAPH ^THIS SWITCH HAS TWO VALUES: .BLANK 1 .INDENT -5 ^D^F:^F ^SETS THE ^R^A^T PROGRAM TO DEAL WITH ^^ANSI\\ FILE STRUCTURED VOLUMES. ^NOTE THAT NON-FILE STRUCTURED TAPES WILL BEHAVE STRANGELY IF THE DEFAULT HAS BEEN SET AS FILE STRUCTURED. ^THIS SWITCH HAS MEANING ONLY WITH THE ^S^F, ^B^S AND ^S^M SWITCHES. .INDENT -5 .BLANK 1 ^D^F:^N ^SETS THE ^R^A^T PROGRAM TO DEAL WITH NON ^^ANSI\\ FILE STRUCTURED VOLUMES (E.G. RADAR DATA TAPES). ^THE INITIAL DEFAULT IS TO NON FILE STRUCTURED. .INDEX ^R^W .INDEX REWIND .BLANK 1 .INDENT -5 ^R^W (REWIND) .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^R^W[:^W] .PARAGRAPH ^CAUSES THE SPECIFIED TAPE TO REWIND. (E.G. ^^RAT>MM:/RW\\ WOULD REWIND ^M^M0:) ^IF A SWITCH VALUE OF ^W IS ENTERED ^R^A^T WILL NOT RETURN UNTIL THE TAPE HAS BEEN POSITIONED AT ^B^O^T. ^IF ANY OTHER SWITCH VALUE OR NO VALUE AT ALL IS ENTERED, ^R^A^T RETURNS IMMEDIATELY, BUT FURTHER COMMANDS TO THE SAME TAPE DRIVE WILL BE QUEUED. .INDEX ^R^U .INDEX REWIND AND UNLOAD .BLANK 1 .INDENT -5 .INDEX UNLOAD ^R^U (REWIND AND UNLOAD) .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^R^U .PARAGRAPH ^CAUSES THE SPECIFIED TAPE TO BE REWOUND AND SET OFFLINE (E.G. ^^RAT>MT1:/RU\\). ^NOTE THAT THE TAPE CAN NO LONGER BE REFERENCED UNTIL IT HAS BEEN SET ON LINE BY THE OPERATOR. .BLANK 1 .INDEX ^S^B .INDEX SPACE BLOCKS .INDENT -5 ^S^B (SPACE BLOCKS) .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^S^B[:N] .PARAGRAPH ^THIS SWITCH CAUSES THE SPECIFIED NUMBER OF BLOCKS TO BE SPACED EITHER FORWARD OR BACKWARD ON THE TAPE. ^EXAMPLE: ^^RAT>MT1:/SB:5\\ WOULD CAUSE FIVE BLOCKS TO BE SPACED OVER ON THE TAPE ^M^T1. ^ANOTHER EXAMPLE: ^^RAT>MT1:/SB:-5\\ WOULD INDICATE THAT THE PROGRAM IS TO SPACE &B&A&C&K FIVE BLOCKS FROM THE PRESENT POINT. ^THE PROGRAM WILL NOT SPACE BACK OVER THE LOAD POINT OF THE TAPE. ^IF NO SWITCH VALUE IS SPECIFIED, ONLY ONE BLOCK IS SPACED. .INDEX SPACE FILES .BLANK 1 .INDEX ^S^F .INDENT -5 ^S^F (SPACE FILES) .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^S^F[:N] .PARAGRAPH ^THE ^S^F SWITCH CAUSES THE PROGRAM TO SPACE FORWARD (OR BACKWARD) FILES ON THE TAPE. (^A FILE IS ^&^^ANY\&\\ END OF FILE MARK.) ^AGAIN, THE SWITCH VALUE MAY BE EITHER POSITIVE OR NEGATIVE. ^IF NO SWITCH VALUE IS SPECIFIED, A DEFAULT OF 1 IS ASSUMED. ^THIS SWITCH CAUSES THE TAPE TO REMAIN WITHIN THE BEGINNING OF TAPE AND END OF VOLUME (OR TAPE) LIMITS. ^NOTE THAT THE BEHAVIOR OF THIS COMMAND DEPENDS ON THE DEFAULT SET WITH THE /^D^F SWITCH. .BLANK 1 .INDENT -5 ^S^C (SET TAPE CHARACTERISTICS) .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^S^C[:O] (WHERE O IS AN OCTAL NUMBER) .INDEX ^S^C .INDEX SET TAPE CHARACTERISTICS .PARAGRAPH ^THIS SWITCH CAUSES THE CHARACTERISTICS OF THE TAPE DRIVE TO BE SET, AND A SUMMARY OF THE CHARACTERISTICS TO BE PRINTED ON THE USER'S TERMINAL. ^IF NO SWITCH VALUE IS SPECIFIED, ALL POSSIBLE BITS ARE CLEARED. .NOFILL .BLANK 1 .CENTER ^^TABLE 1. CHARACTERISTIC BITS\\ .INDEX CHARACTERISTIC BITS .BLANK 1 ^^BIT OCTAL MEANING WHEN SET\\ ^^REP.\\ .BLANK 1 0 * 1 ^T^U10, 556 BPI DENSITY (7 CHANNEL) 1 * 2 ^T^U10, 200 BPI DENSITY (7 CHANNEL) 2 * 4 ^T^U10, 7 CH. CORE DUMP MODE 3 * 10 EVEN PARITY (DEFAULT IS ODD) 4 20 TAPE IS PAST END OF TAPE 5 40 LAST TAPE COMMAND ENCOUNTERED (^^EOF\\) 6 * 100 WRITING IS PROHIBITED 7 * 200 WRITING WITH EXTENDED IRG PROHIBITED 8 400 SELECT ERROR ON UNIT 9 1000 UNIT IS REWINDING 10 2000 TAPE IS PHYSICALLY WRITE LOCKED 11 * 4000 ^T^U16 1600 BPI DENSITY 12 10000 ^T^U10, DRIVE IS 7 CHANNEL 13 20000 TAPE IS AT LOAD POINT (^B^O^T) 14 40000 TAPE IS AT END OF VOLUME .BLANK 1 * ^DENOTES BITS WHICH MAY BE SET .BLANK 2 .TEST PAGE 8 .FILL .INDENT 5 ^^RAT>MM0:/SC:4400\\ WOULD SET ^^MM0:\\ TO 1600 BPI AND PROHIBIT WRITING WITH EXTENDED INTER RECORD GAPS. .BLANK 2 .INDEX ^S^E .INDEX SET CHARACTERISTICS .FILL .JUSTIFY .BLANK 1 .INDENT -5 ^S^E (SENSE CHARACTERISTICS) .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^S^E .PARAGRAPH ^THIS SWITCH SENSES TAPE CHARACTERISTICS AND PRINTS THEM OUT TO THE USER'S TERMINAL. ^A SWITCH VALUE ON THIS SWITCH WILL PRODUCE AN ERROR. .INDENT -5 .BLANK 1 ^S^M (SUMMARY) .INDEX SUMMARY .BLANK 1 .INDENT -3 SYNTAX: [FILESPEC=][DEV:]/^S^M[:N] .INDEX ^S^M .INDEX FILE SIZE SUMMARY .PARAGRAPH ^S^M PRODUCES A SUMMARY OF THE SIZES OF THE FILES ON THE TAPE, FROM THE PRESENT POINT TO EITHER THE END OF VOLUME, OR PAST THE NUMBER OF FILES SPECIFIED IN THE SWITCH VALUE. ^THIS MAY BE WRITTEN TO THE TERMINAL (^^RAT>TI:=MT0:/SM\\), OR TO A FILE (^R^A^T> FILSPEC=^^MT1:/SM\\). ^IF A FILE IS NOT SPECIFIED, THE DEFAULT IS ^^TI:\\. ^THE SWITCH VALUE MAY BE USED TO CONTROL THE NUMBER OF FILES THAT ARE INCLUDED IN THIS SUMMARY. ^AT THE END OF THE SUMMARY, THE TOTAL NUMBER OF FILES, AND THE TOTAL NUMBER OF BLOCKS ARE WRITTEN, ALONG WITH AN END OF VOLUME MESSAGE IF APPROPRIATE. ^IF THE ^D^F SWITCH IS SET TO NON-FILE STRUCTURED (^N), AND AN ^S^M IS RUN ON A FILE STRUCTURED TAPE, THE SIZES OF THE FILE AND VOLUME HEADERS WILL BE INCLUDED AND THEY WILL BE TREATED AS ANOTHER FILE EACH. ^IF THE ^D^F IS SET TO FILE STRUCTURED (^F), NON-FILE STRUCTURED VOLUMES WILL BEHAVE STRANGELY. .SKIP 1 .INDEX ^W^T .INDEX TAPE MARKS .INDEX END OF FILE MARKS .INDENT -5 ^W^T (WRITE TAPE MARK ^E^O^F) .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^W^T[:N] .PARAGRAPH ^THE ^W^T SWITCH WILL WRITE A TAPE MARK (^E^O^F) ONTO THE SPECIFIED TAPE. ^THE NUMBER OF TAPE MARKS WRITTEN IS DEPENDENT ON THE SWITCH VALUE PROVIDED. ^THE SWITCH VALUE IS OPTIONAL, AND DEFAULTS TO 1. ^NOTE THAT TWO OR MORE SUCCESSIVE TAPE MARKS ARE CONSIDERED AS AN END- OF-VOLUME MARK. ^IF A NEGATIVE SWITCH VALUE IS SPECIFIED, |N| TAPE MARKS ARE WRITTEN. .BLANK 1 .TEST PAGE 8 .SUBTITLE ^PECULIARITIES .INDEX ^Z^E .INDEX ZERO .INDENT -5 ^Z^E (ZERO) .BLANK 1 .INDENT -3 SYNTAX: [DEV:]/^Z^E .PARAGRAPH ^THE ^Z^E SWITCH CAUSES THE TAPE ON THE SPECIFIED DRIVE TO BE REWOUND, AND THREE CONSECUTIVE TAPE MARKS TO BE WRITTEN AT THE BEGINNING, AND THEN REWOUND AGAIN. ^THIS EFFECTIVELY ELIMINATES ALL DATA FROM THE TAPE, AS THIS IS EQUIVALENT TO AN END OF VOLUME. ^NO SWITCH VALUE IS PERMITTED ON THE ^Z^E SWITCH. ^IT SHOULD BE REMEMBERED THAT IF NO DEVICE IS SPECIFIED, THE CURRENT DEVICE IS ^&^^EMPTIED COMPLETELY\&\\. .SUBTITLE PECULIARITIES .BLANK 2 .CENTER ^^^&PECULIARITIES\&\\ .LEFT MARGIN 0 .SKIP 1 ^WHEN ONE ISSUES A COMMAND TO A DRIVE CONTAINING A BLANK TAPE, ERRORS SUCH AS "ALIGNMENT ERROR" AND "DEVICE NOT READY" WILL OCCUR. ^THESE ERROR MESSAGES ARE IMPLEMENTED IN THE DEVICE DRIVERS, AND ARE MEANT TO INDICATE THAT A BLANK TAPE IS LOADED ONTO A DEVICE, OR THE DEVICE IS OFF LINE. .BLANK 2 .CENTER ^^^&SWITCH SUMMARY\\\& .BLANK 1 .NOFILL .TAB STOPS 20 .LEFT MARGIN 10 /^B^S[:N] ^BLOCK SIZE /^D^F[:^F] ^SET DEFAULT TO ^A^N^S^I FILE STRUCTURE /^D^F[:^N] ^SET DEFAULT TO NON ^A^N^S^I FILE STRUCTURE /^R^U ^REWIND AND UNLOAD /^R^W ^REWIND TAPE /^R^W[:^W] ^REWIND TAPE, AND WAIT TILL IT FINISHES REWINDING BEFORE RETURNING. /^S^B[:N] ^SPACE N BLOCKS /^S^C[:O] ^SET CHARACTERISTICS (WHERE O IS AN OCTAL NUMBER) /^S^E ^SENSE CHARACTERISTICS /^S^F[:N] ^SPACE N FILES /^S^M[:N] ^SUMMARY FOR N FILES /^W^T[:N] ^WRITE N TAPE MARKS /^Z^E ^ZERO TAPE .SUBTITLE ^INDEX .PAGE .LEFT MARGIN 0 .INDENT 13 ^&^^INDEX\&\\ .PRINT INDEX