Info about upgrading to 768k. This is a description of what I did to upgrade to 768k my hp48gx, but I'm only going to describe how to add a 512k chip _after_ you have also installed the first 128k upgrade, in other words after you have a 256k G(X). For info about upgrading to 256k you can follow various documents found on the web. You can download from ftp.cis.com/pub/hp48/uploads the file as-docs.zip, which contains some of such documents. I found useful also hpup384k.{zip,txt} and, above all, hphw001.txt from Philippe Teuwen (s952365@student.ulg.ac.be). The reason for describing only upg from 256 to 768 is simple: this part of the upgrade is quite easy :-) A little warning: this description is based on my personal knowledge of my HP48GX, so something may be different if you have a 48G. Standar disclaimer: THIS INFORMATION IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES. What you need: - one hp48g(x) upgraded to 256k - one 512k low power static ram - one inverter: you can use a real inverter, eg. 74HC04, or you can use a NOR (74HC02) or a NAND (74HC00). About the upgraded g(x): If you have a gx working, probably it's better if you try to expand the memcard pcb to work with a 512k chip; I opened my gx to repair the ON key, so I upgraded this way. If you have a G, you have to add the HC00 and the HC174, plus two resistor: I don't know exactly how to do this, since I already have all components. See hpug384k.txt for more details. About 512k static ram: I used a Hitachi HM628512LFP-7, which is a low-power SMD part. If you can find a part named ..LFP-7SL it should be even better, because it's a "lower" low-power part :-) If you upgraded your G using the PCB and the normal DIP SRAM, so you'll need a DIP version, which should be HM628512LP-7 or LP-7SL. This is the chip I used, but you can use a SONY or MITSUBISHI or whatever you can get, since it only needs to be a 512kx8 low power static ram. About the inverter: the inverter is needed because the 512k chip has only one negative logic CS (chip select), which is active low; the hp48, instead, sends on the port CE (card enable ?) with positive logic, active high, so you need this inverter. I used an 74HC02 smd because I found it on the electronic board of a dead hard disk, but you can use any of the parts listed above, or even something other. I used only one port of the HC02, the unused inputs are tied to ground. Where to take the power for this IC? You have to power it the same way Rams are powered, taking VCC from the positive terminal of the electrolitic capacitor. The inverter needs to be powered to output a "high" signal on the CS pin of the RAM, thus putting it in low-power standby mode. If you power it taking, e.g., VCC from the HC00 on the 48, than the inverter will be off when you take off the batteries. The result is the following: the inverter is not powered, so it will output a 0v level, which on the CS of the RAM means "hey, you, wake up!".. The ram wakes up and drains a lot of current from the capacitor, leaving you about 1 or 2 second to change the batteries :-) Instead, if you power the inverter with the capacitor, ram goes in low power mode and you should have some time before you lose your memory. Whatever inverter you choose, you have to be careful about this: the output with the input at 0v must be 1. It's ok if you use an pure inverter (HC04) or a NOR (HC02) with two inputs tied together. A NAND (HC00) will even work, but you have to put one of the input at Vcc (the vcc of the HC00) to be safe. BEWARE: probably this is not an optimum setup, but it seems to work reasonably well. In particular, I don't know exactly how much the backup capacitor will last with the added charge of another RAM and of an inverter, but I think it's enough to safely replace your batteries. I took some more time to add a lithium battery backup, following the directions found in the hp48 FAQ, so I advice you to add it too. What to do? Basically, what you have to do is to put the 512k chip _on_ the 128k which is connected to port 1, connecting nearly all pins pin-to-pin. You have to lift from the 512k chip only 3 pins, which you have to connect individually. Here is the 512k ram pinout: |-------\_/-------| | | A18 - | 1 32 | - Vcc A16 - | 2 31 | - A15 A14 - | 3 30 | - A17 A12 - | 4 29 | - Negative WE A7 - | 5 28 | - A13 A6 - | 6 27 | - A8 A5 - | 7 26 | - A9 A4 - | 8 25 | - A11 A3 - | 9 24 | - Negative OE A2 - | 10 23 | - A10 A1 - | 11 22 | - Negative CS A0 - | 12 21 | - I/O 7 I/O 0 - | 13 20 | - I/0 6 I/O 1 - | 14 19 | - I/0 5 I/O 2 - | 15 18 | - I/0 4 VSS - | 16 17 | - I/0 3 | | |-----------------| Lift the pins 1, 30 and 22 and solder the other pins on the corresponding pins of the 128k chip. Pin 1 (A18) of the ram goes to the pin 32 of the gx port 2 connector. Pin 30 (A17) of the ram goes to the pin 31 of the gx port 2 connector. Pin 22 (NCS) of the ram goes to the output of the inverter. The input of the inverter goes to pin 21 of the gx port 2 connector. After you have to tell to the gx that there is a card in the slot 2 :-) This is done the same way as for adding 128k in port 1: Connect pin 2 of port 2 (battery detect) to the positive terminal of the capacitor through a 1Mohm resistor. --- begin warning Then you have to connect pin 37 and 38 of port 2 to vcc (pin 1 of port 2) and to connect pint 39 to pin 40 (always port 2). --- end warnig warning ! the above part is not verified... It is what have I done to my HP, and works, but probly it's not needed: Philippe Teuwen told me that it's only necessary to connect pin 37 to declare the presence of a "ram card", so pulling pin 37 of port 2 high should be enough. This should be enough to make you start.. but check with documents and try to understand what you're doing before doing it! Have a good upgrade! Stefano Garavaglia (alter.ego (at) iol.it)