vDrive QL Menu

Anything QL Software or Programming Related.
User avatar
ngcard
ROM Dongle
Posts: 19
Joined: Sat Aug 03, 2019 3:56 pm
Location: Venice, Florida
Contact:

vDrive QL Menu

Post by ngcard »

I've been messing with the QL Games Cartridge menu to come up with a menu I can use to launch applications from different banks. Seems to be working pretty well. So far I have a single column menu which supports 13 selections. I should be able to tweak this to support 3 columns. Anyway, the Superbasic code is attached if anyone wants to play with it. BTW I have a vDrive with a vMap, so mdv1 and 2 are mapped to the vDrive.
menu.jpg
Attachments
menu_bas.zip
(972 Bytes) Downloaded 130 times


Neal
User avatar
Andrew
Aurora
Posts: 778
Joined: Tue Jul 17, 2018 9:10 pm

Re: vDrive QL Menu

Post by Andrew »

I was just starting to write a vDrive Manager myself, now that I have convinced my QLs to work with it.
So you code might save me some time :)


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

Re: vDrive QL Menu

Post by Derek_Stewart »

Hi,

I did a similiar selection menu for the Q68 software distro. But the Games boot programme was very badly written. Lots of GOTOs. I removed all that and used REPeat loops.


Regards,

Derek
retro_collector
Brittle Membrane
Posts: 107
Joined: Sun Jul 21, 2019 2:26 pm
Location: Chicago, IL USA

Re: vDrive QL Menu

Post by retro_collector »

Me three! I was just starting to write the same program.

So thanks I can just use yours :D


User avatar
RalfR
Aurora
Posts: 870
Joined: Fri Jun 15, 2018 8:58 pm

Re: vDrive QL Menu

Post by RalfR »

Hmm, al lot of double entries. The programs should be in a DATA area, so easier to expand and just once set.

"SB" seems to be a keyword of the vDrive extensions to change to a special mdv? E.g. "IF n=13 THEN SB "STARPORT":LRUN MDV1_BOOT"


4E75 7000
User avatar
ngcard
ROM Dongle
Posts: 19
Joined: Sat Aug 03, 2019 3:56 pm
Location: Venice, Florida
Contact:

Re: vDrive QL Menu

Post by ngcard »

Agreed. I just tweeked what was already there. Yes, the SB keyword selects a virtual Microdrive bank.


Neal
User avatar
ngcard
ROM Dongle
Posts: 19
Joined: Sat Aug 03, 2019 3:56 pm
Location: Venice, Florida
Contact:

Re: vDrive QL Menu

Post by ngcard »

Here's the next iteration. All the GOTOs and duplicate lines are gone. The list of banks are loaded into an array from DATA lines. The menu can handle up to 39 entries split into 3 columns. The next task is to stop the menu from re-drawing everything when a cursor key is pressed, but only update the highlighted item which should improve performance with long lists.
Attachments
menu_bas.zip
(969 Bytes) Downloaded 89 times


Neal
User avatar
ngcard
ROM Dongle
Posts: 19
Joined: Sat Aug 03, 2019 3:56 pm
Location: Venice, Florida
Contact:

Re: vDrive QL Menu

Post by ngcard »

OK, another iteration. This one has much improved performance when navigating - only the new and previous selections are updated on the screen instead of the whole menu. Also, the left and right arrow keys now allow you to move to the next or previous columns.
Attachments
menu_bas.zip
(1.07 KiB) Downloaded 110 times


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

Re: vDrive QL Menu

Post by Derek_Stewart »

Hi,

The new version looks good.

You could use SELect statements instead of multiple IF statements.

You might want to look at the Toolkit 2 FOPEN function, so that the next available channel number is used.


Regards,

Derek
User avatar
RalfR
Aurora
Posts: 870
Joined: Fri Jun 15, 2018 8:58 pm

Re: vDrive QL Menu

Post by RalfR »

Ah, that's nice. One could use Qascade instead, but this is more the old QL Style, why not?. I should use this as a template for and with the QLib_ptr_exts, so best of both worlds. ;) .

Better use program names and numbers in separate DATA statements, to give a better overview.

Derek is quite right, SELect is the better way.


4E75 7000
Post Reply