Skip to content

Microcomputer emulator, currently focused on the Acorn Atom

Notifications You must be signed in to change notification settings

steverpalmer/emulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Microcomputer Emulator

16 December 2016

The Acorn Atom was an microcomputer produced by Acorn Computers in the early 1980s. It was my first computer and, as was common in the day, I got to know it in a lot of detail. Since then, I've owned many computers, but have become more and more distanced from the details of the machine.

Around 2000, I thought that writing an emulation of my Atom could be an interesting little project. I started an Object-based C implementation using ncurses for the display. Since then the program has evolved and been rewritten many times.

It now makes use of the following:

  • git for version control;
  • UMLet for the UML design diagrams;
  • SCons for the build system;
  • C++ and the Standard Template Libraries;
  • Log4cxx for the extensive logging facilities;
  • Gnome Glibmm libraries mostly for the UTF-8 string type;
  • SDL v2 for the event loop, graphics output and keypress inputs;
  • libxml++ to parse the XML configuration files;
  • RelaxNG to define (compact) schemas for the XML configuration files;
  • Trang to convert the compact schema to the XML schema files;
    • I tried using Jing to validate the schemas, but it sometimes passed and sometimes failed.
  • Robot Framework to provide an acceptance test framework;
  • Python for ad hoc utilities;
  • Various ROM files that I've scoured the Web for.

Indeed, in many ways the project has evolved in to tool that I've used to explore various libraries since the emulator itself was largely complete many years ago.

The emulator is highly configurable, does all the monochrome graphics modes, can take keyboard input from standard-in and send screen output to standard-out, and has a Tape simulation. It is still a Work-In-Progress but I thought I'd publish and be damned.

Steve Palmer

About

Microcomputer emulator, currently focused on the Acorn Atom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published