This page differs from the others on this site, in that it is about emulators for other platforms, that emulate an Acorn. Some of the emulation is a little low level at the moment, but progress is being made!
Chris
Lloyd's Archie is an A440 emulator for the PC has the prestigious achievement
of being the first widely usable Acorn emulator which is able to run the
RISC OS desktop. The compatibility level which Archie has
achieved is truly astounding, capable of running many games and demos,
let alone the familiar Acorn desktop. The emulator can now even read and
write floppy disks (albeit in a limited fashion). D Format floppy disk
images can be made on your real Archimedes and then copied to the PC where
they load directly into the emulator and work just the same as the real
thing. This is great because it allows (almost) exact copies of disks to
be made allowing you to play your copy-protected games on the PC (such
as Chocks Away, shown below). The disk images are simple to use and you
can swap between two disk images from inside the emulator itself. The scroll-lock
light on your PC keyboard even lights up to indicate disk access in the
same way as the light on the old Archie used to. Even better, 720Kb DOS
disks are also able to be accessed by the emulator allowing you to get
files that you have on your PC into the emulator. These disks are accessed
by configuring the emulated Arch to have 2 disk drives and then drive 1
maps directly (and slowly) to your PC's floppy drive. The floppy drive
emulation is a little preliminary and therefore shouldn't be thrashed too
heavily, though I personally have had no problems.
Long
term storage on Archie is something of a problem at the moment since no
kind of hard disc image is supported so you're left with saving temporarily
to a RAM disk inside the emulator (not too much of a problem with the 4Mb
that's available). A couple of other niceties are also left unsupported
at the moment, sound emulation not being least though I hope this can wait
while more pressing issues are fixed. Other useful features such as Parallel
(and maybe even Serial) port emulation are planned which would allow the
user to print to a PC printer through the emulator. Chris is looking at
writing a PCFS filing system program which will hopefully allow Archie
and emulated programs to access PC file devices such as hard discs, floppies, CDs
for storage while retaining floppy disk images for compatibility with older
programs.
The graphics at present are very good though the screen resolution is limited to 800x600, any Acorn modes larger than this are clipped to the display. The screen banking can also be a little slow which manifests itself in the way that the mouse pointer flickers on and off very rapidly, not much of a problem but frustrating when you remember how smooth it used to be on the real thing. The good news is that for the next release the author has rewritten all the graphics routines to take advantage of VESA2 and with fast assembly-coded screen plotters which should help speed up emulation a little and remove the flicker. Taking screenshots of the emulated screen is now supported though I have to admit to having a few problems with it on my PC (possibly something to do with my graphics card, problems have been noticed on ATI cards though this is already fixed ready for the next version).
To
be able to take advantage of the emulator you'll need a copy of the RISC OS ROMs
for v2 or 3 which can be ripped very easily from your real Archie (read
the instructions in the help file) but without them you won't be able to
get very far and certainly won't be able to run any desktop or multiple-file
programs.
The compatibility of the emulator is now very good and most programs that you throw at it will run fine. Notoriously Elite still refuses to run due to a few errors and this is something that Chris is working hard to try and fix, in fact it's one of the main reasons he's worked so hard on the emulator and is firmly at the top of the to do list (don't hassle him about it, it'll all come together in good time). I personally have played a bit of Chocks Away, I wouldn't say it was quite perfect and is noticeably slower, but it was certainly playable. I estimate that running the emulator on my P2-450MHz PC it runs at something just over half the speed of my A5000. Not blindingly fast I agree, but certainly usable and there's apparently room for improvement with Chris reckoning he can probably get about another 40% speed up when he gets round to optimising it in the (near) future.
Chris has done a superb job in getting Archie this far and has worked very hard on an extremely difficult task, for which he is to be commended. Please don't hassle him asking for ROM images or software, instead, send him bug reports detailing software you've found which works/doesn't work and how it goes wrong/how it performs. It's only with feedback like this that the emulator will progress. It's not quite a perfect Archie on your PC, but its a very good step in the right direction and a truly amazing piece of software!
Archie v0.5, 12/6/99
Archie
homepage
Resources:
http://madjock.emulationworld.com/
http://come.to/sysrom
The infamous Lander running on Archie on my PC
AcornEmu by Rob
Pattenden is a simple Acorn emulator for Windows 95. It boots up the
BASIC interpreter, and can then load, save, run BASIC programs
just like on a normal Acorn. The emulator has simple graphics capabilities,
but there are several small bugs still with the emulation, since other
programs I've tried come up with perculiar errors not present on my A5000.
The emulator is quite nice in that it goes to the trouble of using the
actual Acorn system font and although still a little buggy is still fairly
good. It's not up to the compatibility nor the speed of Archie (and is
very slow in comparison), but is another promising emulator that could
go far with a little more work. Beware though, the installation procedure
is a little more involved than most, and if you don't already have DirectX5,
probably isn't worth the bother (check c:\Program Files\directx\setup\Dxtool.exe
if you're not sure). At the moment the emulator is also incredibly slow
(we're talking a pause between keypress and appearance on screen) because
of the limited optimisation, but things will hopefully improve soon.
AcornEmu homepage
The Arm2 emulator by Edwin Dorr is an emulator for all ARM 2 instructions to run on a PC under DOS. However, the Archimedes RISCOS and hardware support is very poor. The 'kernel' emulates only the swi's needed to get the basic rom started! It does come with version 1.04 of ARM BBC BASIC V, and can be used to program in BASIC, run the programs, it can then save/load the tokenised BASIC files on your PC without any problems at all, and these are identical to any produced on a real Acorn. A quick test to try and draw a circle in BASIC proved what I suspected, that the emulator is text only, and isn't capable of displaying any graphics. Unfortunately the author will not be developing this emulator anymore, but it is quite a nifty piece of code. A disassembler and debugger is supplied, as well as the full C source code for all programs. By the looks of it, the source even has macros to allow it to be set up to compile on an Acorn!
ARM2 emulator (and
source code)
BBC Lives
page about ARM2
The Archimedes Emulator (ArcEm) by David Alan Gilbert, now at v0.40, uses the GPL release of the ARMulator v1.0 by ARM Ltd (see below) and emulates an archimedes somewhere around A3xx and A4xx series. It runs under unix, and has been tested on a PC under Linux and on a Sun under SunOS. Some of the more major hardware features are emulated, MEMC, VIDC, CMOS RAM, IOC but it is by no means perfect. Apparently there is a version being ported for Windows NT, and it has been mentioned that a DOS port is possible.
At the moment, the emulator is supplied with a version of ARM Linux, a freely distributable OS, as it would be illegal to distribute a copy of the RISC OS ROMs, as to whether it can run RISC OS, David Gilbert tells me that, "it's amazing what will run on this emulator". Although not in full development, some tweaks are being made to the program from time to time, especially with a view to improving the speed. At present ArcEm emulates at around 3MHz, which makes it usable, on a 533MHz Alpha running Linux. I have also heard of ArcEm running on a P266MMX under Linux at an estimated 15% of A5000 speed, which is apparently very slow but usable.
Click
on the thumbnail to view a screenshot (1280x1024 GIF
file 46Kb) of ArcEm running on a DEC Alpha, you can see the emulator
window on the right, with a status window above it showing the state of
the keyboard and floppy LEDs. In the emulator window you can see Dave Gilbert
logging into ARM Linux, it displaying (some rather old and outdated information)
and then display /proc/cpuinfo which tells you about the CPU it thinks
its running on. In the bottom left you can see /proc/cpuinfo of the host
machine the alpha for instance.
ArcEm
ftp area
Dave Gilbert's
home page
Various ARM
GNU utilities
The
ARM Linux page
There is also the ARMulator, written by Advanced RISC Machines (ARM) themselves, it emulates and ARM6, and the C source code is available for download below. I suspect it will act like the ARM 2 emulator above, but will understand the ARM 6 instruction set.
ARMulator ARM6 emulator source