Why produce ROLF?

I really like the GUI that comes with RISC OS, it's simple, uncluttered and, in my opinion, has stood the test of time very well.

However, the RISC OS market is shrinking fast, the processors available (ARM), while common and powerful enough for a lot of purposes, have no equivalent to the powerful (and power hungry) x86 family of processors.

RISC OS is being developed, and will be made shared source in due time, but there are so many limitations in the OS design that I believe a more rational approach is to scrap the underlying operating system altogether and instead to move the best features (from the point of view of a user) over to another operating system kernel.

Why not just use a new RISC OS computer?

I want to be able to do digital video editing with data from my camcorder, and I don't believe that any current RISC OS computers have the power or software to do it. I doubt any will appear in a reasonable timeframe that will and, if one does, it's just my time that's wasted.

Why not use ROX

I was asked recently if I'd seen ROX ( http://rox.sourceforge.net/). Of course, I have, but I'm after something rather different; specifically to have something that works internally very much like the RISC OS WIMP (to the extent of making it possible to provide a library with a single function interface that will decode a reasonable proportion of RISC OS calls given a SWI number and register contents). This should allow at least some BASIC and compiled programs to run, via Brandy and QEMU, without modification. (I need to check on the behaviour of ARMLinux when it encounters a RISC OS SWI; I hope it generates a signal with the address of the instruction and the register contents somehow available so that RO applications could be run natively, if not it will take some hacking.)

One thing I don't like about the section on the ROX website about RISC OS: "Relation to RISC OS" is the tone of the final question ("Why not replace X with a new graphics system?") which runs, more or less, like this: "We've reached this conclusion, and we've thought about it, so everyone who reached a different conclusion can't have thought about it as much as we have. Oh, and look, they agree with us, anyway."

Actually, I do agree with a lot of the answer. X is very good for running X applications, even if they look totally out of place in your chosen desktop. But I have to ask myself; how many "decade-old" pieces of GUI-based Unix software do I want to run on my computer? Do I really need to have applications on other computers displaying their GUI on my computer? Do I really NEED to run any but a few of the 5,300 programs on that Knoppix CD over there (and how many of them have a GUI)? In the unlikely event that I find a program with a GUI that I need immediately, having an X-Server program running under ROLF seems like a reasonable compromise. But I don't have to have it running all the time.

I'm told I don't really want to replace X, but I do. I want all the applications to share the same filesystem, I don't want applications to worry about what bit order is being used for the screen (unless they really, really need to). I want the user (via WIMP settings) to decide which windows should be double buffered, so that they can make any trade-off between display smoothness, memory and processor power.

I do want to "force people to use [my] preferred interface style by hard-coding it into the graphics system." That's because it's the RISC OS interface style that's existed for twenty years and it suits me, and quite a few other people.
One of the really good things about X is that most applications don't assume the existance of any kind of GUI, and those will all work just as well with ROLF as with X.


Last update: Thursday 10th May 2007