\f1\c\_ADDING 256K OF RAM TO THE KAYPRO II\_\f0\w An article in the September 85 issue of Byte describing a 256K upgrade for the Atari 800XL prompted me to try a similar hardware hack on my pre-84 series Kaypro. Although I encountered a number of problems I now have a Kaypro with 256K of RAM. The difference that this made to the performance of my Kaypro far surpassed my expectations. Perfect Writer can handle large files without protracted bouts of swapping or missing keyboard input. Infocom games run in erie silence with no disk drive motor noise and almost instant response. I've even buffered my CCP and BDOS so that a warm boot is twice as fast and I can do a warm boot without a system disk in drive A:. The 256K RAM in my machine has been working perfectly for around six months now. This was not the first time I had taken the lid of my machine and delved inside. Within a year of buying my Kaypro I had speeded the CPU up to 5 MHz, added a ProMonitor 8 ROM, installed a ZTIME-1 clock board and fitted twin 1 megabyte Mitsubishi drives. However fitting 256K RAM chips with address decoding, bank switching and refresh was certainly the most frightening upgrade I've ever performed as I was breaking new ground rather than following a proven design. As a result I learnt a lot, some of it quite painfully. In the hope that I can spare others some of the worry and stress that I suffered here is a step by step guide on how to turn a Kaypro into a Kaypro 8-256. Although the case of my Kaypro proclaims it as a Kaypro II in fact inside is a Kaypro 4 mother board as I discovered when my first MicroC ProMonitor ROM didn't work (they exchanged it for the correct one straight away and explained what had happened). The circuit in Fig I should work with most Z80 machines that use 64K dynamic ram's. However the connections shown in table I are obviously specific to the Kaypro 4 motherboard. If you have a different Kaypro model you may need to consult a schematic to find were to obtain various signals. This modification does involve fairly extensive surgery and an understanding of dynamic ram's so if you are not confident to carry out this sort of work on your machine get a friend who knows what they are doing to do it for you. Few people reading this will not have heard many warnings about static damage to IC's. Like me you may have become a little blase about these warnings. Be warned that 256K chips are amongst the most sensitive and easily damaged IC's that you will ever come across. If you want a reliable system and don't like wasting money take full precautions. You have been warned. I bought my chips from Microprocessors Unlimited and they provide a very good instruction sheet on handling IC's, they also have very low prices and top quality parts. The first thing to do having switched off and unplugged your machine, removed the lid and then removed the mother board is to carefully unsolder the eight 64K RAM chips. This will take several hours and must be done delicately with extreme care and gentleness. Don't use too much heat, don't use more than minimal force and don't rush. Use proper tools. A solder sucker or solder wick and proper iron are essential. Whenever you make any modifications to a circuit you should proceed stepwise and test at each stage as a matter of routine. So having removed the chips check the board carefully for damage. Then install eight 16 pin sockets in place of the ram chips and plug the 64K RAM chips into them. Check that they are the right way up and that no pins are bent out or folded under. After checking a second time switch on and all should work as it did before. Run your stiffest memory tests. If all isn't fine then check all the chips are in correctly, that all solder joints are good and that no bridges of solder short out tracks. Check that no tracks have been damaged and try again. Finally if it still doesn't work try swapping a known good 64K RAM chip set. Don't proceed further until your machine works correctly. Assuming all is working disconnect again and wire all the pin number ones of the RAM sockets together under the board. On my Kaypro these are not connected to anything, check that the same is true on yours. If your board has pin 1 of the RAM chips connected to ground, +5V or anything else then when you plug the 256K chips in (seen below) bend pin 1 out and wire the pin ones of each chip together instead. This forms RA8 the 8th address line to the 256K RAM chips. Now remove resistor R9 so that the RA7 signal is no longer connected to the address line multiplexer U33. Make the circuit shown in fig I on prototyping board, Radio Shack sell suitable boards. Connect the circuit to your Kaypro motherboard according to the wiring instructions in table I. Don't forget ground and +5v and don't get them the wrong way around (I did the first time). Now connect your mother board up and switch on. All should still work as before. Run your stiffest hardware test programs. Use your machine extensively. When you are happy that all works as it should replace the 64K chips with 256K chips. Test your machine again. All should work and you now have a Kaypro 8-256! The circuit is similar to those in the September Byte article and I advise you to get and read this first. U1 is a twin four bit binary counter and these are wired together as a divide by 64. The refresh signal is fed through this to produce the eighth bit of the refresh address for the dynamic ram chips. Although the Z80 has an eight bit refresh register it only provides a seven bit refresh address. U3 is a twin 4 line to 1 multiplexer. This carries out bank switching to produce the new RA7 and RA8 for the RAM. It also ensures that the same bank is selected whenever an access is made to the top 32K of RAM. U2 combines RA7 with the refresh address generated by U3 producing the new RA7. Having got 256K of RAM your Kaypro will behave no differently until you install suitable software to make use of the extra memory. I chose to modify my BIOS to provide a 160K RAM disk, 26.5K printer buffer and 5.5K CCP and BDOS buffer. This works well for me but you may wish to be more ambitious and rewrite the BIOS to provide track buffering which while a better way to use the RAM requires a lot of assembly language programming. If you do it then I'd really appreciate a copy. For the future you might note that there is plenty of multiplexer left on IC2 for modification to use 1 Megabit chips and that with 150 or 120 nanosecond parts there is room for a further CPU speedup to 8 MHz with a Z80H. The final question you might want to ask is why go to all this trouble to install a 160K ram drive when MicroSphere offer cheap RAM drives with upto a meg of RAM. Well it's fun, it's educational and it cost under $40. \p \_TABLE I\_ Signal on Chip on Board Kaypro 4 REFRESH U48 pin 12 MUX U33 pin 1 A14 U33 pin 10 A15 U33 pin 11 RA7 U20 pin 9 RA8 U20 pin 1 PIO 1 Pad E29 PIO 2 Pad E28 PIO 3 Pad E31 \_FIGURE 1\_ \l0i +-----------------------------+ | | | +--------+ | | +------| 7 |- 0v | | | -| 4 |----------+ | | -| L |- | | -| S |- | | 0v -| 3 |- +--|------| 9 |- | +5v -| 3 1|----------+----------< RFRSH | +--------+ | | | 33R | +--------+ | RA7 <-- / /---|------| |- 0v | +------| 7 |- | +---------| 4 |- | | -| L |- | | -| S |- | | -| 1 |- | | 0v -| 5 |- | | +5v -| 8 1|----------+ | +--------+ | | +--------+ +---------| |- 0v 33R PIO 1 >-------------+-| 7 |------------ / /----> RA8 +-| 4 |--------------------< PIO 2 A14b >---------------| L |- +5v 0v -| S |--------------------< PIO 3 A15b >---------------| 1 |- +5v 0v -| 5 |--------------------< MUX +5v -| 3 1|- 0v +--------+