Op Tue, 17 Apr 2012 07:55:38 +0200 schreef Daniele Terdina <danieleterd...@hotmail.com>:



My tests were done on a W$-Vista with Q-emuLator 2.5 and 3.1., with JS and
both the old DATA_bin and latest 2.13.
Only 3.1 & JS produces the errors, the DATA_bin version makes no
difference.
I looks like something changed between Q-emuLator 2.5 & 3.1 to stop DBAS
 from working.

Bob

I've looked into this and there is a change in behaviour in version 3.0 which causes this issue. The change was for compatibility reasons to allow some old games to run. DATA_BIN is patching the directory device drivers to be able to intercept a special new I/O command. On a (JS) QL, I think this would _not_ work for the MDV driver as the device driver definition is in ROM and can't be patched (actually, it could still be patched, but only by using a different method). But it works for other device drivers like FLP that are defined in RAM. Up to version 2.5, the additional Q-emuLator device driver definitions (additional definitions are necessary as a JS ROM doesn't know about 'FLP' and 'TCP', for example) were in RAM and DATA_BIN used to work fine, but later I changed the definitions to be in ROM and DATA_BIN is not able to patch the drivers anymore. The reason for the change is that the RAM definitions were causing incompatibilities with some old software that expected to find some QDOS data structures at fixed addresses in the QL memory, but the extra memory used by Q-emuLator's device drivers was causing these addresses to be off by a few bytes. Finally, I only activated this change for Sinclair ROMs, as those old QL programs wouldn't work on Minerva anyways, and this explains why DATA_BIN still runs fine under Q-emuLator 3 when using a Minerva ROM or SMSQ/E. I'll think about ways of mantaining compatibilities with both DATA_BIN and the old software that doesn't like extra drivers to be in RAM. In the meantime, the workaround on Q-emuLator version 3 is to use the Minerva ROM. Daniele
Thanks for this explanation Daniele.

During my testing I tried to get my SuQcess front end for DBAS to run but ran into another problem. SuQcess starts with testing the validity of devices and directories to prevent it from crashing later. For this the TK2 commands FTEST and FTYP are used but these don't seem to work on the device names used by Q-emuLator.
Is this just an issue with the non-registered version?
Is there any way to test for Q-emuLator from S*Basic so I can skip the test and hope for the best?

Bob

--
The BSJR QL software site at: http://members.upc.nl/b.spelten/ql/
_______________________________________________
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm

Reply via email to