Re: [Ql-Users] macros

2007-11-22 Thread Matrassyl
 
In a message dated 22/11/2007 23:41:28 GMT Standard Time, [EMAIL PROTECTED]  
writes:>

> Any  idea what values I SHOULD be finding in the queue? Or perhaps it's 
>  safer to do something like:



Hi Dilwyn, sadly I wrote that so long ago (1999) that while I assume I  knew 
what I was doing then I dont know now what I was doing then. I could do  some 
research on it to try to recall. It would be nicer to understand what  should 
be happening. As you say it works and I have used it as a routine on  aurora, 
Qx0, and QPC2.
 
Duncan 



   
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread Dilwyn Jones
>> I would welcome ideas for other simple facilities to include. It
>> was a
> <>
> 1) Please let the macro file be human-readable rather than a binary
> dump. Easy to hand alter and debug!
Should be easy enough - just have text equivalents to the keycodes,
e.g. 232 represented by F1, 10 by "ENTER" etc and converted back to 
ASCII codes again to stuff
to the program.
>
> 2) Next version to include mouse-clicks too, eh ;-) I can think of
> ways to read them, but not to stuff them back into the inter-face.
In some cases they are represented by ASCII 1 and 2 (e.g. by MKEY%),
not actually tried stuffing these codes though to see if these would
work, though this was meant for keyboard control, since you couldn't
drive the mouse to select a specific loose item or whatever.

> Regarding the other side of your project: what to do once youve
> recorded the data, I wrote a keyword that stuffs the keyboard queue.
> The syntax for STUFF is:
>
> STUFF -timeout% | code% | string$ [, -timeout% | code% |
> string$ ] * (optionally repeated)
>
> where:
> -timeout% is a negative integer from -1..-32k frames
> code% is a character code from 0..255
> string$   is a qstring
>
> It uses legal traps and is supposed not to get confused by you
> changing keyboard queue midways.. You can find a copy on my website
> under Programs/Utilities/LX2. The zip file contains the STUFF_bin
> toolkit. Let me know if you can use it, with or without some
> modification.

Ah, this sounds like it might be useful. Must admit I hadn't thought
too much about this yet - was more concerned about how to record the 
keypresses which seemed a much bigger problem until Duncan's 
suggestion came along.
-- 
Dilwyn Jones

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Qubide - hard disk format

2007-11-22 Thread Dilwyn Jones
I don't know if this helps - Qubide format was originally developed by 
Phil Borman from the Rebel hard disk system, though I don't know if 
it's documented. Try the Qubide sources on the QL ROMs page on my 
website (a file called qubide-gpl.zip). There's a large number of 
files in it, so I don't know if there's any format documentation in 
there. All I can tell you is that Syquest/Qubide cartridges most 
probably ain't QXL.WIN
-- 
Dilwyn Jones

- Original Message - 
From: "Christopher Cave" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, November 22, 2007 10:53 PM
Subject: [Ql-Users] Qubide - hard disk format


> The title of this message says it all really. I want to disentangle 
> some
> SyQuest cartridges with Qubide style formatting on my Q40. Can 
> anyone
> please tell me where I can find details of the Qubide hard disk 
> format?
> I have the qxl.win data sheet from Dilwyn's site but that is not 
> quite
> enough.
>
> Christopher Cave
>
> ___
> QL-Users Mailing List
> http://www.q-v-d.demon.co.uk/smsqe.htm
>
>
> -- 
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.503 / Virus Database: 269.16.1/1140 - Release Date: 
> 19/11/2007 19:05
>
> 

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread Dilwyn Jones
Fair comment, though I'm not sure how to detect these combinations 
safely. I'd certainly make the start and stop keypresses configurable, 
though.

-- 
Dilwyn Jones

- Original Message - 
From: "Tony Firshman" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, November 22, 2007 11:30 PM
Subject: Re: [Ql-Users] macros


> Dilwyn Jones wrote:
>
>> I foresee it would need a facility to enter pauses where required,
>> e.g. to give a menu time to appear in a slow program, e.g. a 
>> keypress
>> like CTRL P (Pause) which is ignored by most programs to insert a 1
>> second pause into the macro file.
> ... bit not all you infer. How about CTRL CTRL - that would be 
> safer,
> and say ALT ALT to end.  Neither of these I am sure are recognised 
> by
> any other programs.
>
>
> Tony
>
> -- 
> QBBS (QL fido BBS 2:257/67) +44(0)1442-828255
>[EMAIL PROTECTED] http://firshman.co.uk
> Voice: +44(0)1442-828254 Fax: +44(0)1442-828255 Skype: tonyfirshman
> TF Services, 29 Longfield Road, TRING, Herts, HP23 4DG
> ___
> QL-Users Mailing List
> http://www.q-v-d.demon.co.uk/smsqe.htm
>
>
> -- 
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.503 / Virus Database: 269.16.1/1140 - Release Date: 
> 19/11/2007 19:05
>
> 

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread Dilwyn Jones
Duncan, many thanks for that one - as long as you remove the PEEK_L 
from the "sv_keyq=" line to avoid a double PEEK_L it works well 
enough, though I can't make sense of the values in the queue itself - 
peek(bufpos2) or peek_w(bufpos2) returns almost random data, whereas 
if I use this routine to detect when to read sv_arbuf it seems to work 
OK and return ALT pressed or not in its first byte (255 or 0) and the 
code of key pressed in the second byte of sv_arbuf

