• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

PS/2 Mouse to Plus/512k/128k Quadrature Mouse Converter

Tashtari

PIC Whisperer
6502
I don't know if quadrature mice are as hard/expensive to come by as Plus/512k/128k keyboards are, but in case you need one on the cheap, I've made some PIC firmware for a PS/2 mouse converter. Like the Plus/512k/128k keyboard converter I made, I'm sure this has been done before somewhere, but I enjoyed the challenge of fitting this into the PIC12F1501. (Gave me a chance to use a trick to make the PIC's 'input-only' reset pin as a pseudo-output!)

There really aren't that many features I could think of to add to seal the deal, but the mouse speed is configurable on the fly - I always find real quadrature mice to be on the slow side, so it's nice to have the option available.

I spun a quick little PCB, so kits will probably be in my ko-fi store before too long. In the meantime, these should be more accessible to do a custom build from if anyone's interested - unlike the PIC12F1840, the PIC12F1501 can be programmed using the ubiquitous TL866+ programmers so you don't need to obtain a PICkit3.


Let me know what you think!
 
With some pin-out changes, this should also work on the Amiga and Atari ST (along with some PC clones) as both use quadrature aka "bus" mice. Biggest difference on those platforms is that they have the not-Steve approved 2nd mouse button.
 
Unfortunately, without a substantial rewrite, this is probably only good for single-button applications - all the pins on the 8-pin PIC12F1501 are used (including the reset pin, which isn't even supposed to be an output!). I don't know how much the Amiga and ST rely on the second button, but unless they can do without, this project probably isn't suitable.
 
Does it work with the Apple IIc? I know there are weird incompatibilities with some Mac mice and the IIc mouse port despite the all being marked with the same M0100 model number!
Interesting! I didn't know they were open collector.

It's a definite "maybe" as to whether it'll work on the IIc. The X and Y "interrupt" outputs and the button output on the PIC are all push-pull, but the X and Y "quadrature" outputs are a little more complicated because of the use of the reset pin I mentioned. The way that pseudo-output works is that the PIC can switch it between floating and weak-pullup, and then external circuitry changes that to a stronger drive (though I think it's still considered open collector).

This is the schematic I followed:
1719784154152.png

I put the output to both quadrature signals in place of the LED and used a 2N7000 instead of a 2N7002.
 
Back
Top