• Please review our updated Terms and Rules here

Getting serial mouse to work through parallel port

Bill-kun

Veteran Member
Joined
Nov 2, 2020
Messages
685
Location
Michigan
I'd like to try an experiment to see if it works. I have an Epson Apex 100. It has no serial port. It has a parallel port. I'd like to try to get a serial mouse working on it. I've got the necessary physical adaptors to connect it. I've got MOUSE.COM from MS-DOS 6.22 and GMOUSE.COM Genius Dyna-Mouse driver ver. 8.08 from Genius. Can I give parameters for either of these in their runlines to assign the mouse to the parallel port?
 
Are you sure? Everything I can find shows that it come with a 25 pin serial port and a 25 pin parallel port.

If it doesn’t have a serial port you’ll either need to add one in an ISA slot, or another option is something like a Microsoft bus mouse with an in-port card in an ISA slot.

If you do have a 25 pin serial port (serial ports will be male) then all you should need is a 9 to 25 pin adapter, assuming your mouse has a 9 pin connector, like most do.
 
Here's a photograph of the rear of it that the previous owner took before giving it to me. There is a parallel port (female DB25) and some tiny switches above it. (The previous owner also gave me the matching printer that he bought when the computer was new (1988), although I haven't bothered to connect it.) There is a female DB9 port, but that is part of the video card, and in the picture he took, he apparently has a CGA monitor connected to it.
Epson Apex 100 rear - Screenshot 2021-10-16 234908.jpg
A picture I took of the video card.
Epson Apex 100 - CGA2BOARD - Screenshot 2021-10-16 234805.jpg

Here are the responses the mouse driver files gave.
mice.jpg
The connection I tried was: serial mouse (female DB9) --> DB9 to DB25 serial adaptor --> DB25 gender changer --> parallel port.
 
Interesting. There must be more than one model. If you search for epson apex 100, the photos that come up show integrated parallel and serial ports, not cards.

You cannot use your parallel port for a mouse. You’ll need at add a serial port.
 
Among other things, a serial mouse gets its power from the RS232C signal lines and communicates using RS232C signal levels. So no. The simplest thing would be to find an ISA serial card and use that if you already have a serial mouse.
 
Intentionally stacking up gender changers to connect completely incompatible devices together is a pretty great recipe for shorting signals and power rails in bad combinations and potentially damaging your hardware. I mean, sure, if that’s what you’re going for by all means carry on…
 
Well, you can connect a serial mouse to a parallel port if you like - but don’t expect it to be as simple as some adapters and a software switch.

1. Identify how you are going to power the mouse. The parallel port doesn’t supply power (as a rule). An external power supply could be required.

2. The serial mouse is designed for RS232 voltage levels and could kill the parallel port. You will require an RS232 to TTL converter chip to make sure the voltage levels are appropriate.

3. Work out which inputs and outputs on the parallel port you are going to use. Make up a bespoke cable (including your voltage level converters).

4. Lastly, but just as importantly, you will need to write a device driver to interface the parallel port (as you are now using it) to the operating system.

This is a lot of work - but (if this is what you want to do as a project) this is a list of steps to investigate.

Dave
 
Hmm I am nearly sure that I saw some Parallel to Serial(or other way) converters on Internet. Probably there were used for printers...
 
I'd like to try an experiment to see if it works.
Nex time before doing something that has the potential to damage your hardware: do research first. Knowing how a serial port works and how a parallel port works had told you already that it's not going to work this way. I can't believe someone just trying, hoping the protocol, pin-out, software etc. just magically fit and make this work.

Also, why don't you just add an ISA card with a serial port?
 
Last edited:
Hmm I am nearly sure that I saw some Parallel to Serial(or other way) converters on Internet. Probably there were used for printers...
Yes, for printers they exist. But they won't work for a mouse or any other device, as they are tailored for printers. (just like those USB-to-parallel cables).
 
I have made an entire career out of connecting device ‘A’ to device ‘B’ and getting them to work!

Dave
 
I'd like to try an experiment to see if it works. I have an Epson Apex 100. It has no serial port. It has a parallel port. I'd like to try to get a serial mouse working on it. I've got the necessary physical adaptors to connect it. I've got MOUSE.COM from MS-DOS 6.22 and GMOUSE.COM Genius Dyna-Mouse driver ver. 8.08 from Genius. Can I give parameters for either of these in their runlines to assign the mouse to the parallel port?

