[Rpcemu] Thoughts on RPCemu development

Tom Walker tommowalker at yahoo.co.uk
Fri Aug 31 21:25:01 BST 2007

> I don't know how fast Red Squirrel runs compared to arcem - I should
> download it and run some simple benchmarks.

A fair bit faster I imagine - arcem isn't the most optimised piece of coding

Red Squirrel runs about 30 MIPS (2-3x A5000 speed) on my Athlon X2 4200+, my
emu runs about 45 MIPS. RPCemu, for comparison, runs between 100 and 250

> (arcem is often faster than a real Archimedes, although under X11 at least
> the mouse pointer can be jerky.  I started playing with ways to improve
> that, such as letting the X11 mouse pointer move freely and then generating
> mickeys artifically to move the RISC OS pointer to the correct position,
> but so far I haven't got anything usable.  If there is any clever trick you
> use in Arculator / RPCemu I'd be interested.  End digression.)

I'm not doing anything massively clever in Arculator/RPCemu. In my fast A5000
emulator though, I'm trapping a handful of mouse SWIs and writing the Windows
mouse position straight into RISC OS zero page.
> >The only unique feature I'm aware of, is that it could emulate 
> >a high res mono monitor (1152x896),
> w00t!
> As you say, this is not so useful because under emulation you can just
> create an ordinary screen mode of the size and pixel depth you want - no
> need to tell RISC OS that it has monitor type 2 or whatever it is.  (I am
> looking for a way to generate custom screen modes without having to fiddle
> with assembler and register settings each time - do you guys know of a good
> free utility that lets you type in the resolution and colour depth?)  

To my knowledge such a utility doesn't exist - on a real machine you would
have to set up the sync settings as well, which probably can't be reliably
You'd also run into the memory limit often - A5000 hardware has a limit of
480k on screen memory, and that can't be changed without rewriting the memory
manager. Even having 1152x864 in 16 colours is impossible.

> (Also I know that the Computer Concepts ColourCard introduced 256-colour 
> screen modes with a 256-colour palette, and patched RISC OS to use them.  
> Does anyone know the technique used?  It should be pretty simple to extend 
> arcem to support more palette registers.)

For this one you'd have to trap the mode change, to set the initial palette
to what RISC OS is expecting. Then you'd have to intercept PaletteV to
redirect changes to the new 256 colours palette.

> >RISC OS 3.1 was widely available when I first discovered 
> >Archimedes emulation (2001), but there was a crackdown a few 
> >years ago and it's quite difficult to find.
> It's still there, as is RISC OS 2... a shame that even the older versions
> aren't officially legitimate.

But a lot more difficult to find than it was.

> I'd love to get hold of Impulse from CC, but nobody seems to have a copy. 
> It would have the distinction of being even more useless than Arthur.

I think ARX would win the uselessness stakes. On a slightly related note, I'd
love to get hold of a copy of Riscix and make that work.

> I see.  Yes, Linux does tend to work the machine a bit harder than RISC OS.
> NetBSD would be worth a try - but that might not work either.  Um, ARM
> Minix?  Whatever ;-p.

NetBSD fails even quicker than Linux!


PS Register for the mailing list! I have to authorise every post you make at
the minute.

Want ideas for reducing your carbon footprint? Visit Yahoo! For Good  http://uk.promotions.yahoo.com/forgood/environment.html

More information about the Rpcemu mailing list