******************* DTAPE DOCUMENTATION ********************** MNEMONICS: CMD COMMAND DIS DISPOSITION (GENERATION-LEVEL OR 0) GEN GENERATION-LEVEL OR GENERATION-COUNT LDV LOGICAL-DEVICE MRS MINIMUM-REEL-SIZE FOR MOUNTING SCRATCHES NEW NEW VALUE FOR FIELD BEING CHANGED RCD RETENTION-CODE (RULE FOR CALCULATING RETENTION DATES) RDT RETENTION-DATE RPG REELS-PER-GENERATION FOR MOUNTING SCRATCHES SIZ SIZE OF REEL (0300FT, 0600FT, 1200FT, 2400FT) USE USE OF TAPE (INPUT OR OUTPUT) VID VISUAL-IDENTIFICATION (NAME OF GENERATION GROUP) VOL VOLUME NUMBER WHO WHO IS USER (JOB STEP OR PROGRAMMER NAME) WHT WHAT (DETERMINES OPTION OF COMMAND) CONCEPTS: A. VOLUME NUMBER (VOL=) EACH TAPE CARRIES A VOLUME NUMBER (PHYSICAL TAPE NUMBER) WHICH UNIQUELY IDENTIFIES EACH REEL OF TAPE IN THE LIBRARY. THIS NUMBER APPEARS ON BOTH THE REEL-FACE AND THE TAPE-SEAL OR CANISTER. THE VOLUME NUMBER IS A POSITIVE NUMBER OF UP TO 4 DIGITS. VOLUME NUMBERS ARE ASSIGNED TO THE REELS BY THE USER WHEN NEW TAPES ARE ADDED TO THE LIBRARY AND REMAIN WITH THE TAPES REGARDLESS OF HOW THEY ARE USED. OCCASIONALLY A BAD TAPE WILL BE DISCARDED OR REPLACED. IF A TAPE IS DISCARDED,ITS VOLUME NUMBER MUST BE DELETED FROM THE SYSTEM. IF A TAPE IS REPLACED, THE OLD TAPE IS DE-LABELED AND DISCARDED, AND THE NEW TAPE IS GIVEN THE OLD VOLUME NUMBER. TAPE STORAGE MUST BE ORGANIZED BY VOLUME NUMBER. WHENEVER TAPES ARE MOUNTED, THEY ARE CALLED FOR BY VOLUME NUMBER ONLY. MULTI-REEL FILES APPEAR AS A STRING OF VOLUME NUMBERS SEPARATED BY HYPHENS IN THE VID PORTION OF THE MOUNT MESSAGE. B. VISUAL IDENTIFICATION (VID=) IN ADDITION TO THE VOLUME-LABELS ON EACH TAPE, EVERY NON-SCRATCH TAPE CARRIES A VID-LABEL SPECIFYING THE GENERATION-GROUP OF WHICH IT IS A MEMBER. THIS LABEL MAY ALSO PROVIDE OTHER INSTALLATION DEFINED DATA SUCH AS REEL-OF,CREATION DATE, CREATION TIME, DEVICE, ETC. THE VID IS A 6 CHARACTER ALPHANUMERIC FIELD. DTAPE CATALOGS EVERY TAPE UNDER ITS APPROPRIATE VID. SCRATCH TAPES ARE ASSIGNED TO ONE OF FOUR SPECIAL VID'S (0300FT, 0600FT, 1200FT, 2400FT) ACCORDING TO SIZE. WITHIN A VID, TAPES ARE CATALOGED ACCORDING TO GENERATION-LEVEL; AND WITHIN GENERATION-LEVEL, REEL-NUMBER OF THE FILE. REEL-NUMBER IS NOT TO BE CONFUSED WITH VOLUME-NUMBER; THE FIRST REEL OF A FILE IS REEL-NUMBER 1, ETC. C. GENERATION LEVEL (GEN=) EACH GENERATION OF A GIVEN VID IS ASSIGNED A NUMERIC GENERATION LEVEL ACCORDING TO THE RELATIVE AGE OF THE GENERATION. GENERATION LEVELS ARE EXPRESSED AS NEGATIVE VALUES HAVING THE FOLLOWING MEANINGS: GENERATION LEVEL MEANING -1 MOST RECENTLY CREATED -2 2ND MOST RECENTLY CREATED -3 3RD MOST RECENTLY CREATED . . . . SINCE GENERATION LEVELS ARE NEGATIVE, THIS DOCUMENT ASSUMES THE CONVENTION THAT -2 IS "BELOW" -1, -3 IS "ABOVE" -5, ETC. GENERATION LEVELS ARE ALWAYS CONTIGUOUSLY OCCUPIED, BEGINING WITH -1 AND GOING DOWN THROUGH THE NUMBER OF EXISTING GENERATIONS. D. GENERATION COUNT (GEN=) EACH TIME A GENERATION IS CREATED (MOUNTED FOR OUTPUT) A GENERATION COUNT FOR THAT VID IS INCREMENTED AND ASSIGNED TO THAT GENERATION. THE GENERATION COUNT IS A POSITIVE NUMBER HAVING THE FOLLOWING MEANINGS: GENERATION COUNT MEANING 1 1ST GENERATION CREATED 2 2ND GENERATION CREATED 3 3RD GENERATION CREATED . . . . DTAPE WILL RESET THE GENERATION COUNT TO 1 WITH THE NEXT CREATION AFTER 9999. DTAPE DISPLAYS THE GENERATION LEVEL AND COUNT IN THE FORMAT -L(C) WHERE "L" IS THE LEVEL AND "C" IS THE COUNT. E. RETENTION CODE (RCD=) EACH VID HAS A RETENTION CODE FOR DETERMINING WHAT RETENTION DATE TO GIVE EACH NEW GENERATION. IT IS A NUMERIC FIELD WHOSE VALUES HAVE THE FOLLOWING MEANINGS: RETENTION CODE MEANING - KEEP GENERATIONS 0 ILLEGAL VALUE YYMMDD KEEP UNTIL AFTER THIS DATE YY0000 KEEP YY YEARS 00MM00 KEEP MM MONTHS 0000DD KEEP DD DAYS F. RETENTION DATE (RDT=) EACH GENERATION MOUNTED FOR OUTPUT IS GIVEN A RETENTION DATE AS FOLLOWS: 1. IF THE RETENTION CODE IS NEGATIVE, 999999 IS ASSIGNED. 2. IF THE RETENTION CODE IS POSITIVE, A RETENTION DATE IS CALCULATED. THE "SCRATCH EXPIRED" COMMAND WILL RETURN TO THE APPROPRIATE SCRATCH VID, TAPES IN GENERATIONS: 1. HAVING RETENTION DATES LESS THAN TODAY'S DATE OR 2. AT GENERATION LEVELS BELOW THAT SPECIFIED BY A NEGATIVE RETENTION CODE. USING DTAPE: A. GENERAL WHEN DTAPE REQUIRES CONTROL INFORMATION, IT DISPLAYS "XXX=" WHERE XXX IS A MNEMONIC CODE INDICATING WHAT IS REQUIRED. THE FIRST MNEMONIC IS "CMD=" WHICH MEANS A COMMAND IS REQUIRED. AFTER ACCEPTING THE COMMAND, DTAPE SIMILARLY ACCEPTS ALL PARAMETERS REQUIRED BY THE SPECIFIED COMMAND. IT THEN PERFORMS THE COMMAND, DISPLAYS "CMD=" AND WAITS FOR THE NEXT COMMAND. THE ALTMODE, INSTEAD OF THE CR, MAY BE USED TO TERMINATE INPUTS SO THAT COMMAND DATA WILL BE STRUNG OUT HORIZONTALLY. ONLY THE FIRST THREE CHARACTERS OF A COMMAND ARE REQUIRED. THE "EXIT" COMMAND MAY BE USED TO RETURN CONTROL TO THE MONITOR. USERS SHOULD NEVER-NEVER-NEVER DO A ^C EXIT EXCEPT WHEN DTAPE IS REQUESTING A COMMAND (CMD=) OR A PARAMETER (E.G. GEN=). A ^C AT OTHER TIMES MAY LEAVE THE DTAPE FILES BOTCHED UP. TO KEEP THIS KIND OF PROBLEM UNDER CONTROL, ALL COMMANDS WHICH UPDATE THE DTAPE FILES SET A FLAG ASSOCIATED WITH THE VID BEING AFFECTED. THE FLAG IS SET AFTER ALL NECESSARY PARAMETERS HAVE BEEN ENTERED AND CLEARED WHEN THE COMMAND HAS BEEN COMPLETELY EXECUTED. IF THE SYSTEM CRASHES (OR A ^C^C IS ENTERED) BEFORE THE COMMAND IS COMPLETED, THE VID AFFECTED REMAINS FLAGGED. ANY FURTHER UPDATE-TYPE COMMANDS AGAINST THAT VID WILL BE LOCKED OUT PRODUCING THE ERROR MESSAGE: "?LAST COMMAND INCOMPLETE ON VID " TO CLEAR THIS FLAG, TYPE THE VID IN QUESTION ON THE TTY. AS DTAPE TYPES THE VID IT WILL CHECK FOR ANY INCONSISTENCIES IN THE FILES. IF THE FLAG WAS SET AND THE FILES ARE OK, IT WILL CLEAR THE FLAG AUTOMATICALLY. HOWEVER IF THE FILES ARE BOTCHED UP, THE VID WILL REMAIN LOCKED UP, MAKING IT NECESSARY TO RELOAD THE DTAPE FILES (DTAPE.VOL, DTAPE.VID, DTAPE.IDX) FROM THE LATEST FAILSAFE TAPE. B. COMMANDS ADD - ADDS NEW VOLUMES TO THE SCRATCH VID'S OR NEW VID'S TO THE SYSTEM. TO ADD NEW VOLUMES TO A SCRATCH VID: .RUN DTAPE CMD=ADD WHT=SCRATCH SIZ=1200FT DIS=-1 ADD EACH TAPE TO THE TOP OF VID 1200FT VOL=786 * VOL=787 * VOL=790 ? 790 ALREADY EXISTS VOL=791 * VOL=^C * NEW 1200 FOOT TAPES MUST NOW BE VOLUME-LABELED AND PLACED IN THE TAPE LIBRARY. TO ADD A NEW VID TO THE SYSTEM: .RUN DTAPE CMD=ADD WHT=VID VID=GS1075 RCD=-5 KEEP MOST RECENT 5 GENERATIONS RPG=2 2 REELS PER GENERATION WHEN MOUNTING SCRATCHES MRS=0600FT MIN-REEL-SIZE WHEN MOUNTING SCRATCHES CHANGE - CHANGES VOLUME NUMBERS, VID'S, RETENTION CODES, RETENTION DATES AND RPG'S. TO CHANGE VOLUME 278 TO 591 LEAVING 278 AN UNUSED NUMBER: .RUN DTAPE CMD=CHANGE WHT=VOLUME VOL=278 NEW=591 REEL 278 MUST NOW BE VOLUME-LABELED 591 AND PLACED IN LOCATION 591 IN THE TAPE LIBRARY TO CHANGE VID GS1075 TO GS10: CMD=CHANGE WHT=VID VID=GS1075 NEW=GS10 TO CHANGE THE RETENTION CODE FOR GS10 SO TAPES WILL BE KEPT 90 DAYS: CMD=CHANGE WHT=RCD VID=GS10 NEW=000090 TO CHANGE THE RETENTION DATE FOR THE 82ND GENERATION OF GS10: CMD=CHANGE WHT=RDT VID=GS10 GEN=82 NEW=730628 TO CHANGE REELS-PER-GEN FOR GS10 SO 3 SCRATCH REELS WILL BE SELECTED WHEN A MOUNT CALLS FOR A SCRATCH: CMD=CHANGE WHT=RPG VID=GS10 NEW=3 TO CHANGE MIN-REEL-SIZE FOR GS10 SO DTAPE WILL BEGIN LOOKING IN THE 1200FT SCRATCH VID WHEN SCRATCH TAPE(S) IS (ARE) REQUIRED: CMD=CHANGE WHT=MRS VID=GS10 NEW=1200FT DELETE - DELETES SCRATCH TAPES AND NULL VID'S FROM THE SYSTEM. TO DELETE SCRATCH TAPE 221 FROM THE SYSTEM: CMD=DELETE WHT=SCRATCH VOL=221 TO DELETE GS10 FROM THE SYSTEM: CMD=DELETE WHT=VID VID=GS20 ? GS20 NOT EMPTY CMD=DELETE WHT=VID VID=GS10 ASSIGN - ASSIGNS REELS TO THE SPECIFIED VID AND GENERATION. IF THE GENERATION ALREADY HAS N REELS, THE NEW ONE BECOMES N+1. IF NO SUCH GENERATION EXISTS, A NEW GENERATION IS CREATED BELOW THE LOWEST EXISTING GENDRATION. TO ASSIGN VOLUME 1235 TO GS10 LEVEL -2: CMD=ASSIGN WHT=VOLUME VOL=1235 MUST BE A SCRATCH TAPE VID=GS10 GEN=-2 TO ASSIGN A 1200 FOOT SCRATCH TO GS10 735TH GENERATION: CMD=ASSIGN WHT=SCRATCH SIZ=1200FT VID OF THE 1200 FOOT SCRATCH POOL VID=GS10 GEN=735 SCRATCH - RETURNS THE SPECIFIED TAPES TO THE APPROPRIATE SCRATCH VID'S. TO SCRATCH THE LAST REEL FROM GD10 GENERATION LEVEL -3: CMD=SCRATCH WHT=REEL VID=GS10 GEN=-3 TO SCRATCH THE ENTIRE -5 GENERATION LEVEL: CMD=SCRATCH WHT=GENERATION VID=GS10 GEN=-5 TO SCRATCH ALL EXPIRED GENERATIONS IN THE SYSTEM: CMD=SCRATCH WHT=EXPIRED AS A PRECAUTION, THIS KIND OF SCRATCH MUST BE PRECEEDED BY A TYPE-OUT OF ALL EXPIRED TAPES WHENEVER TAPES ARE SCRATCHED, THEIR VID-LABELS MUST BE REMOVED. SWAP - SWAPS THE ASSIGNMENT OF ANY TWO VOLUMES IN THE SYSTEM. TO SWAP VOLUME 19 WITH 1573: CMD=SWAP VOL=19 *** VID=GS10 GEN=-12 REEL=1 VOL=1573 *** VID=PR15 GEN=-1 REEL=5 CONTINUE?=YES *** SWAPPED *** TYPE - TYPES A DISPLAY OF THE SPECIFIED INFORMATION ON THE TTY. TO TYPE THE STATUS OF VOLUME 235: CMD=TYPE WHT=VOLUME VOL=235 VID GENERATION ***CREATED****BY*** RDT REEL GS10 -3(0217) 73/04/15 17:30 JOB1 73/07/15 3 TO TYPE THE STATUS OF VID GS10: CMD=TYPE WHT=VID VID=GS10 RCD: -6 RPG: 2 MRS: 1200FT VOL GENERATION ***CREATED******BY*** RDT 0023 -1(0002) 73/12/15 15:32 STEP2 99/99/99 0024 0027 -2(0001) 73/05/03 09:23 STEP2 99/99/99 0026 TO TYPE SCRATCH STATISTICS: CMD=TYPE WHT=SCRATCH VID NUMBER 0300FT 0 0600FT 13 1200FT 91 2400FT 146 TO TYPE EXPIRED TAPES IN GS10: CMD=TYPE WHT=EXPIRED VID=GS10 DISPLAY IS SIMILAR TO VID TYPE-OUT TO TYPE ALL EXPIRED TAPES: CMD=TYPE WHT=EXPIRED VID=ALL REPORT - CREATES A REPORT FILE NAMED DTAPE.LPT SHOWING THE COMPLETE VOLUME STATUS AND VID STATUS OF THE SYSTEM: CATALOG - CATALOGS A SELECTED GENERATION OF A VID AT THE SPECIFIED GENERATION LEVEL. WHEN DTAPE CATALOGS A GENERATION, TWO PARAMETERS ARE REQUIRED; THEY ARE GENERATION (GEN=) AND DISPOSITION (DIS=). THE GENERATION PARAMETER IS USED FOR FINDING THE GENERATION TO BE CATALOGED; AND THE DISPOSITION PARAMETER SPECIFIES THE LEVEL AT WHICH IT IS TO BE CATALOGED. THE GENERATION PARAMETER MAY BE A GENERATION LEVEL OR COUNT. THE DISPOSITION PARAMETER MUST BE ZERO OR A GENERATION LEVEL. WHEN THE DISPOSITION SPECIFIES AN OCCUPIED LEVEL, GENERATIONS AT THAT LEVEL AND BELOW ARE SHIFTED DOWN ONE LEVEL AND THE CATALOGED GENERATION IS INSERTED AT THE VACATED LEVEL. WHEN THE DISPOSITION SPECIFIES A GENERATION LEVEL BELOW THOSE OCCUPIED, THE CATALOGED GENERATION IS PLACED IMMEDIATELY BELOW THE LOWEST OCCUPIED LEVEL. "BEFORE" PLACING THE CATALOGED GENERATION AT ITS NEW LEVEL, ITS OLD LEVEL IS DELETED, CAUSING ALL GENERATIONS BELOW TO BE SHIFTED UP ONE LEVEL. THE DISPOSITION PARAMETER IS THEN USED TO LOCATE THE NEW LEVEL. THEREFORE, WHEN THE CATALOGING IS FINISHED, THE CATALOGED GENERATION WILL REMAIN AT THE LEVEL SPECIFIED BY THE DISPOSITION PARAMETER (UNLESS, OF COURSE, IT POINTS BELOW THE LOWEST OCCUPIED LEVEL). TO CATALOG GS10 -2 AT -4: CMD=CATALOG BEFORE AFTER VID=GS10 LEVEL VOL LEVEL VOL GEN=-2 -1 101 -1 101 DIS=-4 -2 102 -2 103 -3 103 -3 104 -4 104 -4 102 -5 105 -5 105 TO CATALOG GS10 -3 AT -1: CMD=CATALOG BEFORE AFTER VID=GS10 LEVEL VOL LEVEL VOL GEN=-3 -1 101 -1 103 DIS=-1 -2 102 -2 101 -3 103 -3 102 MOUNT - PERFORMS THE FOLLOWING FUNCTIONS: 1. CREATES A COMMAND FILE NAMED .CMD FOR USE BY: A. A SUBSEQUENT "MOUNT @.CMD". B. ANY PROGRAM WHICH INCLUDES THE VOLUME NUMBER IN ITS VALUE OF ID FOR LABEL CHECKING. 2. IF THE MOUNT IS FOR OUTPUT, THE CURRENT DATE IS IS RECORDED AS THE CREATION DATE AND THE CURRENT TIME IS RECORDED AS THE CREATION TIME. ALSO THE THE GENERATION COUNT FOR THAT VID IS INCREMENTED AND APPLIED TO THAT GENERATION. 3. CATALOGS THE "MOUNTED" GENERATION AT THE SPECIFIED LEVEL. IF DIS=0, THE GENERATION IS LEFT AT ITS ORIGINAL POSITION; THIS ALLOWS ACCESSING THE N-TH GENERATION WITHOUT KNOWING ITS LEVEL AND WITHOUT DISTURBING IT. THE GENERATION COUNT IS IN REALITY A COUNT OF THE NUMBER OF OUTPUT MOUNT COMMANDS PERFORMED ON A GIVEN VID BY DTAPE. IF THE GENERATION PARAMETER HAS A VALUE OF 0, SCRATCH TAPES WILL BE SELECTED AND ASSIGNED TO A NEW GENERATION. THE NEW GENERATION WILL BE CATALOGED AS SPECIFIED BY THE DISPOSITION PARAMETER. THE NUMBER OF TAPES SELECTED DEPENDS ON THE REELS-PER-GENERATION (RPG=) FOR THAT VID. DTAPE WILL LOOK FIRST IN THE SCRATCH VID SPECIFIED BY THE MIN-REEL-SIZE PARAMETER. IF THAT SCRATCH VID CANNOT SATISFY THE REQUIREMENT, DTAPE WILL LOOK IN THE NEXT SIZE LARGER SCRATCH VID, AND SO ON THRU 2400FT. WHEN SCRATCHES ARE MOUNTED FOR OUTPUT, IT IS THE OPERATOR'S RESPONSIBILITY TO LABEL THEM WITH VID-LABELS. SINCE THE VID PORTION OF THE MOUNT COMMAND FILE CONTAINS ONLY VOLUME NUMBERS, THE OPERATOR MUST BE INFORMED VIA THE "SEND" MONITOR COMMAND OF ANY INFORMATION REQUIRED ON THE NEW VID-LABEL. TO MOUNT THE 91ST GENERATION OF GS10 FOR INPUT ON LOGICAL DEVICE "MASTIN" AND KEEP IT AT ITS CURRENT LEVEL: .RUN DTAPE CMD=MOUNT LDV=MASTIN VID=GS10 GEN=91 DIS=0 USE=INPUT WHO=GS1080 CMD=EXIT .MOUNT @MASTIN.CMD MASTIN.CMD HAS THE FOLLOWING FORMAT: MTA MASTIN /VID:0128-1132 /WLOCK TO MOUNT GS10 -1 FOR INPUT ON MASTIN AND GS10 -3 FOR OUTPUT ON MSTOUT AND TO CATALOG -3 AS -1: .RUN DTAPE CMD=MOUNT LDV=MASTIN VID=GS10 GEN=-1 DIS=0 USE=INPUT WHO=GS1080 CMD=MOUNT LDV=MSTOUT VID=GS10 GEN=-3 DIS=-1 USE=OUTPUT WHO=GS1080 CMD=EXIT .MOUNT @MASTIN.CMD .MOUNT @MSTOUT.CMD TO MOUNT SCRATCHES FOR OUTPUT AS THE -1 GENERATION LEVEL OF GS10: .RUN DTAPE CMD=MOUNT LDV=TAPOUT VID=GS10 GEN=0 DIS=-1 USE=OUTPUT WHO=GS80 CMD=EXIT .MOUNT @TAPOUT.CMD EXIT - TERMINATES THE CURRENT DTAPE RUN. START-UP PROCEDURE: 1. CREATE DTAPE.VOL FILE BY RUNNING DTAPE1. 2. CREATE DTAPE.VID AND DTAPE.IDX FILES BY RUNNING ISAM. A. INPUT NULL SEQUENTIAL FILE. B. DATA FILE: SIXBIT C. MAX REC SIZE: 66 D. KEY DESCR: X1.10 E. RECS PER OUTPUT BLK: 10 F. OTHER PARAMETERS DEPEND ON SIZE OF TAPE LIBRARY AND ANTICIPATED ACTIVITY. 3. ADD EACH OF THE SCHRATCH VIDS (0300FT, 0600FT, 1200FT, 2400FT). E.G. CMD=ADD WHT=VID VID=0300FT RCD=-9999 RPG=1 MRS=0300FT 4. ADD TAPES TO SCRATCH POOLS. E.G. CMD=ADD WHT=SCR SIZ=0300FT DIS=-99 VOL= VOL= . . . .