Look up the pinouts of a serial port and parallel port. How do you think that is going to work? How is a serial signal, that flows different directions over two wires plus a couple of control wires and controlled with a hardware UART going to talk to an 8-bit bus controlled by a dumb latch that was intended for output only?

Gender changers exist because some early PCs, oddball cables, and odd serial devices use the opposite gendered plug. For example, my Columbia Data Products machines and Eagle PC require a gender changer on the serial port. But electrically, the ports are identical to any other serial port.

If you see any references to "parallel mice" out there, they are incorrectly referring to bus mice. Bus mice have their own totally unique interface. As far as I know, nobody ever made a mouse that interfaced with an IBM PC style parallel port.
 
The parallel port could be used to transfer serial data. Indeed, that is how some SNES controller adapters for the PC work. The SNES controller (including the SNES mouse) have a serial packet structure. Adapting the technique to the serial packet structure of the PC serial port mouse should be possible.

In terms of hooking up a serial port mouse to the parallel port, it has also been done. Look for the May 1990 issue of Behavioral Research Methods and find the article "The Microsoft mouse as a multipurpose response device for the IBM PC/XT/AT" which describes polling the parallel port to detect speed of mouse button presses. It seems that the parallel port got abused for a lot of response testing.

Months of work to avoid buying a $10 expansion card seems like a fairly common occurrence.
 
In terms of hooking up a serial port mouse to the parallel port, it has also been done. Look for the May 1990 issue of Behavioral Research Methods and find the article "The Microsoft mouse as a multipurpose response device for the IBM PC/XT/AT" which describes polling the parallel port to detect speed of mouse button presses. It seems that the parallel port got abused for a lot of response testing.

I managed to track down the whole thing on a possibly illegal academic piracy website and the mouse thing just describes a Turbo Pascal module for getting raw data out of the MS mouse driver. The reference to the parallel port in that article describes an experiment where they used the input of a parallel port line to monitor in parallel a button press on the mouse, in order to test the latency of the system. (Which is apparently less than a keyboard keypress, which is what they wanted.) Just to be clear, they came nowhere near actually driving the whole mouse via parallel port. They monitored the closing of a single raw switch, which is exactly up a Parallel port’s alley.
 
Last edited:
… Basically the takeaway about parallel ports is they’re slightly idiosyncratic general purpose 8-bit I/O ports, if you’re willing to write some software and McGyver up a little hardware glue you can drive almost anything. But a gender changer and magical thinking won’t do it.
 
* Edit: there is a reference to the parallel port in that article, describing an experiment where they used the input of a parallel port line to monitor in parallel a button press on the mouse, in order to test the latency of the system. (Which is apparently less than a keyboard keypress, which is what they wanted.) Maybe that’s why the search engines lump it with that other one…

It was polling the input. I know it was very limited in what it did but it was proof that doing strange things with a computer mouse connected to parallel port was possible. I will try to be more careful when pointing just how weird computers have been.
 
It was polling the input. I know it was very limited in what it did but it was proof that doing strange things with a computer mouse connected to parallel port was possible. I will try to be more careful when pointing just how weird computers have been.

My point was it was not doing it through the mouse’s circuitry. The article says they ran a wire from the parallel port to the actual physical switch on the mouse; when the button was pressed it closed two separate circuits, one through the Mouse’s controller and the other through the parallel port via that line.

Entirely gutting a serial mouse and wiring up the buttons and rotary encoders to a parallel port so you can poll them would certainly be very doable but you’re basically building a new parallel mouse from scratch.

(Or you could bodge together a serial to parallel adapter with a really brain-dead hardwired UART, voltage level converters, etc, and drive the mouse as-is, you could do that with a postcard’s worth of electronics or less depending on the approach you take, but you’ll need to write your own driver. The source for CuteMouse is out there if someone wants a project to occupy a weekend or two…

But if we’re going this far I’d say ditch serial and go with PS/2. Most 5v microcontrollers have code to drive one already and the parallel port I/F should be bit-bangable if you have enough GPIO.)
 
Last edited:
I once drove a control room desk in a nuclear power station from a single serial and parallel port on a bog-standard IBM PC with software written in interpreted BASIC... The politician at the time didn't know any different :)!

Dave
 
Back
Top