From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search

X-MEM is a 512KB RAM and 512KB ROM Expansion made by TotO from ACME. It can be paired with a Y-MEM to expand the CPC to 1MB RAM.


ROMs are selected using the normal ROM selection I/O port (DFxx).

  • If 'ROM read' is active then CPC will see 16 KB pages from the X-MEM flash at ROM slots 0-6 and 8-31. If boot from CPC, then ROM 0 will be from CPC.
  • If 'free' is active, the CPC will also see 16 KB pages from the X-MEM flash at &40-&4f. All are visible regardless of booting from CPC or X-MEM. ROM select &47 contains the alternate lower ROM.
  • When boot from CPC is active, OS and BASIC are from CPC and not from X-MEM but they can still be accessed at &40-&4f if free is set.
  • If you wish to program the flash make sure 'free' is set and use the rom slots in the &40-&4f range.
  • The flash is mapped contiguously to roms &40-&4f so that when programming the flash you need to translate the flash address from the datasheet to an appropriate rom slot and address in the range &c000-&ffff.

e.g. for flash address &05555 use DF41 and address &D555. For &2aaa this is DF40 and address &EAAA.

  • If 'free' is set then writes to &c000-&ffff go to both to the flash and to ram. When the upper rom is paged in, writes to &c000-&ffff go to the ram as normal.
  • Writing to the flash doesn't require the upper rom to be paged in.
  • If 'rom read' is not set, roms are not visible at all and flash can't be accessed.

X-MEM Floppy Disc Utilities

X-MEM Init Pass

This program allows to clear all the 32 ROMs stored inside your X-MEM board. RUN”INIT” The process takes one minute to erase all the slots. After that, your X-MEM will be not able to boot if you don’t install it first. Don’t forget to set the BOOT switch (2) to “CPC” position to continue.

X-MEM Install Pass

This program allows to install the X-MEM after the Init pass. Also, it can up- date the Firmware and BASIC, targeting your CPC and keyboard layout. RUN”INSTALL” The process takes few seconds for reprogramming the Lower ROM and ROM 0. Then you will be able to choose the CPC target model for programming the X-MEM. Note that ROM 1 will be used in the future to extend the Firmware 3.14. Currently, a 448K RAM Drive “C” is installed. Use |C from BASIC or C: from CP/M.

X-MEM Rescue Pass

If your X-MEM is programmed with one (or more) defective ROM(s) that pre- vent your computer to boot properly, please turn it off. After that, set the READ ROM jumper (4) to “NO” and turn it on again. RUN”RESCUE”

In all these cases, make sure that your X-MEM ROM switch (3) is set to “FREE”. For software updates and support, please visit: http://www.centpourcent.net


Thank you for choosing this new ACME hardware for your good old CPC! The X-MEM is the state of the art of the memory expansions. It embeds up to 512K RAM/ROM and allows to replace the Lower ROM and ROM 0 to use different Firmwares and BASIC to push all CPC at the same level of compatibility.

X-MEM Diagram

  • 1. CPC 464/6128 switch = Set RAM mode for 464/664 or 6128
  • 2. BOOT CPC/ROM switch = Set boot mode from CPC or X-MEM
  • 3. ROM LOCK/FREE switch = Set ROM write protect, like a floppy tab
  • 4. READ ROM NO/YES jumper = Ignore the ROM part. Rescue mode only!
  • 5. Expansion port connector = To MotherX4 or CPC using a ribbon cable

Firmware 3.14

1. FW Boot

Display the real amount of RAM and the CRTC type of your computer. You can skip the ROMs initialization by keeping the ESC key pressed while (re)booting. It’s a safe way to run conflicting programs and avoids to apply a rescue pass.

2. ROMs Init

The Firmware 3.14 initializes the first 32 ROMs with RSX support on all CPCs. The ROMs messages are disabled to boot faster and not scroll the screen.

3. Burning ROMs

There are different ways to flash a ROM:

  • Using Firmware 3.15: You can program the ROM from BASIC into the X-MEM: CALL &B8DD,<source>,<rom_id>

i.e. “CALL &B8DD,&4000,15” set the ROM 15 with 16K loaded at &4000.

  • Using FutureOS: Use the convenient ROManager to manage all your ROMs.

FutureOS Lower ROM

The X-MEM provides the feature to replace the LowerROM (you can use the ROManager to install any kind of lower ROM with it). The LowerROM for FutureOS will work to autostart the OS.


Q1: After plugging properly the expansion, I get random bugs or no display. A1: Check the boot switch (2) position and clean your CPC Expansion port.

Q2: All programs don’t detect the extra RAM on my 464/664 and fail to run. A2: Check the RAM switch (1) position, then your +5V power supply.

Q3: My favorite utilities fail to program the X-MEM ROMs. (RMA, ROManager, ...) A3: Check the ROM switch (3) position. Use only the provided programs.

Q4: After programming some ROMs, my CPC gets sticked at FW initialization. A4: Try to boot with the ESC key pressed, then apply the X-MEM rescue pass.