Unix pages
Home -> UNIX software -> JOYCE


JOYCE emulates the Amstrad PCW on Unix, Windows and Mac OS X. Since it's written using SDL, it shouldn't be too hard to port it to other platforms such as MacOS Classic or BeOS.

JOYCE incorporates ANNE, which emulates the PcW16.

Update History

JOYCE v2.2.12 (stable) released: the default keyboard mapping for the # and \ keys under Windows has been corrected.
JOYCE v2.2.11 (stable) released: added a feature allowing up to 13 emulated hard drives in CP/M (rather than 5-6 as in previous versions). Also corrected the build process so LyX is not required.
JOYCE v2.2.10 (stable) released: compilation fixes for recent GCC versions. Since these only apply to Linux source builds I haven't done a new Windows pack.
JOYCE v2.2.9 (stable) released. This adds emulation of the Electric Studio light pen.
JOYCE v2.2.7 (stable) released. This contains code to guard against the possibility of a malicious CP/M program overwriting or deleting important files on the host computer or crashing JOYCE. If you use JOYCE / ANNE to run CP/M programs downloaded from the Internet, I recommend that you upgrade to this version.
JOYCE v2.2.5 (stable) released, with compilation fixes for the latest version of libpng, and a fix for a crash in the native VGA driver.
JOYCE v2.2.4 (stable) released. Improvements to keyboard emulation; some compiler warnings removed, and an updated SDL.DLL included with the Windows version.
JOYCE v2.2.3 (stable) released. This has a further correction to the configuration script.
JOYCE v2.2.2 (stable) released. This corrects some compilation issues on recent Linux systems.
JOYCE v2.2.1 (stable) released. This corrects a bug which caused ANNE to crash when reinstalling the OS.
JOYCE v2.2.0 (stable) released. Apart from minor code cleanups, this is unchanged from the last development version, 2.1.11.
JOYCE v2.1.11 (development) released. A bug in the Z80 emulation which caused Starglider to hang has been fixed.
JOYCE v2.1.10 (development) released. A longstanding bug which prevented the PCKEY utility working has been fixed.
JOYCE v2.1.9 (development) released. This includes a bugfix to the new folder support in 2.1.8, and some changes to allow compilation on Mac OS X.
JOYCE v2.1.8 (development) released. This allows folders on the host PC to be used as disc images, without the need for any changes to the software on the PCW.
JOYCE v2.1.7 (development) released. The native GSX and Logo drivers (which went missing in JOYCE 2.0.0) have been brought back.
JOYCE v2.1.6 (development) released. This version improves support for some PCW games and disc protection schemes. The Windows version now works if there are no printers set up.
JOYCE v2.1.5 (development) released. This version adds support for joystick emulation using the host PC's joystick(s).
JOYCE v2.1.4 (development) released. Support for my proposed extension to the DSK format has been added; this allows the emulated PcW16 to load CP/M.
JOYCE v2.1.3 (development) released. Various bug fixes in the PcW16 acceleration code.
JOYCE v2.1.2 (development) released. The bug fixed last year in 2.0.2 is now fixed in the development version as well. This version also includes acceleration code in the PcW16 emulator, allowing slow operations such as the memory test to be skipped.
JOYCE v2.0.2 (stable) released - bug fix in MYZ80 hard drive emulation.

PCW Miscellany

These are here because I can't think of anywhere else among my pages to put them.

PCW hardware information

This is included in the JOYCE package, but it's here in case you want it as a separate download: PCW hardware information.

The PCW Keyboard

Keyboard layout and wire protocol.

Gem Drive hardware information

JOYCE does not emulate the Gem hard drive; its emulated hard drive does not match any real-world hardware. But I've documented how the real thing works.

(See also the installation instructions below)

Hardware installation instructions

File formats

LocoScript 1 file format.

Moonstone BasHelp file format and utilities.

PCW television output

This is a circuit diagram for a PCW-to-television converter, allowing a PCW screen to be displayed on one or more television sets. I redrew it from the original, published in the Crawley PCW Club magazine.

PDF circuit diagram

Original Diagram2 file (requires Diagram2 under NeXTStep or OpenStep).

PCW / PC Hybrid

[swift286.jpg, 91Kb]

This advertisement is for a "Swift-286-PCW", a hybrid between a 286 PC and a PCW. Apparently only fourteen of these were ever sold, so the chances of one still existing must be pretty slim.

Though I've not seen one, I'd guess that the PCW compatible video card was a monochrome card (probably MDA or Hercules). The PCW video system has a command ('float video' - OUT 0xF8, 8) which stops the PCW video controller trying to drive the monitor. The monitor signals are present on the PCW expansion port (pin 44 for SYNC, 46 for VIDEO) so once the PCW video controller has been disabled, the PC video card can drive the monitor using them.

My thanks to David Rathbone, who owned Micro Surgeons, for information on this system.

8000 Plus / PCW Plus typeins

[TGZ] typeins.tar.gz (299k) contains type-in listings from issues 1-124 of 8000 Plus / PCW Plus.

John Elliott 2016-04-16