RM BASICx64 is a tribute project and is in no way linked to or endorsed by RM plc.
RM BASICx64 is a re-implementation the RM Basic language developed by Research Machines in 1984 for the RM Nimbus PC-186, used in schools and universities throughout the UK and beyond in the 1980s.
RM BASICx64 looks and behaves like the original interpreter, but under the hood it takes full advantage of modern computer architectures by supporting 64 bit floating point numbers, extremely deep expression evaluation, and vast amounts of workspace memory. It's faster too!
Check out the screenshots.
This is a project to resurrect an ambitious and long-forgotten BASIC dialect. RM Basic was designed specifically to provide easy access to unique graphics and sound features of the RM Nimbus; on the flipside this meant it could only run on the Nimbus. Unlike Acorn, Spectrum and other platforms found in schools, RM never targeted consumer markets, which meant that it never had a scene or following, so when the Nimbus was eventually phased out of schools, RM Basic went with it, consigned to the skip.
Those of us who learned programming on the Nimbus and spent many a rainy lunch break fiddling around with graphics, sound, making chromatically-challenging mouse driven menus and eventually made a living doing that sort of thing, might think this a shame. Other dialects and platforms have gone on to have a life of their own, in particular BBC BASIC - so why not RM Basic?
RM BASICx64 implements the original RM Basic language specification and emulates the Nimbus sound and graphics in an easy-to-install application that runs happily on Windows, Linux or macOS. This means you can be up and running, writing and sharing programs in a few clicks. Now RM Basic can be enjoyed by anyone with an interest retro-computing, old DOS games, obscure antique software, oddware, all that good stuff.
Over half of the original language specification is implemented. The code has not been hardened so may crash unexpectedly or produce strange errors. Click the "Watch" button on the top right to get notifications of new releases!
Ok, but don't say I didn't warn you. A Windows installer can be downloaded from the RM BASICx64 website.
Alternatively you can build RM BASICx64 from source on Windows, Linux or macOS:
- Latest version of Go
- Git for Windows (GITBASH) (if using Windows)
Open (GIT)BASH and clone this repository:
git clone https://github.com/adamstimb/rmbasicx64.git
Change directory and run the build script for your operating system:
cd rmbasicx64
cd scripts
./build-linux.sh # To build a Linux executable, or...
./build-windows.sh # ... to build a Windows .exe, or...
./build-this.sh # ... attempt to build on the current platform if neither Winoows nor Linux
If you're running Linux, you can run the executable straight away:
../build/rmbasicx64
If you're running Windows a file called rmbasicx64.exe
will appear in the build\
folder.
Use File Explorer to make a new folder called rmbasicx64
in C:\Program Files
and move the rmbasicx64.exe
file into it. Double-click rmbasicx64.exe
to run.
If you get a message saying "Windows protected your PC" click "More info" then "Run anyway".
The Nimbus-esque welcome screen
- Ebiten - A dead simple 2D game library for Go
- Crafting Interpreters - The scanner code was inspired by the examples in this book
- Writing an Interpreter in Go - The parser code was inspired by the examples in this book
- Facebook - RM Nimbus facebook group
- Center for Computing History - original RM Nimbus manuals and technical data
- Center for Computing History - RM Nimbus PC (Later Beige Model) - online exhibit
- The Nimbus Museum - online museum that looks like the Welcome Disk!
- RM Nimbus - Wikipedia article
- mame - comprehensive retro computer emulation project
- Ironstone Innovation - what I do for a living