Page 1 of 2
Software and Minerva issues
Posted: Wed Jul 22, 2015 9:41 am
by Cristian
Has Minerva (1.98) significant issues with important softwares (or hardwares)?
Or there are only minor problems for some software instead?
Is there a list of softwares incompatible with Minerva?
Re: Software and Minerva issues
Posted: Wed Jul 22, 2015 10:18 am
by Derek_Stewart
The main problem is not Minerva, it is badly written software.
Pre-Minerva the system variable were assumed to be fixed.
However, Minerva came along and implemented the Secons Screen, activated at boot up by pressing F3/F4 and the 32K above the QL Screen was activated and came be used as valid screen area. See Minerva Technical Manual Page CON.3
There is a valid Management TRAP in assembler MT.INF that returns the address of the System Variables so no real excuse for the sloppy programming practises.
Mostly Digital Precision software had problems with Minerva, but I only used The Editor SE, the rest was not good.
Maybe Supercharge compiled programmes may have problems, but Turbo solved all this.
Re: Software and Minerva issues
Posted: Wed Jul 22, 2015 6:15 pm
by Cristian
Derek_Stewart wrote:The main problem is not Minerva, it is badly written software.
Yes, I agree. On the other hand, since nobody is available to rewrite the software...
Derek_Stewart wrote:Mostly Digital Precision software had problems with Minerva, but I only used The Editor SE, the rest was not good.
Wow, Digital Precision made a lot of software. I have to find an "official" list of unworking software in order to decide if it's worth

Re: Software and Minerva issues
Posted: Thu Jul 23, 2015 6:31 pm
by Cristian
Finding a decent list of unworking software is very hard
Any suggestion?

Re: Software and Minerva issues
Posted: Thu Jul 23, 2015 7:10 pm
by tofro
Rule of thumb:
Anything gamy sold before ~1987 may or may not work. Most works.
Anything else (like "decent" application software or games after around that year) should work or might not be worth having
Tobias
Re: Software and Minerva issues
Posted: Thu Jul 23, 2015 8:09 pm
by dilwyn
Cristian wrote:Finding a decent list of unworking software is very hard
Any suggestion?

