
Was Acorn's RISC OS an under-appreciated pearl of OS design? - lproven
https://liam-on-linux.livejournal.com/72192.html
======
joosters
Really interesting comment from the linked article by one of the Acorn
developers, Paul Fellows:

 _... we had one of the machines that we just could not get this thing to boot
reliably. You could boot it, turn it off, reboot it and sometimes it would
work and sometimes it wouldn 't. It turned out, it would boot fine if you left
it long enough, but if you didn't turn it off for very long then it didn't
reset properly, and this was because the fan on the board was still spinning
and the back EMF on the fan was enough power to keep the ARM running. And
that's why you've got an ARM in your phone today, it would take no power to
keep a 3 micron ARM with 25000 transistors would run for 30 seconds off the
energy stored in the fan._

~~~
guenthert
And the CPU is the only part being powered by that fan. Never mind the voltage
regulators 12V, 5V (or were the 3u ARM already 3V3?)... Seems to be a sport
among the distinguished engineers to take the kids for a ride.

~~~
marshray
Well the fan could have been downstream of the 5V regulator... but I agree
that this story is pushing the limits of plausibility.

Generally fans are a very effective way of dumping energy, not storing it.
They're literally used for this purpose in exercise bikes.

------
rjmunro
I always thought the beauty of RISC OS was in the UX not the underlying OS.
The three most important things were:

1\. Task bar / dock thing. This was well before Windows 95 and Mac OS X both
adopted the feature.

2\. There was a dedicated menu button on the mouse. This was the only way to
get a menu, there no menu bars anywhere, freeing screen real estate. The other
two mouse buttons were select, which behaved like a normal mouse button, and
adjust, which did the sort of things you need to resort to shift-click on
other platforms.

3\. There was no file open dialog. You just double clicked a file to open it,
or dragged it to the app that you wanted to open it with if you wanted to open
in not the default. To save you would be presented with an icon which you
could change the name of, and then drag to a finder window. No duplication of
the folder system structure in a finder and in every app that handles files.

~~~
sedatk
Aside from the task bar which I don't know its specifics, those examples
aren't that great:

\- A dedicated menu button on mouse is hard to discover. Mac's brilliance is
that you can start exploring the UX right away without any prior knowledge of
which button does what. It also prevents you from examining your options
without needing to click anything. I don't think saved screen real estate is
worth it. Mac & Windows did away with always-visible menu bars just fine.
Remember how Windows 8 tried to hide the start menu and how it had turned into
the worst UX experience in the last decade ever. Visibility is important for
discoverability.

\- "Drag & drop" has too much user friction. It's hard to discover, it's hard
to apply properly (many beginner users think that leaving button mid-drag is
okay for a short little while). It's impractical because you usually use your
apps maximized (for the maximum real estate, remember?). It requires you to
have the file visible and easily accessible (consider cluttered desktop
icons). I stopped using drag&drop a long time ago, and resort to Copy/Paste
function of Windows Explorer for copying files, which works brilliant.

"Drag & drop to open" has other issues too. For one, there is no orthogonality
between open & close. Do I drag away the icon to close the file or is there a
standalone "close" option without an open?

They might be novel ideas for their time, but I don't think they provide good
UX.

~~~
pmyteh
> A dedicated menu button on mouse is hard to discover.

For what it's worth, it really wasn't. The meaning of at least the left and
menu buttons was literally the first thing you would find out when being shown
how to use the machine, and was on the intro sheet in the (extensive and
excellent) printed guides.

The difficult-to-discover part was the right button ('adjust'), defined as
doing whatever the left button did but a bit differently. So the left button
might select a file, while the right button might add a file to the existing
selection. Or a left click on the scroll bar 'down' arrow scrolls down, while
a right click scrolls up (which was actually quite useful in pre-scroll wheel
days as it saved a lot of precision mouse movements when searching documents
etc.)

This is really analogous to the discoverability problems that guis have with
modifier keys - the right button is basically a sort of ctrl-click without
needing to put your hands on the keyboard.

But the menu button was just how you used menus. It was available and worked
the same in essentially all applications and was really pleasant to use.

~~~
sedatk
Ctrl-click is equally hard to explore. A beginner user's experience is
entirely different.

------
mattbee
The OS design was barely there, which made it easy to understand and hack. But
the _GUI_ had a lot to recommend it.

