Page 8 of 14

Re: QLCOMMANDER - testers and help needed

Posted: Mon Feb 18, 2019 9:41 am
by Andrew
EmmBee wrote:What line number does this error occur on?
Also - did this happen in the previous version?

Michael
Message appears as soon as the program starts - no line number shown.
Martyn pointed out that Turbo cannot compile (for QDOS, this is only possible on SMSQ/E) M/C functions that require to pass-back String values by REFerence within the parameter-list, instead of via a standard RETurn. The most common such function is the 'GET' function form TK2 which, rather than returning a String result, actually updates the passed String parameter.

So probably the use one GET command in my code is the culprit - will change it to Turbo's GET$

Re: QLCOMMANDER - testers and help needed

Posted: Mon Feb 18, 2019 2:24 pm
by EmmBee
Yes, I agree, that should do the trick. I've done a search and what you say is documented under TURBO_ref
in both turbotk_txt and also Qhelp from RWAP.

Talking about "GET", I notice you have defined a function, "getKey$(c%),
where this is the only place in your program where a cursor is enabled.
I take it your idea is to replace all INKEY$ in your code with getKey$,
but for some reason, have delayed doing this. At present,
whenever you Control-C away from your program,
you will not be able to Control-C back to it.

Re: QLCOMMANDER - testers and help needed

Posted: Mon Feb 18, 2019 5:03 pm
by Andrew
EmmBee wrote:Talking about "GET", I notice you have defined a function, "getKey$(c%),
where this is the only place in your program where a cursor is enabled.
I take it your idea is to replace all INKEY$ in your code with getKey$,
but for some reason, have delayed doing this.
That was the idea, yes - but I didn't liked where the cursor was flashing and decided to work a bit more on that - and completely forgot about it :)
EmmBee wrote: At present, whenever you Control-C away from your program, you will not be able to Control-C back to it.
What system are you using ?
I tested on QL, QEmulator and QPC2 and I was always able to Control-C back to QLCommander

Re: QLCOMMANDER - testers and help needed

Posted: Mon Feb 18, 2019 6:34 pm
by EmmBee
I've tested this out with QPC2, and your right - it does work. Control-C works as intended even without an enabled cursor - I am surprised.
I have been mistaken - sorry!

Re: QLCOMMANDER - testers and help needed

Posted: Mon Feb 18, 2019 8:44 pm
by dilwyn
EmmBee wrote:I've tested this out with QPC2, and your right - it does work. Control-C works as intended even without an enabled cursor - I am surprised.
I have been mistaken - sorry!
Not 100% sure, but I think this would work with QDOS+pointer environment too, not just SMSQ/E.

Vanilla QDOS (i.e. without PE) it may well be a problem when no cursor.

Re: QLCOMMANDER - testers and help needed

Posted: Mon Feb 18, 2019 8:46 pm
by Andrew
dilwyn wrote: Not 100% sure, but I think this would work with QDOS+pointer environment too, not just SMSQ/E.

Vanilla QDOS (i.e. without PE) it may well be a problem when no cursor.
I'll test it on QL without PE .

Re: QLCOMMANDER - testers and help needed

Posted: Tue Feb 19, 2019 10:26 am
by dilwyn
Andrew wrote:
dilwyn wrote: Not 100% sure, but I think this would work with QDOS+pointer environment too, not just SMSQ/E.

Vanilla QDOS (i.e. without PE) it may well be a problem when no cursor.
I'll test it on QL without PE .
I should have mentioned that it won't be a problem when started with an EXEC_W or EW command, only when started with EXEC or EX and cursor focus has gone to another program or to BASIC.

Re: QLCOMMANDER - testers and help needed

Posted: Wed Feb 20, 2019 3:55 pm
by EmmBee
Using QemuLator without p/e, I can call up QLiberator to compile a program. QLiberator initially outlines a text window and there is no flashing cursor visible. I can press Control-Space, and then Control-C. The Basic cursor now flashes in #0, and QLiberator responds by removing the outline and displays a static cursor at the left-hand side of the box. If I then press Control-C again, QLiberator's cursor disappears and the outline comes back. I would like to say, Wow!, this is some impressive performance, and is also so helpful, as the user is informed immediately about what goes on. I'm wondering how this is achieved. I would guess something along these lines ... A loop is entered where INKEY$ is used for a short while, E.g. x$ = INKEY$(#c,5). If no keypress is detected, then some PEEK location is looked up to discover whether control of the keyboard has been lost - or regained, and then appropriate actions taken.

I'm just wondering whether this kind of thing could be for the QLCommander, perhaps something Andrew might like to investigate further for his getKey$ function.

Re: QLCOMMANDER - testers and help needed

Posted: Fri Feb 22, 2019 6:44 pm
by Andrew
dilwyn wrote:
EmmBee wrote:I've tested this out with QPC2, and your right - it does work. Control-C works as intended even without an enabled cursor - I am surprised.
I have been mistaken - sorry!
Not 100% sure, but I think this would work with QDOS+pointer environment too, not just SMSQ/E.

Vanilla QDOS (i.e. without PE) it may well be a problem when no cursor.
QLCommander needs ptr_gen and qptr_bin in order to run (and also turbo_tk_bin and qlc_code), as it uses OUTLN function
So Control-C works because of PE
On vanilla QDOS (without PE) it would not run at all - so need to worry about Control-C in that case :D
When I will have some more free time I will start learning PE and will try to modify QLCommander into a PE program

Re: QLCOMMANDER - testers and help needed

Posted: Fri Feb 22, 2019 7:37 pm
by Jack_Free
I would like to ask for further plans.
Do you want to add a function to the commander that would allow you to have a remote computer in one window? (second QL connected in the network)
That would be an interesting feature.