Q68 SMSQ/E Screen modes

Anything QL Software or Programming Related.
User avatar
dilwyn
Mr QL
Posts: 3134
Joined: Wed Dec 01, 2010 10:39 pm

Re: Q68 SMSQ/E Screen modes

Post by dilwyn »

Andrew wrote: Wed Jul 24, 2024 7:25 pm
Derek_Stewart wrote: Wed Jul 24, 2024 7:13 pm Hi,

unless there has been a change DISP_TYPE does nothing, as with the DISP_XXX functions.

I asked Wolfgang about a while back, confirmed, maybe it has been implemented.
I hoped that at least DISP_SIZE works :(
I was relying on it to set the screen size for Pitman.
Unfortunately, no DISP_SIZE. But you can use DISP_MODE on Q68 which sets both mode and screen size (a limited set of sizes only, e.g. DISP_MODE 6 sets 16-bit colour in 512x384 pixels resolution).
DISP_MODE mode
where mode can take the following values:
• 0 = QL 8 colour mode
the standard 512 x 256 pixels mode in 8 colours. In this mode you can also set
mode 4, with the usual MODE keyword. This is then equivalent to setting
DISP_MODE 1.
• 1 = QL 4 colour mode
the standard 512 x 256 pixels in 4 colours mode. In this mode you can also set
mode 8, with the usual MODE keyword. This is then equivalent to setting
DISP_MODE 0.
• 2 = Small 16 bit mode
512 x 256 pixels in mode 33 (16 bits per pixel).
• 3 = Large 16 bit mode
1024 x 512 pixels in mode 33 (16 bits per pixel). Please note that this mode will
slow down the Q68, you should not use this mode when doing something time
critical.
• 4 = Large QL Mode 4
1024 x 768 pixels in QL 4 colours mode (there is no mode 8 in this display mode).
• 5 = Aurora compatible 8 bit colours
1024 x 768 pixels in Aurora 256 colours mode. This allows you to have a big screen
with nicer colours while still being reasonably fast (but slower than the QL modes).
• 6 = Medium 16 bit mode
512 x 384 pixels in mode 33 (16 bits per pixel).
7 = Very large 16 bit mode
• 1024 x 768 pixels in mode 33 (16 bits per pixel). Please note that this mode will
severely slow down the Q68, you should not use this mode when doing something
time-critical


User avatar
BSJR
Trump Card
Posts: 225
Joined: Sun Oct 18, 2015 12:53 pm
Location: Amsterdam
Contact:

Re: Q68 SMSQ/E Screen modes

Post by BSJR »

dilwyn wrote: Wed Jul 24, 2024 9:10 pm Unfortunately, no DISP_SIZE. But you can use DISP_MODE on Q68 which sets both mode and screen size (a limited set of sizes only, e.g. DISP_MODE 6 sets 16-bit colour in 512x384 pixels resolution).
This DISP_MODE command is exclusive to SMSQ/E for the Q68, as far as I can see.
Having one function to return a combined number for size & mode would also only work on those system with fixed sizes like BBQL, Aurora or Q68.

With most emulators sizes can be almost anything from standard to full HD (and beyond?).
That makes it very difficult to devise a numbers table catching all the possible size and mode combinations.
It's easier to find them as two separate entities with SCR_X/YLIM, DISP_TYPE or RMODE.
Also consider that DISP_TYPE returns a different set of values for each system SMSQ/E running on.

BSJR


User avatar
7alken
ROM Dongle
Posts: 49
Joined: Tue Apr 18, 2023 2:23 am

Re: Q68 SMSQ/E Screen modes

Post by 7alken »

BSJR wrote: Wed Jul 24, 2024 11:27 am
Derek_Stewart wrote: Tue Jul 23, 2024 8:07 pm Hi,

I have been asked how to determine the screen mode or a Q68 screen, which SMSQ/E has a function: RMODE

RMODE seems to work only in QPC2 and SMSQmulator.
On a Q68 RMODE returns 0 in all Q68 screen modes.
RMODE is not an SMSQ/E but a QPTR keyword. So if those extensions are not loaded it's just an empty variable.
When loaded it will return the correct mode, even on the Q68.

According to the official SMSQ/E Keyword Database there is also an RMODE function in the tool FN_ext.
But I know nothing about that one.

BSJR
re QBAS

hi, kindly please, what is "official SMSQ/E Keyword Database" ? here from the conversation is quite clear that
even QL oldtimers may have trouble to identify what was defined where, in which toolkit. For me as newbie
the hundreds of top level identifiers is overwhelming and I love to have things split, mostly by time, sorted the
toolkits/versions by release timestamp and under the records stored list of new added or fixed identifiers, so
here procs/fns ... and this needs at least dictionaries/hastables or DATABASE :-) ... so how good is QBAS ??
is it in DATA_bin? that is what I searched here on forum, after I found something for data manipulation from
SB exists .... these attepmts were of course say, suboptimal ))
https://chatgpt.com/share/67316b46-60ec ... c87932e8e3

Petr


