Back-up Tool v 2.3 Dec. 1996 Sjon C Moore sirjon@gatecom.com http://www.gatecom.com/~sirjon/hp/ Files in this zip file BAKUP23.INF: Back-up Tool's inf file BAKUP23.TXT: This file BAKUP23.LIB: Back-up tool library INTRODUCTION: I got very tired of constantly backing up my HP's user memory to my RAM card manually. I was also sick of backing up the libraries I have stored in port 0. In class one day, I wrote a few short programs to do the work for me. I have since decided to expand them and share them with others. This library will allow you to backup all of your user memory as well as all of port 0 to another port. This means that you must have a RAM card. It is also assumed that it is in slot 2. For those low on memory, a BZ compression option has been added for compressing backed-up libraries. I have tried to consider every possibility when testing this program, but I am only human. ALWAYS BACK UP YOUR MEMORY, whether to a PC, someone elses HP, or simply memorize every program, but just make sure you have a back-up. I accept no responsibility for memory loss due to the use of this program. You may use the programs contained within this library free of charge. The selling of this program or any of its documentation, without my prior consent is forbidden . Any alteration or changes to this program or its documentation, should not be released to the public without my prior consent. UFL Some of the error messages and the About program use Font 1 of the UFL library. You can obtain a copy of the UFL from most ftp sites or the software page of my web site at: http://www.gatecom.com/~sirjon/hp/software.html or from Andre Schoorl's UFL site: http://www.engr.uvic.ca/~aschoorl/ufl/ INSTALLATION: 1) If you are using any previous versions of Back-up Tool, you must first remove it and any previous back-ups before continuing. Please see the section below titled "DELETING THE PROGRAM". 2) Transfer the library (bakup23.lib) to your HP. If you don't know how to do this, check out my program transfer page at: http://www.gatecom.com/~sirjon/hp/xfer.html 3) Choose which port to install the program to. Do not install to port 0. The purpose of this utility is to make recovery of your memory very quick and easy. If your memory crashes, you'll lose the Back-up Tool and the ability to recover your memory using this program. Enter the number of the port you're installing to on the stack and press STO. Warmstart the calculator (ON-C), or turn the calc off then back on. 4) You must run the configuration program (CNFG) before you can save a back-up (SAVE). You similarly must save a back-up before you can recall a back-up (OOPS). It is vital that you do this in this order. 5) It should now be attached and ready to go. Checksum: #940Ah Bytes: 4077 WHATS IT GOT?: CNFG The configuration program. This will create the BAKPAR list in port 2. SAVE This is the program for saving user mem and port 0 mem. The SAVE program is slightly different from versions 2.0 and earlier. Please read the "Saving a Back-up" section below. OOPS This is the restoring program. About This is the "about" program. SAVEALL This command forces a back-up of both user mem and port 0 mem. SW A nice program that allows the user to change the write-protection setting on a RAM card on the fly. It was originally named SWITCH, but had no documentation, so I can't give credit to the author (since I don't know who the author is). BZ The compressor. v1.2 with #400 hash buffer. HOW DOES IT WORK? For Back-up Tool 2.3 to work properly, you must do things in the proper order. You must first configure the program (CNFG), then save a back-up (SAVE), then you may recall a back-up (OOPS) if necessary. The key is the BAKPAR list in port 2 which is created by CNFG. If this file is corrupted, you must delete it, then re-run CNFG. Also, if you decide to change any of the information in the CNFG form, you must immediately make a back-up with the new configuration. Also, Back-up Tool will not delete your old back-ups. If you change the name of your User mem back-up object, or the port you are backing-up to, you will need to manually purge your old back-ups. Configuring the program To configure, first remove the write-protection on your RAM card, then launch the CNFG program. You will see two fields. The USER MEM field is the name that Back-up Tool will give your user memory back- up object. The default is BAKSJ. The second field, PORT ?, tells Back-up Tool where to place the back up objects. The default is 2. The last field will tell the program whether or not to compress backed-up libraries with the BZ compressor. A check mark enables BZ. The default is NO. When done, press OK. If you failed to remove the protection on your card, an error message will appear. Change the setting at this time and the configuration will work properly. When done, a list will be stored in port 2 called BAKPAR. Do NOT make changes to this list unless you are certain you know what you're doing. Back-up Tool does not perform error checking on the BAKPAR contents. Saving a Back-up Before saving a back-up object, you must be sure that your card is not write-protected. If you fail to do so, an error message will appear telling you to change the setting. To back up your user AND port 0 memory, you must enter a 1 onto the stack. This will tell the program that you wish to back-up port 0. If the stack is empty, or level one contains an object other than 1, only HOME will be backed-up. Now press (or enter onto the stack) SAVE. That's it. If you are backing-up libraries and compressing them, the back-up may take a while. If you are simply archiving home, back-up time should be no more than a few seconds. If you find placing a 1 on the stack to be a problem, you can use the SAVEALL command to save user and port 0 mem always. Recovering a Back-up To recover your memory, either press the OOPS key, or type OOPS into the stack and press enter. Before doing this, you must be sure that you have no libraries installed in port 0. Back-up Tool is unable to purge these libraries automatically due to some libraries with strange deletion routines (such as Java). The length of time for restoration depends on the size of the back-ups, whether BZ was used to compress your libraries, and the amount of time your warm-starts usually last. I chose the name "OOPS" because it's easy to remember. If you have the misfortune to get the dreaded "Try to Recover Memory?", you can now confidently press yes. When it's done, type OOPS and go along your merry way. Note to Java users: You will need to manually restart Java after restoring your memory. To do this type JAVA at the prompt. DELETING THE PROGRAM If for some strange reason, you decide to delete this amazing program :) simply delete the library, the back-up objects it has created, and the BAKPAR list in port 2. Follow these steps to accomplish this: 1) Enter :n:1695 onto the stack (where n is the port where it has been installed). Press enter again. DETACH, then PURGE. The library is now gone. 2) Enter :2:BAKPAR onto the stack then PURGE. The BAKPAR list is now gone. 3) Now you must delete the back-up objects the library created. I think you can follow the above examples to figure this part out. Besides, I don't know what you decided to call them, or where you put them :) KNOWN LIMITATIONS: *It doesn't expect to find anything but libraries in port 0. If it finds back-up objects in port 0, the outcome is somewhat unpredictable. It will probably work, but the name of the back-up object will be rather strange. The only work-around is to not store back-ups in port 0 (which is unlikely since you have a ram card in which you can place them). THANKS I would like to thank the following people for their help with this project: Jack Levy For his help with determining a ports write protection status. Georg Zotti For his help with error trapping. Mika Heiskanen For the Jazz library which made this project possible. Also for the BZ compressor. REVISION HISTORY: v1.0 (10/20/96) Initial Release v1.1 (10/20/96) Released about 8 hours later. Added a routine to check for write-protected (or missing) RAM cards. Before, you were required to do some clean-up if you screwed up. v2.0 (12/1/96) Converted to Sys-RPL. Added the SW program. v2.1 (12/17/96) (never publically released) Added the SAVEALL and SAVEHOME commands. SAVE command now backs-up home only unless a 1 is on stack level 1, in which case it backs-up port 0 also. v2.2 (12/22/96) Added the BZ compression option to version 2.1. v2.3 (12/27/96) Maintenance release. Removed: UBZ, SAVEHOME command, help file (second page of About). Several small bugs fixed, code optimization, and 900 bytes trimmed (that's a decrease of almost 20%). BUGS, COMMENTS, SUGGESTIONS? Feedback is always essential. If you have a problem, comment or suggestion for improving this program, I'll be glad to hear it. Sjon C. Moore sirjon@gatecom.com http://www.gatecom.com/~sirjon/