RPCEmu is a emulator of Acorn's Risc PC and A7000 machines. It is a work in progress and should be considered of Alpha Quality.
Most PCs made in the last 5 years should be able to deliver performance similar to an A7000 or RiscPC 600. The recompiler puts these machines into StrongARM territory.
RPCEmu reports how many millions of instructions are executed per second (MIPS). This figure has been widely misinterpreted in the past, partly due to Acorn giving their machines very optimistic performance figures, and partly due to confusion with the DMIPS figure reported by the Dhrystone benchmark.
It is better to compare RPCEmu and real Acorn hardware running actual applications or benchmarks, such as Dhrystone (though that itself is not entirely reliable), instead of comparing RPCEmu's MIPS count with what an ARM6 or ARM7 is theoretically capable of.
I have tested RPCEmu v0.7 and v0.6 on several machines :
I have not been able to try RPCEmu on a Pentium 4 machine for a while, but the last time I tried a Pentium 4 2.8ghz machine ran RPCEmu at similar speeds to the two slower Athlons.
Video speeds are dependent on graphics card speeds. The two slower machines gave poor video speeds. The Pentium M machine was very quick with video, most likely due to the shared memory video system. The Athlon X2 was also very quick, partly due to a faster graphics card + AGP bus, partly due to the video overhead being 'hidden' by the second core.
The Athlon XP 2400+ was very fast as well, for unknown reasons.
Download the .msi installer and double click it. This should install it to the default windows program locations (e.g. C:\Program Files\RPCEmu). This will provide you with Start Menu shortcuts for running the program.
Alternatively download the .zip file and install it to a location of your choice.
The Linux build is not currently available as a binary package; as such it must be compiled from source. Please refer to these instructions for how to compile
RPCEmu requires a RISC OS ROM image to work, please refer to these instructions for details on how to acquire them.
RISC OS uses a three button mouse, if your host machine only has two buttons the right and left buttons are mapped correctly, with the middle 'menu' button accessable via the windows menu key (to the left of right ctrl key).
On Linux hosts pressing both left and right mouse buttons simulateously will generate a middle button click (depending on X server configuration).
RPCEmu contains a menu to access most of the configurable aspects of the program.
On Windows the menu is always available, on Linux press Ctrl-End to bring up the menu.
File->Reset - Hard-resets the RiscPC. You will lose all unsaved work. Don't use during an IDE hard disc operation, or your disc image may be corrupted! ('Bad Directory' errors and the like).
File->Exit - Exits RPCEmu.
Disc->Load Disc :0 - Loads a .ADF disc image into floppy drive :0
Disc->Load Disc :1 - Loads a .ADF disc image into floppy drive :1
Settings->Configure - Opens the configuration window. The options here are :
Choice of ARM610, ARM7500, ARM7500FE, ARM710, ARM810 and StrongARM. ARM810 support is experimental and very poor. ARM7500FE currently offers no floating-point performance advantage over ARM7500
Choose from 4mb to 128mb
Choose none or 2MB VRAM. With CPU set to ARM7500 or ARM7500FE this choice will have no effect.
Choice from 20 fps to 100 fps. Default is 60. Lower values will speed up the emulator, but the video will obviously become more jerky and this may have an impact on games and demos that base their timing on this. For many older games it is best to set this to 50 fps.
Settings->Fullscreen mode - Puts Windows RPCEmu into fullscreen mode. Press CTRL+END to return to windowed mode. RPCEmu will attempt to change video mode as RISC OS does, to attempt to match it as closely as possible.
Settings->Alternative blitting code - Workaround for a bug discovered when using my GeForce 256. Enable if there are obvious video problems when eg moving the mouse around the desktop. If you don't need it then leave it off - it can be slower than normal.
Settings->Blitting optimisation - Allow RPCEmu to avoid processing the video when there are obviously no changes. Gives a speedup, but has major usability problems on some Windows systems - the mouse appears to 'stick' and be generally unusable.
Settings->Mouse hack - Linux RPCEmu uses a hack to make the RISC OS mouse pointer follow the native pointer. In many games this does not work, so disable this to turn it off.
Settings->CD-ROM - various options for the CD-ROM emulation.
/dev/cdrom device.An ADF disc image is a RAW binary dump of a RISC OS formatted disc. As such it will usually be 800K or 1600K in size. RPCEmu supports up to two floppy disc drives, :0 and :1 with one configured by default :0.
You can select which disc image to use on each drive by using the UI provided on the 'discs' menu. See above.
If you wish to configure two drives in RISC OS, use the following command or use !Configure to add them.
*configure floppies 2
Up to two IDE hard disc files can be used (only one if a CD-ROM is used). They are called hd4.hdf and hd5.hdf in the program's working directory. Pre-formatted hard drive files are available from the website.
Once the hard disc image is in place you can copy the boot sequence from floppy, CD-ROM or HostFS. To get RISC OS to boot off hard disc, type the following commands at the command prompt:
*dir adfs::4.$ *opt 4,2 *configure filesystem adfs *configure drive 4 *configure boot
It is possible (though not recommended) to prepare and format your own hard disc files. If you wish to try this, take note of the following:
HostFS allows you to use a directory on your host operating system as a RISC OS drive. This allows you to more easily move files between the host OS and RISC OS than either Floppy disc imanges or Hard disc images provides.
HostFS always reads from the hostfs directory. Filetypes are represented as a 3-digit hex number after a comma, or a pair of load/exec addresses.
HostFS has many unimplemented features; nevertheless please do report specific issues, to help us prioritise fixes.
At the moment it is not possible to boot from a hostfs drive, use a HDF or
ADF instead.
Using the CD-ROM
RPCEmu provides two methods of accessing CDs from RISC OS: ISO images and direct access to the host's CD-ROM drive.
You may need to configure RISC OS to have a CD-ROM drive. If you use a CD-ROM drive you may only have one HDF hard drive file. Use !Configure or use the following.
*configure cdromdrives 1
Use the settings menu described above to access CDs.
Networking is available on the Linux and Windows platforms, please see
the RPCEmu Networking Guide for details.
Printing
RPCEmu does not support direct printing from RISC OS (there is no parallel port emulation or pass-through to the host parallel port). So the recommended method of printing is to install PrintPDF, print your documents to PDF files, copy them to your host operating system via HostFS and print them there.
If you have any questions or need help, there is a RPCEmu Mailing List, however please specify the version number to avoid confusion. Your patches, suggestions and even bug reports are gratefully recieved.