User avatar
NormanDunbar
Forum Moderator
Posts: 2492
Joined: Tue Dec 14, 2010 9:04 am
Location: Buckie, Scotland
Contact:

Re: Q68 SMSQ/E Screen modes

Post by NormanDunbar »

7alken wrote: Mon Nov 11, 2024 2:19 pm hi, kindly please, what is "official SMSQ/E Keyword Database" ?
This is what you need. https://superbasic-manual.readthedocs.i ... index.html.

There is an incomplete list---Turbo, for example, is not yet included---of all the known toolkits and their commands. Have fun!


Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
User avatar
7alken
ROM Dongle
Posts: 49
Joined: Tue Apr 18, 2023 2:23 am

Re: Q68 SMSQ/E Screen modes

Post by 7alken »

NormanDunbar wrote: Mon Nov 11, 2024 2:46 pm
7alken wrote: Mon Nov 11, 2024 2:19 pm hi, kindly please, what is "official SMSQ/E Keyword Database" ?
This is what you need. https://superbasic-manual.readthedocs.i ... index.html.

Cheers,
Norm.
Hi Norm, many thanks, but I was there and apart from that I mixed up few
QL related things - Q as QL and BAS as BASE vs BASIC, I had typo in what I am looking for,
its DBAS and not "QBASIC vs QBAS/QD" ... I really found here on forum mentioned DBAS toolkit
for some simple imperative ISAM-like db handling, few added keywords, no sql or so, sure,
(although sqlite would be monster, even some simplified, crippled, hacked version)
but ... DBAS is not found in your linked manual or rather "reference", because even this
would be great target for db processed cross-links, and would be nice to have also that dates,
from when is what accessible where .... but okay, this can be done on PCs, but I was/am looking
for some "dictionary" like commands to store data structures, at least for imperative scanning,
just to build trees of thinga with foreign indexes and then traverse over them later, from SBASIC
code ... and this is what few (very few) ppl mentioned here as "DBAS toolkit" (sarching now
again entire forum for "database" and fetching traces and hints where to get DBAS... to try
(or finally write something simple, or try to find C of some tiny datastore to glue it in)

Petr


User avatar
Andrew
QL Wafer Drive
Posts: 1050
Joined: Tue Jul 17, 2018 9:10 pm

Re: Q68 SMSQ/E Screen modes

Post by Andrew »

7alken wrote: Mon Nov 11, 2024 4:31 pm sarching now again entire forum for "database" and fetching traces and hints where to get DBAS...
Everything you need you can find on DIllwyn's site - the QL Homepage link on top of the forum
Database page is this one: https://dilwyn.theqlforum.com/database/index.html


User avatar
7alken
ROM Dongle
Posts: 49
Joined: Tue Apr 18, 2023 2:23 am

Re: Q68 SMSQ/E Screen modes

Post by 7alken »

Thanks Andrew, will try it - reading here all 24 pages found "database" in forum, usefull notes;
excuse me for OT here
Petr


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

Re: Q68 SMSQ/E Screen modes

Post by Derek_Stewart »

Hi,

I did some work to convert the Superbasic manual into a format for the QD Hyper help. But never completed the conversion.

I have converted from the manuals: DBAS, QPTR, Easy Pointer, for use in programming from QD with QD/DBAS Thing or QBASIC compiler Thing.

I have already posted a message thread on this, but alas it seems to be not looked at.

DBAS is one the hidden Gems of the QL, which allows database programming from S*BASIC, Assembly, C... but it seems not to be used much. SuQcess being a more recent application.


Regards, Derek
swensont
Forum Moderator
Posts: 325
Joined: Tue Dec 06, 2011 3:30 am
Location: SF Bay Area
Contact:

Re: Q68 SMSQ/E Screen modes

Post by swensont »

There is also Qbase which also uses DBAS. Another hidden gem that is more standard is the Gnu Database Manager (GDBM). It was ported from Unix to QDOS by Jonathan Hudson. It is programmable via C (c68) and Perl (also ported by Jonathan). For single table databases, awk does a decent job and is also pretty standard. Awk can easily parse tables or lists. I used it to convert a .csv file to HTML.

Tim


User avatar
NormanDunbar
Forum Moderator
Posts: 2492
Joined: Tue Dec 14, 2010 9:04 am
Location: Buckie, Scotland
Contact:

Re: Q68 SMSQ/E Screen modes

Post by NormanDunbar »

Derek_Stewart wrote: Mon Nov 11, 2024 11:40 pm DBAS is one the hidden Gems of the QL, which allows database programming from S*BASIC, Assembly, C... but it seems not to be used much.
Hi Derek,

Many years ago, I converted the Quanta library from Archive to DBAS using C68 and it has been used ever since, as far as I know. But you are correct, it's not used enough.

I have plans to write it up in the Assembly eMagazine though, "soon"!


Cheers,
Norm.


Why do they put lightning conductors on churches?
Author of Arduino Software Internals
Author of Arduino Interrupts

No longer on Twitter, find me on https://mastodon.scot/@NormanDunbar.
Post Reply