Kempston mouse
ZXNet echo conference «zxnet.soft»
From Wladimir Bulchukey → To All 14 October 2003
Don't slaughter the cash cow that lays golden eggs, All...!
Brothers and sisters, please give me links to email
and/or printed publications on the Spectrum and/or Internet resources,
dedicated to working with the Kempston mouse at the software level. To have
brief and succinct, as well as frivolous ready-made drivers and examples
software solutions. So that everything is already chewed, so that
just swallow it :) .
Thank you.
With the best - Wlodek # wlblack(@)newmail.ru # http://wlodeks.narod.ru
[ZX] [500:95/462@ZXNet] [2:5016 Forever] [Golyanovo] [Old Russians]
From Eugene Palenock → To Wladimir Bulchukey 15 October 2003
Hello, Wladimir!
14 Oct 03 21:04, Wladimir Bulchukey -> All:
WB> Brothers and sisters, please give me links to electronic ones
WB> and (or) printed publications on the Spectrum and (or) Internet resources,
WB> dedicated to working with the Kempston mouse at the software level. To be
WB> brief and succinct, as well as frivolous ready-made drivers and examples
WB> software solutions. So that everything is already chewed, so that
WB> just swallow :) .
Me and ex-366 wrote the driver.
You need to read the ports. fbdf - x coordinate, ffdf - y, fadf - buttons (default -
ff; 0 bits dropped - left is pressed, 1 - right, 2 - middle).
The auto-detect in some proton was described in detail.
In general, you need to temporarily do just ret for interruptions, then immediately after halt
wait 30000-40000 clock cycles, read the ports (in a loop, 10 times) and so that x/y does not
changed during the cycle and were not equal to the ff port, and there would be 3 buttons in the port
the least significant bit is set. Binding to interrupts because port ff is garbage on
bus (and non-existent ports) during screen drawing, and during curb -
does not litter... Until this was done, the mouse was found on salts
In principle, I can look for the source code of that driver. There's a mouse and all the joysticks(and with auto acceleration)... But it seems there were no comments
By the way, this problem also happens with the mouse - it gets hit by the beam. Needs processing
interrupts, first process the cursor sprite while the border is being drawn...
Best regards, Evgeniy.