Well I will update this some day... when I have time. I have heaps of cool new stuff I want to put up! Here is a list of some of the stuff I have:
If you want to try assembler or internal programming I have a very useful recommendation: Back up your memory. You can do this by creating an archive of your memory (ARCHIVE command), compressing it with one of the many compression programs if possible(eg BZ, see my links page or go to heaps of hp software), and then transmit it either to a friend's calculator via the IR port, or to a computer using a cable (which is easy to make: see the hp manual which came with the calculator, you can use Windows 'Terminal' to do the transfer - don't forget to do it in BINARY mode!!). A great program if you transmit via IR is 'IO'. It is a library which allows to transmit files much faster than usual (approx 7 times faster, though it can be unstable in certain situations). I have had memory losses quite a few times and it it wasn't for my backups, I would have lost all my utilities and programs. Proceed with caution...

A command I find heaps of fun is #5B15h SYSEVAL. This command is dangerous. SYSEVAL COMMANDS CAN CAUSE MEMORY LOSS AND POSSIBLY CALCULATOR DAMAGE IF USED INCORRECTLY. I take no liability for how you use SYSEVAL and what it does to your calculator. On the hp48gx, this command is the command STRING -> GLOBAL NAME. If you put a string, for example " ", "3" or even "OFF" on level 1 then run the command, that string will become a global name, for example ' ', '3' or 'OFF'. This can now be used to name a variable, so you can name your variable whatever you may wish. Naming variable ' ' and then running ORDER to put this variable at the far right makes it almost invisible. For fun you can name a variable '3' and make it store the number '4'. If you call a variable 'OFF', if that is typed as a command, the varible will instead be recalled. This can be used to replace commands. This unfortunatley does not work for numbers or for commands which a executed from an internal menu, in which case the real command is executed. Variables named a number or a space or a string with a space (eg "My Prog") are hard to delete (VARS will get the variable name back, and so will #5B15h SYSEVAL, but not much else).
One more very simple yet useful program is a program I call 'off'. It is just << OFF off >>. What is does, when run, is put the calculator into a loop which makes the hp turn off as soon as you turn it on BUT the calculator is slow enought for you to have the time to break the program before it turns the hp back off. If you press ON twice ("doubleclick" it), the calculator will come out of the loop. You have to call the program 'off' or whatever you put inside the actual program to make it execute itself. I use 'off' to stop my calculator from turning on in my pocket (if it does turn on, it just turns itself back off). I think that if the program runs itself too many times, it can cause a stack overflow, but I have never had that happen and am not sure how likely this is. The big brother of 'off' is much more violent: The program << OFF OFF OFF OFF ... >> because it is so fast, you have to be really quick to break it. You have to do the following: Turn the calculator on (ON) then do a soft reboot (ON-C), all in a split second. I do not recommend that you try this program, for though it is not dangerous, it is very annoying. Of course the other way to break the program is to go through all the OFF statements.
Please note: I take no responsibility for any of the information on this page or what commands or programs shown here may do to you or your calculator.