Peter wrote:mk79 wrote:There is no defined interface nor documentation, drivers write directly into the driver variables.
I think it would be of general interest where to find those variables within the driver definition block.
Can the PE variables be updated any time, or is there a synchronisation?
Depends on the variable I guess. Some can be updated during a hardware interrupt, the mouse increments for example, many others can and are updated during a poll interrupt.
mk79 wrote:If I can find the variables, I hope my rusted assembler knowledge is still sufficient.
(Maybe it can also be seen in the Sermouse sources, if they are available somewhere?)
No worries, you'll probably still need your assembler knowledge to debug this

I took the Q68 mouse code out of SMSQ/E (which is interrupt based), made the data handling a bit cleaner, and wrote the whole setup stuff for it. But I wrote this mostly from scratch and it is completely untested, so some debugging may be required. The code to get to the CON variables is of course included, too. It does assemble without errors at least

I have commented out the mouse wheel code for now as it uses some SMSQ/E specific variable and I'm too lazy to think about how to do it on QDOS. But that is a luxury problem I think.