ABackup - User's Manual AboutThisDoc This manual describes release 2.43 of the utility ABackup. This program is (c)1992-1993 by Denis GOUNELLE, any commercial usage or selling without author's written authorization is strictly forbidden. You can copy and spread this program at the following conditions: - all the files must be provided - none of the file must have been modified - you don't charge more than $6 for copy fee In spite of several tests, no warranty is made that there's no error in ABackup. YOU USE THIS PROGRAM AT YOUR OWN RISKS. In no event will I be liable for any damage, direct or indirect, resulting of the use of ABackup. Introduction ABackup is a backup program written for the Amiga. It can be used both to make a backup of your hard disk or to archive files, has a full Intuition interface, and can use XPK library. Under 2.0 system release, ABackup is able to recognize links and to manage high density disks. This program is SHAREWARE. If you find it useful, I invite you to send me $10 at the address listed below in order to become a registered user. Please use only : - checks from a French bank - cash (French Francs prefered, otherwise any currency of the E.E.C. is accepted, as well as US dollars and Swiss Francs ; in either case please add a little more for change fee) - checks from an European bank (if you use an EuroCheck, please add $5 because my bank taxes it) If you send me a check, it must be in French Francs and the beneficiary must be "M. GOUNELLE Denis". As a registered user, you will receive the next version of ABackup as soon as it will be available. You should be aware that this $10 contribution fee only gives right to one update : if you want to receive the next updates regularly, a $20 contribution is required. Suggestions and/or criticisms will be always welcomed. Don't hesitate to write at the following address : M. GOUNELLE Denis Boite 71 6, rue des cailloux 92110 CLICHY - FRANCE You can also send a message to the following Internet address : "gounelle@alphanet.ch". Note that this mailbox is not mine, so please send only short messages. As I don't have direct access to the messages, don't expect an answer before a dozen of days. Thanks to Michel SCHINZ (without him, this program would be still only at the planning stage) and Jean-Yves PROUX for their suggestions, to Reza ELGHAZI and Stefan SALEWSKI for their help concerning the crash under system 3.0. Special thanks to Jean-Philippe RAPP for his numerous suggestions and constant supporting. Last, thanks to XPK library authors for their fantastic work. Getting_started ABackup can be run as well from CLI as from Workbench. From the CLI, you can invoke ABackup by a syntax as follows : ABackup [FROM directory] [BUFSIZE size] [NOCOMP ext,ext,...] [NOTASK] [TMPDIR dir] [SIZE {BYTE|KBYTE|MBYTE|AUTO}] The BUFSIZE option allows to change the size of the read buffer (for example "BUFSIZE 64" asks for a 64 Kb buffer). By default, the buffer size is 4 Kb large. You can specify a directory name for backup (with the "FROM" option); by default, this one will be the current directory. The NOCOMP option allows to specify extensions of file names to don't compress. You can specify up to 10 extensions, separated by a comma (e.g.: "NOCOMP .info,.run"). Usually, ABackup tries to create a child task that will perform all write operations (this speedup backup between 10-20%). If the task creation fails, ABackup will do write operations itself, just like the previous versions of the program. If the creation of the child task is a problem (no memory etc...) you can prevent ABackup to create it with the "NOTASK" argument. The "TMPDIR" argument allows you to change the temporary directory used by ABackup. By default, it uses the "T:" directory, but this may cause lead to memory problems, especially if this directory is assigned to "RAM:T". The "SIZE" argument allows you to change the default unit of the "Size" menu (see below). The "USEASL" argument allows you to use the file requester of "asl.library" instead of the built-in requester. This option will be ignored if the library can't be opened, or if the requester can't be allocated. From the Workbench, you can change the size of the read buffer by adding a line of the form "BUFSIZE=" in the "TOOL TYPES" field of ABackup icon. You can also specify extensions of file names to don't compress by adding a line of the form "NOCOMP=ext,ext,...", or prevent ABackup to create a child task by adding a line "NOTASK". Finaly, you can set ABackup as "DEFAULT TOOL" of an archive file. When the program starts, a screen is displayed with several gadgets in it : "Backup an AmigaDOS partition", "Restore", "Rebuild catalogue", and "Quit". Click on the gadget that matches the wanted action. The startup screen has also a menu with the "Config...", "About..." and "Quit" options. The first one allows to modify ABackup configuration (see "Configuration" section), the second one displays informations about the program, and the last one allows to quit ABackup. Configuration A window appears in the middle of the screen, with eight gadgets. The first three gadgets show the names of the viewer programs corresponding to the type of a file (ASCII file, IFF picture or other, see the "Viewing" section), the two next the names of the external compression/decompression program (see the "Compression" section), and the last the name of the temporary directory (see the "Getting_started" section). At the bottom of the window, three gadgets enable to validate the changes, to validate and save the changes, or to cancel the changes. The configuration is saved to the "S:ABackup.config" file, which is loaded each time the program start. Requesters When using ABackup, often you'll see requesters with one message and one or two gadgets ("Ok", "Continue/Abort", "Yes/No"). In any case, you can reply to a request by clicking on one of these gadgets, or by pressing the key corresponding to the first letter of a reply (for example, the "c" or "C" key for "Continue"). You can also press for a positive reply ("Ok", "Continue", "Yes") or for a negative reply ("Abort", "No"). Finally, when a requester message asks for inserting a disk in one drive, inserting a disk in this drive will be detected and this will be equivalent to clicking on the "Continue" gadget. Backup_an_AmigaDOS_partition A requester is displayed that allows to choose the directory to backup. By clicking on the "Cancel" gadget, ABackup will return to the main screen. By clicking on the "OK" gadget, ABackup will load the directory contents. For breaking this loading, click on the "Abort" gadget or press one of the following keys : "a", "A", . If you don't want ABackup to explore a sub-directory (for example a directory where's a program that you already have on floppy disk, and so you don't need to backup), just put the word "SKIPME" as the comment for this sub-directory. ABackup can now save several partitions in the same archive, so you don't have to save them one by one. To select the partitions to save, you can use the multi-selection of the file requester : click on the partition names (like DH0: and DH1:) holding the SHIFT key down. You can also call ABackup with the FROM option, and specify the partition names separated by a comma (like "FROM DH0:,DH1:"). In this case, if you use the Intuition interface, you won't see the file requester when you will click on "Save an AmigaDOS partition". Once the directory content loaded, the selection screen will apear (see the "The_selection_screen" section below). Backup options are : Compress Tells what kind of compression will be done : none (NO), with the functions integrated to ABackup (Internal), with an external program (External) or with XPK library. For more informations, see "Compression" section. If you press the SHIFT key when you click upon this gadget, the values will cycle in reverse order. Verify Reread and compares every track after writing it. Meaningful only for backup to disks. Backup links Backup selected links. Meaningful only under 2.0 system release. An archive which contains links can of course be restored even under 1.3 system release (links will simply be not restored). Set archive bit Once backup is over, sets the archive bit (see the AmigaDOS command "Protect") of all files and subdirectories successfully backed up. Backup report Indicates if ABackup has to create a backup report. This one can be printed or written to a file. Backup to Selects an archive. If a given name is of the form "df?:" (e.g. df0:, df1:, etc....), ABackup will use the specified disk unit by writing on disks in a special format. In this case, you need not to format your backup disks. Otherwise, ABackup will create an archive file with the name you specified. Note ABackup has the capability of creating this file on any device that accepts the AmigaDOS "Seek" function. You can use several disk drives for backup : specify the names of the drives separated by a coma. For exemple, if you specify "df0:,df1:" ABackup will start with disk in df0:, then continue with the disk in df1:, go back to df0:, etc... The program will automatically (without requester) toggle from one drive to the next, if the disk in the new drive has been changed. For starting a backup, you have to select the "Start" item in "Backup" menu or the "START" gadget. If you asked for backup report to be written to a file, a requester will be brought up so that you can specify a name for this file. If you click over the "Abort" button in this requester, no report will be generated. At this time, a new screen is brought up with different infos on the backup progression. In the bottom area, the file names pass by, followed by an info on the current operation (compression, writing, etc....). The "Disk" gauge displays the filling percentage either of the current disk, or of the volume where is the archive file. If you asked for a disk backup, you can remove the last disk from your drive as soon as the "Archive closed" message will be displayed. If an error occurs (and if this is possible), ABackup will display a message to ask if you want to continue in spite of that. Obviously, ABackup will not make a backup for the file that maked problem. At the top and on the right of this screen there are two gadgets. The "* ABORT *" gadget allows to abort a backup. After it asked to confirm, ABackup returns to the selection screen. The "* PAUSE *" gadget allows to pause a backup for a while. Note that it can happens ABackup doesn't react immediatly when you click over one of these gadgets but, in all cases, your request will be registered before the next write operation in the archive. Once a backup ended (a message will inform you of that), ABackup returns to its main screen. Restore A menu is brought up allowing to specify the archive that must be used. If you click on the "Abort" gadget, ABackup will return to the main screen. The gadgets corresponding to your drives are automatically enabled or disabled according to your hardware configuration. If you click on one of these enabled gadgets, ABackup will ask you to insert the last disk in the backup set, for loading the catalogue. If you click on the "File" gadget, a requester will be brought up so that you specify your archive file. If you click on the "Abort" gadget, ABackup will return to the main screen. Once you have selected an archive, ABackup will load the catalogue of files backed up in this archive and will display the selection screen. Restore options are as follows : Restore dir. tree Indicates if selected files will be all restored in the same directory (NO) or if the tree structure will be restored too (YES). Restore date Indicates if ABackup will set the date of restored file to the date they had at backup time. Restore links Restore selected links. Meaningful only under 2.0 system release. Restoration report Indicates if ABackup has to generate a restoration report. This one can be printed or written to a file. Restore empty dirs Indicates if ABackup has to create empty backed up directories. Replace files Indicates what ABackup has to do if a file it has to restore already exists. Choices are : "No" (file is not replaced), "Yes" (file is replaced), "Ask for" (ABackup will ask to confirm for every existing file), "Older" (ABackup replaces this file only if this one is older than the backed up file). Restore from This option is available only when restoring from floppy disks. It allows to use several disk drives : specify the names of the drives separated by a coma. For exemple, if you specify "df0:,df1:" ABackup will start with disk in df0:, then continue with the disk in df1:, go back to df0:, etc... The program will automatically (without requester) toggle from one drive to the next, if the disk in the new drive has been changed and if this disk is the one which is expected by ABackup. Restore to Usually, files are restored in the directory where they were at the time of the backup, but you can specify another directory by this gadget. For starting a restoration, you have to select the "Start" item in "Restore" menu or the "START" gadget. If you asked for restoration report to be written to a file, a requester will be brought up so that you can specify a name for this file. If you click over the "Abort" button in this requester, no report will be generated. At this time, a new screen is brought up with different infos on the restore progression. In the bottom area, the names of restored files pass by, followed by an info on the current opération (reading, etc....). If an error occurs (and if this is possible), ABackup will display a message to ask if you want to continue in spite of that. Obviously, ABackup will not restore the file that maked problem. If some links are to be restored, ABackup will restore them after all other files and directories are restored. At the top and on the right of this screen there are two gadgets. The "* ABORT *" gadget allows to abort a restoration. After it asked to confirm, ABackup returns to the selection screen. The "* PAUSE *" gadget allows to pause restoration for a while. Note that it can happens ABackup doesn't react immediatly when you click over one of these gadgets but, in all cases, your request will be registered before the next read operation in the archive. Once a restoration ended (a message will inform you of that), ABackup returns to its main screen. Rebuild_catalogue This function is not very useful unless an archive file has been damaged, or you have loose the last disk of a backup set. It will rebuild the archive catalogue, which is required to restore. You should be aware that this function can't handle all errors, and may not be usuable by unexperienced users. If the archive is a file, you should make a copy of it in order to avoid to destroy it if operation fails. You will also have to check that the first header is at a sector boundary, that is, at an address multiple of 512 (you can use the "TYPE archive HEX" command, the first and the third long word of a header are always set to the "ABCK" value). If the archive is on disks, you must give the disks in the same order they were written to. This function works even if disks are missing. The archive selection screen appears (see "Restore" section). When you have selected the archive, ABackup loads its content, file after file : a new screen appears with some informations about the processing. Once the content is loaded, the new catalogue will be created. If the archive is on disks, ABackup will ask you for a new disk to write the catalogue. Use this disk a the last disk of the backup set, when restoring. The_selection_screen This screen consists of a gadgets set and a bottom area where are displayed files and subdirectories of the current directory. At the start, no file and no directory are selected. Files are displayed in black on grey background, and directories in white on grey. Directories with at least one descendant selected are displayed on a black background. You can scroll the list display by means of the vertical scroll bar on the right. The name of the current directory is displayed in the area named "Directory". The number and size of the selected files are displayed in the area named "Selection". For selecting a file in a list, click on the name of this file : it is displayed in black on a blue background and the "Selection" area is updated. If you click on a selected file, this one will be unselected. For selecting or unselecting a set of files, click on the first file and keep down the left button while moving your mouse. Last, to view a file, just double-click on its name (see "Viewing" section). When you click on a directory name, two actions can happen. If this directory is empty, it will be selected or unselected as a file. Otherwise, the list display will be modified in order to make visible the contents of this directory. The "Directory" area will be updated. To go back to the previous directory, you can either click on the "Parent" gadget (at the top of the scroll bar), either click on the gadget between the left border of the screen and the left border of the display area. If you went very down in the tree structure, you can go back straight at the initial directory by clicking on the "Root" gadget (at the top of the scroll bar). Last, if you hold the SHIFT key while you click upon a directory name, the whole directory content will be selected or deselected. At the top of the screen, there are two rows of identical gadgets. These ones allow to select (first row) or to unselect (second row) files and/or subdirectories in a global way according to various criterions : All Selects or unselects all files and subdirectories from the current directory. By name Selects or unselects files and subdirectories according to a name or a pattern. A pattern is a name with one of the special AmigaDOS characters: '#' or '?' under 1.3 system release, '#', '?', '|', '~', '%', parenthesis, or brackets under 2.0 system release. For more informations, refer to your AmigaDOS User's manual. A window is displayed with a string gadget. Type in it a name or a pattern and validate your choice by pressing . Now, click either on the "==" gadget, if you want files or subdirectories whose name matches the name or the pattern you typed, either on the "!=" gadget, if you want files or subdirectories whose name doesn't match the name or pattern you typed. You can cancel this operation by clicking on the window close gadget. By date Selects or unselects files and subdirectories according to the date of the last change. A window is brought up with a string gadget. Type in a date and/or time respecting the following syntax : DD-MM-YY or DD-MMM-YY for the date (for example, "01-03-92" or "01-Mar-92"), and HH:MM:SS for time. Validate your choice by pressing the key, then click over the "<=" gadget or the ">=" gagdet, according as you want to get earlier files and subdirectories or later ones in relation to the typed date. If you typed only time, the date will be the day date. If you typed only a date, time will be "23:59:59", when you click over "<=", or "00:00:00", when you click over ">=". You can cancel this operation by clicking on the window close gadget. By bits Selects or unselects files and subdirectories according to their protection bit. A window is brought up with a string gadget. For testing one or several bits (see the AmigaDOS command "Protect"), type them in this gadget and validate your choice by pressing the key. Click now over the "= 1" or "= 0" gadget according as you want files and subdirectories with their bits set or unset. You can cancel this operation by clicking on the window close gadget. The "Reverse" gadget allows to invert a selection : all selected files become unselected and all unselected files become selected. The "Recursive" gadget controls the action of the "Reverse" gadget, just as it controls the "All", "By name", "By date" and "By bits" gadgets : it shows if selecting or unselecting will or will not concern files that are in the subdirectories of the current directory. The selection screen has three menus too. The "Size" menu allows to change unit ABackup is using to display the size of selected files. You can choose beetween Bytes (the default unit), Kilobytes and Megabytes. If you select the "Automatic" item, ABackup will automatically change of unit, depending of the size of selected files. Later, we'll describe the "Selection" menu. Last, the first menu is either "Backup" or "Restore" (depending of which operation you've choosen) and has the following options : Start Allows to start backup or restore. If you selected no file and no subdirectory, an error message will be displayed. Options Allows to change the backup or restore options. Estimations Gives an estimation of backup time and of the number of disks needed. The result depends of the size of the selected files, of backup options, and of the processor inside your Amiga. It may not be accurate if other tasks are running during the backup. ABackup always suppose that you backup a hard disk to floppies. About... Displays some informations on this program. To continue, click within the window, over the window close gadget or press any key. Abort Allows to abort whole operation. After it asked to confirm, ABackup returns to the main screen. Error_recovering When an error occurs while writing on a disk, you will see the following message "Write error on DFx:, should I try to recover ?". If you answer "NO", the backup will be aborted. If you answer "YES", ABackup will copy all data already written on the bad disk to a new disk, so backup will be able to continue. So, you will have to provide a new disk, of the same type than the bad one : you can't use (for example) a High Density disk (1.76 Mb) to replace a normal density disk (880 Kb). The copy will be processed using a single disk drive. In order to limit disks swap, ABackup will allocate a buffer in memory. The size of this buffer will not be greater than half of the largest CHIP memory block still available, *OR* than the size of three tracks. If this buffer can't be allocated, the backup will be aborted. CAUTION : If you made an error recovering during a backup, I strongly advise you to verify the archive so you'll be sure that all went well.  Viewing From the selection screen, you can view any file just by double-clicking on its name. A window appears, with several gadgets. The "Execute" gadget shows the name of the viewer to use for the selected file. The file's name and type (from which the name of the viewer is set) are displayed above (in white). You can, of course, modify the name of the program to use. The two lower gadgets allow you to start viewing ("OK" gadget), or to abort operation ("CANCEL" gadget). If you try to view a link, ABackup will just display the name of the file or directory the link points to. Compression ABackup is able to compress files to backup, in order to reduce archive size. By default, the algorithm is the same as for the "compress" UNIX command : you can hope for a space-saving from 30% to 50%, but the backup is seriously slowed down with a "normal" 68000 based Amiga. Note that ABackup will not try to compress files with a ".lha", ".lzh", ".zoo", ".arc", ".pp" or ".z" file name extension, as well as any file less than 512 bytes long. You can specify other extensions to don't compress, with the NOCOMP argument (see "Getting_started" section). ABackup also look at the first bytes of the files, to detect files already compressed by XPK or PowerPacker. You can use external compression and decompression programs, which may be faster and/or better. All you have to do is the modify ABackup configuration (see "Configuration" section) : enter the command to execute both for compression and decompression, specifying "%s" as a source file and "%d" as a destination file. For exemple, in order to use the commands provided with PowerPacker (copyright by Nico François), enter : Crunch %s %d NOLED NOPER NOSUFFIX EFFICIENCY 1 as compression program, and : Decrunch %s %d QUIET as decompression program. You won't be able to select external compression as long as no command name has been given. When backing up and restoring, ABackup automatically runs the specified commands, and redirect their output to the "T:ABackup.log" file. You can look at this file if an error occurs. This version of ABackup can also use the XPK library (on Fish disk 754). This library will be automatically recognized if already installed in your "LIBS:" directory. You will then be able to select one of the available compression method, in the options window. The name of the methods are prefixed with a "x" character, like "x BLZW". Take care that it won't be possible to restore an archive compressed with an external program, or with XPK library, if you don't have the corresponding decompression program. Though, you should avoid to use external compression if you plan to give the archive to somebody else. The_catalogue ABackup creates a catalogue of the files archived, and use it to restore. This catalogue is put at the end of the archive. If you loose the catalogue (archive file damaged or disk lost), you can create a new catalogue with the "Rebuild_catalogue" function, described below. This version of ABackup uses a new catalogue format, far more compact than the previous one : the catalogue is then two or three times smaller than before. The size of the catalogue is displayed when ABackup add it the the archive. Of course, this program can load a catalogue created by the older versions of ABackup, but the contrary is not true. With the old format, you could have memory problems with big archives (several thousands of files) because the catalogue will take a lot of memory. If you ever have a "not enough memory" error when loading a catalogue (whatever version of ABackup you use) here is two tricks to restore files anyway. The first solution is to reboot you Amiga, so you'll start with an unfragmented memory. If you mounted a "RAD:" disk, remove it with the "RemRAD" command before you reboot. If you have some background utilities you don't need while restoring, kill them to free more memory. Then, use the TMPDIR argument to assign the temporary directory to a hard disk partition with at least 1 Mb of free space, and try again to restore. If ABackup fails again, you will have to use the second method. The second solution is to create new catalogues, that will be smaller. If the archive has been created with an old version of ABackup, try first to make only one catalogue : as the new format is more compact, maybe this will be enough. Else, you will have to make several catalogues : divide your archive in several parts, and create a new catalogue for each part. The_Selection_menu ABackup has the capability of recording a file selection so that you can recall it later : this can be useful if you use frequently the same selections. These ones are kept as text files containing a set of commands : these files are in the "ABCK:" directory. In order to record a selection, choose the "Record" item in the "Selection" menu; then, do your selection as you do usually. Note that, during this recording, the "Backup" menu disappear (for the time being). Once you have ended, select the item "Save" in the "Selection" menu to save your selection. If you want to abort a recording, choose the item "Abort" in the "Selection" menu. To recall a selection, choose the "Load" item in the "Selection" menu. A file requester will be displayed allowing you to specify the selection file you want use. If you click on the "OK" gadget in this file requester, that file will be loaded and selection it contains will be executed. This is description of the selection language used by ABackup. This allows to create or modify a selection file as you like, by means of your usual text editor. CD : go back to root directory CD / go back to parent directory CD "dir" go down in given directory INVERT reverse selection RECURS {YES|NO} set recursivity flag INCLUDE ALL include all files INCLUDE "name" include given file INCLUDE NAME "name" {==|!=} select by name INCLUDE DATE "date" {<=|>=} select by date INCLUDE BITS "bits" {=0|=1} select by protection bits EXCLUDE ALL exclude all files EXCLUDE "name" exclude given file EXCLUDE NAME "name" {==|!=} exclude by name EXCLUDE DATE "date" {<=|>=} exclude by date EXCLUDE BITS "bits" {=0|=1} exclude by protection bits Here is an exemple of selection file: RECURS YES ; go back to root CD : ; clear any selection EXCLUDE ALL ; include all files with archive bit cleared INCLUDE BITS "a" =0 ; exclude all ".o" files EXCLUDE NAME "#?.o" == Note that empty lines and lines starting by a ";" character are ignored. Also note that ABackup stores automatically the recursivity indicator state at the beginning of your selection record : if you take a look at the created files you'll see they all beging by a "RECURS" command. If you want to be sure to clear a previous selection, it's recommended to start all your selections by clicking on the "ROOT" gadget and then on "EXCLUDE ALL". Usage_without_interface ABackup can be used from CLI, without it's graphic interface. This may be useful for doing automatical backup, with programs like "cron". Four operations are allowed from this level: backup, restore, rebuild catalogue, archive listing. Backup is started with a command like: ABackup BACKUP FROM dir TO arc SELECT {ALL|ARC|file} [OPTIONS {C|V|A|L}] [NOCOMP ext,ext,...] [VERBOSE] [REPORT file] [BUFSIZE size] [NOTASK] [TMPDIR dir] where "dir" is the directory to backup and "arc" the name of the archive to create. The "SELECT" argument allows to select files to backup: it must be followed by the name of a selection file (for exemple "ABCK:FullBackup"), by the keyword "ALL" which allow to select all files, or by the keyword "ARC" which allow to select all files with archive bit cleared. The "OPTIONS" optional argument allow to change backup options (CAUTION: by default, ALL options are reset) : "C" for compression, "V" for verifying, "A" to set archive bit, "L" to backup links. You can specify several options (for exemple "OPTIONS CV"). The "REPORT" optional argument allow to have a backup report. Specify "PRT:" as a file name in order to have this report printed. The "VERBOSE" optional argument allow to have more messages during backup. The other arguments are described at the "Getting_started" section. Restore is started with a command like: ABackup RESTORE FROM arc [TO dir] SELECT {ALL|file} [OPTIONS {F|D|E|L}] [REPLACE {YES|ASK|OLDER}] [VERBOSE] [REPORT file] [BUFSIZE size] [NOTASK] [TMPDIR dir] where "arc" is the name of the archive. The "SELECT" argument allows to select files to restore: it must be followed by the name of a selection file (for exemple "ABCK:SourcesFiles") or by the keyword "ALL", which allow to select all files without having to create a selection file. The "TO dir" optional argument allow to restore files in the specified directory, rather than the directory they were at backup time. The "OPTIONS" optional argument allow to change restore options (CAUTION: by default, ALL options are reset) : "F" to restore all files in the same directory, "D" to restore date, "E" to restore empty directories, "L" to restore links. You can specify several options (for exemple "OPTIONS FE"). The "REPLACE" optional argument allow to specify what ABackup has to do if a file to restore already exists. It must be followed by "YES" (or "Y", the file is replaced), by "ASK" (or "A", you will be asked for confirmation), or by "OLDER" (or "O", the file is replaced only if it's older than the one in the archive). By default, files are not replaced. The "REPORT" optional argument allow to have a restoration report. Specify "PRT:" as a file name in order to have this report printed. The "VERBOSE" optional argument allow to have more messages during restore. The other arguments are described at the "Getting_started" section. Rebuilding catalogue is started with a command like: ABackup REBUILD FROM arc [VERBOSE] [BUFSIZE size] [NOTASK] [TMPDIR dir] where "arc" is the name of the archive. The "VERBOSE" optional argument allow to have more messages during processing. The other arguments are described at the "Getting_started" section. Archive listing is started with a command like: ABackup LIST FROM arc [TO file] [NOTASK] [TMPDIR dir] where "arc" is the name of the archive. The "TO file" optional argument allow to write the listing into the specified file, rather than the console window. Specify "PRT:" as a file name in order to have the list printed. The other arguments are described at the "Getting_started" section. Program_history ABackup was written almost in C language, on an Amiga 3000 UNIX-1 (10 Mb RAM, internal HD disk drive, internal hard disk of 100 Mb, external SyQuest drive of 88 Mb, external floppy disk drive, 1960 monitor and Star LC24-10 printer) connected by a null-modem cable to an A500 with 1 Mb RAM. v1.00 08-Jun-92, 58036 bytes v1.10 20-Jun-92, 59404 bytes o Handles High Density floppy disks (1.76 Mb). o When run from the Workbench, you can change the size of the read buffer with "BUFSIZE=" in the "TOOL TYPES" field of ABackup icon. o Several changes in backup : - when there is any problem at initialization time, goes back to the selection screen - when an archive file exists, or there is already a disk in drive, asks to confirm before starting writing - tests if files to back up are protected against a read (opening a file works in any case, but under 2.0 system release you will be kicked out at the first read operation) - displays the compression rate for every file (after "OK") o Several changes in the interface : - added the "Size" menu in the selection screen (Bytes/Kb/Mb) - displays backed-up/restored percentage and remaining one - the "monitor" window (in blue) is larger when screen is in PAL mode o Time valuation more accurate (uses the "timer.device"). v1.20 28-Jun-92, 62616 bytes o Added the "Selection" menu in the selection screen : you can record a selection and recall it later. o Fixed several bugs : - as a result of an error in the computing of remaining place in the last disk, sometimes it wrote a catalogue overlapping two different floppies - when you swapped a disk during a file header writing, it forgot to set up the disk position at 0 (in the catalogue) - during a read, at the end of a disk, it detected one byte earlier it had to ask for the next disk. o For a by date selection, you can give the month name (e.g. "01-Jan-92") o When run from the Workbench, it does not open the small "console" window. v1.30 01-Jul-92, 67640 bytes o Double-click upon a name starts a "view" operation o Under 2.0 system release, uses "dos.library" pattern matching functions (more powerful than SAS/C ones) o Added "Estimation" option in "Backup" menu o Displays error messages rather than error codes o Bug fixed in "draggin select": didn't displayed directories when scrolling list o Restore screen's title when "Abort" is selected on archive selection menu (Restore) v1.31 04-Jul-92, 68316 bytes (Fish #706) o Added "Restore date" option o Added auditive beep in alert/wait functions o No more need for "arp.library" to make drives "BUSY" under 1.3 system release o Estimations more accurate (don't suppose that last disk is full) v1.40 22-Aug-92, 78328 bytes o Can use several disk drives for backup o Full access from CLI ("batch" mode) o Bug fixed: always tried to decompress archive catalogue (even if it was not) o Bug fixed: when loading archive file catalogue, scanned all archive beginning (instead of going straight to the good location) o Preparation of non-dos partitions backup (most of the required code written) o Added visual beep to each auditive beep v1.50 09-Sep-92, 81068 bytes o Added support for links under 2.0 system release (both hard and soft links are handled) o Added "Backup links" and "Restore links" options o Added "Automatic" item to "Size" menu o Added "NOCOMP ext,ext,..." argument o When requesting a disk for writing, verifies that the disk has really been changed before continuing o If an error occurs while writing on a disk, make one retry o Error in percentage computation corrected o On selection screen, directories with at list one child selected are displayed on a black background o No more overflow from "monitor" window if file name is too long o Bug fixed in SendPacket() function o Bug fixed in time computation (00:29:59 + 1 gave 01:00:00 ... whoops !) o Forgotten trace message removed v1.51 07-Oct-92, 81048 bytes o Any file or directory whose comment begins with "SKIPME" is ignored when loading directory tree o Bug fixed : no more problems if the size of a file change between the time we load directory tree and time we save the file o Bug fixed : didn't clear destination name between two restore (so the second was made is the same directory than the first) o Update status display when disk is changed v1.60 15-Oct-92, 84312 bytes (Fish #759) o Added function to rebuild catalogue o Selection screen modified (added "OPTIONS" and "START" gadgets, etc...) o Estimations for 68000 Amigas corrected (thanks to JYP !) o If a file is read protected (under 2.0 system release) ask for retry o When restoring, display the name of the file created instead of the name in the archive o Restore option "At the same level" renamed "Restore dir. tree" v1.61 21-Oct-92, 84472 bytes o From WB may be set as "DEFAULT TOOL" of an archive file o File type (for visualisation) : no longer binary when an character is found o Window are now centered on the screen o Menus are no longer present during backup or restore v1.70 29-Oct-92, 87016 bytes o Can use external programs for compression/decompression o Added a menu for the startup screen (Config, About, Quit) o Screen's title show what is the current operation o On selection screen, when restoring, the "Directory" field shows the destination directory o By default, compression is disabled o Documentation modified so it can be read with ADoc v1.80 11-Nov-92, 88528 bytes o Creates a child task for disk write operations (speedup backup between 10-20%) o Sets archive bit only on files/dirs which have not it already set o Filenames are truncated to the left instead of the right ("Directory" field, "monitor" window, e.g. ".../foo/bar") v2.00 22-Nov-92, 90492 bytes (Fish #780) o Can use XPK library o Added the error recovering function v2.01 06-Dec-92, 90520 bytes o When using XPK compression, sometimes forgot to delete a temporary file o Disable compression if preferences tells to use XPK and library couldn't be opened o Cosmetics changes on file requester v2.10 12-Dec-92, 88652 bytes o Compiled with SAS/C 6.00 o New catalogue format, far more compact o Show catalogue size when adding it to archive o A few optimizations in display functions (gadget borders now draw with GfxGList instead of GfxOp) o The "Parent" gadget at the left of the file list has now a border v2.11 19-Dec-92, 88708 bytes o When writing catalogue, display the informations as when writing a file (Crunching, Writing, Ok x%) o Updating informations when disk changed : now only disk number and time modified v2.12 25-Dec-92, 89492 bytes o Compiled with SAS/C 6.1 o Verifies XPK.library version (at least version 2) o Added argument TMPDIR to change temporary directory v2.13 08-Jan-93, 90208 bytes o Child task disabled under system release 3.0, because it makes the system crash. o When modifying backup options, compression methods cycle in reverse order if SHIFT key is hold down. o When backing up to a file, the gauge displays the filling percentage of the volume. o Bug fixed: in "batch" mode, forgotted the target directory specified for restoration. v2.20 16-Jan-93, 90644 bytes o Can now restore from several disk drives o Bug fixed in backup: saved the target name instead of the link name (though didn't found the link at restore time) o Bug fixed in backup: the AddCatalog() function didn't returned the correct return code if the catalogue wasn't compressed o Bug fixed in restore: didn't restore the correct date for directories o Bug fixed in reports: didn't write the correct date for directories o The call of viewer programs is safer v2.30 24-Jan-93, 91700 bytes o Can now save several partitions in the same archive o Bug fixed when writing configuration file: the viewer program names were not written at the good position o The temporary directory can be modified in the configuration window, and saved in the configuration file. o Added the "SIZE" argument (changes default value of "Size" menu) o Communication with child task now performed via messages (instead of signals) o Child task stack size is now 4Kb (instead of 2Kb) o Shortening names too long: now tries to remove a full directory name until it works, also done when writing reports. o Bug fixed in date computation. o Since v2.20, viewing a file didn't worked if the viewer program detached itself. o Final requester of non-registered version more irritating o A few optimizations in display functions v2.31 30-Jan-93, 91888 bytes o If a SHIFT key is hold down while you click upon a directory name, the whole directory content is selected/deselected o Drag selecting now also include/exclude directories o Bug fixed: sometimes losed archive name before starting restore v2.40 06-Feb-92, 92364 bytes (Fish #838) o No more crashes with child task under OS 3.0 (KS 39.106, WB 39.29) o Recompiled with SAS/C 6.2 o Link restoration more efficient (no need to insert disks twice) o Directory sort faster (QuickSort instead of Shell sort) o Enhanced multi-selection in file requester v2.41 20-Feb-93, 93124 bytes o Can now use the file requester from asl.library (USEASL argument) o Recognize now XPK and PowerPacker compressed data files and don't compress them o Add a comment to archive files saying they are ABackup archive files v2.42 23-Feb-93, 93264 bytes o Bug fixed: when using external compression, ABackup tried to restore protection bits and date on the temporary file (which was already deleted) instead of the restored file. o Bug fixed: for Lock() to work on a soft-link, you must be in the directory were is the link, so now temporary changes of directory. o Bug fixed in french version: if an error occured when setting archive bit, the error message was not good o Bug fixed in english version: didn't display catalogue size at the end of the backup v2.43 13-Mar-93, 93328 bytes o Bug fixed: the "rebuild catalogue" function didn't worked with multi-partitions archives o Better requesters look (add a bow with GfxGList instead of writing on a black background, etc...) o Bug fixed: directory sorting with QuickSort() wasn't ok o Bug fixed: the viewing function crashed on a 68000 (a "short *" wasn't aligned) o Bug fixed in english version: the "bad XPK version" message was missing o The LIST function asks disks like REBUILD (so you can start from any disk, and some disks may be missing) Planned improvements : o Support for non-AmigaDOS partitions (AMAX, etc...)