Announcement - new QL Interface

Nagging hardware related question? Post here!
HAOUI
Bent Pin Expansion Port
Posts: 89
Joined: Tue Dec 14, 2010 2:17 pm

Re: Announcement - new QL Interface

Post 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


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Announcement - new QL Interface

Post 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?


User avatar
Outsoft
Super Gold Card
Posts: 695
Joined: Sat Apr 19, 2014 1:30 pm
Location: Italy
Contact:

Re: Announcement - new QL Interface

Post 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


User avatar
tofro
Font of All Knowledge
Posts: 2685
Joined: Sun Feb 13, 2011 10:53 pm
Location: SW Germany

Re: Announcement - new QL Interface

Post 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


ʎɐqǝ ɯoɹɟ ǝq oʇ ƃuᴉoƃ ʇou sᴉ pɹɐoqʎǝʞ ʇxǝu ʎɯ 'ɹɐǝp ɥO
HAOUI
Bent Pin Expansion Port
Posts: 89
Joined: Tue Dec 14, 2010 2:17 pm

Re: Announcement - new QL Interface

Post 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


User avatar
Outsoft
Super Gold Card
Posts: 695
Joined: Sat Apr 19, 2014 1:30 pm
Location: Italy
Contact:

Re: Announcement - new QL Interface

Post 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.


Silvester
Gold Card
Posts: 436
Joined: Thu Dec 12, 2013 10:14 am
Location: UK

Re: Announcement - new QL Interface

Post 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.


David
HAOUI
Bent Pin Expansion Port
Posts: 89
Joined: Tue Dec 14, 2010 2:17 pm

Re: Announcement - new QL Interface

Post 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


User avatar
dilwyn
Mr QL
Posts: 2753
Joined: Wed Dec 01, 2010 10:39 pm

Re: Announcement - new QL Interface

Post 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


User avatar
Outsoft
Super Gold Card
Posts: 695
Joined: Sat Apr 19, 2014 1:30 pm
Location: Italy
Contact:

Re: Announcement - new QL Interface

Post 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 ;)


Post Reply