Skip to main content

Using ADFFS on emulated RISC OS, within Parallels Windows 10 Desktop

Earlier this year, I posted the following tweet:

I was somewhat frustrated - and have been for some time before then - about being able to play older RISC OS games on my iMac. For some reason or other, I found current solutions somewhat wanting. Certain ones, such as the RISC OS Direct Pi distribution, are fantastic, if you are using a Raspberry Pi. 

However, if I wanted to use Mac OS, the consensus seemed to be; 'You can do it, but you'll need the equivalent of a degree in Computer Science to achieve it'

I did have an escape clause - I can use Windows 10, thanks to a purchase of Parallels Desktop. This makes the running of Windows within Mac OS, much easier. This meant I could install ready made builds of the various emulators for the platform.

I had been aware of the recent release of v2.1 of Sarah Walker's Arculator emulation software. This  makes it easier to set up a particular flavour of older Acorn machine, the ones that most RISC OS games run on. However, the Mac OS version required you to build it yourself, and my elbows on keyboard approach to installing the necessary build tools meant this was not going to work for me.

So, I installed the latest version for Windows, and after a fair amount of faffing about, I was finally able to play Chocks Away for the first time probably this century:

When I talk about 'faffing about', there was a particular annoyance that was really doing my head in, and I almost gave up in frustration because of it.

In order to run games such as Chocks Away, because I've not had the floppy discs for many many years, I had to make do with a zipped ADF image, effectively a virtual set of floppy discs for the game. These are deciphered using a tool called ADFFS, written and maintained by Jon Abbott, who runs The Archimedes Software Preservation Project forum.

ADFFS, when run, inserts itself in the bottom left corner of the icon bar. You can then drag the first disc of your game onto it, and then open the 'disc' by clicking the ADFFS icon. You can also open it's menu, and select 'Boot Floppy' which then reboots the machine, and attempts to boot the floppy disc with the game on it.

Games like Chocks Away however, have more than one disk. ADFFS can be pointed to these extra discs by using the Ctrl-Shift-Function key combination. For example, to boot disc 2, you press Ctrl-Shift-F2 to point ADFFS to the second disc, then the current game - if it does ask for the second disc - will then find it and load the rest of the game.

(In order to 'find' second or third discs, the floppy disc image filenames need to end with the requisite number. For example, Chocks Away disc 1 could be named 'Chocks1' while disc 2 could be named 'Chocks2' - whichever naming convention you use, do ensure that it ends with the correct number, in order for ADFFS to do its magic)

Typical Windows users would not usually have such a problem using the function keys. However, iMac users, particularly those using an Apple keyboard like me, do have a problem. I was finding that ADFFS was not intercepting the use of the function keys from the Apple keyboard. 

Imagine the frustration of falling at the final hurdle!

Fortunately, the Parallels Desktop software was able to come to the rescue. You can set up a keyboard shortcut that maps to the equivalent of function keys, by doing the following:

  1. With Parallels Desktop open, and your Windows virtual machine running, click the cog icon in the top right corner of the window.
  2. The Parallels Desktop Preferences window will now open:
  3. Ensure that the Hardware tab is selected across the top, and Mouse and Keyboard is selected from the left hand side. You can then click on Open Shortcuts Preferences.
  4. This will open the Shortcuts window. Check that the Profile is set to 'Windows', and then click the small + icon in the lower left corner of the shortcuts list.
  5. You can now create a shortcut that maps Ctrl-Shift-F2 to Ctrl-Shift-2 instead:
  6. Once you have set it accordingly, click OK.
  7. Close all Preferences windows. You do not need to restart Parallels Desktop for the changes to take effect.
Once I had followed the above procedure, I was able to successfully open the second Chocks Away disc when prompted!

Final thoughts

I admittedly have several layers of virtualisation present on my iMac. I'm effectively running RISC OS 3.11 within a version of Windows 10 virtually present on a Mac, through the use of specialist virtualisation software. This brings with it a level of complexity that I hadn't anticipated. 

However, the solution was still ultimately easier than trying to build my own copy of Arculator, and the hassle involved in setting up the necessary tooling to build it. I already have XCode and Homebrew installed, and really didn't want to pollute my machine with further tooling. Given my iMac is from 2014, it is heaving under all this extra load (the hard disc is grinding and grinding away, and I've already had it replaced last year!).

Hopefully, this blog post will help others who may have had the same issues. Thanks for reading!


Popular posts from this blog

Polymer Picker, and why 8-bit programming matters to me

Late last year, I released a BBC Micro game, Polymer Picker . Realising that 2022 marked the centenary of the BBC, as well as the 40th anniversary of the release of the BBC computer (which was designated as one of the BBC's 100 Objects ), I wanted to work on something that related to the BBC's mission of being able to 'educate, inform and entertain' . So what better way than to release a game for the BBC computer, that in a sense, fulfils those values? But, with video games being so widely available, and playable on all kinds of devices, why did I decide to create my own game for such a niche platform?  Video games are big business. They have been for a number of years. In May 2023, it was reported that Nintendo's latest edition of The Legend of Zelda sold in excess of 10 million copies in three days .  However, there remains sustained interest in video games from yesteryear. Children who grew up in the 8-bit computer revolution are now into their 40s and 50s, and

Using Beebasm for BBC Basic games programming (Mac & Windows)

In August 2021, I released Androidz Redux , a remastered version of my 1994 game Androidz . This process started a year ago, with a couple of days spent playing around with the original code, far away from a real BBC computer. The original game was published in a magazine called Acorn Computing, and has been available to play online for a number of years now. Because I wrote the game on an actual BBC Micro, I used what tools I had at the time, namely some graph paper to create the graphics, and the computer itself to do the actual coding. This is a world away from the tools we now have at our disposal. Fully rounded IDE's such as Visual Studio Code (my current favourite) make it an awful lot easier to program games. Even editors such as Notepad++ offers some ability to edit BBC Basic code. One of the difficulties with editing old games on modern systems is ensuring that you are able to ensure that the BASIC code is properly tokenised before running on an emulator/system, and indee

Rough guide to building UK election maps for D3.js

During my time at CITY A.M. I helped to build an interactive British General Election Map . This blog outlines how I created it. Let's see the map then Here's a simplified version of the map, hosted at Codepen. See the Pen D3 Election Map by Stephen Scott ( @sassquad ) on CodePen . Here, the map looks rather small, as it has been resized to fit the page. You can use your mouse wheel (or double-click/double-tap) to zoom in or out of the map, and click constituencies to view more detailed results on the left hand side. Each constituency is coloured according to party livery. This blog post gives a very general guide as to how that map was created. I'll be adding further detail about the creation of the map in subsequent posts. Acknowledgements This project was the work of several people, in addition to myself. Here are the other former colleagues who collectively made the election map possible: Michael King (back end programming of data capture system) Bill