ElectrEm

ElectrEm is an emulator of the Acorn Electron coded in platform neutral using the Simple DirectMedia Layer library. Builds exist for Windows, Linux and Mac OS X operating systems.
The emulator has seen two major iterations — the older now being known as ElectrEm Classic. The original was a reasonably accurate emulator suitable for Pentium and above machines, whose development began sometime in 2000 and tailed off in early 2002. The latest version is a complete rewrite of the emulator started by the same author in late 2003 with the stated goal of 100% emulation accuracy.
This emulator was the origin of, and has the stated target of full support for, the UEF file format.
Elkulator is an alternative emulator of the Acorn Electron for PC machines. It has attracted some former users of ElectrEm Classic through its availability for DOS, dropped by ElectrEm Future.
Implementation
ElectrEm Classic
ElectrEm Classic is a single threaded application that is similar in design to most other simple computer emulators. Program flow is controlled by the CPU emulator, which makes calls for tasks such as screen refresh in between instructions. Although it is careful to accurately simulate the Electron's memory timings inside the CPU core, external tasks may occur up to 13 cycles late if the CPU is stuck in the middle of an instruction.
Current ElectrEm
The current version of ElectrEm uses multithreaded programming techniques to achieve genuine coroutines — creating an environment in which all emulated devices can maintain accurate timing, but at the cost of greater synchronisation overhead. It is therefore a more accurate emulator, but requires at least a 400 MHz machine to run at full speed.
 
< Prev   Next >