Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Discussion about old PC hardware.

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby feipoa » 2018-3-04 @ 09:05

I tested my final PGA-132 based motherboard, the AMI Mark V Baby Screamer with AMI BIOS date 7/7/91. Of all my motherboards, this is the board I wanted the PS/2 mouse adapter to work in the most - it did not work! The TSR screen says that PS/2 mouse support is enabled and to run a driver. The driver loads and says that PS/2 mouse is installed, however, when I run test.exe and move the mouse, the cursor moves all the way down to the bottom left of the screen and both buttons light up (the mouse buttons on the screen). I can at least press ESC to exit test.exe.

Do you have any idea how to get the PS/2 mouse working on this motherboard? I have attached the debug screenshot. Unlike with the AWARD debug, I am able to exit debug on the Baby Screamer.

I also tried CTMOUSE version 1.9. It said that PS/2 mouse installed, then I ran test, but could not move the mouse pointer and the cursor went up to the top right. Could something else be using IRQ 12? Is there any program which can check for unused and used IRQ's?

I'm not sure if this is relevant, but the AMI Mark V Baby Screamer is my only board which uses two EPROM chips for the BIOS - one EVEN and one ODD.

Using my multi-meter, I checked to ensure that the keyboard controller socket on this motherboard is wired the same as on all the other motherboards. It was wired the same. On the boards tested thus far, it seems that they are wired as follows:

KBC pin 38 --- 7407 --- KBC pin 39 & Key Data
KBC pin 37 --- 74F04 --- 7407 ---KBC pin 1 & Key Clock

On some boards, 74F04 is substituted with 74LS14, but both are inverters. 7407 is a buffer.

AMI_MarkV_Baby_Screamer_mouse_test.jpg

AMI_MarkV_Baby_Screamer_debug.jpg
User avatar
feipoa
l33t++
 
Posts: 5594
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby Rio444 » 2018-3-06 @ 16:42

Please say, did you do debug screenshot before run TSR or after?
I need both screenshots to test one idea.

Also try Cutemouse ver.2.0 and 2.1 and other mouse drivers.
Maybe their will find some mistake.
User avatar
Rio444
Newbie
 
Posts: 48
Joined: 2017-7-15 @ 07:17
Location: Russia, Rostov-on-Don

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby feipoa » 2018-3-06 @ 18:04

These debug screens are from after loading the TSR. It was not specified previously to run DEBUG before and after loading the TSR.

I will find time today to rerun the system with Debug before and after TSR on the Baby Screamer system.
Last edited by feipoa on 2018-3-06 @ 18:18, edited 1 time in total.
User avatar
feipoa
l33t++
 
Posts: 5594
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby Rio444 » 2018-3-06 @ 18:16

Rio444 wrote:Could you view the contents of memory at 0040:000Eh using MS-DOS utility DEBUG?
Run Debug and type on the keyboard 'D 40:E' Enter.
And write here first four byte.
Do it before run the TSR and after.

However, if it is difficult for you, you do not have to do it.
User avatar
Rio444
Newbie
 
Posts: 48
Joined: 2017-7-15 @ 07:17
Location: Russia, Rostov-on-Don

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby feipoa » 2018-3-06 @ 18:31

Looks like I edited my post as you were responding.

It is not difficult for me. I still have the AMI Mark V Baby Screamer system setup on my test bed. I will rerun debug today.
User avatar
feipoa
l33t++
 
Posts: 5594
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby Rio444 » 2018-3-06 @ 18:35

One more question.
What version of DOS are you using for tests.
Is this MS-DOS?
User avatar
Rio444
Newbie
 
Posts: 48
Joined: 2017-7-15 @ 07:17
Location: Russia, Rostov-on-Don


Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby Rio444 » 2018-3-06 @ 19:07

feipoa wrote:MS-DOS 6.22

OK, it's good.
Check the status of the Irq12 using 'Dr.Hardware', after run the TSR.
Run Dr.Hardware, select "IRQ Assignment" and show, what you see.
Download Dr.Hardware here https://yadi.sk/d/K14UBHYx3T6GFs

P.S. You can check the status of Irq12 before running the TSR to make sure it is free.

Image

Image
User avatar
Rio444
Newbie
 
Posts: 48
Joined: 2017-7-15 @ 07:17
Location: Russia, Rostov-on-Don

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby feipoa » 2018-3-07 @ 07:53

Enclosed is the requested information.

Debug_before_TSR.jpg
Debug before TSR is loaded

Debug_after_TSR.jpg
Debug after TSR is loaded

Debug_after_TSR_and_mouse_driver.jpg
Debug after TSR and mouse driver loaded
User avatar
feipoa
l33t++
 
Posts: 5594
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby feipoa » 2018-3-07 @ 07:55

IRQ_before_TSR.jpg
IRQ assignment before TSR loaded

IRQ_after_TSR.jpg
IRQ assignment after TSR loaded

IRQ_after_TSR_and_mouse_driver.jpg
IRQ assignment after TSR and mouse driver loaded
User avatar
feipoa
l33t++
 
Posts: 5594
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby feipoa » 2018-3-07 @ 08:32

The problem has been SOLVED!

The AMI Mark V Baby Screamer is the most particular of all my 386 motherboards, and this is no exception. For whatever reason, and on this system only, I must load ps2suppc.com before running C:\WINDOWS\net start

I was able to load the Microsoft / IBM PS/2 mouse driver for Windows 3.11 and the PS/2 mouse works fine now.

The next step will be to put the system with AWARD 4.20 back on the test bed.
User avatar
feipoa
l33t++
 
Posts: 5594
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby keropi » 2018-3-07 @ 10:13

