Quill from Gilsoft

Anything QL Software or Programming Related.
User avatar
RalfR
QL Wafer Drive
Posts: 1256
Joined: Fri Jun 15, 2018 8:58 pm

Re: Quill from Gilsoft

Post by RalfR »

Source? :D


7000 4E75
Derek_Stewart
Font of All Knowledge
Posts: 4840
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Quill from Gilsoft

Post by Derek_Stewart »

Hi,

I am only stating what is available now.

The Next QL core on my KS2 Next, does not have a directory device driver to access the FAT32 SD Card parition. I have to use the executable files: SDIR to list the files on the FAT32 partition and SCOPY to transfer files to/from QLWA file.

Maybe the KS3 Next QL core will address this, I have pledged support for a Magenta Next.

The Q68 has a directory device driver FATx to access a FAT16 parition x on the SD Card. I can not store files on the Q68 FAT32 partitions, except in a QLWA file.

On both systems, the QL executable files canot be stored natively, and need a container or archive file to store them. Which fir me, this seems to be not a problem. I store FLP images on the Q68 FAT16 partition and use FDI to access the files. Can not do this on the Next or XberryPi.

When can I expect a FAT32 QDOS directory device driver to work on any QL system?


Regards, Derek
User avatar
XorA
Site Admin
Posts: 1727
Joined: Thu Jun 02, 2011 11:31 am
Location: Shotts, North Lanarkshire, Scotland, UK

Re: Quill from Gilsoft

Post by XorA »

When can I expect a FAT32 QDOS directory device driver to work on any QL system?
When someone writes one!

You could have had one years ago if QDOS had any support for C device drivers!


Derek_Stewart
Font of All Knowledge
Posts: 4840
Joined: Mon Dec 20, 2010 11:40 am
Location: Sunny Runcorn, Cheshire, UK

Re: Quill from Gilsoft

Post by Derek_Stewart »

XorA wrote: Fri Jul 25, 2025 10:29 pm
When can I expect a FAT32 QDOS directory device driver to work on any QL system?
When someone writes one!

You could have had one years ago if QDOS had any support for C device drivers!
my problem is, I do not have the programming skills, to accomplish this task.

I have tried, but have not produced anything usable.

What is C device drivers?


Regards, Derek
Morgul
ROM Dongle
Posts: 7
Joined: Tue Jul 08, 2025 12:24 pm

Re: Quill from Gilsoft

Post by Morgul »

Sebright wrote: Thu Jul 17, 2025 9:42 pm
Morgul wrote: Thu Jul 17, 2025 3:37 pm
Okay, I'll prepare some simple QL database that has multiple objects, locations, connections between them, and with some code. I replicate the database format that Quill for QL uses (at least version A07), so it should be the same as if it was generated by Quill itself. For this kind of use case, optimized databases shouldn't be used, as they're optimized for size based on what the interpreter can handle, not for other tools to work on the database. So I'll share a non-optimized one, the one that I mean replicates the format Quill uses.
That's great, thanks! Looking forward to giving it a go...
Here you go, Sebright. It's a simple database with two rooms, a message displayed on turn number 2, the code to quit the game, and a test of inverse text display.
Attachments
example.zip
(879 Bytes) Downloaded 13 times


User avatar
Sebright
Bent Pin Expansion Port
Posts: 83
Joined: Fri Feb 07, 2025 9:55 am

Re: Quill from Gilsoft

Post by Sebright »

Morgul wrote: Wed Jul 30, 2025 10:26 pm
Sebright wrote: Thu Jul 17, 2025 9:42 pm
Morgul wrote: Thu Jul 17, 2025 3:37 pm
Okay, I'll prepare some simple QL database that has multiple objects, locations, connections between them, and with some code. I replicate the database format that Quill for QL uses (at least version A07), so it should be the same as if it was generated by Quill itself. For this kind of use case, optimized databases shouldn't be used, as they're optimized for size based on what the interpreter can handle, not for other tools to work on the database. So I'll share a non-optimized one, the one that I mean replicates the format Quill uses.
That's great, thanks! Looking forward to giving it a go...
Here you go, Sebright. It's a simple database with two rooms, a message displayed on turn number 2, the code to quit the game, and a test of inverse text display.
Thanks Morgul! That seemed to work ok, but maybe a full game would be a better test. Here is my output, use 'LRUN boot' which loads in QLiberator extensions and then starts the 'game' in BASIC.
example_v2.zip
(19.01 KiB) Downloaded 13 times


Finding Evan - a text adventure with graphics for SMSQ/E & QDOS
Otis Travels In Space - QDOS only... Find them here!
User avatar
Sebright
Bent Pin Expansion Port
Posts: 83
Joined: Fri Feb 07, 2025 9:55 am

Re: Quill from Gilsoft

Post by Sebright »