e.g. both Windows and Mac OS came to the same "icon bar" design that RISC OS
had in 1990. It had "magic" application directories for self-contained
installation from floppies & downloads. It had a pretty nice vector drawing
engine built in, sprite plotters etc. The OS was documented really
comprehensively in a £80 set of programmers reference manuals. They wrote a
really clear style guide, and (eventually) a well-understood higher-level GUI
toolkit which produced great results with little code.

The most heinous part os the OS was the lack of shared libraries in userspace.
If you wanted to share code between apps, you wrote it as a _kernel_ extension
module and made up new system calls! So this very common facility became a
risky, advanced topic for programmers. (also because BASIC + assembler were
free, and the C compiler was not, loads of popular libraries were hand-written
in assembler).

~~~
barrkel
Though to be fair, it was a similar situation with DOS TSRs (Terminate & Stay
Resident) filling in interrupt vectors or hooking existing DOS ones for extra
functionality; DOS extenders for memory most notably, but things like audio
drivers, CD support etc.

------
rsecora
By 1989 RISC OS was awesome, but by 1995 it lacked the same features as other
famous OSs (I will not name the other OS to avoid a flame war).

RISC OS used cooperative multitasking and it lacked virtual memory protection.
By 1995 linux or BSD were better platforms. MS released Windows 95 and
preemptive multitasking arrived to millions of homes.

I still have a 2002 PACE based RISC OS in the basement. It boots with
bootp+NFS. It was part of a kiosk that was replaced by a BSD box. No booting
or runtime issues anymore. We even designed a serial watchdog to ensure a
reboot if the STB hanged, because riscos hanged even booting. No issues with
the BSD.

In my humble opinion by the mid 1990s preemptive multitasking and memory
protection was mandatory in a general purpose OS and RISC OS lacked it.

~~~
ris
This.

I think the author is making the mistake of comparing it with what I would
call "new world" OSs.

Very broadly I would categorize most OSs of the 90s into old-world and new-
world, common traits of the old-world being:

    
    
      - Minimal or no memory protection
      - Minimal or no real user separation
      - Usually desktop-focussed
      - Cooperative multitasking at best
      - Heavily reliant on assembly and hardware specifics
    

with vendors one by one realizing they had to make a big compatibility-
breaking leap to introduce the features now expected for a desktop OS. (cue
tens of replies pointing out exceptions, sure)

As an old-world OS, in 1991, I do still think that RISC OS did a _pretty good
job_ from a user's perspective. My memories are of it being fast, attractive
(anti-aliased fonts?!) and intuitive (often ingenious). With an extremely
powerful inbuilt BASIC implementation, to add.

The more I've looked in to RISC OS more recently, the more I've realized how
many compromises had to be made to achieve this, and I'm sure they were
running out of headroom to evolve it towards a new-world OS. But really this
was true for most old-world OSs I can think of. (again, cue exceptions)

~~~
NikkiA
I think part of it is that RiscOS had _some_ new-world features, and like the
other 'straddling' OSs of the early 90s (OS/2, Desqview/GEM) maybe felt they
didn't need to make a big leap to adapt to changes in user expectation, and
failed because they had a klunkiness as a result.

~~~
pmyteh
My suspicion is that, by the time it became obvious that such things would be
essential (maybe 1994 onwards) then the writing was already on the wall. RISC
OS was a relatively niche system even in the late 1980s, and it was clear to
even to those of us who were enthusiasts as early as 1993 or so that it was
going to be left behind. Acorn had weak sales as PCs became standard in
schools (its previous strength), the OS was tightly tied to the existing
hardware, and there was no money to do whatever radical overhauls that would
be necessary to make the 'big leap' for a small market.

I used a RISC OS machine as my primary computer all the way through to 2004,
but it was seven or so years past its best by then, and probably twelve since
RISC OS was even a potential world-beater.

------
jlarcombe
The heritage of RISC OS as an evolution of the BBC Micro MOS is really clear,
at the lower levels. Not just the excellent BASIC, but the service calls,
vector indirection, VDU system, command line interface and so on. Even the
relocatable modules, one of the main unifying concepts in RISC OS, were sort
of based on the sideways ROMs from the 8-bit machine. How different it would
all have been had the ARX project been successful, although it was an
incredibly 'optimistic' design from all I've ever heard about it.

RISC OS was a terrifically fun environment in which to learn programming. Of
course it lacked lots of the fundamentals of 'proper' operating systems
(memory protection, preemptive task switching, multiple users etc etc) but the
compromises they made were cleverly chosen and lots of parts of the design
were very elegant. The user interface was great and there was lots of other
very sophisticated features that were ahead of their time, discussed elsewhere
in these comments (outline fonts, vector graphics, fast native video
compression/decompression, the list goes on). The operating system was very
easy to extend, so it was easy and fun to write little utilities, and this led
to a vibrant hobbyist/'freeware' scene as I suppose it was called in those
days.

The fact that the OS was all implemented in assembler was reflected in the
API, and (coupled with the inherent pleasure of working with the ARM
instruction set of those days) led to the majority of third party apps being
written in assembler too, often with bits of the very efficient built-in BASIC
to bind it all together. This made the whole user experience very fast and
slick.

The documentation was also superb, though expensive for a youngster! I can't
bring myself to get rid of the Programmer's Reference Manuals as they're so
good and were such a holy text back in the day.

------
btbuilder
One nice thing about RiscOS on Archimedes was that you could write fully-
fledged GUI applications using just the BASIC version built into ROM. This
made it very accessible vs the need to buy development tools on Windows.

~~~
lsllc
WIMP programming!

[http://www.riscos.com/support/developers/wimpprog/index.htm](http://www.riscos.com/support/developers/wimpprog/index.htm)

~~~
btbuilder
I almost used the term WIMP but I thought it was too obscure a reference at
this point :)

I still have "BASIC WIMP programming on the Acorn" by Alan Senior on my
bookshelf for no good reason. I can't even find any cover photos online for
it.

------
w0mbat
In the late 80s I worked at a little BBC department writing multimedia Mac &
Windows software (it had moved on from the BBC Micro software it used to
write). This was a team descended from the team that did the Domesday Project
years before.

One day we had a visitation from Acorn trying to get us to write Archimedes
software. They asked us what they could do to make their platform more
appealing to us as developers and to users.

We said we liked their CPU performance, but didn't like the Archimedes
graphics hardware which was too low res and low depth, and could not be
upgraded. For example, the Risc OS system did anti-aliased fonts (which they
were very proud of), but at such a horribly low resolution that the result
managed to be blurry and blocky at the same time.

They didn't really get our complaints, didn't think the bad graphics were
important. They had no intention of ever making a machine with enough video
memory to do a better job.

We said their system UI was odd, for example unlike Mac and Windows there was
no copy and paste. We gave other examples of the UI being weird just for the
sake of it, but I can't remember the details after all these years.

They said all their UI was fine, and copy and paste was stupid.

That department never did publish anything for the Archimedes.

~~~
rwallace
> We said we liked their CPU performance, but didn't like the Archimedes
> graphics hardware which was too low res and low depth, and could not be
> upgraded.

