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

Discussion about old PC hardware.

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby NJRoadfan » 2013-11-13 @ 13:17

Does the <Ctrl>+<Alt>+<+> & <-> shortcut to enable/disable turbo still work?
NJRoadfan
Oldbie
 
Posts: 911
Joined: 2012-5-26 @ 03:54
Location: Northern NJ

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-13 @ 22:16

Nope
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-14 @ 12:40

On my particular board, pin 24 on the KB controller was being used to control the turbo function through the keyboard. However, it seems this can vary. On some boards pin 23 is used instead. I would imagine other pins are possible too. pin 23/24 is probably the most common one though. I lifted pin 24, and now normal turbo function of the switch and LED have been restored, but the CRTL ALT +/- will render the keyboard inoperational...which is not really a big deal in my opinion.

However, the PS/2 mouse is still not working. Not sure what's up with this. Maybe AMI BIOS uses alternate wiring?
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-14 @ 14:14

Anyone know how to call int 11h in debug? I tried to figure it out but failed.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-14 @ 22:42

Here is what I tried:

DEBUG <<
A << (assemble)
INT 11 << call int 11
<<
G << (run)

The next step should be "R" to show register contents, but the system seems to lock up.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby feipoa » 2013-11-15 @ 01:20

I don't have a clue. If it were me, I'd begin with testing the PS/2 mouse mod on an AMI-BIOS-based motherboard which is known not to mess with KBC pins 23, 24, 27, and 28. That way you can rule out any of this uncertainty.

You might also find an AMI BIOS from a motherboard with a working PS/2 mouse port and flash it to your board, provided that the chipset and form factor of the motherboard are similar. That in itself, though, introduces risk. Maybe try this if you have some boards to spare. I took a gamble with the 4DPS BIOS on the DTK board, but it worked.
Last edited by feipoa on 2013-11-15 @ 02:15, edited 1 time in total.
User avatar
feipoa
l33t++
 
Posts: 5570
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby NJRoadfan » 2013-11-15 @ 01:31

The AMI Enterprise III and maybe the IV use the SiS406/411 EISA chipset and have built in PS/2 mouse support. It could be a compatible swap with the NiCE Super EISA, but the AMI boards have onboard I/O that is configured by the CMOS that might conflict with something. These boards don't have flash though so you have to get an EPROM burner and write some new BIOS chips. The Enterprise image is 128k vs. the 64k(?) the NiCE board has. You might be able to pop in a 128k EPROM on those boards though. Whats odd is the ROM image appears to be mostly padding, it might not be larger than 64k to begin with.
NJRoadfan
Oldbie
 
Posts: 911
Joined: 2012-5-26 @ 03:54
Location: Northern NJ

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby idspispopd » 2013-11-15 @ 09:19

Anonymous Coward wrote:Here is what I tried:

DEBUG <<
A << (assemble)
INT 11 << call int 11
<<
G << (run)

The next step should be "R" to show register contents, but the system seems to lock up.

If you run the code with G the program won't stop after executing the INT 11. Perhaps you should try P (proceed) instead?
You could also try to use an INT 20 to terminate the program but that probably will overwrite the register contents.
idspispopd
Oldbie
 
Posts: 1210
Joined: 2012-2-15 @ 21:08
Location: Hamburg / Germany

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-15 @ 10:56

Thanks. The P command seemed to work well. AX returned a value of 63, which is 11000011 in binary. According to this information the PS/2 mouse is not detected. (ps/2 mouse is actually represented by bit 2, not bit 3 as NJRoadFan suggested).

However, I found this note:
In general, the Equipment List word does not impart much useful information reliably. For instance, even when bits 9-11 indicate 4 serial ports, the computer may provide support for 4 ports, but the hardware to handle only one or two is actually present.


So I don't know how much this will help us. On a system with a working PS/2 mouse is bit 2 actually enabled like it should be?

One more important note. I noticed that AMISETUP actually tells you which KBC pins the BIOS uses to control turbo, so there's no need to look at the board or guess.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby feipoa » 2013-11-15 @ 11:29

Did you try sourcing some of those BIOS images for known working AMI PS/2 boards? Was Stephen not able to find you the appropriate version of AMIBCP?

With some digging around in BIOS hacking websites, or AMI BIOS writing literature, I think you should be able to determine the address regions in original.tmp where INT 11 corresponds to. Once you find this, modify the HEX value to enable PS/2, and reinsert original.tmp to your BIOS file. There are some command-line console problems which I've done this with.

However NJRoadFan seems to think this won't work due to AMI reporting a bad checksum. Was this true for every AMI BIOS? If that is the case, you could try disassembling the BIOS into assembly (or even C), set the int 11 bit 2 flag to true and recompile it.
User avatar
feipoa
l33t++
 
Posts: 5570
Joined: 2011-3-07 @ 13:54
Location: Canada

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-15 @ 11:36

Anyone with an AMI BIOS motherboard that has PS/2 mouse, is your KBC wired to the ps/2 port like in the Holtek manual?

http://html.alldatasheet.com/html-pdf/6 ... 6542B.html

I'm just curious if AMI decided to do things differently.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby NJRoadfan » 2013-11-15 @ 13:50

