Newbies What Next ? News Forums Calendar


News Sections
General News (3987/0)
Reviews (637/0)
Press Releases (465/0)
Distributions (197/0)
Software (915/0)
Hardware (537/0)
Security (192/0)
Tutorials (356/0)
Off Topic (181/0)

User Functions


Don't have an account yet? Sign up as a New User

There are no upcoming events



ep128emu is an open source, portable emulator of the Enterprise 64/128, ZX Spectrum 48/128, and Amstrad CPC 464/664/6128 computers.

It implements accurate, high quality hardware emulation, however, the system requirements are higher than that of most other emulators.

The emulator is written in C++, and supports Windows and POSIX platforms (32 bit Windows, 32 and 64 bit Linux, and MacOS X have been tested).


Free to download



Istvan Varga


System Requirements

Documentation, FAQ, SourceForge Project Page

Selected Reviews:

Features include:

  • Instruction based emulation of the Z80 CPU, supports all documented and some undocumented opcodes, and memory wait states (including synchronization with the NICK chip when accessing video memory)
  • RAM size can be set in 16 kilobyte steps in the range 64 to 3712
  • ROM can be loaded from external image files to segments 00h to 07h, 10h to 13h, 20h to 23h, 30h to 33h, and 40h to 43h
  • Using external configuration files, it is also possible to define any memory configuration without the above limitations
  • NICK chip emulation, supporting all documented and undocumented video modes
  • DAVE emulation, including timers, interrupts, external ports for tape and keyboard/joystick, memory paging, and sound output (all effects are supported, and the polynomial counters generate the same pseudo-random "noise" pattern as on the real machine)
  • Tape emulation with playback, recording, and setting tape position; markers can be created for quick positioning to specific tape locations (useful for tapes with multiple files); uses custom file format which is PCM audio data with 1 to 8 bits of sample resolution and variable sample rate, and header including the table of markers
    There is also limited (read only) support for EPTE format tape files, as well as read-write (although without markers) support for sound files like WAV, AIFF, etc
  • WD177x (floppy drive controller) emulation for EXDOS
  • IDE hard disk emulation; supports up to 4 2 GB disks, image files can be in raw or VHD format
  • Optional extension ROM (epfileio.rom) that implements a FILE: device for direct access to files on the host system in a single user selectable directory
  • Spectrum emulator card emulation
  • Real time clock (at ports 7Eh, 7Fh)
  • External 4-channel 8-bit DAC at ports F0h to F3h
  • Graphical user interface using the FLTK library
  • Software (FLTK based) or OpenGL video, with resizable emulator window, fullscreen mode, brightness, contrast, gamma, hue, and color saturation control; additional features in OpenGL mode only:
    • single or double buffered (with synchronization to vertical refresh) mode
    • linear texture filtering
    • resampling video output to the monitor refresh rate
    • some display effects: motion blur, scanline shading, and (if OpenGL 2.0 shaders are available) PAL TV emulation
  • Real time audio output uses the PortAudio library (v18 or v19), with support for many native audio APIs (MME/DirectSound/WDM-KS/WASAPI on Windows, OSS/ALSA/JACK on Linux, and CoreAudio on MacOS X); high quality sample rate conversion with low aliasing; volume control, two first order highpass filters with configurable cutoff frequency, and an optional parametric equalizer can be applied to the audio signal
  • Recording audio output to a WAV format sound file
  • Recording video and sound output to an AVI format video file, with 768x576 RLE8 or 384x288 uncompressed YV12 video at 24 to 60 frames per second, and 48000 Hz stereo 16-bit PCM audio
  • Saving screenshots as 768x576 8-bit RLE compressed BMP files
  • Saving and loading snapshots of the state of the emulated machine
  • Demo recording (snapshot combined with stream of keyboard events which can be played back with accurate timing)
  • GUI tape editor utility for copying Enterprise files from/to ep128emu tape images
  • GUI debugger with support for breakpoints/watchpoints, viewing the current state of CPU and I/O registers and memory paging, displaying memory dump and searching for a pattern of bytes, and disassembler with support for all documented and some undocumented Z80 opcodes. A simple monitor is also included, with commands like assemble, disassemble (also to a file), trace, memory and I/O port dump and modify, printing and changing CPU registers, memory compare, copy, fill, search, load and save, and more. For most operations, addresses can be 16 bit CPU (affected by current paging) or 22 bit physical (all ROM and RAM data can be accessed, regardless of memory paging) addresses. Watchpoints can also be set on I/O ports and physical addresses. The debugger supports scripting in the Lua language, to allow for advanced uses like breakpoints with custom defined, complex set of conditions
  • Configurable keyboard map for the emulated machine; it is also possible to use external game controller devices like joysticks and gamepads

ep128emu in action

Return to Quirky Home Computer Emulators Home Page

Bookmark and Share

Last Updated Friday, July 03 2015 @ 05:42 PM EDT

We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, SQL, Node.js (new), Fortran (new), Erlang (new), Pascal (new), and Ada (new).

Group Tests
100 Essential Apps
All Group Tests

Top Free Software
5 Office Suites
3 Lean Desktops
7 Document Processors
4 Distraction Free Tools
9 Project Management
4 Business Solutions
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 Productivity Tools
5 Note Taking Apps
9 Terminal Emulators
21 Financial Tools
5 Bitcoin Clients
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
42 Best Games
9 Steam Games
42 Audio Apps
5 Music Streaming
42 Video Apps
5 YouTube Tools
80 Security Apps
9 System Monitoring
8 Geometry Apps
Free Console Apps
14 Multimedia
4 Audio Grabbers
9 Internet Apps
3 HTTP Clients
5 File Managers
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

Other Articles
Migrating from Windows
Back up your data
20 Free Linux Books
24 Beginner Books
12 Shell Scripting Books

Older Stories
Saturday 05/16
  • 9 First Steps with Ubuntu 15.04 (0)
  • Excellent Console Log File Analyzers (0)

  • Monday 05/04
  • 100 Essential Free Apps (0)

  • Saturday 04/25
  • What are good command line HTTP clients? (0)

  • Sunday 04/12
  • First Peek at XBian on the Raspberry Pi 2 (0)

  • Saturday 04/04
  • First Look at OSMC RC on the Raspberry Pi 2 (0)

  • Sunday 03/29
  • First Steps with OpenELEC on the Raspberry Pi 2 (0)
  • Ubuntu MATE 15.04 for Raspberry Pi 2 (0)

  • Monday 03/16
  • MIPS Creator CI20 v Raspberry Pi 2 (0)
  • Raspberry Pi 2: Raspbian (ARMv6) v Linaro (ARMv7) (0)

  • Vote

    What Linux distribution do you run on your main computer?

    981 votes | 3 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 - All rights reserved