From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
JavaCPC emulating a CPC6128
JavaCPC running an actual demo
The debugger in action

JavaCPC is a CPC emulator written in Java. It is being developed by Devilmarkus and uses Executioner's JEMU as base.

JavaCPC Desktop requires Java v1.6 or later; older versions also run under Java v1.5.


  • Autotype
  • Basic FDC-emulation
  • Bilinear screen filtering (can be disabled)
  • Emulates the Amstrad CPC 464, 664 and 6128
  • CRTC 0/1 emulation
  • Digiblaster emulation
  • Direct export (Binary) / import of CPC files (BASIC, Binary)
  • Drag and Drop
  • Dynamic turbo
  • Free selectable ROMs (OS and expansion ROMs)
  • FutureOS support
  • Green, monochrome and colour monitor emulation
  • High accurate AY-3-8912 emulation
  • Integrated debugger with breakpoints and break instructions
  • ROM emulation (0 up to 32!).
  • SymbOS support
  • Tape emulation, which supports WAV, CDT, TZX, CSW and MP3
  • Text-printer
  • Save current CPC screen as text
  • WAV recorder
  • YM-recorder and player!

Planned features

  • Light gun
  • FDC improvements

Running JavaCPC Desktop on OS X and Linux

Download the ZIP archive from, then uncompress it and double click JavaCPC.jar in your file manager to run JavaCPC.

You could also create a shell script to start the program, e.g.:

cd /usr/lib/javacpc
java -jar JavaCPC.jar -Xms512m

If you run Arch Linux, here is a JavaCPC AUR package.

Sound from the CPC can be a problem if the system is running PulseAudio (as most current Linux distos do). One possible workaround is simply killing the PulseAudio server before starting JavaCPC or prefixing the Java command with "pasuspender" to suspend PA. (For the latter approach, browsers or media players that currently use PA need to be closed first or suspending will not work.)

Web links