Google
 

Trailing-Edge - PDP-10 Archives - ap-c796e-sb - backup.mem
Click backup.mem.pdf to download as a PDF file
There are no other files named backup.mem in the archive.










BACKUP








                         BACKUP








                    Date:     May 75

                    File:     BACKUP.RNO

                    Edition:  1





                         ABSTRACT

          The BACKUP program is used to save  disk
          files  on  magnetic  tape  and  later to
          restore any or all of these  files  back
          to  disk.   This  document describes the
          general capabilities of BACKUP.  Version
          1  of  the  software  will  be  used  by
          Digital   Equipment    Corporation    to
          distribute  all  the  software  for  the
          DECsystem-10.
                                                                Page 2










The information in this document is subject to change  without  notice
and  should  not  be  construed  as  a commitment by Digital Equipment
Corporation.  Digital Equipment Corporation assumes no  responsibility
for any errors that may appear in this manual.

The software described in this document is furnished to the  purchaser
under  a license for use on a single computer system and can be copied
(with inclusion of DIGITAL's copyright notice) only for  use  in  such
system, except as may otherwise be provided in writing by DIGITAL.

Digital Equipment Corporation assumes no responsibility for the use or
reliability  of  its  software  on  equipment  that is not supplied by
DIGITAL.










       Copyright 1975, 1976, Digital Equipment Corp., Maynard, Mass.



The following are trademarks of Digital Equipment Corporation.

     DEC                 FLIP CHIP      PDP
     DECsystem-10        KA10           TOPS10
     DECTAPE             KI10           TYPESET-8
     DIGITAL             KL10           TYPESET-10
                                                                Page 3


                               CONTENTS



1.0  INTRODUCtion                                      4
1.1  System Programmer Uses                            4
1.2  Console User Uses                                 4

2.0  BACKUP COMMANDS                                   4

3.0  USAGE                                             9
3.1  The SAVE Command                                  9
3.2  The RESTORE Command                               10
3.3  Obtaining Directories of BACKUP Tapes             10
3.4  Comparing Tape and Disk Files                     11

4.0  BACKUP MESSAGES                                   12
4.1  Operator Messages                                 12
4.2  Error Messages                                    12
4.3  Warning Messages                                  14

5.0  CAPACITIES OF DISK MEDIA VERSUS MAGNETIC TAPE     17

APPENDIX TAPE FORMAT                                   18
                                                                Page 4


1.0  INTRODUCTION

The  BACKUP  program  is  a  system  program  that  is  used  for  the
distribution of DECsystem-10 software.

BACKUP is more sophisticated than  the  previous  system  program  for
storage   of  disk  files  on  magnetic  tape.   It  allows  for  more
selectivity when choosing the files  to  be  removed  from  the  disk.
BACKUP is able to save files occupying multiple reels of tape.

Distribution tapes for the DECsystem-10 will be produced via BACKUP.



1.1  System Programmer Uses

Version 1 of BACKUP is intended to acquaint  system  programmers  with
BACKUP's  command  interface  and  tape  format.   It  is for use with
distribution tapes only.  BACKUP can be used to transport  files  from
one  system  to another, aiding in the distribution of newly developed
files from one installation to another.

The distribution is implemented by the interchange mode switch.   When
running  in  interchange  mode,  BACKUP ignores installation dependent
data and reads and writes only the information which  is  critical  to
the  file  itself.   For  more information on the interchange mode and
BACKUP's tape format, refer to the Appendix.



1.2  Console User Uses

The console user can execute all of the BACKUP  commands  on  his  own
disk area.  He can save his disk area or any other files accessable to
him on his own magnetic tape and later restore  all  his  files  or  a
subset of his files back to his area.



2.0  BACKUP COMMANDS

BACKUP commands are in the form of verbs.  BACKUP prompts with a slash
(/) and has three kinds of verbs:

     1.  Action,

     2.  Status setting, and

     3.  Tape positioning.

The action commands take as an argument a list of file  specifications
in  a  format  similar  to  the  monitor's  COPY  command.   The  file
specifications can contain wild-cards (e.g., ?  and *).   For  example
to  specify  all  files  of the name COBOL and any extension, the file
specification should be "COBOL.*".  The entire DEC wild-carding scheme
                                                                Page 5


works  under  BACKUP.   Another example might be to specify all ".MAC"
files whose first three letters  are  "FOR";   this  would  look  like
"FOR???.MAC."

For each entry in the list, the user can specify both input and output
file  specifications (output = input) or just the input specification.
This allows the files to be renamed as they are saved or restored.  If
no  output  specification  is  given,  then  the  specified  files are
transferred without being renamed.  Entries in the list are  separated
by commas.

The action commands operate on the tape specified  by  the  last  TAPE
verb.   A  tape  must  be  specified  before  using  any of the action
commands, or an error will result.  In the following lists of commands
and switches

     spec                     is the standard file specification
                              dev:filename.ext [directory]
     date                     is in the form dd-mmm-yy
     time                     is in the form hh:mm:ss

                         The action verbs are:

        Command                        Action

     CHECK spec-list          Verify that the tape and disk agree

     [N]PRINT spec            Print a directory of the entire tape  on
                              spec.   N  is an optional prefix meaning
                              narrow.

     SAVE spec-list           Save the disk onto tape

     RESTORE spec-list        Restore from tape to disk

The status setting commands set a parameter which will  affect  future
action  commands.   The negative form of certain commands is specified
by an optional NO preceding the command.  The status setting  commands
are:

        Command                         Action

     ABEFORE date             Include only files accessed  before  the
                              specified date

     [NO]APPEND               Append to existing LOG file (default)

     ASINCE date              Include only files  accessed  since  the
                              specified date

     BEFORE date-time         Include  only  files  created  and  last
                              modified before the specified date-time

     [NO]DATE75               Always accept files with possible DATE75
                              problems (default)
                                                                Page 6


     DENSITY (200, 556, 800,  (On input or output files) set tape
     1600)                    density

     DIRECTORIES              Type each user's directory while running
                              (default)

     [NO]ENCRYPT              Encrypt the magtape (asks for key later)
                              (a  key  is similar to a password and it
                              can  consist  of  up  to  6   alphabetic
                              characters.)

     FILES                    Type each filename while running

     INITIAL spec             Start processing at spec

     [NO]INTERCHANGE          Run in interchange  mode.   (This  is  a
                              default  in  version  1.   A  message is
                              printed  to  this  effect  when   BACKUP
                              begins.)

     LENGTH L:H               Include  only  files  whose  length   is
                              between Low and High

     LIST spec                While running, make a log file  on  spec
                              (default spec is LPT:BACKUP.LOG)

     MBEFORE date-time        Include only files which have been  last
                              moved  or  modified before the specified
                              time

     MSINCE date-time         Include only files which have been moved
                              or modified since the specified time

     MESSAGE [NO]PREFIX       Suppress error message prefix

     MESSAGE [NO]FIRST        Suppress first  line  of  error  message
                              text

     [NO]OPTION NAME          Use option BACKUP:name from SWITCH.INI

     PARITY (EVEN,ODD)        Set tape parity.

     SILENCE                  Do not  type  filenames  or  directories
                              while running

     SINCE date-time          Include only files created  or  modified
                              since the specified date-time

     SORT DIRECTORIES X       Sort  directories   within   each   file
                              structure   in   order  X  when  saving.
                              X=ALPHABETICAL, LOCATION,  or  NONE  (by
                              Master File Directory).

     SORT FILES X             Sort  files  within  each  directory  in
                              order X when saving.
                                                                Page 7


                              X = ALPHABETICAL, LOCATION, OR NONE  (by
                              directory)

     SSNAME A                 Save set name is A (up to 30 characters;
                              ALL = all save sets on tape)

     SUPERSEDE ALWAYS         Restore version from tape

     SUPERSEDE NEVER          Restore from tape unless on disk

     SUPERSEDE OLDER          Restore only the new versions from  tape
                              (default)

     TAPE MTB0:               Use tape unit MTB0


     [NO]USETI                Run in USETI mode (speeds up SAVES  with
                              /SINCE, etc.)

     [NO]WRITE                Suppress disk writing during a RESTORE.

The tape positioning commands take immediate effect.  They take, as an
argument,  a  list  of  tapes.   If  no  tape is specified for a given
command, the last tape declared in a TAPE  verb  is  positioned.   The
tape postioning commands are:

        Command                         Action

     EOT tape list            Skip to the end-of-tape  mark  for  each
                              tape in the list

     REWIND tape list         Rewind to the beginning of the tape  for
                              each tape in the list

     SKIP n tape list         Skip n save sets forward for  each  tape
                              in the list

     SKIP 0 tape list         Backup to the start of the current  save
                              set for each tape in the list

     SKIP -n tape list        Skip n save sets backward for each  tape
                              in the list

     UNLOAD tape list         Unload each tape from its drive for each
                              tape in the list.

Certain switches can be used for entries within the specification list
supplied  for  an action verb.  These switches should be preceded by a
slash.  They are as follows:

        Switch                          Action

     ABEFORE date             (On input file) include only if accessed
                              before date
                                                                Page 8


     ASINCE date              (On input file) include only if accessed
                              since date

     BEFORE date-time         (On input file) include only if  created
                              before date-time

     ERNONE                   (On input file) give error if  no  files
                              match

     ERPROTECTION             (On input file) give error if there is a
                              protection failure

     ESTIMATE n               (On output file) estimate output size

     LENGTH L:H               (On input file) include only if the file
                              length is between L:H

     MBEFORE date-time        (On input file) include only if modified
                              before date-time

     MSINCE date-time         (On input file) include only if modified
                              since date-time

     OKNONE                   (On input file) do not give an error  if
                              no files match

     [NO]PHYSICAL             (Input or output) ignore logical names

     PROTECTION nnn           (On output  files)  set  the  protection
                              code

     SINCE date-time          (On input file) include only if  created
                              since the specified date-time

     VERSION v                (On  output  files)  set   output   file
                              version number

     UPROTECTION nnn          Set the protection codes  for  the  User
                              File Directory

This group of commands can be given during the execution of the action
verbs.   The  prompting character is an exclamation point (!).  (EXIT,
HELP, and RESET will also  work  with  a  slash  (/)  as  a  prompting
character.):

        Commands                        Action

     DIRECTORIES              Start typing every directory processed

     EXIT                     Exit from BACKUP when done 

     FILES                    Start typing every  file  and  directory
                              processed

     GO                       Continue after a STOP
                                                                Page 9


     HELP                     List these commands and explanations

     KILL                     Abort execution of  the  current  action
                              verb

     PAUSE                    Do not exit from BACKUP when done

     RESET                    Reset  all  status  settings  to   their
                              original defaults when done

     SILENCE                  Stop typing every directory or file

     STOP                     Stop temporarily;  can be  continued  by
                              GO.

     WHAT                     Display current filename and status



3.0  USAGE

Version 1  of  BACKUP  is  a  tool  for  interchanging  files  between
installations  and  is executed in interchange mode only.  If the user
omits the interchange mode switch, he will receive a  warning  message
to  that  effect.   This  mode  allows the critical information in the
files to be gleaned from the installation dependent data.

The following examples  demonstrate  the  application  of  the  BACKUP
program.



3.1  The SAVE Command

The command

          /SAVE spec-list

saves all the files on disk that match the input side of the entry  in
the  specification  list.   BACKUP  groups  these files in a save set.
(Each SAVE command creates one save set on tape.) The  user  can  name
the save set with the SSNAME status setting command.

The following  sequence  saves  all  LINK  files  on  DSKN:   1,4  for
interchange in a save set named LINK, on a tape mounted on drive MTA0.

          .R BACKUP

          /TAPE MTA0:
          /INTERCHANGE
          /SSNAME LINK
          /SAVE DSKN:[1,4]LINK.*
          ! 1,4   DSKN
          /
                                                               Page 10


3.2  The RESTORE Command

The command

          /RESTORE spec-list

restores files from tape to disk.  If the user names a save set before
issuing  the  RESTORE  command, BACKUP will restore the files from the
save set only.  If the user resets the save set to  ALL,  BACKUP  will
search all the save sets on tape.

The following example restores all files in the save set named SCAN.

          .R BACKUP

          /TAPE MTA0:
          /REWIND
          /SSNAME SCAN
          /RESTORE
          /

To restore all HELP  files in all save sets  on tape, type

          /REWIND
          /SSNAME ALL
          /RESTORE *.HLP
          !
          /



3.3  Obtaining Directories of BACKUP Tapes

The command

          [N]PRINT spec

prints a  directory  of  the  entire  tape.   The  optional  prefix  N
indicates a narrow listing (72 columns).  The default specification is
LPT:BACKUP.LOG.  If a line-printer is not available to the user's job,
spooling is not in effect, and the default spec is used, an error will
occur.

The following example produces a disk  file  directory  listing  named
BACKUP.LOG.

          .R BACKUP

          /REWIND
          /PRINT DSK:
          !
          /^C
                                                               Page 11


This is an example of the output.

.TYPE BACKUP.LOG
START OF SAVE SET SCAN ON MTA0 BACKUP VERSION 1(41) FORMAT 1
SYSTEM    RX740B SYS #514/546 TOPS-10 MONITOR 0(60140) APR#514
800 BPI 9 TRACK


SCAN    REL     58               18-MAR-75       DSK:
SCAN    RNO     8                 8-MAR-75
SCAN    MAC     304              18-MAR-75
SCN7A   DOC     99               19-MAR-75
SCN7A   RND     95               19-MAR-75

END OF SAVE SET SCAN ON MTA0 BACKUP VERSION 1(41) FORMAT 1
SYSTEM    RX740B SYS #514/546 TOPS-10 MONITOR 0(60140) APR#514
800 BPI 9 TRACK

START OF SAVE SET BACKUP ON MTA0 BACKUP VERSION 1(41) FORMAT 1
SYSTEM    RX740B SYS #514/546 TOPS-10 MONITOR 0(60140) APR#514
800 BPI 9 TRACK

BACKUP  HLP     11               18-MAR-75
BACKUP  MAC     94               13-MAR-75
BACKRS  MAC     174              13-MAR-75
BACKUP  SHR     39               18-MAR-75
BACKUP  LOW     26               18-MAR-75
BACKUP  RND     6                17-MAR-75
BACKUP  RNH     11               18-MAR-75

END OF SAVE SET BACKUP ON MTA0 BACKUP VERSION 1(41) FORMAT 1
SYSTEM    RX740B SYS #514/546 TOPS-10 MONITOR 0(60140) APR#514
800 BPI 9 TRACK



3.4  Comparing Tape and Disk Files

The command

          CHECK spec-list

verifies that the tape and disk agree.  BACKUP compares the tape files
specified  for  input to the disk files specified for output, word for
word.

The following example saves all the user's COBOL  files  on  tape  and
then  verifies  that  the  saved  tape files are identical to the disk
files.
                                                               Page 12


          .R BACKUP

          /TAPE MTA0:
          /REWIND
          /SAVE *.CBL
          /REWIND
          /CHECK
          !
          /

TO RESTORE ALL SHR and LOW files from a tape and then verify that  the
files were restored correctly type

          /REWIND
          /SSNAME ALL
          /RESTORE *.SHR,*.LOW
          !
          /REWIND
          /CHECK *.SHR,*.LOW
          !
          /



4.0  BACKUP MESSAGES



4.1  OPERATOR MESSAGES

$BKPEOT EOT REACHED -- NEED NEW TAPE

     The tape is full.  The operator should mount a new one and type a
     carriage return to continue.

$BKPMWL TAPE WRITE LOCKED -- NEED WRITE RING

     The tape is write locked.  The operator  should  insert  a  write
     ring and type a carriage return to continue.



4.2  ERROR MESSAGES

?BKPABC AMBIGUOUS COMMAND

     The user has given a command abbreviation that is not unique.

?BKPCOL CAN'T OPEN LISTING DEVICE

     The device specified for the LIST command cannot be selected  for
     output.
                                                               Page 13


?BKPCOM CAN'T OPEN MAGTAPE

     The tape device specified cannot be selected for output.

?BKPCSA CAN'T SAVE WITH SAVE SET NAME "ALL"

     "ALL" is reserved to mean all SAVE sets on tape;   therefore,  it
     cannot be used to name an individual SAVE set when saving.

?BKPDND DEVICE NOT A DISK

     The input device specified  for  a  SAVE  or  the  output  device
     specified for a RESTORE is not a disk.

?BKPDNM DEVICE NOT A MAGTAPE

     The device specified for the TAPE command or a  tape  positioning
     command is not a magnetic tape drive.

?BKPFSL FILE SPECIFICATION DATA LOST

     During the processing of a file specification list, a consistency
     check  determined  that  data  was  lost.   If this error occurs,
     please send an SPR.

?BKPHSG CANNOT GET HIGH SEGMENT BACK

     BACKUP releases its high segment command scanner when  performing
     I/O  to eliminate most of the core while running.  The attempt to
     restore the high segment after completing the I/O  operation  has
     failed.

?BKPIRC INVALID RUN TIME COMMAND -- TYPE KILL TO ABORT RUN FIRST

     The user typed an illegal run time command.  Type KILL  to  abort
     the  run  and  return  to verb command level.  Type HELP to get a
     list of valid run time commands.

?BKPLFE LISTING FILE ENTER ERROR

     After opening the listing I/O channel, no entry could be made for
     the listing file.

?BKPLSI LISTING SPECIFICATION INCORRECTLY FORMATTED

     The user has  used  incorrect  formatting  or  a  "wild-card"  in
     specifying the LIST file.  No list specification is created.

?BKPNTS NO TAPE SPECIFIED

     While searching for the last tape specification given, none could
     be found.
                                                               Page 14


?BKPTMI INSUFFICIENT CORE FOR COMMAND

     The routine for allocating space for  file  specifications  could
     not expand core enough to store the specification.

?BKPTSI TAPE SPECIFICATION INCORRECTLY FORMATTED

     The user has  used  incorrect  formatting  or  a  "wild-card"  in
     specifying the tape device.  This clears the tape specification.



4.3  WARNING MESSAGES

%BKPABT ABORT spec

     The transfer of the specified file from tape  to  disk  has  been
     aborted.

%BKPBTL BLOCK TOO LARGE DURING SPEC (BLOCK = n)

     The current record read from tape exceeds the buffer size.

%BKPCAB CHECK ABORTED

     A CHECK was aborted by the KILL command.

%BKPCCM CANNOT COPY MFD FOR STRUCTURE

     The program cannot get  enough  core  to  copy  the  Master  File
     Directory  for the indicated structure.  Files for this structure
     will not be  saved,  and  the  program  will  skip  to  the  next
     structure.

%BKPCCR CANNOT COPY UFD/SFD RIB FOR spec

     The  program  cannot  get  enough  core  to  copy  the  retrieval
     information  block  for  the indicated directory.  Files for this
     User File Directory/Sub-File Directory will not be saved, and the
     program will skip to the next UFD/SFD.

%BKPCCU COPY UFD/SFD FOR spec

     The program cannot get enough core to  copy  the  indicated  User
     File  Directory or Sub-File Directory.  Files for this UFD or SFD
     will not be saved, and the program will attempt  to  continue  by
     skipping to the next UFD/SFD.

%BKPCDS CHECK DISK FILE SHORTER spec

     During  a  check  operation,  an  end-of-file  occurred  for  the
     indicated disk file, even though there is more file data on tape.
                                                               Page 15


%BKPCFD CHECK FILES ARE DIFFERENT spec

     The check operation determined that the disk and tape versions of
     the indicated file are different.

%BKPCHK CHECKSUM INCONSISTENCY DURING spec (BLOCK = n)

     During a read, the computed checksum of the current  tape  record
     did  not  agree  with  the  checksum  stored  when the record was
     written.

%BKPCNF CHECK FILE NOT ON DISK spec

     The indicated file could not be found  on  disk  during  a  check
     operation.

%BKPCOD CANNOT OPEN "file structure"

     The file structure indicated cannot be  selected  for  I/O.   The
     transfer of files for this structure will be aborted.

%BKPCTS CHECK TAPE FILE SHORTER spec

     During  a  check  operation,  an  end-of-file  occurred  for  the
     indicated tape file, even though there is more file data on disk.

%BKPDER DATA MISSED/ TAPE BAD/ TRANSPORT HUNG DURING spec (BLOCK = n)

     One of the indicated conditions was  detected  by  the  hardware.
     The transferred file may contain unreliable data.

%BKPDIO DISK I/O ERROR error bits DURING spec

     A disk I/O error occurred while attempting to read or  write  the
     specification.  The error bits included are those returned by the
     monitor GETSTS call.  The transfer will be aborted for this file.

%BKPFEE ENTER error-code spec

     File enter error for the specification.  The error bits  included
     are  those set by the monitor, and the error code abbreviation is
     listed in the DECsystem-10 Monitor Calls Manual.

%BKPFLE LOOKUP error-code spec

     File lookup error for the specification.  The error bits included
     are  those set by the monitor, and the error code abbreviation is
     listed in the DECsystem-10 Monitor Calls Manual.

%BKPHRI HEADER RDW INCONSISTENCY

     A consistency check has determined  that  the  tape's  file  data
     records  are  not  consecutive.   This  message  is  followed  by
     "%BKPABT ABORT spec" message reporting that the file will not  be
     transferred from tape to disk.
                                                               Page 16


%BKPHSI HEADER FILE SPEC INCONSISTENCY

     During a restore operation, a consistency check  determined  that
     the  end-of-file  record for the current file was missed, and the
     current record belongs to another file.  This message is followed
     by  "%BKPABT ABORT spec" indicating that the incomplete file will
     not be transferred from tape to disk.

%BKPIBL INCORRECT BLOCK LENGTH

     During a RESTORE, the program encountered a tape  record  of  the
     wrong size.  The record will be skipped.

%BKPINT ONLY INTERCHANGE MODE SUPPORTED IN VERSION 1.

     This message warns the user that he  is  running  in  interchange
     mode.

%BKPNBF NOT BACKUP FORMAT

     The current tape record is not in BACKUP format, and the  program
     will skip to the next tape record.

%BKPNEC NOT ENOUGH CORE

     The program cannot get enough core.   If  this  occurs  during  a
     RESTORE, the RESTORE will be aborted.  During a SAVE, the program
     will skip to the  next  structure  or  User  File  Directory  and
     attempt to continue.

%BKPNFF NO FILES FOUND TO MATCH spec

     No files were found to match the given file specification.

%BKPPRE PARITY ERROR DURING spec (BLOCK = n)

     The hardware detected a parity error.  The transferred  file  may
     contain unreliable data.

%BKPRAB RESTORE ABORTED

     A RESTORE was aborted by the KILL command.

%BKPSAB SAVE ABORTED

     A SAVE was aborted by the KILL command.

%BKPSCE SIZE COPY ERROR spec

     While transferring  a  file  from  tape  to  disk  an  error  was
     encountered because the transferred file was not the same size as
     the tape file.
                                                               Page 17


%BKPSLE SFD LEVEL EXCEEDED

     While attempting to save  nested  Sub-File  Directories  the  SFD
     level was exceeded.

%BKPSNF SAVE SET NOT FOUND name

     This message may occur during a RESTORE or  CHECK  operation  and
     indicates  that  the  save  set  named with the last /SSNAME verb
     could not be found.

%BKPUIE UNIDENTIFIABLE INPUT ERROR

     An error was encountered while trying to move data from  tape  to
     disk.

%BKPUOE UNIDENTIFIABLE OUTPUT ERROR

     An error was encountered while trying to move data from  disk  to
     tape.

%BKPURT UNKNOWN RECORD TYPE

     While reading the tape, BACKUP found that the type number of  the
     current tape record is not within the defined range.  The program
     will skip to the next tape record.


5.0  CAPACITIES OF DISK MEDIA VERSUS MAGNETIC TAPE

The following table illustrates the maximum capacity of  various  disk
devices  and  the  approximate  number  of  2400-foot  magnetic  tapes
required to hold the same number of  blocks.   The  calculations  were
made for 9-channel magnetic tapes at 800 bpi.

                                        No.  of magtapes
                                            Required
Disk Device         Capacity in Blocks  for same capacity

RD10 (Disk)              4000                 .139

RM10B (Drum)             2700                 .094

RP02 (Disk Pack)        40000                1.39

RP03 (Disk Pack)        80000                2.78

RP04 (Disk Pack)       154280                5.37

RS04 (Disk)              2048                 .071
                                                               Page 18












                               APPENDIX

                             TAPE FORMAT



BACKUP tapes are made up of a series of tape blocks of various  types.
All  blocks  have  a uniform length of 544 words.  These 544 words are
made up of a 32 word header and a 512 word data  area.   Even  if  the
data  area  is  not needed or is partially needed it is fully written.
All undefined or unused words are written with zeroes and  ignored  on
read.  This maximizes the probability of reading old tapes.

The block types are:

     BLOCK TYPE          SYMBOL             DEFINITION

     BEGIN               T$BEG     This is a mandatory  block  written
                                   at  the  beginning of the save set.
                                   It identifies  the  save  set,  the
                                   device,   the   system,   and   the
                                   date/time of writing.

     END                 T$END     Same as T$BEG except at the end  of
                                   the save set.

     DATA                T$FIL     This is the actual data  which  has
                                   been saved.  It is the only type of
                                   block which is  encrypted.   It  is
                                   self identifying as to the position
                                   within the file, but only  contains
                                   part  of  the full path name of the
                                   file.

     UFD                 T$UFD     It  contains  all  the  information
                                   necessary     to    recreate    the
                                   directory.    (Not    written    in
                                   interchange mode.)

     END OF VOLUME       T$EOV     A trailer  record  written  as  the
                                   last record on tape.

There are several different types of  records  written.   In  all  the
headers,  however,  the first seven words are of common meaning to all
record types.
                                                               Page 19


They are:

     WORD TYPE           SYMBOL             DEFINITION

     RECORD TYPE         G$TYPE    A number  indicating  the  type  of
                                   record.   The following values have
                                   been  assigned:   Label   record=1,
                                   Start of Save record=2, End of Save
                                   record=3,   file   record=4,    UFD
                                   record=5,    end    of    volume=6,
                                   comment=7

     RECORD NUMBER       G$SEQ     A sequence number  unique  to  that
                                   record, for that tape.  This number
                                   is  incremented  for  each   record
                                   written.

     RELATIVE TAPE       G$RTNM    A number  indicating  the  relative
                                   number  for this tape within a save
                                   set.

     DEPENDENT BITS      G$FLAG    Various bits dependent on the  type
                                   of record involved.  Currently, for
                                   all but data records this  word  is
                                   zero.  For file data records, bit 0
                                   is the software  end-of-file  (this
                                   indicates  the last record for this
                                   file).  Bit 1 indicates this record
                                   is   a  repeater  of  the  previous
                                   record (done for error correction's
                                   sake).

                              1.  GF$EOF     The flag set if  this  is
                                             the  last  tape block for
                                             this disk file.  On short
                                             files,  it  can be set on
                                             the first  block  of  the
                                             file.

                              2.  GF$RPT     The flag set if this tape
                                             block  is a repeat of the
                                             previous block.  This  is
                                             set whenever the block is
                                             rewritten  because  of  a
                                             tape write error.

                              3.  GF$NCH     The   flag   set   if   a
                                             checksum   for  the  tape
                                             block   has   not    been
                                             computed.       Bit     2
                                             indicates    that     the
                                             checksum   has  not  been
                                             done.
                                                               Page 20


                              4.  GF$SOF     The flag set if  this  is
                                             the  first tape block for
                                             this   file.     Bit    3
                                             indicates  the first tape
                                             record.

                    G$CHK     Contains a checksum of the  tape  record
                              unless the GF$NCH bit is set.

                    G$SIZ     The number of words of file data in  the
                              record.

                    G$LND     The number of words to skip before  file
                              data actually begins.

The next five words are reserved for future expansion.  The  remaining
20 words in the record header vary for each record.

The data portion of a tape record is primarily for storing file  data,
but  may  be  used for saving some overhead information.  Any non-data
information written in the data area of a tape record is prefaced with
a control word of the form:

LH = type, RH = length in words including this word.

More than one overhead region can appear.  In this case,  they  follow
each other with no intervening space.  The currently defined types for
overhead blocks are:

                    O$NAME    Gives the full  path  identification  of
                              the  file without punctuation.  The path
                              components are treated as  if  the  user
                              gave  a  quoted  representation  in "DEC
                              Integrated  Command   Language".    This
                              block  consists  of  sub-blocks  in  the
                              standard  order:   device,   directories
                              (top   down),   file   name,  extension,
                              version,     generation,      sub-blocks
                              corresponding  to  missing fields in the
                              path specification  are  omitted.   Each
                              sub-block is in the format:

                              WORD0:  LH = type, RH = length in  words
                              including this word.

                              The rest of the sub-block  is  the  path
                              field   in   ASCIZ  without  leading  or
                              imbedded nulls, terminated by  at  least
                              one   null.    Omitted  fields  will  be
                              defaulted.  In  interchange  mode,  only
                              the  name,  extension  and  version  are
                              written.  In interchange  restore,  only
                              name, extension and version are used.
                                                               Page 21


                              Sub-block type codes are:

                              1 = device
                              2 = name
                              3 = extension
                              4 = version
                              5 = generation
                              40 = directory (lower directories are
                              41, 42, ...)

                    O$FILE    A block containing file attributes.  The
                              first  section of this block consists of
                              a fixed length header containing  single
                              word attributes in fixed locations.  All
                              dates  and  times   are   in   universal
                              date/time  format (i.e., LH = days since
                              Nov.  17, 1858;   RH  =  fraction  of  a
                              day).   In  interchange  mode  only  the
                              critical attributes will be written, and
                              the  rest  of  this  block  will contain
                              zeros;  so the format will be:

                              1.  A$FHLN --  fixed  header  length  in
                                  words.

                              2.  A$FLGS -- reserved for flags  (0  in
                                  interchange mode)

                              3.  A$WRIT -- date/time of last write.

                              4.  A$ALLS -- allocated size in words.

                              5.  A$MODE -- mode of last write.

                              6.  A$LENG -- length in bytes (1B0 if  >
                                  2^35-1).

                              7.  A$BSIZ -- byte size (7 or 36).

                              8.  A$VERS  --  version   identification
                                  (.JBVER format).

                              The remainder of this block is  reserved
                              for future expansion.

                    O$DIRT    A   block   reserved    for    directory
                              attributes  (not  written in interchange
                              mode).

                    O$SYSN    A block  containing  the  system  header
                              line in ASCIZ.

                    O$SSNM    A block containing the save set name  in
                              ASCIZ.
                                                               Page 22


Now there will follow a description of  each  individual  word  for  a
given record type in the T$LBL BLOCK.

     WORD TYPE           SYMBOL             DEFINITION

     REEL ID             L$RLNM    A SIXBIT  word  defining  the  reel
                                   name

     LABEL date/time     L$DATE    The  date/time  of   labelling   in
                                   DEC-10  universal format (left half
                                   of   the   word   is   days   since
                                   17-NOV-1859  the right is fractions
                                   of a day)

     DESTRUCT DATE       L$DSTR    The date/time before which the tape
                                   can  not be scratched.  Before this
                                   time the only valid operation is to
                                   append.

     DEVICE ID           L$DEV     A SIXBIT word defining the physical
                                   name  of  the  magnetic  tape drive
                                   used to write the label

     FORMAT              L$FMT     A  number  indicating  the   BACKUP
                                   format

     VERSION             L$BVER    A  number  indicating  the   BACKUP
                                   version writing this record.

At the start of each save record the following  words  are  found  for
T$BEG and T$END blocks:

     SYSVER              S$SVER    A  number  indicating  the   system
                                   version

     FORMAT              S$FMT     A  number  indicating  the   BACKUP
                                   format

     VERSION             S$BVER    A  number  indicating  the   BACKUP
                                   version writing the SAVE set

     DATE/TIME           S$DATE    A number indicating  the  date  and
                                   time  of  writing  in the universal
                                   date/time format.

     DEVICE ID           S$DEV     A sixbit word defining the physical
                                   name  of  the  MTA  drive  used  in
                                   writing the save set.

     APR SERIAL          S$APR     A  number  indicating  the   serial
                                   number  of  the processor which had
                                   directed the writing of this record
                                                               Page 23


For each UFD record format (T$UFD):

     STR NAME            D$STR     The UFD comes  from  the  structure
                                   defined by this SIXBIT word.

     LEVEL NAME          D$LVL     A  number  indicating  the  nesting
                                   level          for         sub-file
                                   directories: 0=UFD 1-5=SFD level

     CHECKSUM NAME       D$PCHK    A checksum of the O$NAME full  path
                                   file name block.

File data record format:

                         F$PCHK    Checksum of the full path file name
                                   block  (O$NAME).   This  is  just a
                                   consistency check  for  consecutive
                                   records of the file.

                         F$RDW     Relative data word of file of first
                                   word on tape.

                         F$PTH     A twelve word block used  to  store
                                   information    suitable    for    a
                                   restoration of the file.  This area
                                   is  big  enough  to hold the entire
                                   path to a TOPS-10 file in a UFD  of
                                   up   to  five  characters  each  in
                                   project  and  programmer   numbers.
                                   The path information will be stored
                                   in the format:

                                   BYTE  (7)  data  type,  length   in
                                   words, ASCII

                                   where data types are:

                                   001 = device
                                   002 = file name
                                   003 = extension
                                   040+n = nth directory entry