Having played around with Quill a bit recently, I thought it would be fun to try to add some "enhancements" made possible by using the Quill to BASIC utility.

It was possible to add:

GET ALL
DROP ALL
EXAMINE ALL

and also a third word to the parser, which appears as flag(59)

These are quite easy to include in any transferred games.

Also, I added
LISTOBJS locno.
MOVEOBJS loc1 loc2

These have to be manually added to the SuperBASIC code after transfer, so not quite so simple and not really possible to test while writing the adventure in Quill.

Anyway, I put together a little game called Literal Magic to play about with these new possibilities. I've attached a zipped floppy image containing a QLiberated version (essential if you are using a base speed QL!) and the source files.

Cheers,
Alan
LMagic.zip
(85.27 KiB) Downloaded 9 times


Finding Evan - a text adventure with graphics for SMSQ/E & QDOS
Otis Travels In Space - QDOS only... Find them here!
Morgul
ROM Dongle
Posts: 7
Joined: Tue Jul 08, 2025 12:24 pm

Re: Quill from Gilsoft

Post by Morgul »

Sebright wrote: Sat Aug 09, 2025 3:28 pm Having played around with Quill a bit recently, I thought it would be fun to try to add some "enhancements" made possible by using the Quill to BASIC utility.

It was possible to add:

GET ALL
DROP ALL
EXAMINE ALL

and also a third word to the parser, which appears as flag(59)

These are quite easy to include in any transferred games.

Also, I added
LISTOBJS locno.
MOVEOBJS loc1 loc2

These have to be manually added to the SuperBASIC code after transfer, so not quite so simple and not really possible to test while writing the adventure in Quill.
Good, Alan.

DROPALL is an existing condact in Quilll for QL.

And the action you called LISTOBJS is called LISTAT on The PAWS, so I would rename it that way.


User avatar
Sebright
Bent Pin Expansion Port
Posts: 83
Joined: Fri Feb 07, 2025 9:55 am

Re: Quill from Gilsoft

Post by Sebright »

Morgul wrote: Sun Aug 24, 2025 12:42 pm
Sebright wrote: Sat Aug 09, 2025 3:28 pm Having played around with Quill a bit recently, I thought it would be fun to try to add some "enhancements" made possible by using the Quill to BASIC utility.

It was possible to add:

GET ALL
DROP ALL
EXAMINE ALL

and also a third word to the parser, which appears as flag(59)

These are quite easy to include in any transferred games.

Also, I added
LISTOBJS locno.
MOVEOBJS loc1 loc2

These have to be manually added to the SuperBASIC code after transfer, so not quite so simple and not really possible to test while writing the adventure in Quill.
Good, Alan.

DROPALL is an existing condact in Quilll for QL.

And the action you called LISTOBJS is called LISTAT on The PAWS, so I would rename it that way.
Hi Morgul,

Thanks for the info. It would make sense for me to change the name of the LISTOBJs action as you say, just in case anyone ever uses the utility and gets confused.

The new "drop_all" prcedure is subtly different from DROPALL, in that the event table is checked for each object to be dropped, in case there is a "DROP x" entry for object "x". For example, there is a bottle of 12-year old malt whisky in the mini-game that you are not allowed to drop! Quill's DROPALL just drops evenything in one go without checking. I expect that is why there is not a matching GETALL in Quill.

In the meantime, my experimental DAADReady conversion to QL SuperBASIC has progressed to a point where I can recreate a working adventure from the DAADReady output from Adventuron (i.e. the TEST.DSF file and "Images" folder). It still needs some manual input, as I still don't fully understand the workings of DAAD, and needs some small bodges to work. In fact, it came as quite a shock that it actually worked at all! I don't think it will ever reach the point of being a tool worthy of release, but I'm happy to share it with anyone who is remotely interested.

The whole point of it, is that you can write your adventure in Adventuron (selecting 8-bit compatibility mode, and creating graphics in 8-bit colour to the required dimensions), then compile to HTML (which you can share easily!). Then export to DAADReady format, which can then be compiled to run on a range of 8-bit machines, and in particular Spectrum Next, which uses 8-bit colour. Then you also have the option to use this utility to convert DAADReady to QL format too. That will rule out Modes 4 and 8, but Q68 and emulators running SMSQ/E will be able to run it. Also the QL core of Spectrum Next (when it's finished at some point in the future).

To test it, I manually re-wrote my Finding Evan adventure in Adventuron and saved it (eventually) in all three versions, see below. There are some differences here and there, which I hope to iron out, but none that affect the ability to play the game.

comparison4.jpg
[Edit... L-R: HTML (on Chrome), QL (on QPC2), Spectrum Next (on ZEsarUX)]
Cheers,
Alan


Finding Evan - a text adventure with graphics for SMSQ/E & QDOS
Otis Travels In Space - QDOS only... Find them here!
Post Reply