From 20f20d680edf03a874fc25463e9278322550dd5d Mon Sep 17 00:00:00 2001 From: Javier Date: Mon, 20 May 2024 00:37:02 +0200 Subject: do not necessarily require int33/11 call to enable wheelapi --- doc/wheelapi2.txt | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'doc/wheelapi2.txt') diff --git a/doc/wheelapi2.txt b/doc/wheelapi2.txt index 6f6af29..d1f6fb3 100644 --- a/doc/wheelapi2.txt +++ b/doc/wheelapi2.txt @@ -6,7 +6,7 @@ NOTE: Draft, subject to change. --------------------------------------------------------------------- Changes to the wheelapi v1 functions: -INT 33/0011 - Check wheel support and enable/get capabilities flags +INT 33/0011 - Check wheel support and get capabilities flags AX = 0011h Return: AX = 574Dh ('WM' in assembly) if Wheel API is supported by driver CX = Capabilities flag @@ -15,10 +15,9 @@ Return: AX = 574Dh ('WM' in assembly) if Wheel API is supported by driver 0 1=Pointing device supports wheel 1 1=Pointing device supports 2nd wheel 2-15 Reserved -Note: calling this function enables support for BOTH wheels - (until the next int33/0 reset call). - To receive 2nd wheel interrupts,, bit 9 must be set when registering - user interrupt routines (see INT 33/000C). +Notes: this function should be examined before accessing wheel features. + vbmouse currently assumes this is called after each int33/0, otherwise + wheel events may be sent as keystrokes instead of wheelapi. INT 33/0003 - Get cursor position, buttons status and wheel counter AX = 0003h @@ -62,9 +61,7 @@ Notes: on entry, bit 9 of CX (call mask) indicates that the user routine BH holds VERTICAL wheel movement. it is impossible for the user routine to be called with both vertical (bit 7) and horizontal (bit 9) movement. - -Remark: A program that just sets 0xFFFF event mask and expects to find vertical + A program that just sets 0xFFFF event mask and expects to find vertical wheel movement info in BH (wheelapi v1 style) will be confused, as here when bit 9 is set BH will contain horizontal wheel movement instead. DN/2 does this, so horizontal scrolling acts like vertical. - Maybe this isn't so bad. -- cgit v1.2.3