2023-08-14

Setting up an Acorn Archimedes from scratch

Growing up with an Acorn Electron (the cut-down version of the more famous BBC Micro), I've always had a soft-spot for Acorn machines.

There's a wonderful community out there for these computers, but it took me a while to put together all the pieces to get my eBay-acquired A3020 up and running.

I'm writing this based on my experience with the A3020 and its on-board IDE interface, but some of the information should be useful for any RISCOS3.x machine.

Getting Ready

We'll start by assuming the Archie is physically working. After powering it on, you should hear the floppy drive 'grind' once, followed by a mellow boop sound from the speaker. If that's not the case, look at the floppy drive activity LED. If it's flashing a sequence of fast and slow pulses, the machine's got a hardware problem -- so go fix that first!

Also, until we get the IDE hard drive configured, the only route to copy data and apps to the Archie will be via floppy disk. I used a cheap USB 1.44MB floppy drive, which worked fine. The Archimedes can format 'DOS 1.44MB' disks, which are also readable on modern Windows PCs.

Speaking of the hard drive, I used a Disk-on-Module device -- basically a small board with 64GB of flash memory and an IDE connector. The guide will assume you've connected that to the IDE interface on the A3020.

CMOS… It's all about the CMOS!

The CMOS is a small chunk of memory whose contents are kept alive by the battery on the motherboard. The Archimedes really wants that memory to be working and for its contents to make sense. You won't get very far without a working CMOS and battery so that it doesn't lose its contents when the power's turned off. Make sure you've replaced the battery and have replaced any damage caused by the original battery leaking.

With an uninitialised CMOS, the Archimedes will most likely drop you straight into the Supervisor screen -- a text-only mode which it'll sit in until you reconfigure it. In fact, you might not see anything on the screen. With the CMOS in this state, the machine might not do things like try to detect your monitor type.

So the first step is to reinitialise the CMOS to sensible defaults. To do this:

  • Start with the machine powered off.
  • Hold the R key.
  • Turn on the machine.
  • Keep the R key held down until you hear the machine go boop.

With a bit of luck, you should see the machine progress past its text-mode startup, on to loading the RISCOS desktop!

With the CMOS set to default, the machine will attempt to auto-detect the attached monitor type, and knows what to do at startup. It'll check the floppy drive for a bootable disk, then proceed to the desktop.

IDE Hard Disc Setup

Yeah, disc with a c. I'm British, RISCOS is British, so that's what we're using!

By this point you should have a machine which boots to the RISCOS desktop. Grab a 1.44MB floppy disk and insert it in the Archie's drive.

Middle-click the :0 icon in the icon bar (that's what RISCOS calls the bar at the bottom). Point to Format, then move over the arrow to show the submenu. Choose DOS 1.44 MB from the list and continue to format the disk. The disk is more compatible with both systems if formatted on the Archimedes first.

We're going to use this disk to run two programs on the Archimedes: the !SparkPlug application to unzip files, and an updated version of the !HForm program which we'll use to format the IDE hard drive.

On your PC, download HForm and SparkPlug. Do not unzip the HForm zip! The Archimedes' filesystem uses extended attributes (particularly, a type, which is analogous to the PC's file extensions) which are preserved in the zip. Therefore these zip files must only be extracted on the Archie itself.

Copy both files to the floppy disk, then insert it into the Archimedes.

Click the 0: icon in the icon bar to view the disk's contents. SparkPlug comes as a self-extracting BASIC program -- we need to set its type so that when it's double-clicked, the BASIC interpreter will run it.

Middle-click the splug226/bas file, point to Set Type, then enter 'basic' followed by Enter.

Now double-click it. BASIC will load and begin extracting the archive. After a fair while, you'll see there's now a !SparkPlug application on your floppy disk. Wonderful! Now double-click that. It'll seem like nothing's happened, but take a look at the right-hand side of the icon bar. See that SparkPlug's now sat down there and is running.

Finally, drag the hform248/zip file down to that SparkPlug icon in the bar. It'll extract the archive, and now you'll have another application on the floppy -- the !HForm hard disc formatter.

Right -- time to introduce another RISCOS-y thing. Like macOS, applications (whose names start with ! in RISCOS) are actually directories. To view the application's contents rather than executing it, hold Shift whilst double-clicking it. Go ahead and do that on !HForm now, because we've got to edit something to get it to work.

You'll see a file inside the !HForm named Run. When you double-click an application, the OS actually runs this Run file. The file itself is an Obey file -- analogous to a batch file or shell-script. Double-click that Run file now to edit it.

Find the line which reads RMEnsure UtilityModule and comment it out by putting a pipe character at the start of the line (pipe chars are Obey files' equivalent to # or REM). Save and close the file, then close the !HForm folder window.

What did we just do? Well, the version of !HForm we downloaded supports larger drives. However, it also expects to run on a slightly newer version of RISCOS than 3.11. The RMEnsure line we commented would try to load a Relocatable Module which we don't have on v3.11. But !HForm will run fine without it.

Finally, double-click the !HForm icon to open it.

[[TODO: HForm Steps]]

Setup CMOS to Boot From the Hard Disc

[[TODO: *Configure commands]]

Uniboot!

Congratulations! If you've made it this far, you've now got an Archimedes which boots from an IDE hard disc!

Phew.

So far, the entire boot process has run from ROM. But we can (and should) change that so we can customise what our system does during startup. RISCOS can be told to look at the content of a !Boot folder on the startup disc and run whatever's inside it. Later versions of the OS formalised a structure for this folder, containing a rather complex (to me) set of Obey scripts and folder structures to do things like load modules and settings at startup.

Fortunately, this structure has been recreated for earlier versions of RISCOS like ours. It's called Uniboot (Universal Boot).

[[TODO: Uniboot setup]]

Leave a Reply

Your email address will not be published. Required fields are marked *

dsdd.uk

Chris's Retrocomputing (and other) nonsense.
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram