VOGONS


Another PS/2 Mouse ISA (ISA8) card adapter

Topic actions

First post, by Rio444

User metadata
Rank Member
Rank
Member

Just I finished work on a prototype of an ISA PS/2 mouse card.
Photo of the prototype.
Face.jpg
The scheme changed during the development process, so I had to use a wire.

The essence of the work of the adapter is that it "pretends" to be a COM port (chip 8250), and works with drivers for COM mice.
Unlike the well-known adapters PS/2 to COM port, data is transferred to the computer almost instantly and synchronously with data received from the PS/2 mouse.
Therefore, the response of the mouse does not differ in its sensations from the one working through the real PS/2 port.
The card consists of a module that works with the ISA bus - on the CPLD Altera EPM3064 (large chip on the left),
and a PS/2 mouse module that processes and converts the data from the mouse on the Atmega8 (second chip).

Now it was tested with 8 PS/2 mice, including ball, and modern, incl. using passive USB-> PS/2 adapter.
Systems: 286-8/16, 386DX-40 and Pentium-133 (430TX).
OS: MS-DOS 6.22 (more than 5 different drivers), Win 3.11, Win 95/98, WinNT 3.51.
Unfortunately, the card does not work in Windows XP.

Supported protocols: 3-button Logitech mouse, Microsoft mouse with wheel (selected by jumper).
The adapter can be setting on COM1 or COM2 port. At the same time, the corresponding port on the motherboard or multicard must be disabled.
Otherwise a port conflict will occur.
The card allows you to set the speed of the mouse: 100%, 75%, 50%.
For slow computers and fast mice, it is possible to transfer data not synchronously, and one data packet to COM for several packets from a PS/2 mouse: 1 data packet in a COM port per 2 received packets from a PS/2 mouse, 1 per 3, 1 per 4. This offloads slow processors (at least, slower than 386DX-20).

Last edited by Rio444 on 2019-08-04, 12:29. Edited 3 times in total.

My e-mail Email.1569054222.png

Reply 1 of 270, by rasz_pl

User metadata
Rank l33t
Rank
l33t
Rio444 wrote:

Unfortunately, the card does not work in Windows XP.

interesting, why exactly? I know XP was somewhat famous for giving people trouble with serial mice, but afaik there were ways of making it work.

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 2 of 270, by Rio444

User metadata
Rank Member
Rank
Member
rasz_pl wrote:

interesting, why exactly?

Already installed WinXP just frozes during boot if the adapter is installed.
Perhaps the problem is software. And it need to configure or reinstall Windows. I didn't have time to check it out.
Perhaps this is due to the simplified COM-port emulation.
The so-called LOOP mode of COM-port is not involved.

My e-mail Email.1569054222.png

Reply 3 of 270, by Tiido

User metadata
Rank l33t
Rank
l33t

I have thought of this very same idea, nice to know it works out just fine ~

T-04YBSC, a new YMF71x based sound card & Official VOGONS thread about it
Newly made 4MB 60ns 30pin SIMMs ~
mida sa loed ? nagunii aru ei saa 😜

Reply 4 of 270, by matze79

User metadata
Rank l33t
Rank
l33t

Does it work inside Linux ?

https://www.retrokits.de - blog, retro projects, hdd clicker, diy soundcards etc
https://www.retroianer.de - german retro computer board

Reply 5 of 270, by Rio444

User metadata
Rank Member
Rank
Member
matze79 wrote:

Does it work inside Linux ?

I don't know, I didn't test.
But I expect this should be no problem.
I can always look at the source code and find out what the Linux wants from the COM-port.
There are much more difficulties with closed source programs, such as Windows.

My e-mail Email.1569054222.png

Reply 6 of 270, by feipoa

User metadata
Rank l33t++
Rank
l33t++

Did you test it with a KVM? Did you send it to Keropi to test? And does Keropi have a KVM which showed significant lag with the standard serial-to-PS/2 conversion? I would be very interested to know if this design solves my KVM problem.

Did you test it in Windows NT 4.0 and W2K?

For slow systems, such as a 386, are you recommending that the 50% mouse speed option is used?

Is there an OSHPark PCB we can order? And do you have a BOM for the components?

Plan your life wisely, you'll be dead before you know it.

Reply 7 of 270, by Rio444

User metadata
Rank Member
Rank
Member
feipoa wrote:

Did you test it with a KVM? Did you send it to Keropi to test? And does Keropi have a KVM which showed significant lag with the standard serial-to-PS/2 conversion? I would be very interested to know if this design solves my KVM problem.

I don't have a KVM, so I did not check it. But I don't know the reasons why there may be a delay.

feipoa wrote:

Did you test it in Windows NT 4.0 and W2K?

I have not tested it in Windows NT 4.0 and W2K, but I plan to do it.

feipoa wrote:

For slow systems, such as a 386, are you recommending that the 50% mouse speed option is used?