I'm surprised about that! Looking at
[https://en.wikipedia.org/wiki/Acorn_Archimedes](https://en.wikipedia.org/wiki/Acorn_Archimedes)
it says the machine could do 640 × 512 with 2, 4, 16 or 256 possible colours,
or 800 × 600 with 2, 4 or 16 possible colours. That's pretty spectacular for
the late eighties; far superior to the Amiga (previously considered the king
of graphics) and even superior to VGA, let alone the Mac.

What am I missing?

------
asveikau
I can't take this author seriously if he says FreeBSD is an "ugly old UNIX
OS". In my experience with the *BSDs none of them are ugly under the surface,
they are pretty cohesive, well put together, no nonsense. I could see how one
would prefer Mac for UI, but for those core pieces I would prefer them over
the Darwin/XNU components in most cases.

~~~
willtim
I think it's fair. Unix has a lot of legacy baggage. It's largely terminal-
based with three character folder names and two character commands, a
monolithic kernel, the C programming language. In contrast, Acorn's ARX was
fully graphical, used a microkernel and was written in Modula 2+/3\. It sounds
like the hardware wasn't quite ready for it though.

~~~
asveikau
But he was contrasting with Darwin/XNU in the statement. You may say it's
visually pleasing but in many other senses it's uglier than any given *BSD.

------
ColinWright
I can't say where, but there is still a RISC OS based real-time radar
processing and target tracking system running, providing live data feeds for
safety critical systems.

It was a joy to program, but it got killed (in my industry) because customers
had been screwed over by vendors locking them into specific hardware, then
raising prices once the customer had no way out. So the contracts always
specified COTS hardware ... "Commercial Off-the-Shelf". This was always,
_always_ interpreted as meaning PC hardware.

We transitioned because we had to, but the lamented the loss of the elegant,
simple, clean designs we could use on RISC OS.

I still do.

------
anthk
RiscOS lived a bit on Rox Filer and Oroborox under Unix. Trully unnaprecciated
by the people.

Rox-Filer had a panel, a pinboard with shortcuts, a Python-Gtk2 API with Rox-
Lib with lots of Drag and Drop applets.

Beyond XFCE, it was a nice alternative to Gnome. It's even lighter than XFCE
and probably when used with Fluxbox it would be faster and snappier than LXDE.

------
murkle
No mention of the StrongARM processor card for the Acorn Risc PC. It probably
came too late but was a massive speed upgrade over the supplied ARM6 card

[https://en.wikipedia.org/wiki/StrongARM](https://en.wikipedia.org/wiki/StrongARM)

~~~
gok
And honestly it was probably DEC's implementation that set ARM on its
trajectory for world domination.

~~~
klelatti
Agreed plus Thumb which got ARM into Nokia mobile phones.

Dave Jaggar has some interesting comments on the history around DEC, StrongARM
and the Austin ARM team.

[https://www.youtube.com/watch?v=_6sh097Dk5k](https://www.youtube.com/watch?v=_6sh097Dk5k)

~~~
lproven
I saw that video. He only came in long after the Archimedes era and he doesn't
seem to know anything about it. No Archimedes, no ARM. You have to know your
history; ask George Santayana.

I would mention that that video was _wildly_ contentious over in the RISC OS
world. :-D

~~~
klelatti
I can see why the video would have been contentious - the general impression
given was that the IP that ARM (the company) inherited wasn't that great,
which does't seem entirely fair.

Also RISC OS was a desktop OS and Thumb etc was all about getting into mobile
devices and so in effect abandoning that legacy.

In fairness though without Thumb ARM would be unlikely to have reached its
market position today so credit due I think to all those who contributed to
the evolution of the architecture (including the team that developed A64).

------
johnflan
The first 'real' computer I used as an Acorn A3020 (after Commodore 64,
Amstrad 6128+) but I remember using an IBM PC at the time and been quite
unimpressed. The Acorn just felt so modern at the time, I have quite a
fondness for those machines.

Btw: they were used to generate live on screen graphics for the BBC for quite
a few shows [https://www.youtube.com/watch?v=exW-
LbLRJV0](https://www.youtube.com/watch?v=exW-LbLRJV0)

------
lsllc
You can still run it today on a Raspberry Pi (amongst other things):

[https://www.riscosopen.org/](https://www.riscosopen.org/)

~~~
MintelIE
Yeah how's that work? I have an older 3B which I'm not using right now (4 4gb
replaced it) and I might try it. Maybe I should blog it and put it up on HN.

~~~
lproven
[OP/article author here]

RISC OS recently changed ownership and it is now fully open-source. The new
owners have sponsored an improved version with more bundled software, called
RISC OS Direct:
[https://www.riscosdev.com/direct/](https://www.riscosdev.com/direct/)

~~~
lsllc
That's interesting. Digging around a bit for RISC OS Developments (the new
owner), I found this interview with Tech Crunch that mentioned they were
working with Pinebook on porting to that platform [0] (6th question down).

Now that would be interesting, a ~$200 laptop running RISC OS!

[0] [https://www.techradar.com/uk/news/arms-original-operating-
sy...](https://www.techradar.com/uk/news/arms-original-operating-system-goes-
open-source)

------
morelikeborelax
Back in the 90s my High School only had Acorns for the students, although
there was a lab of them with the PC cards wed play Scorched Earth on.

I had an Amiga at home and was so frustrated at not having access to x86 PCs.

In hindsight I realise how fortunate I was to learn programming and be exposed
to these different very forward thinking OSes very early.

RISC OS began my experience of hacking software by being able to click into
the application and edit stuff. Trying to bypass the security to do more on
them also honed early development and explorative techniques too.

~~~
mattkevan
Same here. You could open up application bundles and inspect and modify the
contents. You could even turn a folder into an executable and run a script
whenever anyone tried to open it.

I had hours of fun on the school computers making weird stuff happen whenever
anyone tried to open an application or access their documents folder.

Being able to drop into a BASIC shell at any point by hitting F12 was cool
too.

------
sys_64738
Remember that RISC OS as we know it today didn't appear until mid-1989, 2
years after the first Archimedes. During those first couple of years it was
the BASIC written Arthur 1.20 that you got by typing '*desktop'. You swapped
out the ROM chip for RISCOS 2.0 in 1989. FWIW, Arthur 2.0 was meant to be the
proper name for RISCOS 2.0 but that was torpedoed by the movie Arthur 2 being
released.

~~~
mattkevan
Ha, I remember doing that, and the RISCOS 2 to 3 upgrade a few years later.
Very exciting, for a nine-year-old.

Kept the old Arthur ROM chips for years afterwards as a sort of prize.

------
qubex
I encountered RiscOS a couple of times in the mid-nineties, first on an
Archimedes a teacher had brought in (my middle school was populated my Apple
Macintosh LCII machines running System 7) and later the RiscPC was an exotic
object of desire I lusted over (before eventually choosing a dual-PowerPC
BeBox).

I remember being extremely disappointed by the OS: firstly, storing the system
on ROM made obvious sense to me but it also nagged me because this wasn’t an
embedded system and the ideology of downloading frequent updates from the
internet to patch the deluge of security vulnerabilities and other assorted
bugs being discovered on a regular basis was already developing.

Secondly, as the article points out, it actually struck me as a rather
rudimentary OS with a fairly ugly (and foreign) GUI. It lacked preemptive
multitasking, memory protection, and the notion of multiuser. It felt
technically on the level of Windows 3.11 but loaded from ROM, on an
(admittedly very fascinating) exotic architecture.

~~~
radiac
Having an OS which boots from hardware is always a feature to me - no matter
how badly you screw up your system, you just do a hard reset (boot holding R)
and get a working OS and GUI. You can still patch it by defining a boot app,
but the core system is always there, safe from mishap and malware.

And yes, the OS was starting to show its age (both graphically and with its
cooperative multitasking) by the time Acorn was broken up, but at its peak it
was miles ahead of the competition, and was definitely an under-appreciated
pearl.

~~~
Lio
I remember hand tuning the boot sequence on my A5000. I could make it appear
to boot and be ready in a few seconds.

In reality it was still loading all its OS patches from disc.

That along with clever use of 16 colours (8 greyscale) and antialiased fonts
really gave the impression of a much more advanced machine for the time.

Really loved that machine. :D

------
hootbootscoot
You got me at the "Only Amiga" video. That's like "condensed 80's" in a can!

~~~
hootbootscoot
since I hijacked your attention I will mention that the Atari 1020ST was
awesome because it had built-in midi ports. you could sequence synths with
this right out of the box.

~~~
cmrdporcupine
1040st :-)

------
jeppesen-io
After reading this, I feel like I'm missing something. I don't see much to say
why it should be underappreciated

------
musicale
Nice to see a livejournal link/blog in 2020. ;-)

~~~
lproven
Ha!

My main (non-tech) blog is on there too and it's 18 years old now. I have just
been too lazy to move so far.

------
etrabroline
This applies.

>Any headline that ends in a question mark can be answered by the word no.

[https://en.wikipedia.org/wiki/Betteridge%27s_law_of_headline...](https://en.wikipedia.org/wiki/Betteridge%27s_law_of_headlines)

~~~
lproven
[OP/article author here]

Yes, that was entirely intentional. :-) I used to be the staff technical
writer at PC Pro magazine. Ian Betteridge was a colleague on the staff of our
sister magazine, MacUser, for which I also wrote sometimes. We're still in
touch today.

~~~
etrabroline
That's awesome. The way it immediately answers its titular question in a
resounding negative certainly got a chuckle out of me. Good stuff.

------
egypturnash
Damn, what the hell is Livejournal doing now? This page kept on reloading,
reloading, reloading, reloading.

~~~
lproven
Sorry about that. I'm on a free account. A good ad-blocker is important. :-(

~~~
egypturnash
I think it might have been interacting with my ad-blocking, tbh. I dunno, I
haven't touched LJ since they changed the TOS to say all gayness is forbidden.

