The Cowan File Manager Cowan Software, Ltd. 962 Harris Parkway Cartersville, GA 30120 Introduction The COWAN FILE MANAGER is a powerful management tool. It is an invaluable aid whether you own a PC or manage a large network. Using the features of this program, you can quickly determine which drives are available, browse through a drive looking for particular files or types of files, and when desired, delete them or change their attributes and dates. If you come upon an unrec- ognized or suspect file, you can display its contents before tak- ing any action. Files can be moved to a storage disk, blocked from regular access, and later, if necessary, restored to their original sta- tus. Unlike other systems, files are searched by name, date, and attribute independent of their location in the file structure. If you are concerned that hidden files or temporary files have been created and then left to clutter the drive, these are easily identified and removed. All "EXE", "BAT", and "COM" pro- grams can be made "Read Only". You can strip all files from a di- rectory tree leaving the directory structure intact or remove the directories along with their files. You can limit the search by filename, attribute and date, making the identification of inac- tive files a snap. Initially, search parameters are selected. This will include a starting point in the system (often the root directory) and a filename (can include wildcards). Attribute criteria and a date window can be included to further limit the search parameters. A search commencing from the starting point and including all subsequent directories is conducted. A page of file pathnames meeting these search criteria is then displayed. In Function #1, the files can be examined individually. Their size is displayed and their date of record and attributes can be examined and changed. File contents can be examined. In Function #2, files are selected for "global" action. As the search proceeds, a page of matching filenames is displayed. Any or all may be selected or examined. When the search is com- pleted, the selected files can be reviewed and files selected in error "deselected". You can make a printed listing, change at- tributes or dates, or delete these files. You can store the files prior to deletion and restore them to their original status if necessary. The powerful search mechanism allows for rapid pro- cessing of even the largest drives. Network Considerations The various functions of this program may be limited by the network. You must have complete System Operator privileges to use all the assets of this program. Furthermore, if you try to pro- cess a file that another user has open, an error will be gener- ated and the process will fail. It is a good idea to time your management functions to coincide with periods of minimum activ- ity. Using the Mouse In general, both the mouse and the keyboard can be used to activate all functions. Clicking over the key label on the screen is identical to pressing that key on the keyboard. In some func- tions, the left and right mouse buttons have special actions. These directions are displayed in the upper right margin. A 3 button mouse is helpful but not necessary. Important Facts This program requires an IBM Compatible 286 (or above) com- puter running under DOS and a VGA color monitor. A mouse is rec- ommended for convenience. The program disk is copy protected. It cannot be copied nor backed up and the program will not run un- less called from the original disk. As with any powerful tool, unintended loss or corruption of data is possible. Backup all im- portant files before using this product. Carefully read the instructions and practice all functions on a floppy disk before attempting to process important files. Learning the System It is very important that the user completely understand the intricacies of this program before using it in any way. The sam- ple version of this product is generally limited to the A: and B: drives. Calling options: MANAGER [/H ] /H displays maximum number of rows (usually 50). Starting the System Place the program disk in an available floppy drive and se- lect that drive. At the command prompt, start the program as de- scribed above. The program disk may now be removed if the disk drive is otherwise needed. The present system date is displayed. If necessary, correct the date. Using the Calendar The Calendar function is initially used to check the system date and allow its correction if necessary. Later in the program, it is used to read and change file dates as well as set date lim- its on file searches. If the system date is correct, press to proceed. If you select "N" or if you are entering the date function later in the program, the date of record is shown blinking. You can change the date by pointing to any other number and clicking the left mouse. Press or click over the appropriate function keys to advance or retreat one month or one year. You can click over the "mouse select" bar to set a specific date. Select the month and then the year. The day of month is selected last. For manual entry, press , the "Enter Date" function key. You can enter one or two date digits and use the month and year function keys to set the complete date. The reset bar re- turns to the date shown upon original entry. When the correct date is displayed press to proceed. When you leave the date function, the main menu is displayed with choice "3" blinking. A starting searchname is critical to any function and the program wants you to make this choice next. #3 Enter New SEARCHNAME The Searchname consists of two parts, the Searchpoint and the Filename. The Searchpoint may be any directory on any local or network drive. It takes the following forms: C:\ Z:\JOESFILE\ A:\BACKUP\ All search activity begins at this point and includes all subdirectories down the file tree. If the root directory of the network is selected then the entire system is examined. If the root directory of the local hard drive is chosen then that entire drive will be examined. The Filename may be any legal DOS name. Specific names or DOS "wildcards" may be used. The following examples help clarify the choices: "*.*" selects all files "VIDEO.SYS" selects files having this exact name "*.TMP" selects files with the extension "TMP" "D???????.Y??" selects all files with first letter "D" and a "Y" as the first extension letter. When the Searchname function is first entered, both a search- point and filename must be entered. The searchpoint is entered first. You can use to make single letter corrections or to restart from the beginning. The Searchpoint must terminate in a "\" because it denotes the path to a specific di- rectory. The "\" will be added automatically, if needed. Pressing fixes the Searchpoint and moves to the Filename function. If you press again, the "wildcard" is automatically in- serted and you are returned to the Main Menu. Otherwise, enter the Filename and press to return to the Main Menu. Once you have made a complete entry, re-entry into Function #3 displays the prior entry and enters the Filename subfunction. You can to change only the Filename or use to erase the entire Searchname and enter both a new Searchpoint and Filename. subfunction A subfunction is available to help select the Searchpoint. This is especially helpful where multiple drives are present or in the network environment. Pointing to or keying in lists all the available drives. Drive letters local to the com- puter are displayed in white while network drives are orange. The directories may be explored, either with the mouse or with the arrow keys. Clicking left (or left arrow) moves out a specific directory tree while clicking right (right arrow) se- lects that choice as the Searchpoint and enters the Filename function. A beep means no further subdirectories exist. You can point to and click or press "Alt-B" or press the center mouse button (if you have a 3 button mouse) to back step one directory. If you have more than 25 subdirectories in a list, use and . #4 Select ATTRIBUTE and DATE to SEARCH #5 Select ATTRIBUTE and DATE to BLOCK After returning to the main menu, you can choose search and block parameters. The selection may be made by pointing with the mouse or using the arrows. Use the up or down arrows to select which attribute to change. The active selection will blink yel- low. Set the attribute with the left arrow or mouse button. Reset the attribute with the right arrow or mouse button. or clicking the mouse on a blank line returns from the function. See "Using the Calendar" for instructions on setting date parameters. Function #4 allows you to specify the search attribute and the "exclude above date". If you set "hidden", only the hidden files will be selected. If you set "hidden" and "subdirectory", only hidden subdirectories are selected. Upon entry the date is the system date. All files including and below this date will be accepted so this allows all files to be searched. If you select an earlier date, only the older files will be allowed. For example, if you set this calendar to Jan. 3, 1990, files modified or created after that date are excluded. Files carrying a date of Jan. 3, 1990 or earlier will be in- cluded. Function #5 allows you to select attributes to block from the search and an "exclude below date". If you select "Read Only", then all "Read Only" files will be excluded from the search. Likewise, selecting "subdirectory" would exclude all sub- directories. Upon entry, the date is set to Jan. 1, 1980, which is the earliest date allowed by DOS. All files of a later date are therefore included by default. If you select a later date, ear- lier dates will be excluded. For example, if you want to erase all files that are not marked "read only" or are not "subdirectories", turn all the at- tributes of Function #4 off (the default condition) and select "Read Only" and "subdirectory" with Function #5. If you want to examine all files that have not been modified since Jan. 1, 1991, set the date in Function #4 to Dec. 31, 1990. This would include all files through this date and exclude files from Jan. 1, 1991, on. You can create a search window by setting the latest date with Function #4 and the earliest date with Func- tion #5. Setting both to the same date will limit searching to that specific date. When you return from these functions, any active selections will be displayed on the main menu. To cancel selections simply re-enter and immediately exit the appropriate function. If you make no selection with these functions, all files meeting the SEARCHPOINT and FILENAME criteria will be selected. Searching Functions #1, #2, and #6 all involve searching the selected drive. In each of these cases, files meeting criteria are listed for further action. In the case of Functions #1 and #2, the search commences from the Searchpoint and looks for matches to the Filename (both entered in Function #3). The search may be further limited by at- tribute and date constraints set in Functions #4 and #5. Files that successfully match are listed a page at the time. In Function #1, you can point to the file, displaying its size and date, and, if desired, enter a change mode that allows you to change the date and the attributes of that particular file. In Function #2, you can display date and size by pointing, but the only activity is to select the file for later action. The search in Function #6 is for index records previously stored by the Storage subfunction (discussed later). In this case, a separate storage file searchpoint is specified and the appropriate wildcard for indexes inserted automatically. The date and attribute criteria are inactive for this function. (Hint -- You may enter Function #6 and immediately back to the main menu as a quick way to reset the date and attribute controls.) The time required for searching depends on the size of the drive and the specificity of the searchname. A search window blinks during a search as assurance that all is well. If the file of interest is found or if you need to break off a seemingly fruitless search, press . You can then act on the files al- ready found or return to the main menu. If no files are found, you will be returned automatically. Examining a File Any time files are listed, whether in the scan modes of Functions #1 and #2, in the "Review" mode of Function #2, or when files are listed during a restore in Function #6, they may be ac- cessed and their contents examined. The function is entered by pointing with the mouse and pressing the center button (on a 3 button mouse) or by pointing and pressing if you have a 2 button mouse or no mouse at all. If the files are ASCII text, they can be read directly. Non- ASCII data, such as program code or formatting codes interspersed in ASCII text are printed as a ".". Once entered, you can to EXIT or press any other key to page on through the file. At the end of the file, you can press the key to re-start at the beginning or to return to whichever file list you en- tered from. No internal changes in the file contents can be made. #1 SCAN from Searchpoint Function #1 is useful when browsing through files. It also provides a way to quickly read and change the attribute and date of individual files. Note that "Read Only" files are displayed in yellow and "hidden" files are blinking. Drive letters local to the computer are displayed in white, while network drives (and some CD-ROMs) are orange. The size and date of the file under the cursor are displayed. The search will break off when the page fills or when no further matches are found. If you see the word "More" at the bottom right you can press or click right to erase that page and continue searching. If "Complete" is dis- played, pressing or clicking right returns to the main menu. You cannot page back to an earlier list in this function. You must out and re-enter Function #1 to do this. You can examine file contents as described in the prior section. If you want to read or change the attribute or date of a displayed file, point to the filename with either the mouse or arrow keys and click the left mouse or press the left arrow. The attribute and date of that file is displayed. Review the section on the Calendar for instructions on making date changes. You can point to the attribute to change and click left to set or right to reset. The arrows may be used if desired (see Function #4 or #5). The subdirectory attribute cannot be changed and the volume label is not used. If you attempt to change the date of a subdirectory or if you are not allowed write access to the file, an error message is generated. After making any desired changes, press or click on the red "enter" line to return to the SCAN screen. If you , no changes are made. #2 Global SEARCH This is the most useful, but potentially, the most dangerous function. With it you can erase anything and everything. The "Read Only" attribute that would block normal DOS delete func- tions is bypassed. You can print a list of selected files, change their dates of record and their attributes, and copy the selected files to a designated storage area. Unlike Function #1, which al- lows action on single files, this function acts globally on all selected files. Files may be examined during both stages of this function. Step 1 (initial scan) When first started, a page of filenames that meet search criteria is listed (as in Function #1). Click left to "select" (file turns blue) or right to "deselect". selects all files on a page. When you have selected all necessary files on a given page use to move to the next page (as in Function #1). Selected files will be moved to a buffer memory for later action and a new page of files displayed. aborts further searching and shifts to Step 2 immediately. Use this when you have found the files of interest and want to proceed immediately to the action step. If you try to select more than 430 files, you will be prompted to work on these before continuing. Step 2 (review-select action) When you on the last page or use in Step 1, you shift to the "Select Action" screen. All files selected in Step 1 may be reviewed. Use and to view all pages as necessary. moves to the top of the list and moves to the last page. You may "deselect" or "re-select" using the ar- rows or mouse as before. Deselected files (displayed in black and white) will not be acted upon. A file may be "deselected" for one action and then "re-selected" for another. There is no way to add files not selected in step 1. You must out and restart Function #2 to do this. File contents can be examined (press or center mouse). Step 3 (action) After assuring that only the proper files are selected, choose the desired action. will bring up the attribute screen. Select the desired attributes. Use to activate or to abort. This is generally used to change either "archive" or "Read Only" status. Unlike Function #1, all selected files will be changed. calls the Storage (copy) function. You will be prompted to enter a target drive and directory. You may want to use a floppy disk or designate a directory on the network or the hard drive as a holding area. If the target directory already ex- ists, the routine described in Function #3 can be used. The designated directory will be created if it does not already exist. Next, the available disk space is determined. If there isn't enough room to store all the selected files, the process is aborted. If for any reason the storage function cannot create the needed files, an error is generated and the process aborted. This subfunction copies the file data, file attributes, and the complete filename of all the selected files. It is partic- ularly useful when files are to be deleted or irreversibly modi- fied. Stored files may be easily restored to their original sta- tus. For example, you might decide to delete all data files that have been inactive for one year. Prior to deletion, copy them to a storage directory. After a month without complaint, you can erase them from storage or copy them to an archival floppy. will bring up the date screen. Select any date between 1/1/80 and the present. All files will have their date of record modified to this date. Subdirectories have a creation date but it cannot be changed with this function. If you select subdi- rectories along with regular files, an error will pop up to point out that the subdirectories are not being altered. The other files will process normally. When you return, any files not pro- cessed are displayed in green. will print a listing of the selected files along with their respective dates and storage size. The storage size is larger than the file size because it reflects the disk space needed for both the file and its directory entry. You are first prompted to choose between LPT1, LPT2, and LPT3. This subfunction is useful when you have identified files that may no longer be needed. You can print a list of these files so the owners can be warned of your proposed action. will delete all the selected files. You will be prompted to make sure since this step is irreversible. Se- lected subdirectories will be removed only if all their files are deleted. The program works from out, back towards the search- point, so this is a good way to completely scrub a program and all its sub-files from the disk. After completing most action functions, you are returned to the "Select Action" screen. If you are not allowed write access to a file or if you tried to change the date of a subdirectory, an error message is generated and when you return, the file will be highlighted in green. These files are considered not selected, so they must be re-selected with the mouse or left arrow if their inclusion in further action is desired. You can print a list and then change dates or attributes as you like. You can store the files, print a list, then delete. Once delete takes place, the files are gone, and further action is impossible. If all files are deleted, you are returned to the main menu. Should errors occur or unselected files remain, you are returned to the "Select Action" menu. #6 Restore This function is used to manipulate files previously stored with the option of Function #2. It has two features. You can read the storage package and restore its files to their for- mer status and you can erase the storage package when it is no longer needed. Upon first entering Function #6, you must select a starting searchpoint that points to the stored files. In general, this will be the same drive and directory designated during the stor- age operation. If the target directory already exists, the routine described in Function #3 can be used. Otherwise, enter the appropriate path manually. If you have already entered a Restore searchpoint, it will be displayed. You can use or to make changes or to accept this selection. All the "index" files are displayed. Click the desired index and its stored filenames will be displayed. If desired, you can back and select another index. You can examine the files by pointing to the file pathname and clicking center or pressing . Note that the file as stored in the storage package is displayed and not the actual file out in the system. Choose any or all available files using the mouse or the ar- rows. Selected files turn blue. You can use to select all on a given page. Use or as necessary. I. Restoring Files There are two restore options: restores only those selected files that have been deleted. It will not overwrite an existing file. is a "forced" restore. It will re-create deleted files and overwrite existing files. When either restore option is completed, files selected and successfully restored remain selected (blue colored). Files selected but not acted on (i.e. already present in choice ) are displayed in green. In general, use when you want to restore only files that have been erased and don't want to overwrite files that may have updated information. Use when you have made changes that you want to undo. Directory structures will be re- created as necessary. II. Removing a Storage Package Pressing will remove the currently displayed storage package. This is used when there is no possibility that a subse- quent restore operation will be needed. After completion, you are returned to the index list for further restore or delete activity unless the last index has been erased. In this case you proceed directly to the main menu. This function deletes only the storage package and has no effect on the restored files. Getting Started The program works on all drives including floppies and RAM- drives. It is a good idea to first work with the program on a test floppy and save the important work for later. The sample program is limited to the A: or B: drive. XCOPY a directory tree with its files over to a spare floppy. Use less than 1/2 the free space so there will be room to work with the Storage function. Enter Function #3 and select . You will see a list of all the available drives. Note that this function reads all po- tentially available drives. For example, your disk driver card may have room for a B: drive but you have no mechanism installed. Or, you may have a B: drive installed but no disk in the drive. In either case, an error will be returned if you try to access that drive. If you are on a network, you'll see the local drives (usually A:, B:, and C:) listed in white and any Network drives in orange (a CD-ROM will sometimes come up orange as well). Place the mouse cursor over the C: drive and click the left button. You'll see a listing of all the subdirectory entries. You can explore out and back using the left mouse and respec- tively. End up on the root directory of the test floppy. Click the right mouse (or right arrow) to select this drive as the Search- point. Enter "*.*" as the Filename so all files will be processed (simply pressing will do this). Select Function #1. You'll see a list of all the files and subdirectories starting at the Searchpoint. Note that as you move the mouse, the size and date of the file under the cursor will appear in the window to the right. Practice changing the date and attributes of these files by clicking left. Use or click center to examine the files. If all the files are not displayed you can move to the next page by pressing or clicking right. You cannot move back to a prior page but would have to and re-enter Function #1 to do this. back to the menu and enter Function #2. Select all the files with and then and re-select all until the search is complete. An or on the last search page takes you to the "Select Action" page. Note that you can and to review all the files stored in the first step of Function #2. If you see you have selected some files that you don't want to include in an action, you can deselect them with the right mouse or right arrow. Only the files highlighted in blue will be acted on. Select to store (copy) all the files. When asked for a directory enter A:\STORAGE or B:\STORAGE (the name is arbi- trary) depending on the drive. This directory does not yet exist so you'll be prompted to allow its creation. This is a safety step in case you mis-entered the name of an existing directory. You will again be prompted to make sure all is well. After the storage is complete, you are returned to the "Select Action" page. Try to print a list of the selected files. Use to change all the dates and to change all the files to "Read Only" or "Hidden" or both. You will note that an occasional error message appears. This is because you can't change the date of a subdirectory. Now and again in the network environment access restrictions may also create error notices. In general, the program will process the files legally available and simply skip over steps that generate errors. Now use to delete all the files. This may take a little time on a floppy since floppy access times are long. You have removed all the files, so you will return to the main menu. If you re-enter Function #1 or #2 you will see the Storage package and the absence of the original material. At the main menu, enter Function #6 to RESTORE the deleted files. You stored the files on either the A: or B: drive, so en- ter the appropriate letter. You don't have to be specific because the program will search until it finds the STORAGE subdirectory. However, on large networks, you will save time if you enter a more complete path to the files. Select the index by clicking left over the listing. You will now see a list of all the files stored in that index. If you have multiple indexes, you can back to the index list and select another. Once you have chosen the proper index, you need to select the individual files to restore. To select all the files, wipe with the left mouse or use . If you have a list requiring more than one page use and select the other files as nec- essary. When finished, use to restore the files. Since you have deleted all the files earlier, all the files should be successfully restored. If you try again you'll get the "can't overwrite" error because the files now exist and you are attempting an over- write. Upon completion, the files will be highlighted in green to signify that the requested action has failed. You can re-select the files with the left mouse or arrow ( or ) and use to forcibly overwrite the files. In general, use when you want to restore files that have been erased and don't want to overwrite files that may have updated information you want to keep. Use when you have made changes that you want to undo. You will note that restored or overwritten files carry the dates and attributes they had at the time of their storage. When the restore is finished, you can remove the storage files using (assuming they are no longer needed). This function is called from the screen that lists the files and not from the list of indexes. Network File Structures When you begin exploring the network file structure, you will find one of two possible systems. In one, different drive letters are used but they all represent the root directory of the system. For example, you might find: F:\SYSTEM\PUBLIC G:\SYSTEM\PROGRAMS N:\UTILITY If you go back to either F:\, G:\, or N:\, you will see that they represent the identical root directory of the network tree. "SYSTEM" and "UTILITY" are subdirectories of that common root di- rectory. In this type of structure, the file management program will interface with the system identically no matter which drive let- ter you choose to work from. For example, if you wanted to select F:\SYSTEM\PUBLIC as the Searchpoint, you would have to build out to that point from "F:\". You could just as easily build out from "N:\" as "N:\SYSTEM\PUBLIC" would legally exist in this program. In the other system, you might find: F:\SYSTEM\PUBLIC G:\SYSTEM\PROGRAMS N:\PUBLIC In this structure, the root of the "N:\" drive is logically identical to "F:\SYSTEM". Therefore, if you wanted to search starting in the "PUBLIC" subdirectory you could choose either "N:\PUBLIC" or "F:\SYSTEM\PUBLIC" as a valid searchpoint. Con- versely, if you wanted to start from the system root "F:\", you could not get "N:\" to back up. In general, the shortest possible path to the Searchpoint is best. The subfunction of Function #3 will allow you to quickly determine which system is in use. Managing a Network There are countless ways to organize network files and no one approach covers all situations. As you gain experience with the features available through this product, many opportunities for increased efficiency will become apparent. In general, all "Batch" files (those with the extension ".BAT") as well as the executable files (".EXE" and ".COM") can be made "Read Only". This is easily done. 1). Select option #3 (Enter Searchname) from the menu. 2). Enter the designated Path to the directory contain- ing these files (usually the root directory). 3). Enter "*.COM" at the Filename prompt to search for all .COM files. 4). Select option #2 from the menu. Click the left mouse to select single files for action or use to select all. It may sometimes be quicker to select all the files and then "deselect" those not needed. Use to move to the next page. Pressing on the last page or earlier moves to the "Select Action" menu. You can use and to move through the various pages of the "Select Action" screen. If necessary, deselect files with the right mouse or arrow. 5). Now press to shift to the attribute selec- tor. Select "Read Only" and press enter. All the selected files will be changed. 6). (optional) Select to print a list of the files you have changed in case some unforeseen result occurs. 7). to the main menu. You can repeat these steps substituting "*.EXE" and "*.BAT" in step 3. (re-enter Function #3, 3 times, and enter the new extension) Program and overlay files are generally "Read Only". This allows simultaneous access by multiple users. Data files and con- trol files cannot be "Read Only" as they are altered during nor- mal operation. It is a good idea to check the dates of files be- fore making them "Read Only" to assure they are not being written to. There are several advantages to making files "Read Only". It prevents accidental erasure using standard DOS commands and also facilitates using the FILE MANAGER. Most of the Supervisor's headaches come from data files. None of these will be "Read Only". Therefore you can use option #5 and set the Block at- tribute to exclude all "Read Only" files. This will greatly sim- plify searches for the other files. You may want to alter the dates of a group of files to coin- cide with when they were placed on the Network or to update them so that searches by date will pass them by. Use at step 5 above. It is possible that a given program might use its date in an unforeseen way, so it is a good idea to print this information to facilitate reversal should that be necessary. If you have a word processing program or database program on your network, you may be accumulating all manner of temporary or backup files. If all these files are stored in one area you can select that Searchpoint and browse through checking dates. If they are scattered throughout the system, read through the program manuals and see what extensions they use. You can then use a wildcard with that extension (i.e. *.BAK or *.TMP) in Function #3 to search for these files, starting from the root di- rectory. You might want to enter Function #4 and set the date back one or two years so that only the older files are identi- fied. In some situations, it is safe to remove all temporary files over one day old, since they are routinely used only while the program is running or left as a result of a power outage. Never remove a temporary file on the day of its creation unless you know for certain it is no longer needed. The backup files store the next to last copy of word pro- cessing files. Possibly a few months grace would give adequate safety for these files. The actual document and data files will require individual attention. If network storage is a problem, it is necessary to control the storage space allocated to each user. Here, it is useful to print a list of each users files that have been inactive for a given period of time and ask them to certify which files they really need. You can offer to store their files on a personal floppy so that network space can be released. One of the best techniques, when all else fails, is to store suspect files and programs in a special directory and then delete them so they can no longer be accessed by the user. If legitimate complaints arise, the needed files can be restored. After a pe- riod of time, the stored files can be cleared and the process re- peated. Summary The COWAN FILE MANAGER represents an improved approach to disk management. It allows the user to approach files by name, date, and attribute independent of their location in the file struc- ture. Finding all files marked "Read Only" that are over one year old is simple using this system, yet, virtually impossible using standard approaches. The ability to locate inactive files throughout the system enhances the efficient use of disk space, and is a useful asset on both large and small systems. While not able to respond personally to every correspon- dence, Cowan Software, Ltd. welcomes your comments. Suggestions that might make future versions of this product more useful to its users are always welcome. Ordering Instructions To order a fully active version of this product, send $35.00 to: Cowan Software, Ltd. 962 JF Harris Parkway Cartersville, GA 30120 **** Georgia residents include 5% tax = $36.75. **** Please specify either a 3" or 5" diskette.