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