Amstrad XT pages
Home -> Amstrad XTs -> Memory Upgrades

Amstrad XTs: Memory Upgrades

There are two categories of memory upgrade that make sense for an Amstrad XT. The maximum amount of conventional memory on an IBM-compatible XT is 640k, so it's possible to upgrade a 512k XT by adding the appropriate chips. The alternative, which is possible for all types, is adding expanded (EMS) memory. This can only be used by software with EMS support, or by DOS for a RAMdisc.

Upgrading 512k XTs


Depending on which model of PC1512 you have, there are two different possibilities for a memory upgrade; so before you order any parts, you need to open up the PC1512 and verify what sort of motherboard you have. Both types will have the sockets for the memory upgrade at the front of the case, on the left (under the left-hand 5.25" drive bay). An original-style PC1512 will have eighteen empty sockets, each 16-pin; a later model will have six empty sockets, of which two are 16-pin and four are 18-pin.

For an original PC1512, you need 18 4164 RAM chips. For the revised version, you need four 41464 chips and two 4164s. The chips should be 150ns or faster (the type number should be followed by -15 or a lower number, so 4164-15, 4164-12 etc.)

Fitting the upgrade should be as simple as plugging the chips in the right way round. There will be a notch at one end of each chip socket, and a dot at the end of each chip which should go at the end with the notch. Once you've fitted the chips, the jumper on motherboard link LK4 (which should be on the left-hand two pins) should be moved to the right-hand two pins.

Reassemble the computer, power-up and hopefully the BIOS message will say that you have a 640k PC.

It's also possible to upgrade memory using a plug-in ISA card such as the AST Six Pak Plus - configure the card to provide 128k of memory starting at 512k. This saves having to open up the case, but you lose an ISA slot, and programs that use it will run slower than if the RAM had been provided by chips on the motherboard.

PPC512, PC20, PC200

All these systems require the same chips for an upgrade as the later-model PC1512. The catch is that they almost certainly won't have chip sockets on the motherboard - just empty spaces where the sockets should go. So in addition to your two 4164s and four 41464s, you'll need two 16-pin sockets, four 18-pin sockets, a soldering iron, solder, and a couple of metres of desolder braid.

Dismantle the computer to the point where the motherboard can be removed - you may well need to get at both sides of it. Once the motherboard is exposed, you'll see the blank spaces where the sockets need to go, labelled IC153 to IC158. On the PC20 / PC200 they're all together, while on the PPC they're in two separate locations. The holes will almost certainly be blocked with solder. What you need to do is clear each hole in turn, using the desolder braid to suck the solder out. If this leaves the hole part-filled, refill it with fresh solder and give the braid another go; it's also worth applying the braid from the other side of the board.

Once you've got all the holes clear, clean up the flux residue that's probably all over the board, and solder in the chip sockets. Then pop in the chips, move LK4 to the 640k position, reassemble and power-up.

The PC20 and PC200 can also be upgraded using a plug-in ISA card, with the same caveats as the PC1512 (plus, of course, having to leave the sunroof open all the time).

Expanded Memory

Expanded memory is provided by an add-on card (such as the Intel AboveBoard) in conjunction with a driver (EMM.SYS) loaded in CONFIG.SYS. Each card can add up to 2Mb of memory, so in theory a PC1512 could have up to 6Mb.

Expanded memory is only of use if you have software that supports it. One possible use is as a RAMdisk (DEVICE=RAMDRIVE.SYS size /A); it can also be used by Windows or DRDOS for task switching.

Downgrading a 640k XT

It's possible to reduce motherboard memory on all Amstrad XTs except the PC5086, by setting the LK4 memory size link to the '512k' position. I can only think of two reasons why you'd want to do this, and they're both pretty niche: either you want to use a peripheral that maps its own memory into the 512k-640k range (such as an EEMS / EMS 4.0 card), or there's a memory fault in that range and you want to isolate it.

John Elliott 26 June 2019