The speed option affects the speed at which the cursor moves around the screen and it is independent of the system. If it seems to you that the cursor is moving too fast, you can reduce the speed to 75% or 50%. Many drivers and operating systems (for example, Windows 9x) are able the same. In this case, it is better to use the capabilities of the driver or OS.
For slow computers there is option "Data Rate". It reduces the frequency of data transmission. But it is also a source of lag. Yesterday I tested 286-16. Even it can work without this option. Although the performance drop is already visible. It's up to 10% in text mode. Probably in a graphic mode it will be more.

feipoa wrote:

Is there an OSHPark PCB we can order? And do you have a BOM for the components?

I am currently working on the design of the release version and plan to order at least 20 PCBs. After that, I can offer boards, parts kits, and assembled devices. Now there is only one board of prototype.

My e-mail Email.1569054222.png

Reply 8 of 270, by feipoa

User metadata
Rank l33t++
Rank
l33t++

I am using an IOGEAR GCS614A KVM w/audio. Are they available cheaply where you are?

I'm looking forward to testing a kit.

Plan your life wisely, you'll be dead before you know it.

Reply 9 of 270, by Rio444

User metadata
Rank Member
Rank
Member

When the lot of adapters is ready, I will definitely send you one for testing.
When there will be news, I will inform.

My e-mail Email.1569054222.png

Reply 10 of 270, by Rio444

User metadata
Rank Member
Rank
Member

Now release version of the adapter is ready.
Four copies are assembled. For assembling additional copies I wait ordered parts.
Two adapters I already promised.
Feipoa, if you still have an interest in acquiring, please write to private messages.
Face.jpg
Back.jpg
Connector1.jpg
Jumpers.jpg

My e-mail Email.1569054222.png

Reply 14 of 270, by matze79

User metadata
Rank l33t
Rank
l33t

No COM3 / 4 select ?

Looks awesome, does it now work on every OS ?

https://www.retrokits.de - blog, retro projects, hdd clicker, diy soundcards etc
https://www.retroianer.de - german retro computer board

Reply 16 of 270, by Rio444

User metadata
Rank Member
Rank
Member

Initially, I planned the possibility of using COM3/COM4. And even the prototype board has such an opportunity. But in the process of testing, I abandoned this idea. The vast majority of drivers are looking for a mouse on COM1/COM2. Most of them do not work at all if the mouse is connected to a different port. And only a few can work if they are explicitly pointed where to look for the mouse.
Another reason - the ports COM1/COM2 and COM3/COM4 use the same IRQ. COM1 and COM3 use IRQ4, COM2 and COM4 use IRQ3. Therefore, if you have a mouse on IRQ4 (COM3), you still cannot use COM1. Similar to COM4 and COM2.
Therefore, I believe that adding ports does not make sense.

But if someone is not afraid of difficulties, for his copy I can change COM1/COM2 to COM3/COM4. It is very simple and does not require large code changes.
It is also possible to add the COM3 (or COM4) port using hardware reserves and complicating the coding. But it requires more work.

My e-mail Email.1569054222.png

Reply 17 of 270, by Rio444

User metadata
Rank Member
Rank
Member
matze79 wrote:

No COM3 / 4 select ?
Looks awesome, does it now work on every OS ?

By now it is tested and works on: MS-DOS 6.22 (more 5 different frivers), Win 3.10/3.11, WinNT 3.51, Win95/98, WinNT 4.0, Slackware 3.5 (from Live-CD).
Hardware: from 286 8MHz (deturbo 286-16) to Pentium III-S 1400, including various 386-486-Pentium.
I would be interested to know ability to work on XT, but I do not have such PC.

My e-mail Email.1569054222.png

Reply 18 of 270, by derSammler

User metadata
Rank l33t
Rank
l33t

Actually, there is no problem using more than one COM port sharing the same IRQ. This was common for point-of-sale devices, for example. Also for terminal servers used in medical offices where you had four or eight COM ports using two or four IRQs - but still be able to serve one terminal on each port at the same time.

But for me, the reason for having COM 3/4 as an option is simply that COM 1/2 normally exist already and it's just odd having to disable one of these. I don't care if all of them are usable at the same time.

ps: most mouse drivers I've used so far probe COM 1 to COM 4.

Reply 19 of 270, by matze79

User metadata
Rank l33t
Rank
l33t

As theSammler said.. i also think so.

It would be uncomfortable to figgle around with jumpers to disable COM2 or 1 because you can share the IRQ between 1-2 and 3-4.

What about KVM compatibility ? as you know i have made a "similar device" in the past with some help from the community.
And the only fix we found to prevent slow downs is to rise up the baudrate which brings in another problem.
You always need a hacked Mouse driver.

https://www.retrokits.de - blog, retro projects, hdd clicker, diy soundcards etc
https://www.retroianer.de - german retro computer board