The 512k Atari 800XL/1200XL

By Dan Schmidt
CIS: 72347,354

An upgrade for the 800XL/1200XL computers that already have a 256k RAMBO XL
or Claus Buchholz upgrade installed.

I've been using a RAMBO 256k XL for the last year. It has served me well without a hitch. Lately, I have been thinking of setting up a BBS. Between that and an unused set of 8 256k RAMS, I decided to expand to a half meg. I
proceeded by downloading all the information I could find. Needless to say, I found nothing that described upgrading my trusty XL. Finally, I decided to make my own upgrade and here is what I came up with:

It uses 1 chip only (not including the 8 RAMS) You can have access to the entire 448k of RAM disk, even when you are in BASIC. No switches are needed. Diagnostic ROM is available at any time, even though this upgrade uses this line (PB7) to select the added 256k of RAM. The system remains 100% 130XE compatible in CPU mode.

Finally, I have included a patch file for fellow SpartaDOS users, that modifies RD.COM version 3.2 to support this upgrade. Unfortunately, for those without SpartaDOS, you are on your own. I'm sure that any RAM disk handler that uses a bank select table could be modified without too much trouble. If you don't have a 256k XL yet, either build Claus Buchholz's upgrade or buy a RAMBO XL. They are identical. For those 576XE users that have made it this far, by moving 2 wires in your XE and using this patched RD.COM file, you can also have all 512k of RAM
disk available from BASIC. However, you will have to use your little switch to select 256k mode before attempting a coldstart, or your machine will lock up. This switch may be then placed back in 512k mode as soon as the boot load starts and left there until diagnostics is required. (ie, BASIC's BYE command) For more information on RAM disks, and their handlers, call the CHAOS BBS at 517-371-1106

The 512k Atari 800XL/1200XL
By Dan Schmidt
Parts List:
8 256k Dynamic RAMs - 150ns
8 16 pin sockets
1 74S139 - Dual 2 to 4 line multiplexer. I have used a 74LS139 with some
success also, but I won't recommend it as it is slower, less powerful and may
cause the system to lock-up.
1 33 ohm, 1/4 watt resistor,
Hookup wire
2pc 1" heat-shrink tubing
Hot-glue gun


Open up the computer, disconnect the keyboard and remove the RF shield. The upper metal RF shield will no longer fit with the top bank of RAMS in place. It must either be cut to fit or discarded.

Carefully remove the 8 old 256k RAMS (U9 - U16) from their sockets.

Take the 8 new sockets and gently bend pin 15 out on each of them.

Solder a socket to the top of each RAM leaving a small gap for cooling between the RAM and the socket. Solder each of the socket's legs to the RAM below, except for pin 15.

Take the hookup wire and run it from pin 15 to pin 15 on all the sockets. 'Daisy chain' the 8 sockets together leaving about 1 1/2" wire between each.

Replace the RAMs with the new sockets soldered on top of them into their sockets on the PC board.

Take the 74S139 and bend out all the pins except for pin 8 and 16. Then clip in half all the pins that you have bent out.

Take the hookup wire and connect pins 2, 13 and 8 together.

Solder another piece of wire between pins 3 and 12.

Take the 33 ohm resistor and clip it leaving 1/4 inch of lead on either end.
Bend one end over sharply then solder that end to pin 6.

Put the 74S139 aside for a moment.

Take the board and locate U23 (CO14795), the PIA. If yours is socketed, you can pry it up and bend out pin 17. If it is soldered in, you can either have it unsoldered, or simply cut the trace where it leaves pin 17.

Locate R108, a 33 ohm resistor, one of a pair, located immediately below the row of RAMs on the board. Heat up the innermost end and gently pry it up and out. Straighten the resistor end.

I am not sure where this resistor is on the 1200XL's, but it can be located by following the trace leading from pin 15 on the existing RAMs back to it's origin at the 33 ohm resistor.

Now take the 74S139 and solder pins 8 and 16 on the IC to pins 8 and 16 on U28, a conveniently located chip.

Take a wire and solder one end to pin 1 on the 74S139. Attach the other end to the pad where you just removed one lead of R108.

Run a wire between pin 4 and the lifted lead of R108, slipping a piece of the heat-shrink tubing over the wire before soldering it to the resistor.

Run another wire between the 33 ohm resistor soldered to pin 6 and pin 15 on the newly added row of RAMs. Use the other piece of tubing to insulate this resistor also. Slide the tubing over the resistors, making sure no wire remains exposed and heat gently with a lighter.

Run a wire from pin 11 on the 74S139 to the MMU U3 (CO61618), pin 6. (U14 on the 1200XL)

Attach another wire between pin 2 of the 74S139 and pin 17 that you lifted on U23, the 40 pin PIA.

Now take a look at the 256k circuitry. One of the chips is a 74LS153. On the RAMBO XL's, they are labeled as IC2. Solder a length of hookup wire between pin 14 on IC2 and pin 14 on the 74S139.

Take the new 256k RAMs and insert them into their sockets on top of U9 to

If you had to remove the PC board from the case, replace it now.

Leave the keyboard detached for the present. Instead, connect up the power and monitor and see if the computer starts up. If it doesn't start up, re-check your wiring job. Also make sure none of the RAMs have bent legs and
that all are inserted properly.

Tack the wires down neatly with the hot glue gun. They can easily be lifted later by running a hot soldering gun over them for a second.

Replace the keyboard and the modified RF shield. Plug in the SIO line and

Run the file PATCH_RD.BAS from BASIC. Insert a disk containing SpartaDOS's RD.COM on it into D1:. This file will be modified into a file called RDXL.COM. This is the 512k RAM disk handler program. Load this program as
you would RD.COM, to give you 448k of globally accessible RAM disk.

Unfortunately RDXL.COM does not recognize unmodified 128k XE's. Also, 320k XE's are treated as 192k XL's. This RAM disk handler is primarily for 512k systems, fully supporting both the 512k XL and the 576k XE.

The rest of this is for XE owners.

Those with 576k XE's who wish to use RDXL.COM and retain their entire 1/2 meg RAM disk even from BASIC, should remove U23 (CO14795) and bend out pin 17. Unsolder the wire attached to pin 11 and reattach it to pin 17.
Straighten out pin 11 and replace the PIA in it's socket again.

Then, find U3 (CO61618), the MMU. Remove the wire soldered to pin 13 and re-attach it to pin 6 on the same chip.

When you reboot, you will have to switch your system to 256k mode momentarily as the OS accesses the diagnostic ROM during bootup. As soon as the drive kicks in, throw the switch back again to 512k mode.

PORT B - Memory control register

Bit: 7 6 5 4 3 2 1 0

D a b E c d B R

D=0 enables diagnostic ROM and upper 256k RAM
B=0 enables BASIC ROM
R=1 enables OS ROM
E=0 enables extended RAM
abcd is the 4-bit extended RAM bank#

The new RAM is now controlled by bit 7, but only when extended RAM is
enabled. Otherwise it controls diagnostic ROM.

Here are the bank control numbers in hex, as used by RDXL.COM.
00,04,08,0C - This final set of banks is only used by XE systems.

SpartaDOS and RAMBO XL are trademarks of ICD, Inc. 1220 Rock St. Rockford, IL
61101-1437, USA

Atari 130XE, 800XL and 1200XL are trademarks of Atari, Corp.

Dan Schmidt
CIS: 72347,354


About ILS  -  Contact us  -  Report Web Issues