Page 18 of 23

Re: Announcement - new QL Interface

Posted: Fri May 12, 2017 6:54 pm
by HAOUI
Silvester wrote:It is not a bug, it is due to v2.17c Eprom handling of RES_128.

The original v1.xx Eprom checks RAM size, if <=128K it just links in the FLP driver, if >128K it links in everything. The problem is v2.17c just links in everything, regardless of RAM size found.

But even if the v2.17c code is modified (ie. FLP only if RES_128), you may still have problem if QubATA driver uses enough of the 128K RAM to upset things similarly.

Simplest solution is to use Minerva where you can selectively boot 128K and ignore add-ons (leaving MDVs only).
Factually, QubATA driver when started from ROM will take 16128 bytes of RAM to copy its code from ROM to RAM (for faster access) and 1024 Bytes to build the driver linkage block (Directory Driver Definition Block) - This is a fixed size - And after it will try to link in the first partition by loading its FAT in RAM (size depends on partition size and on block size used for partition). Also QDOS will allocate a physical definition block for each win drive (256 bytes each for QubATA).

I took a look on my Tetroid and found that QubATA init is really done after a res_128 boot. So it grabs memory as after a normal boot.

I will be able to modify the QubATA init routine to don't start when RAM is <128 as there is no big chance to load any FAT under 128 KB of whole RAM system. However I found that FLP driver is also started after res_128 boot. So, deactiving QubATA will not be enough to retrieve initial TC V1 behavior.

Alain

Re: Announcement - new QL Interface

Posted: Fri May 12, 2017 7:41 pm
by RWAP
Would the answer be to use the RES_128 as a net figure, so that it allocates enough memory so that after the FLP driver and QubIDE etc are linked in, you are left with 128K?

This would be difficult for a standard QL where you could have multiple interfaces, but surely something could be done to provide a RES_128 for the Trump Card and another implementation for Tetroid's interface.... Possibly a third version for QubIDE on its own?

Re: Announcement - new QL Interface

Posted: Fri May 12, 2017 8:50 pm
by Outsoft
RWAP wrote:Would the answer be to use the RES_128 as a net figure, so that it allocates enough memory so that after the FLP driver and QubIDE etc are linked in, you are left with 128K?

This would be difficult for a standard QL where you could have multiple interfaces, but surely something could be done to provide a RES_128 for the Trump Card and another implementation for Tetroid's interface.... Possibly a third version for QubIDE on its own?
With the RES_128 command effectively we need only the MD driver (non the FLP one) but with the Trump Card we have also the FLP_ driver too.

So It will be great If we can have both as the original Trump card tto ;9

Re: Announcement - new QL Interface

Posted: Fri May 12, 2017 9:48 pm
by tofro
It should actually be only a minor task to write a small program that finds the flp_ (or any other) driver's linkage block and unlinks the driver. Assuming that the driver allocates everything according to QL standards, it should be possible to find and remove all of the memory footprint of the driver.

Tobias

Re: Announcement - new QL Interface

Posted: Sat May 13, 2017 9:20 am
by HAOUI
This is what the WIN_REMOVE command does to uninstall the QubATA driver. Unfortunately, the ROM shadow will still there. As this is in the Res procs area, not sure deallocate will help and as general rule, freeing memory under QDOS is not same as not allocating memory at all.

I would prefer don't start QubATA driver in res_128 mode either by :
- not excuting ROM at $C000
- or modify QubATA init routine (need a new rom image)

Alain

Re: Announcement - new QL Interface

Posted: Sat May 13, 2017 9:46 am
by Outsoft
HAOUI wrote:This is what the WIN_REMOVE command does to uninstall the QubATA driver. Unfortunately, the ROM shadow will still there. As this is in the Res procs area, not sure deallocate will help and as general rule, freeing memory under QDOS is not same as not allocating memory at all.

I would prefer don't start QubATA driver in res_128 mode either by :
- not excuting ROM at $C000
- or modify QubATA init routine (need a new rom image)

Alain
Exactly: only the MD driver is needed in 128k mode for let original titles that was made for 128k QL's only can works properly.

Re: Announcement - new QL Interface

Posted: Sat May 13, 2017 11:47 am
by Silvester
Outsoft wrote:...only the MD driver is needed in 128k mode for let original titles that was made for 128k QL's only can works properly.
That fix for v2.17c is easy to do (ie. once RAM size found for banner, just return if 128K without adding anything). I'll propose change to MK and see if original author is OK with it.

Re: Announcement - new QL Interface

Posted: Sun May 14, 2017 7:23 am
by HAOUI
Silvester wrote:
Outsoft wrote:...only the MD driver is needed in 128k mode for let original titles that was made for 128k QL's only can works properly.
That fix for v2.17c is easy to do (ie. once RAM size found for banner, just return if 128K without adding anything). I'll propose change to MK and see if original author is OK with it.
I think it is the simplest and the best way to make for sure compatibility with a bare original QL. Thanks.

As this needs anyway a new ROM image, It would be better to achieve this before dispatching the new Tetroid interface.

Alain

Re: Announcement - new QL Interface

Posted: Sun Jun 11, 2017 1:01 pm
by dilwyn
Silvester wrote:
Outsoft wrote:...only the MD driver is needed in 128k mode for let original titles that was made for 128k QL's only can works properly.
That fix for v2.17c is easy to do (ie. once RAM size found for banner, just return if 128K without adding anything). I'll propose change to MK and see if original author is OK with it.
So, thanks to Silvester, v2.18 of the Trump Card ROM is now available.

Upon a RES_128 it now doesn't add anything, this allows 128K only MDV programs to run on machines which also expect JS rom. It just shows banner/memory and returns with no FLP/TK2 etc.

Download from http://www.dilwyn.me.uk/qlrom/index.html or http://www.greybeardz.com/qlrom/index.html. On both sites, the download should be in the same place, in the Assorted ROM Images section, labelled TC218.zip

Re: Announcement - new QL Interface

Posted: Mon Jun 12, 2017 9:39 pm
by Outsoft
dilwyn wrote:
Silvester wrote:
Outsoft wrote:...only the MD driver is needed in 128k mode for let original titles that was made for 128k QL's only can works properly.
That fix for v2.17c is easy to do (ie. once RAM size found for banner, just return if 128K without adding anything). I'll propose change to MK and see if original author is OK with it.
So, thanks to Silvester, v2.18 of the Trump Card ROM is now available.

Upon a RES_128 it now doesn't add anything, this allows 128K only MDV programs to run on machines which also expect JS rom. It just shows banner/memory and returns with no FLP/TK2 etc.

Download from http://www.dilwyn.me.uk/qlrom/index.html or http://www.greybeardz.com/qlrom/index.html. On both sites, the download should be in the same place, in the Assorted ROM Images section, labelled TC218.zip
yeah ;)

I need to send again my Clone of the QUBIDE/TRUMP CARD for a new update ;)