> RM BASICx64 | A cross-platform 64-bit RM Basic interpreter
View on GitHub

RM BASICx64

A cross-platform 64-bit RM Basic interpreter

Home - Quickstart - History - Reference - Releases

RM BASICx64 is a tribute project and is in no way linked to or endorsed by RM plc.

Version 0.23

Released 12th December 2021

It’s a what now?

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.

Ok, but why?

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.

Read more about the history of RM Basic

Screenshots

The Nimbus-esque welcome screen The Nimbus-esque welcome screen

Ready for commands Ready for commands

Saying hello with big fonts Saying hello with big fonts

The Mandelbrot Set The Mandelbrot Set

A stupid meme A stupid meme

Authorship

RM BASICx64 was written in Go by Tim Adams, leaning heavily on the ebiten game engine, and borrowing with merry abandon from Writing An Interpreter in Go by Thorsten Ball. The language has been re-implemented according to available documentation but does not re-use any of the original code of RM Basic.

Contact me on github, linkedin or twitter.

License

RM BASICx64 is distributed with an Apache 2.0 license.

Links