Any idea what values I SHOULD be finding in the queue? Or perhaps it's 
safer to do something like:


IF NewKey THEN
  sv_arbuf = PEEK_L(SystemVariableBase+138)
  alt = PEEK(sv_arbuf)
  key = PEEK(sv_arbuf+1)
END IF

Even though I couldn't make sense of the data in the queue, this does 
seem to form the basis for a workable routine, so many thanks.

-- 
Dilwyn Jones

> What about checking for the position of the pointer to the current 
> input  key
> queue. Even if the same key is pressed repeatedly the position of 
> the buffer
> pointer moves which each character input. I used this when I wrote 
> my screen
> saver to check for repeatedly pressed keys.
>
> sv_keyq=PEEK_L(SystemVariableBase+76) : REM pointer to keyboard 
> queue
>
> NewKey=CheckKeys
>
> DEFine FuNction CheckKeys
> LOCal KeyPress
> REMark  Returns 1 for keypress and 0 for no  keypress
> BufPos=PEEK_L(sv_keyq)
> BufPos2=PEEK_L(BufPos+12) :  REM last key pressed
> IF BufPos2=OldPos  :  KeyPress=0
> IF BufPos2<>OldPos :  KeyPress=1
> OldPos=BufPos2
> RETurn KeyPress
> END DEFine  CheckKeys
>
> The value in Bufpos might be usable to get the key combination, if 
> not
> sv_arbuf could be peeked to get the value.
>
> Duncan
>
>
>
>
> ___
> QL-Users Mailing List
> http://www.q-v-d.demon.co.uk/smsqe.htm
>
>
> -- 
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.503 / Virus Database: 269.16.1/1140 - Release Date: 
> 19/11/2007 19:05
> 

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread Tony Firshman
Dilwyn Jones wrote:

> I foresee it would need a facility to enter pauses where required, 
> e.g. to give a menu time to appear in a slow program, e.g. a keypress 
> like CTRL P (Pause) which is ignored by most programs to insert a 1 
> second pause into the macro file.
... bit not all you infer. How about CTRL CTRL - that would be safer, 
and say ALT ALT to end.  Neither of these I am sure are recognised by 
any other programs.


Tony

-- 
QBBS (QL fido BBS 2:257/67) +44(0)1442-828255
[EMAIL PROTECTED] http://firshman.co.uk
Voice: +44(0)1442-828254 Fax: +44(0)1442-828255 Skype: tonyfirshman
 TF Services, 29 Longfield Road, TRING, Herts, HP23 4DG
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


[Ql-Users] Hardware for Sale

2007-11-22 Thread Roy wood
1 week to go before I close the bids on the Gold Card and Super Gold 
Cards I ahve for sale. Send your bids to the address below.
-- 
Roy Wood
Q Branch. 20 Locks Hill, Portslade, Sussex.BN41 2LB
Tel: +44 (0) 1273 386030fax: +44 (0) 1273 430501  skype : royqbranch
web : www.qbranch.demon.co.uk

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


[Ql-Users] Qubide - hard disk format

2007-11-22 Thread Christopher Cave
The title of this message says it all really. I want to disentangle some 
SyQuest cartridges with Qubide style formatting on my Q40. Can anyone 
please tell me where I can find details of the Qubide hard disk format? 
I have the qxl.win data sheet from Dilwyn's site but that is not quite 
enough.

Christopher Cave

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread P Witte


Dilwyn Jones wrote:
> Ah, this looks very promising - thanks.
<>
> I would welcome ideas for other simple facilities to include. It was a 
<>
1) Please let the macro file be human-readable rather than a binary 
dump. Easy to hand alter and debug!

2) Next version to include mouse-clicks too, eh ;-) I can think of 
ways to read them, but not to stuff them back into the inter-face.

Regarding the other side of your project: what to do once youve 
recorded the data, I wrote a keyword that stuffs the keyboard queue. 
The syntax for STUFF is:

 STUFF -timeout% | code% | string$ [, -timeout% | code% | 
string$ ] * (optionally repeated)

where:
 -timeout% is a negative integer from -1..-32k frames
 code% is a character code from 0..255
 string$   is a qstring

It uses legal traps and is supposed not to get confused by you 
changing keyboard queue midways.. You can find a copy on my website 
under Programs/Utilities/LX2. The zip file contains the STUFF_bin 
toolkit. Let me know if you can use it, with or without some modification.

Per
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread Dilwyn Jones
Ah, this looks very promising - thanks.

This helps with the problem of recognising identical consecutive 
keypresses via sv_arbuf. Noticing a keyboard buffer position change 
should help with this.

Ideally, what I'd like to do is a little program which when you tell
it to start recording, until you press a predefined key (e.g. CTRL S)
to stop.

The program may have the following options:

1 - Record keypresses to a named macro file
e.g. enter filename, press given key such as CTRL B to Begin 
recording, CTRL S to stop recording

2 - Replay keypresses from named file
e.g. enter filename, wait for given keypress such as CTRL B to 
Begin replaying until all of file replayed, recognising "special" 
keycodes like below as they are encountered.

I foresee it would need a facility to enter pauses where required, 
e.g. to give a menu time to appear in a slow program, e.g. a keypress 
like CTRL P (Pause) which is ignored by most programs to insert a 1 
second pause into the macro file.

I would welcome ideas for other simple facilities to include. It was a 
suggestion for a program someone sent me recently and I was a bit 
surprised I couldn't think of an existing program which does this 
(knowing my luck someone will come back to me on this one and point 
out a suitable program on my website or in Quanta library!)

-- 
Dilwyn Jones

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread Matrassyl
 
In a message dated 21/11/2007 15:25:24 GMT Standard Time, [EMAIL PROTECTED]  
writes:

I'm  looking to write a little utility to record keypresses as macros,
if  necessary assigning them to a hotkey or altkey for later use.

Some  processes mean repeated strings of keypresses, so it may be handy
to record  these keypresses and replay them later with an alt or hot
key to avoid  typing the same commands repeatedly.

Anyone have any idea how best to  go about achieving this?

-- 
Dilwyn  Jones

___
QL-Users  Mailing  List
http://www.q-v-d.demon.co.uk/smsqe.htm



What about checking for the position of the pointer to the current input  key 
queue. Even if the same key is pressed repeatedly the position of the buffer  
pointer moves which each character input. I used this when I wrote my screen  
saver to check for repeatedly pressed keys.
 
sv_keyq=PEEK_L(SystemVariableBase+76) : REM pointer to keyboard queue
 
NewKey=CheckKeys 
 
 DEFine FuNction CheckKeys
LOCal KeyPress
REMark  Returns 1 for keypress and 0 for no  keypress
BufPos=PEEK_L(sv_keyq)
BufPos2=PEEK_L(BufPos+12) :  REM last key pressed
IF BufPos2=OldPos  :  KeyPress=0
IF BufPos2<>OldPos :  KeyPress=1
OldPos=BufPos2
RETurn KeyPress
END DEFine  CheckKeys
 
The value in Bufpos might be usable to get the key combination, if not  
sv_arbuf could be peeked to get the value. 
 
Duncan



   
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread George Gwilt

On 21 Nov 2007, at 15:24, Dilwyn Jones wrote:

> I'm looking to write a little utility to record keypresses as macros,
> if necessary assigning them to a hotkey or altkey for later use.
>
> Some processes mean repeated strings of keypresses, so it may be handy
> to record these keypresses and replay them later with an alt or hot
> key to avoid typing the same commands repeatedly.
>
> Anyone have any idea how best to go about achieving this?


I have a short Procedure called "wh" in my BOOT. This waits for a  
keypress. When the keypress occurs the program prints the value in  
sv_arbuf. The program then either waits for another keypress, or, if  
the key was ESC, exits from the loop. Repeated keypresses produce  
repeats of the value in sv_arbuf.

This procedure could easily be altered to set all the characters  
keyed in a string. You have to set an end character of course to stop  
the process.

George
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] macros

2007-11-22 Thread Dilwyn Jones
>> I'm looking to write a little utility to record keypresses as 
>> macros,
>> if necessary assigning them to a hotkey or altkey for later use.
>>
>> Some processes mean repeated strings of keypresses, so it may be 
>> handy
>> to record these keypresses and replay them later with an alt or hot
>> key to avoid typing the same commands repeatedly.
>>
>> Anyone have any idea how best to go about achieving this?
>>
> My first thought would be hook in an interrupt handler to read the
> 'current key press' word from the system variable. But, my second
> thought was how to determine if it has changed especially when it is 
> the
> same keypress as the one before.
Well, looking at sv_arbuf is possibly one way of doing this, but does 
not work with 2 successive identical keypresses (unless the program 
looks at it for the auto-repeat period and reset it, which is 
definitely not "clean")

> I'm too far away from my docs to be able to look them up at present,
> plus I have the boiler man in to fix the central heating. We had a 
> new
> kitchen put in, a radiator removed and it stopped working. The 
> original
> plumber says it wasn't removing the radiator that did it and doesn't
> want to know.
Plumbers make big money but have a reputation that they ain't always 
the easiest of people to deal with (like builders) when things go 
wrong. Even when it really is their fault.

> PS. Check "Slow Gold" source code for hooking in an interrupt 
> handler.
> Also, there was a caps lock indicator program (Quanta?) a few years
> back. I think that did a similar thing.
OK, thanks for that.
-- 
Dilwyn Jones

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm