Minerva

Minerva was and is the best QDOS-compatible operating system for unexpanded QL hardware. Laurence Reeves truly made a little miracle with only 48kb (minus a few bytes) of space available and in the end he open-sourced version 1.98.

A few months ago I fixed a bug in Minerva and named the version “1.98 I/O fix”, without changing the version number with version 1.99 being the last that will be recognized as QDOS by most software. And even that I’m not sure about as some might have messed up the comparison operator. 

Now that I’ve made another change the question of how to mark the updates came up again. My solution now is to keep the version at 1.98 and increase a newly created sub-version instead. The sub-version (currently “a1”) can be seen in the boot screen and programmatically read from the previously unused extended system variable at sx_base+$4a, which I call sx_subv. And I managed to do this with only 4 additional bytes 🙂

sx_base=PEEK_L(VER$(-2)+124)
sx_subv$=CHR$(PEEK(sx_base+74)) & CHR$(PEEK(sx_base+75))
Minerva 1G98a1 boot screen

You can download the new ROMs here, as usual I supply the English and German versions: minerva_1.98a1.zip

The sources are available on GitHub.