feipoa will you at some time make a clear schematic about how you connected the inverter and the IRQ12 line?
I want to give this a quick shot on a 386 mobo but I have failed to find a schematic of your solution. Rio444's implementation is far from a quick test :)
User avatar
keropi
l33t++
 
Posts: 6646
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby feipoa » 2018-3-07 @ 11:18

You connect pin 36 of the keyboard controller chip to IRQ 12 on the ISA slot by soldering a wire. You can solder this wire on the bottom of the motherboard if you wish, from through-hole solder point to through-hole solder point. You can also make a connector out of this wire.

I suppose I could sketch up a KBC inverter mod diagram, however, it will look similar to Rio's. We are using the same implementation, with the exception that he is using transistors as the inverters instead of an inverter IC. He is using a home-brew PCB, whereas I am using a DIP-40 socket and some 30 AWG wire. Now that I've gotten this working in my favourite motherboard, I will be making another ps/2 mouse adapter, so I can try to sketch up something at that time. I doubt it will be much different than what Rio posted though. Perhaps some explanation to accompany the diagram? I'm not sure when I'll get around to my 2nd adapter.
User avatar
feipoa
l33t++
 
Posts: 5594
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby keropi » 2018-3-07 @ 11:29

Thanks for that IRQ12 info.
I would be happy with instructions like the one you gave about the irq line something like "lift pin4 , connect to pin 7 or ICxxx , connect pin8 of ICxxx to mobo pin 4" etc
What I want to do is just wire a 7406 or something for a quick test to see if the implementation works on my systems , pcbs and all that is nice and good if it works :)
User avatar
keropi
l33t++
 
Posts: 6646
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby Rio444 » 2018-3-07 @ 13:02

feipoa, I am very glad that you have succeeded!

But I was alarmed that memory at 40:0E contain 4423:0000 instead of 00 00 00 00.

On my boards, without native PS/2 support there are zeros before loading TSR.


What is windows/net ?
Last edited by Rio444 on 2018-3-07 @ 15:10, edited 1 time in total.
User avatar
Rio444
Newbie
 
Posts: 48
Joined: 2017-7-15 @ 07:17
Location: Russia, Rostov-on-Don

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby bjwil1991 » 2018-3-07 @ 14:15

Windows\net is a TSR program for Windows Networking that's found on Windows 3.11 for network shares and printer shares for MS-DOS.
C64, WheelWriter 10 Series II QuietWriter 8, Pack-Mate 28 Plus, K6-2/300, Pavilion N3350, iMac G3 & G4, Socket 462, 2x Inspiron 600m, Athlon 64, Dimension 4550 & E510, ThinkPad R40, Presario C700, ASUS X54C, Raspberry Pi B+, 2B-3B+, Custom FX-6300
User avatar
bjwil1991
Oldbie
 
Posts: 1929
Joined: 2013-8-14 @ 03:10
Location: SE, MI USA

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby Rio444 » 2018-3-07 @ 15:08

Thanks.
I've never used this program before.

I was wrong about the value in the memory at 40:0Eh.
Everything is correct there.
Two bytes at the address are zero. Later there are values which set by the TSR.
User avatar
Rio444
Newbie
 
Posts: 48
Joined: 2017-7-15 @ 07:17
Location: Russia, Rostov-on-Don

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby keropi » 2018-3-07 @ 15:28

Rio444 is it possible to upload your Sprint Layout file converted to a standard gerber file? Maybe we can oder some 0.8mm pcbs from OSHPark , they will be thin and nice
User avatar
keropi
l33t++
 
Posts: 6646
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby Rio444 » 2018-3-07 @ 15:59

I don't know how to convert Sprint Layout file to a standard gerber file.
I've given the Sprint Layout file before.
https://yadi.sk/d/0rGZmkCN3SCK2y
If you know how to get gerber file out of it, do it.
User avatar
Rio444
Newbie
 
Posts: 48
Joined: 2017-7-15 @ 07:17
Location: Russia, Rostov-on-Don

Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

Postby feipoa » 2018-3-08 @ 02:42

I went looking for a PS/2 mouse slot cover cable w/header, like those found commonly in the mid-90's. I could not believe it was going to cost me $25 to get one shipped these days. I remember buying these in bulk around 2003 for next to nothing. Supply and demand I guess.

So I decided to make my own. Maybe some of you find this useful. I desoldered a PS/2 mini-DIN-6 off of a dead motherboard. Took a slot cover (this one already had a hole) and scratched up the surface around where I would use JB Weld to glue the DIN to the slot cover. The glue holds better when the metal is more porous, so I scratched it with rough sand paper then with a sharp edge. The rest is fairly obvious - got some shielded 4-wire cable and soldered it to a header and to the DIN. The nut and bolt is for attaching the shield to the slot cover.

In the last photo, you can see that I connectorised the IRQ 12 line. It is the small white wire with black heatshrink in the middle (the connector). This way I can pull it out and test the KBC module on other motherboards. It may be fine to leave the KBC socket wired to IRQ 12 irregardless of whether you are using a PS/2 mouse or not, however I have not determined if this is OK in the case whereby you do not have a PS/2 mouse installed and you want to use IRQ 12 for another piece of hardware. You could test for that.

Custom_PS2_slot_cover_cable_1.jpg

Custom_PS2_slot_cover_cable_2.jpg

Custom_PS2_slot_cover_cable_3.jpg
User avatar
feipoa
l33t++
 
Posts: 5594
Joined: 2011-3-07 @ 13:54
Location: Canada

PreviousNext

Return to General Old Hardware

Who is online

Users browsing this forum: Der Kuenringer, istellabot [Bot], knowledge [bot], pixelmischief and 8 guests