Hopefully someone out there has a nice AMI Enterprise board or something.

The checksum thing is an assumption based on testing BIOS images with PCEm. AMI's own error beep code guide has a "bad ROM checksum" listed. From what I have read, it is common practice to do a quick ROM checksum test on POST. When I changed even a non-critical bit in a BIOS image (ie: setup program text string), the BIOS refused to boot in PCEm, changing it back worked again. BCP would solve this problem as it likely recalculates and embeds a new checksum after making changes to an image. I wouldn't be surprised if Award and Phoenix do the same in their code.
NJRoadfan
Oldbie
 
Posts: 911
Joined: 2012-5-26 @ 03:54
Location: Northern NJ

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-16 @ 14:09

I would like to attempt to probe the 8042 control registers directly to make sure the controller actually has PS/2 mouse mode and IRQ12 enabled. If anyone else wants to try the instructions are here:

http://www.win.tue.nl/~aeb/linux/kbd/sc ... html#kcca8

I think bit 1 and 5 of port 0x60 are what we are after.
Last edited by Anonymous Coward on 2013-11-17 @ 03:36, edited 2 times in total.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-17 @ 01:15

I *think* I checked the contents of the register, and I got "1C" which is 00011100 in binary. That would imply the KB controller is not turning on the mouse port.

I tried changing the bits to 00111110, which is "3E" in hex, but the contents of 0x60 still read "1C". I think programming delays might be required.

Can anyone else with a old 486 HI FLEX system probe the keyboard controller command byte and post what you see?

I think if you run DEBUG and type in i64 you should get the answer.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby NJRoadfan » 2013-11-17 @ 07:32

I get 1C as well, but none of them really mean anything about the mouse on AMI BIOS machines. To properly read the command status byte, you have to write 20h to port 64h and than read 60h. Even after doing that I get 1C on 60h. To change it, you have to write 60h to port 64h and than write your altered bit to 60h. 1C makes no sense on the command status byte though, bit 4 set to 1 would mean the keyboard is disabled!

Its likely probing the ports can't be done interactively using debug (since you are using the keyboard to input commands). A small test application would have to be written.
NJRoadfan
Oldbie
 
Posts: 911
Joined: 2012-5-26 @ 03:54
Location: Northern NJ

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-17 @ 08:08

Maybe the code we're getting is for the controller status register, and not the command byte.

Did you try doing this on an Award system with a working PS/2 mouse? Did you get 1C?

I'm down to one working power supply, and it's not very convenient for me to swap boards at the moment.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-18 @ 13:22

Supposedly sending A8h to port 0x64 is supposed to enable the mouse interface on the KBC, but I didn't notice an change in doing so.

http://stanislavs.org/helppc/8042.html

Not sure what's going on. I'd like to try a different board that doesn't have pins 23, 24, 27 or 28 wired to anything.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-27 @ 04:34

I've verified that my Nice Super EISA doesn't make use of any of the extra KBC pins. I was planning to mod it, but I discovered it uses a machine pin socket for the KBC, so I needed to order some wirewrap to continue. I've actually just decided to go ahead and build a proper adapter for my R418 Award based board, and I will use it to test the Super EISA. It should happen sometime this week when my parts arrive. This test is critical, because if it fails it probably means that we need AMIBCP 2.x to continue. From what I've seen with AMIBCP you can actually program what the extra KBC pins do (usually turbo or cache control)
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby Anonymous Coward » 2013-11-30 @ 03:23

Image

Image

Image

My parts arrived and I finished assembling the adapter. Enjoy my substandard soldering work! Adapter includes just about everything in one package including mouse header, but still requires IRQ12 to be hooked up via ISA slot. It's just one wire under the board, so it's not too hard. Maybe the product isn't polished the way I'd like, but at least now I can move the adapter around to different motherboards quickly for testing.

The adapter tested out okay on my Award based R418 (PS/2 mouse works), but failed on my AMI based Nice Super EISA. Looks like BIOS support is not enabled on this board afterall. We need to get a copy of AMIBCP 2.x or figure out a way to hack the BIOS to enable the mouse support. I poked around with the KBC using debug, but I couldn't seem to change any of the settings.
Will the highways on the internets become more few?
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium
User avatar
Anonymous Coward
l33t
 
Posts: 2838
Joined: 2008-3-20 @ 05:37
Location: Shandong, China

Re: DTK PKM-0033S +5V pin overheating + PS/2 mouse implementation

Postby NJRoadfan » 2013-11-30 @ 05:20

Do you have any blank 128KB EPROMS? If so, try burning a copy of the AMI Enterprise III BIOS onto a chip and running it on the SuperEISA. Its a SiS406/411 board with PS/2 mouse support so it should at least somewhat work.

EDIT: I just realized that the SuperEISA is only going to take a 27C512 tops (although there looks like pads for a larger chip). The AMI Flash ROM image only looks like it uses the first 64kb anyway. Burning a 27C512 with the first 64kb of the AMI image should hopefully work.
NJRoadfan
Oldbie
 
Posts: 911
Joined: 2012-5-26 @ 03:54
Location: Northern NJ

PreviousNext

Return to General Old Hardware

Who is online

Users browsing this forum: BLEXBot [Bot], PARKE and 10 guests