The Aemulor Archive

This page hold older versions of the 26-bit emulator/compatibility layer Aemulor to download and use with your 32-bit RISC OS machines.

Please be sure to download the appropriate version for your target machine, because other versions will refuse to start. The core code is machine-specific, for correct operation and/or for higher performance.

Older 2.52 version builds

26th September 2019

This update to Aemulor provides support for the ARMBook portable from R-Comp and provides an alternative memory configuration that permits the use of up to 52MiB within 32-bit applications running alongside Aemulor and its 26-bit world, as opposed to the original 28MiB limitation introduced for maximum compatibility. Hopefully this will be beneficial to those users who employ Aemulor for running a small number of desktop applications and do not require its full support for non-desktop applications and games

In addition, with verions of Aemulor prior to 2.52 there is an issue with 26-bit Impression builds using 32-bit versions of GDraw, FontDraw, GSpriteExtend and DitherExtend modules. That arrangement (affects Impression-X and any 26-bit Impression trying to use 32-bit modules for correct Red/Blue ordering on Titanium and ARMbook) does function but the 26-bit application code installs a 32-bit module into the 26-bit RMA and it would thus remain installed in the OS module chain after Aemulor is stopped, causing instability and crashes.

With 2.52 and later you will be asked for permission to kill any such 32-bit modules, which necessarily could impact any 32-bit applications also using them. Aemulor cannot feasibly do anything else, and this is preferable to system stability/crashes, until we have a fully 32-bit Impression.

  • Titanium, RapidO, TiMachine
  • Raspberry Pi, Pi Zero, Pi Zero W (BCM2835)
  • Raspberry Pi2 (BCM2836)
  • ARMBook, Raspberry Pi3, Pi2 ver 1.2 (BCM2837)
  • ARMX6, ARMiniX, ARMini, BeagleBoard, PandaBoard
  • IYONIX pc
  • RPCEmu, RiscPC (StrongARM configuration only)

  • Note that if you're trying to run a pre-5.27 version of RISC OS on RPCEmu then you will need to add a patch to the RPCEmu source and rebuild it, as described below. Without the patch you will get an error from Aemulor when it tries to start.

    For stable 5.24 release of 16-Apr-2018, you will need to use the following.

    { 0x1beb0, { 0xe328f202, 0xe8bd803f, 0x00000000, 0x20000000 }, 0x1bebc, 0x01c00000, "28MiB WimpSlot Aemulor" },

    or, for 5.24 with the High Memory Model and a 52MiB application space:

    { 0x1beb0, { 0xe328f202, 0xe8bd803f, 0x00000000, 0x20000000 }, 0x1bebc, 0x03400000, "52MiB WimpSlot Aemulor" },

    For the stable 5.22 release of 13-Apr-2015

    { 0x1a460, { 0xe328f202, 0xe8bd803f, 0x00000000, 0x20000000 }, 0x1a46c, 0x01c00000, "28MiB WimpSlot Aemulor" },

    or, for 5.22 with the High Memory Model and a 52MiB application space:

    { 0x1a460, { 0xe328f202, 0xe8bd803f, 0x00000000, 0x20000000 }, 0x1a46c, 0x03400000, "52MiB WimpSlot Aemulor" },

    Add the appropriate patch to the end of the rom_patch array in romload.c, rebuild RPCEmu and ensure that the patch has been applied by checking through the RPCEmu log. Enjoy.

    IMPORTANT: This IYONIX pc build offers only the ARM610/ARM3 emulations, not the much higher performance of the StrongARM available in commercially-released earlier versions. This is purely because I have somehow managed to break its function over the past couple of years and it may take me a while to track down how. (I was trying to make some of its additional speed available on all targets using a modified approach).

    Older 2.40 version builds

    NOTE: The above builds should operate on builds of RISC OS that relocate the CPU vectors and kernel workspace (referred to as 'Zero Page protection') and protect 26-bit applications from this change. However, as a practical measure, I do not have ZPP and non-ZPP builds for all machines (or, in one case, the machine itself!). If you find problems, please let me know.

    For anyone who is still interested in a version for the A9home I may able to supply one, although since the OS port was rather immature and because I have not built Aemulor for that target in many years, I can offer no guarantee of success.

    Older released versions

    Older, formally released and documented versions of Aemulor are available below and may still be preferable for use if there are issues with the latest development version (it is not practicable for me to test every version with every 26-bit application used by every user!) or if there are compatibility issues with specific OS versions:

    Thanks to Neil Spellings for publishing and supporting Aemulor over the many years since its creation in 2002. For anyone who is interested in the story of its serendipitous creation, I have recorded my recollections of that time...

    Copyright © Adrian Lees 2003-2020