It's not as simple as "
does it work with Minerva or not" - you must also think "
which version(s) of Minerva does it work with or not".
So, I propose a second rule of thumb:
If your main interest is running older QL software, stick with a Sinclair ROM.
The ultimate answer is probably a ROM switcher board, or even program various ROM versions plus Toolkit 2 into a 64KB EPROM, get hold of some plug in ROM cartridges and swap ROMs as the need arises.
(Now if that doesn't create a market for plug in EPROM cartridges, nothing will).
Or, of course, two QLs with different ROMs or an emulator able to load the various ROM versions.
Re: Software and Minerva issues
Posted: Thu Jul 23, 2015 9:00 pm
by 1024MAK
Or a even bigger EPROM, with the highest address line connected via a 10k resistor to +5V, and the same pin connected to a switch (mounted on the case) to 0V
Mark
Re: Software and Minerva issues
Posted: Fri Jul 24, 2015 8:57 am
by Derek_Stewart
dilwyn wrote:Cristian wrote:Finding a decent list of unworking software is very hard
Any suggestion?

It's not as simple as "
does it work with Minerva or not" - you must also think "
which version(s) of Minerva does it work with or not".
So, I propose a second rule of thumb:
If your main interest is running older QL software, stick with a Sinclair ROM.
The ultimate answer is probably a ROM switcher board, or even program various ROM versions plus Toolkit 2 into a 64KB EPROM, get hold of some plug in ROM cartridges and swap ROMs as the need arises.
(Now if that doesn't create a market for plug in EPROM cartridges, nothing will).
Or, of course, two QLs with different ROMs or an emulator able to load the various ROM versions.
If you read historical QL mail, Minerva was always a problem, but it just indicated sloppy programming practises.
Assuming that the System Variable and Screen Base addresses do not move.
I have typed in games from magazines, i.e. Computer Games & Video, The Big K, by supposed software authors. Where they are using GOTOs to jump into Procedures. Does work on AH Rom QLs but no chance on JM, JS, Minerva, SMSQ/E
So is it Minerva's fault that the software writer is using a bugged operating system and not using the structured approach to the software writing.
The only Digital Precision software worth using in my humble opinion is: Editor SE, Perfection SE, Success CP/M emulator. The rest is not worth it, there are better public domain software available on Dilwyn's web site.
Re: Software and Minerva issues
Posted: Fri Jul 24, 2015 10:06 am
by tofro
Derek_Stewart wrote:
If you read historical QL mail, Minerva was always a problem, but it just indicated sloppy programming practises.
Assuming that the System Variable and Screen Base addresses do not move.
IMHO, the problem is much smaller than it's anticipated here. Actually, Minerva
allows you to move system variables and screen - You don't
need to. And if you don't, everything is like on JS/JM/MG
The problem is mainly with games where the programmers decided to jump directly into ROM routines instead of using proper traps or assumed specific behavior in the scheduler or polling loop interrupt routines. But that created more or less the same incompatibilities between AH/JM/JS ROMs.
Minerva
is a bit pickier on SuperBASIc than JM/JS, but that has been relaxed in 1.98, earlier versions created more problems. But, hey: SuperBASIC problems you should easily be able to fix yourself!
I personally have
never come across anything I wanted to run that didn't work with Minerva - I do however, not play many games.
Tobias
Re: Software and Minerva issues
Posted: Fri Jul 24, 2015 10:42 am
by dilwyn
tofro wrote:Derek_Stewart wrote:
If you read historical QL mail, Minerva was always a problem, but it just indicated sloppy programming practises.
Assuming that the System Variable and Screen Base addresses do not move.
IMHO, the problem is much smaller than it's anticipated here. Actually, Minerva
allows you to move system variables and screen - You don't
need to. And if you don't, everything is like on JS/JM/MG
The problem is mainly with games where the programmers decided to jump directly into ROM routines instead of using proper traps or assumed specific behavior in the scheduler or polling loop interrupt routines. But that created more or less the same incompatibilities between AH/JM/JS ROMs.
Minerva
is a bit pickier on SuperBASIc than JM/JS, but that has been relaxed in 1.98, earlier versions created more problems. But, hey: SuperBASIC problems you should easily be able to fix yourself!
I personally have
never come across anything I wanted to run that didn't work with Minerva - I do however, not play many games.
Tobias
It would actually be quite handy if someone compiled a FAQ list for getting older software to run on more modern systems and emulators. I did a basic one in Quanta mag for QPC a while back, it's available to download as one of the helpline columns (basically, start the emulator in a QL compatible 512x256 video mode with system variables fixed at QL address, and for QPC2 use the QPC_QLSCREMU command where appropriate). This still won't fix the issues with software which calls hard coded QL ROM routines, of course.
Some programs were written to run from a fixed location in memory, this means they stand very little chance of running on anything other than the unexpanded 128K QL. Worse, some Microdrive software used every single byte of a 128K system, leaving not even the few bytes needed for a disk interface to work. Probably not a lot you can do about software like this except keep a working QL to hand. If your QL has expanded memory, you can always try using a RES_128 utility (plenty of them on my website) to reset the QL to 128K without having to remove the RAM card, to save wear and tear.
There are some 'fix' routines and programs out there to help patch older programs in some cases, e.g. the TurboFix and TurboPatch programs at
http://www.dilwyn.me.uk/turbo/index.html and some patch routines with SMSQ/E too.
Important to note that while Turbo sometimes gets a bad press from this point of view (system variables etc), it's only the older versions which had problems, and even then it's not always the fault of the compiler if the programmer pokes direct to screen memory or system variables or other system areas (I know, some of my old programs like Page Designer do this).
Of course, where source code exists there is always a chance some nice programmer will correct and recompile the program. But unfortunately the very age of these incompatible programs mean they come from the period when it was not the usual practice to include source files and of course most of these programmers have since moved on and no longer have copies of the originals.
And it's usually the games which are hardest; for maximum speed performance the programmers of the time often bypassed as much Sinclair code as possible and wrote direct to just about anywhere in memory. A perhaps higher than expected number of these will actually work on Minerva but ultimately if you are a gamer and user of older software with a single QL, it might be better to consider sticking to a Sinclair-ROM QL, at least until some nice person comes up with a general guide and even better a list of software known not to work with Minerva (going down to individual versions of Minerva is not practical).