aboutsummaryrefslogtreecommitdiff
path: root/int33.h
diff options
context:
space:
mode:
authorJavier <dev.git@javispedro.com>2022-04-14 00:00:19 +0200
committerJavier <dev.git@javispedro.com>2022-04-14 00:00:19 +0200
commitb11d085f98465aae2b5a861066b963fce5aeaae3 (patch)
tree85ce02217e85d913fbbb827945e593d1d53b1845 /int33.h
parenta77ce98811ba6040dafec8f75b5387ae5b2813aa (diff)
downloadvbados-b11d085f98465aae2b5a861066b963fce5aeaae3.tar.gz
vbados-b11d085f98465aae2b5a861066b963fce5aeaae3.zip
add wheel support to win16 mouse driver
Diffstat (limited to 'int33.h')
-rw-r--r--int33.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/int33.h b/int33.h
index bb975a3..7cd7aa5 100644
--- a/int33.h
+++ b/int33.h
@@ -248,4 +248,15 @@ static bool int33_get_max_coordinates(int16_t *x, int16_t *y);
__value [al] \
__modify [ax bx cx dx]
+static uint16_t int33_get_capabilities(void);
+#pragma aux int33_get_capabilities = \
+ "mov ax, 0x11" \
+ "int 0x33" \
+ "cmp ax, 0x574D" /* Compare against the INT33_WHEEL_API_MAGIC number. */ \
+ "je end" \
+ "xor cx, cx" /* If magic not correct, assume not supported and return 0. */ \
+ "end:" \
+ __value [cx] \
+ __modify [ax bx cx]
+
#endif /* INT33_H */