On 26 Feb 2008 at 9:02, [EMAIL PROTECTED] wrote: > In the next issue of QL Today I'm starting on the Pointer Environment. To > this end, I've started simple but I find that easier! In the second > article - which I'm writing right now - I've built a small 'pointer > record' decoder but I'm looking for information of what exactly is set > in the event vector at the end of each call to IOP_RPTR. >
Hi Norman, The event vector is described pretty well at around p.13 of the QPTR manual (just before the "what you get" section).. There are 4 "levels" to it, Pointer, Subwindow, Window and Job, each corresponding to a byte in the event vector long word. The documentation for IOP_RPTR.says that upon return of the call, all bytes are set to 0, except the LSB (the "Pointer" level). However, when that was drafted (at least the copy I have), the job event byte (sending events to jobs) didn't exist yet, I presume it is NOT zero'd on exit, but am not sure. The bits in the pointer byte correspond to the following: pt..kyst equ 0 keystroke in window event bit pt..kypr equ 1 keypress in window event bit pt..kyup equ 2 key up in window event bit pt..move equ 3 pointer move event bit pt..outw equ 4 pointer out of window bit pt..inwn equ 5 pointer in window bit pt..ofsc equ 6 pointer off screen bit Each bit is set if the event took place. Hence, for example, your $2B (=00101011 binary) means that there was a keystroke in the window and a keypress, the pointer moved and was inside the window. Hope this helps. I haven't seen Bruce's email, or at least I don't remember it. What did he ask? Wolfgang _______________________________________________ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm