BeebEm for UNIX



BeebEm is a popular Acorn BBC Micro and Master 128 emulator.

Development of BeebEm started in 1994 by David Gilbert on UNIX, and has since been ported to many other platforms, most notably Microsoft Windows and Apple OS X.

There are many versions of BeebEm floating around the Net, and each version has a different set of features. This version of BeebEm for UNIX is an SDL port of the Windows version of BeebEm.

While I'm specifically targeting UNIX-like platforms, I'll try to keep this a basic SDL application with no additional dependencies. So hopefully, this program should be quite easy to port to other platforms.

Like the Windows version it's based on, BeebEm for UNIX will run most BBC Micro software including Elite, Exile and Revs. It will also run most BBC Micro ROM software (e.g. Wordwise).


I'll admit that the porting process is progressing very slowly, but please bare in mind that I'm porting BeebEm in my spare time, and I do have other projects to work on too! So progress although slow, is progressing!

Although all of the Windows source code is included in this port, it is not currently all active. As of the latest release, the following features are available to you (in various states of completion and testing):

  • Emulation of BBC model B, B+, Integra Board and Master 128.
  • Support for Acorn 65C02, Acorn Z80, Torch Z80 and Acorn 80186 second processors.
  • GUI is displayed over the video window and soon will be 100% SDL code (like Hatari).
  • 8271 and 1770 Floppy disc support.
  • Tape emulation.
  • Sound support.
  • QWERTY keyboard mapping.
  • AMX mouse support.
  • Acorn speech chip emulation.
  • Mike's new exponential volume.
  • Econet support.
  • SASI/SCSI hard drive emulation.
  • Microvitec touch screen.
  • Temporary hack to allow 320x240 and 320x256 video resolutions.
Planed future development:
  • Greatly improved performance of video emulation (for SDL) - maybe even X-Video support (for X11)!
  • Much better sound integration (i.e.: done properly like the Windows version instead of my hack).
  • A debugger (finally)!
  • A native file selector (and finally the removal of the GTK dependency).
  • Much better keyboard support.

Version numbers:

I decided to change the version numbering to something that will differentiate it from the Windows version numbering. When all the code has been ported over, the user interface finished, and the final result considered stable enough for production builds, I'll increase the version numbers to something similar to the Windows and OS X versions.

Until then, I'll use a simple incrementing version number prefixed with "0.0.".

The source code:

I try to keep the source code synchronised with the very latest Windows version (currently version 3.5). So although not all of the Windows features are enabled yet, the source code is up to date.

To send feedback, please email me at: frutbunn at