The File Catalog Version 1.4 September 1993 Written in GFA Basic 3.5e by Randy Hoekstra This version may be freely distributed, but if you like and use it, please send $10.00 to the author to support further development. See below for details. All Commercial Rights Reserved * Changes for Version 1.4 (09/93): - bug fix - disk name updates in new list after changing it - bug fix - generate new list updates disk name - change window setup code to be more resolution independent - added show file menu command - bug fix - deleted folders were not showing up in delta list - implemented PRINT function from file dialog - added menu commands to select file info to display - converted form_dials & objc_draws to work with let em fly - implemented GEM windows (4) and some window gadgets - bug fix - available drives not being set correctly - bug fix - saving new list not resetting saved flag - added shift clr/home to go to bottom of list - 'add to archive' now checks name and drive letter for a match - added set paths command - added backup delta list command See end of document for version history ------------------------------------------------------------ What is the File Catalog? ------------------------- The File Catalog is a simple utility that keeps track of the files on a disk or hard drive partition and allows you to monitor changes to your files. The program reads in all the files on a disk or partition and stores them in a file. Later, a new list can be generated and the old and new lists can be automatically compared to see what has changed. The 'delta' of the old and new file lists will show all files that have been deleted, added, or changed (size or date). It can not detect files that have been changed without a change in size or change in the date stamp. FileCat can now also back-up those files that have been added or changed, with a simple menu command. You select the path that you want back-ups sent to and the either manually select files to copy to the back-up path or select a command to back-up all files added or changed as identified in the delta list. This allows for very easy and reliable incremental back-ups. I have been using this program for awhile to help manage hard disk back-ups. By finding out what has changed since the last back-up, I can decide what files need to be backed up and what files need to be deleted before a tape back-up. With version 1.4, I can now use the delta list to make incremental back-ups more often and not have to worry about losing anything in between full tape back-ups. Version 1.4 is being released as donation-ware. If you like and use the program, please send $10.00 to support further development. Include a floppy disk or $5.00 to receive the latest version, when it is available. I certainly plan to continue enhancing the program as time permits. If you have any suggestions for enhancements, new features, or whatever, I would love to hear them. I would also like to hear about any bugs, and will do my best to correct them as soon as possible. For any of the above, or to just let me know you're using the program, you can contact me at the following: Randy Hoekstra 3414 Norwood Circle Richardson, Texas 75082 GEnie: R.Hoekstra1 Using The File Catalog: ----------------------- For a quick start, run the program, select the desired drive under the DRIVE menu, and select GENERATE FILE LIST under the DO menu. This will bring up a list of current files on the selected drive. The SAVE NEW LIST under the FILE menu should then be used to save the list to the selected drive. Not much else to do now but go about your normal business of computer using. After changes have been made to the files on the drive, you can return to The File Catalog, load in the old list (LOAD OLD LIST under FILE), generate a new list (GENERATE FILE LIST under DO), and then see what has changed (DELTA OLD & NEW under DO). Or, all of the above can be accomplished by selecting DO ALL under the DO menu. Starting with version 1.4, the various file list are all displayed in their own windows. These windows can be sized and moved independently using standard GEM window techniques. The active file list (window) can be selected by clicking on any visable portion of that window or by selecting the appropriate file list from the WINDOW menu. You can also select BACKUP DELTA LIST from the DO menu and all files in the detla list marked as CHANGED or NEW will be copied to the back-up path (see SET PATHS under FILE menu). The default path is floppy drive A: until set otherwise. The File Catalog can also be used to search for a file on a given disk or hard drive partition. Using the SEARCH FOR FILE command under the WINDOW menu, you can enter any character string up to 12 characters in length to search for. The search routine will find any occurrence of the string at any position within the searched text (search for PRG will find any file that ends in .PRG or contains PRG somewhere within the filename). File maintenance can also be performed by generating a new file list and then selecting (clicking with left mouse button) any displayed file to copy, move, rename, or delete the file. A dialog will be presented with the options and and a chance to cancel the command. The program is very simple to use and should be fairly intuitive from the Menus. The following brief overview of the menu commands should get you going. FILE ==== Load Old List ^L: Once a file list has been generated and saved ----------------- to disk, this command can be used to load that list back into memory. The old file list must be loaded before a delta can done between the old and new. The old file list will be loaded from the path specified in the SET PATHS dialog (see SET PATHS command below). Save New List ^N: This command is used to save the current ----------------- (new) file list to disk. The command can only be selected after the GENERATE FILE LIST command is used to create a new file list. You must initially generate a file list and save it to disk in order to have a list of files that can be compared to a new list at a latter date. The new list will be saved to the path specified in the SET PATHS dialog (see SET PATHS command below). Append to Archive: Selecting this command will bring up a ------------------ file selector and allow you to choose an existing archive file or type in a new file name. If it is a new file, the current new file list in memory will be saved to this file. If it is an existing archive file, that file will be searched to see if the disk name and drive letter of the new file list in memory already exists in the archive file. If no match is found, then the new file list will be added to the end of the archive file. If a disk name match is found, you will be given the option to replace the existing file list in the archive file, skip the existing file list and continue searching, or cancel the command. If continue is selected, the search will resume until another match is found or the end of file is reached. If the end of file is reached, the new file list will be added to the end of the archive file. This command can only be used when there is a new file list in memory. If there is not, a dialog will be presented with an indication that the command can not be performed. Show File: This command will bring up a file selector and ---------- allow you to choose a file to display in the Show File window. Note: The file is not checked for ASCII characters, so it is possible to corrupt the Show File window if non-ASCII chars are present in the file being displayed. Delete File: This command can be used to delete any file ------------ using the standard file selector to choose the file to be deleted. You will be prompted to verify the delete before it is performed. Set Paths: This command will bring up a dialog allowing you ---------- to set the paths for the file lists to be saved/loaded from. The default is the root directory of the drive selected, but it can be set to any path desired. At the bottom of the SET PATHS dialog, is a line for the back-up path. Enter the desired path to be used to copy files to when a back-up operation is performed either by clicking on a file name with the control key pressed or by selecting the BACKUP DELTA LIST command from the DO menu (after generating a delta list). All paths can be set by clicking on the path line and setting the path from the file selector. Save Configuration: Use this command to save the current ------------------- configuration to disk. The data will be saved in file FILECAT.CFG in the same directory as the program. The data saved in the configuration file includes the paths, view options, and GEM window positions and size. The configuration data is automatically loaded in the next time the program is run. Page Set Up: This command has not yet been implemented. ------------ Print Window: This command will print only the visable ------------- contents of the currently selected window. Print Entire List: This command will print the entire list ------------------ of files in the currently selected window. Quit ^Q: This will terminate execution of the program after -------- prompting you to save the new file list if it has been generated but not saved. DRIVE ===== This menu list is used to select the drive on which all other operations will be performed. When a new drive is selected, the current file lists are cleared from memory. DO == Generate File List ^G: This command reads in all the files on ---------------------- the currently selected drive. The file list generated must be saved to disk using the SAVE NEW LIST command if it is to be used at a latter date as the old list. Delta Old & New ^D: This command compares the old and new file ------------------- lists and generates a list of changes. Changes include files added, files deleted, files changed, folders added, and folders deleted. In order to perform this delta, an old file list must be loaded and a new file list generated. This command will also copy any file comments from the old file list to the new file list, where they can be edited or saved with the new file list. Do All ^A: This command will perform the three most common ---------- commands used in The File Catalog (Load Old List, Generate File List, and Delta Old & New) all in one. See the description of these three commands for details on what each one does. Upon completion, the delta list will be displayed. BackUp Delta List: This command will search through the ------------------ delta list and all files marked as NEW or CHANGED will be copied to the path specified as the back- up path in the SET PATHS dialog. If the file to be copied already exists in the destination path, you will be presented with an alert saying 'File Already Exists. Overwrite?' allowing you to either copy the file, skip that file, or copy the file and prevent the 'File Already Exists' alert from appearing again during that back- up session (YES, NO, ASK NOT). If ASK NOT is selected, the remaining files will be copied without stopping even if the files already exist in the destination path. Search for File ^S: This command will search any list for a ------------------- string of characters up to 12 chars in length. The search routine will find any occurrence of the string at any position within the searched text (search for PRG will find any file that ends in .PRG or contains PRG somewhere within the filename). The search will begin from the current top line in the window and the first occurrence found will then become the top of the displayed list. Search Again ^R: Once the above command has been executed, ---------------- this command will be available to search for the next occurrence of the search string starting at the last found position. This command can be used to search for multiple occurrences through the entire file. VIEW ==== File Size, File Time, File Date, Comment: ----------------------------------------- These commands toggle on and off the display of the corresponding field in the currently active window. A check mark next to the command indicates that field is to be displayed. Each window can be set up with it's own unique display configuration using the commands in the VIEW menu. WINDOW ====== Old File List, New File List, Delta List, Show File: ---------------------------------------------------- Use this menu to select the file list to display in the widow. The active display will be shown with a check mark to the left of the file list name. The window can display either the old file list, new file list, the delta list, or the show file. KEY COMMANDS: ~~~~~~~~~~~~~ In addition to the keyboard equivalents for the above menu commands, the following key commands are available. - UP/DOWN ARROW: Use the arrow keys to scroll the display. - SHIFT+UP/DOWN ARROW: This will scroll a page at a time. - RIGHT/LEFT ARROW: This will cause the display to jump to the next/previous sub-directory entry, respectively. - CLR/HOME: This will move the display to the top of the current file list. - SHIFT CLR/HOME: This will move the display to the bottom of the current file list. - CONTROL + MOUSE CLICK: Clicking on a filename while pressing the control key will cause that file to be copied to the back-up path set in the SET PATHS dialog. EXTRAS: ~~~~~~~ - Any file in any list displayed on the screen can be selected with the left mouse button to bring up a file dialog allowing the file to be copied, moved, renamed, deleted, printed, or shown in the show file window. An alert will indicate if a selected file does not exist on the drive (when choosing from the old file list or the delta list) and the file dialog will not be presented. - The disk name at the top of the list can be selected to bring up a dialog allowing the disk name to be changed. This will use the standard disk name format, or if you use NEODESK it will use the 21 character format used by NEODESK. (NEODESK is a trademark of Gribnif Software) That's all there is to it. Like I said, it's pretty simple. I find it useful for general file maintenance on my hard drive and maybe you will too. If you have any questions, suggestions, or whatever, please contact me at the addresses above. Thanks for allowing me to occupy your disk space. In the PipeLine: ~~~~~~~~~~~~~~~~ I have some other ideas rumbling around in the noggin, so I will probably have a next version before too long. What I don't know is which idea to implement first. If you have a preference (or some ideas of your own), let me know and I will probably do that one first. My current list of ideas is as follows: - Disk info command to show number of files and bytes. - Directory Tree display to show only the folders. - Options to display only the file info desired (size, date, etc) and to sort by size, date, etc. - Implement the file info button in the file dialog and allow changing the file attributes (hidden file, archive bit, etc) from the file info dialog. - Implement some type of compression for the new file list saved to disk. Version History ~~~~~~~~~~~~~~~ * Changes for Version 1.3 (05/93): - Added Disk Name to top of file list. Disk name can be clicked on to change the name. - Added Copy, Move, and Show to a new file dialog with Rename and Delete when a file is selected from the main file list window. - Commands from the file dialog will automatically update the new file list in memory (ie when a file is deleted it's entry will be removed from the new file list that is currently in memory). - Added the ability to have a 30 character comment line following the file info. This comment can be edited by selecting a button from the file dialog. Comments are transferred from the old file list to the new file list when a delta is run. - Added menu command to add new file list to an archive file containing multiple file lists from various disks. If disk name is found in the archive file, you will have the option to replace the existing file list or add the file list to the end of file. - Added key commands to jump to the next/previous sub- directory entry in the currently displayed list. (right/left arrow respectively) - Optimized the way the new file list is read into memory, speeding up the operation and reducing the amount of disk accessing required. * Changes for Version 1.2 (02/93): - Fixed a bug seen when selecting list to display (Window) - Various code clean-up and enhancement - Added a point and click to RENAME/DELETE file. Any filename displayed on the screen can be clicked on to bring up a RENAME/DELETE Alert. An alert will indicate if a selected file does not exist on the drive (when choosing from the old file list or the delta list) and the RENAME/DELETE alert will not be presented. - Added a SEARCH FOR FILE command to allow searching of any list for a given string of characters. - Added a DO ALL command that will load the old list, generate a new list, and perform a delta all in one. - Added keyboard equivalents for nearly all menu commands. * Changes for Version 1.1 (12/92): - Window redraws are handled correctly with ACCs. - The selected drive is initialized to the drive the program was run from instead of drive A. - Drives that do not exist are disabled from the menu.