VOGONS


First post, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

Hi, I got this MB https://theretroweb.com/motherboards/s/qdi-p6 … -advance-5-133e from a scrap with PIII/550MHz and testing it. Visually it's in a good conditions, no scratches, etc.
But the 1st problem I had after power on was the PS/2 keyboard. For some reason it doesn't work with my Labtec Y-SAM64 PS/2 kbd that I usually use for testing (it rarely make some keypress so I can enter SETUP but cannot set much more). This MB has 2 onboard PS/2 connectors for KB and mouse. I measured all PS/2 pins for shorts/connections, checked 5V voltage, all components in signal path (LC filters, 4k7 pull-up R-network and serial 0R-network) and it was OK so I decided that it could be partially damaged SuperIO chip W83977EF-AW e.g. by ESD. I had some spare one so I replaced it but still the same!

So I tried another keyboard Chicony KB-2971 and it worked. WTF? but well maybe some strange incompatability...
But wait, not done yet. Futher madness started when I plugged PS/2 mouse (1st I tried MS intellimouse optical USB in PS/2 adapter) in PS/2 mouse port. It caused that keyboard became nearly irresponsive. ~95% key hits did nothing. Even problems in SETUP or plain DOS before loading any mouse driver. When I pulled mouse out KB started work normally. I also tried to load CTMOUSE driver in autoexec, then the keyboard worked until I made 1st move with mouse. The mouse doesn't work normally - programs that use mouse on start just show mouse cursor running to corner to the right or down or cursor jumps like crazy - totally incrontrollabe with mouse...

Then I took out the scope to look at KBCLD and KBDATA waveforms. Without mouse attached it looks normally. Both in H level at idle with short data/clk passed when a key pressed. But with attached mouse a strange thing happen. KBCLK went L with only a short pulses to H at frequency 22,2Hz and H duration ~140us. (it was noted to be a inhibit state - superIO can do this by pulling CLK low when it cannot read out incoming data) This happened quite soon in POST stage of HDD detection and remains under plain DOS. When CTMOUSE was loaded the KBCLK went idle (H) but only until the 1st mouse move - then again KBCLK went L with only a short pulses to H but now with frequency 200Hz. I found a correlation with pulsed on IRQ12 line on ISA slot that should be linked with PS/2 port, the same frequency but H duration was only ~40us.

I consulted with AI but it gave a lot of misleading statements. It belives that it's a problem of VT82C596B southbridge that was unable properly read out both KB and mouse at high data rate. It suggested me some shot code that is capable to reset keyboard in working state (it makes KBCLK going idle H) until mouse moves again.

;PS/2 keyboard reset
.MODEL TINY
.CODE
ORG 100h
STARTUPCODE
CLI

WAIT1: IN AL, 64h
TEST AL, 02h
JNZ WAIT1

MOV AL, 60h
OUT 64h, AL

WAIT2: IN AL, 64h
TEST AL, 02h
JNZ WAIT2

MOV AL,61h
OUT 60h, AL
STI
INT 20h
END

It told me that USB intellimouse is hardcoded to spit data at high 200Hz rate that VT82C596B can't handle and suggested to use some older native PS/2 mouse that can be programmed to lower data rate. So I found and tested Genius Mouse NetScroll Optical PS/2. There was really some change in behavior. When power on the MB with KB and mouse attached the mouse light up immediate after power on and I can see pulses at KBCLK with 200Hz rate but strangely the keyboard was relative responsive so I can type with only rare misses. I loaded mouse driver and it swithed data rate to 80Hz and keeps KBCLK idle (H) so keyboard typing was OK but mouse still doesn't work properly - cursor flew instantly to corner or sceen edge. After some messing with mouse it switched data rate to 200Hz and pulses at KBCLK appeared again. (I checked multiple times but there's no any electrical short or connections between KBDATA, KBCLK, MDATA, MCLK).

I never seen such behavior before but I mostly deal with intel chipset MBs. I know that VIA and Ali had a lot of weird quirks, so can't say this would be normal on some crappy chipsets... Or maybe there could be some broken connection between Super IO and Southbridge or Southbridge and Northbrige that could cause this?

As a last try I booted Hiren's CD and tried MiniXP and Linux/Gparted. Under MiniXP the mouse cursor was frozen in the middle of sceen, in control panel PS/2 mouse was detected. Under Linux I had jumpy cursor like under DOS and received lost sync messages in console, see below. I also tried to plug USB mouse in USB port but even USB enabled in SETUP anb UHCI is detected the USB mouse was not detected neither in MiniXP nor Linux. USB ports provide at least 5V power. So maybe also USB ports are dead...

Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA

Reply 1 of 9, by rasz_pl

User metadata
Rank l33t
Rank
l33t
RayeR wrote on Yesterday, 21:34:

For some reason it doesn't work with my Labtec Y-SAM64 PS/2 kbd
So I tried another keyboard Chicony KB-2971 and it worked. WTF? but well maybe some strange incompatability...

sigrok has PS/2 decoder
looking at sample capture now https://github.com/vpalatin/sigrok-dumps/blob … board_asdfgh.sr decoder doesnt support binary output 😐 so have to go CLI route. Hmm how did that work I already forgot 😐 but I did write enough of it down to quickly catch up https://github.com/raszpl/sigrok-disk#example-invocation

sigrok-cli.exe -D -P ps2  --show
ID: ps2
Name: PS/2
Long name: PS/2
Description: PS/2 keyboard/mouse interface.
License: gplv2+
Possible decoder input IDs:
- logic
Possible decoder output IDs:
None.
Decoder tags:
- PC
Annotation classes:
- bit: Bit
- start-bit: Start bit
- stop-bit: Stop bit
- parity-ok: Parity OK bit
- parity-err: Parity error bit
- data-bit: Data bit
- word: Word
Annotation rows:
- bits (Bits): bit
- fields (Fields): start-bit, stop-bit, parity-ok, parity-err, data-bit, word
Binary classes:
None.
Required channels:
- clk (Clock): Clock line
- data (Data): Data line

https://github.com/vpalatin/sigrok-dumps/blob … board_asdfgh.sr:

sigrok-cli.exe -D -i  ps2_keyboard_asdfgh.sr  --show
Samplerate: 24000000
Channels: 8
- D0: logic
- D1: logic
- Data: logic
- Clock: logic
- D4: logic
- D5: logic
- D6: logic
- D7: logic
Logic unitsize: 1
Logic sample count: 57458933

so we need to tell it data and clock channel names, lets see all 'fields'

sigrok-cli.exe -D -i  ps2_keyboard_asdfgh.sr   -P ps2:data=Data:clk=Clock  -A ps2=fields
ps2-1: Start bit
ps2-1: Data: 1c
ps2-1: Parity OK
ps2-1: Stop bit
ps2-1: Start bit
...

This decoder is very basic 🙁, barely 100 lines of python, and doesnt decode above PHY layer but its still better than looking at scope screen.
I would take captures from both keyboards for comparison.

RayeR wrote on Yesterday, 21:34:

I consulted with AI

I love a good glue on pizza session myself!

RayeR wrote on Yesterday, 21:34:

It belives that it's a problem of VT82C596B southbridge that was unable properly read out both KB and mouse at high data rate.

you did look at the signals, did mouse really send 200 reports/second? afaik no ps2 mice did that by default, not that it would be a problem to begin with

RayeR wrote on Yesterday, 21:34:

It suggested me some shot code that is capable to reset keyboard in working state (it makes KBCLK going idle H) until mouse moves again.

this sends KBC_CMD_60_WRITE_CONFIG and sets https://github.com/raszpl/Zenith_ZBIOS/blob/1 … %203.2C.h#L1971

enum __bitmask __bin __lzero IO_Port_64h_KBC_CMD_WRITE_CONFIG : unsigned __int8
{
KBC_CFG_KEYBOARD_INT_ENABLE = 0b00000001,
KBC_CFG_MOUSE_INT_ENABLE = 0b00000010,
KBC_CFG_SYSTEM_FLAG = 0b00000100, ///< Bit2 1=System Passed POST, 0=Cold Reset
KBC_CFG_INHIBIT_OVERRIDE = 0b00001000, ///< Bit3 1=Ignore Keyboard Lock Switch
KBC_CFG_KEYBOARD_DISABLE = 0b00010000,
KBC_CFG_MOUSE_DISABLE = 0b00100000,
KBC_CFG_TRANSLATE_Set2_to_Set1 = 0b01000000,
};

61h = 01100001 = reinit keyboard, disable mouse

RayeR wrote on Yesterday, 21:34:

It told me that USB intellimouse is hardcoded to spit data at high 200Hz rate

super doubt, and even if true shoudnt be a problem

I would start by checking if keyboard and mouse get enough power, and grabbing ps2 captures for comparison

https://github.com/raszpl/sigrok-disk FM/MFM/RLL decoder
https://github.com/raszpl/FIC-486-GAC-2-Cache-Module (AT&T Globalyst)
https://github.com/raszpl/386RC-16 ram board
https://github.com/raszpl/Zenith_ZBIOS Zenith Z-386 MFM-300 ZBIOS disassembly

Reply 2 of 9, by Nexxen

User metadata
Rank l33t
Rank
l33t

Can you see "system monitor" in BIOS?

PC#1 Pentium 233 MMX - 98SE
PC#2 PIII-1Ghz - 98SE/W2K

- "One hates the specialty unobtainium parts, the other laughs in greed listing them under a ridiculous price" - kotel studios
- Bare metal ist krieg.

Reply 3 of 9, by rasz_pl

User metadata
Rank l33t
Rank
l33t

cheap board, might not have one
Im mainly thinking that green thing is a polyfuse on keyboard/mouse power and somehow was damaged to the point its not passing enough current now.

https://github.com/raszpl/sigrok-disk FM/MFM/RLL decoder
https://github.com/raszpl/FIC-486-GAC-2-Cache-Module (AT&T Globalyst)
https://github.com/raszpl/386RC-16 ram board
https://github.com/raszpl/Zenith_ZBIOS Zenith Z-386 MFM-300 ZBIOS disassembly

Reply 4 of 9, by Nexxen

User metadata
Rank l33t
Rank
l33t
rasz_pl wrote on Today, 14:18:

cheap board, might not have one
Im mainly thinking that green thing is a polyfuse on keyboard/mouse power and somehow was damaged to the point its not passing enough current now.

I have 2 such boards.
I had issues with one because of the LM-80 chip failed to some extent and failed completely later.
The other one is my working base I'm using to solve the other's problem (cpu not working if Vcore is above 1.75V)
Maybe he should try another cpu with a 1.65V to be sure (just a wild guess).

If the LM-80 failed, the system monitor will not appear or not allow changes.

I had issues with PS2 as well, maybe it's not it but a fast check ain't make it worse 😀

PC#1 Pentium 233 MMX - 98SE
PC#2 PIII-1Ghz - 98SE/W2K

- "One hates the specialty unobtainium parts, the other laughs in greed listing them under a ridiculous price" - kotel studios
- Bare metal ist krieg.

Reply 5 of 9, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
rasz_pl wrote on Today, 14:18:

cheap board, might not have one
Im mainly thinking that green thing is a polyfuse on keyboard/mouse power and somehow was damaged to the point its not passing enough current now.

Yeah the symptoms scream inadequate power delivery. My money is on this

Reply 6 of 9, by weedeewee

User metadata
Rank l33t
Rank
l33t
maxtherabbit wrote on Today, 15:15:
rasz_pl wrote on Today, 14:18:

cheap board, might not have one
Im mainly thinking that green thing is a polyfuse on keyboard/mouse power and somehow was damaged to the point its not passing enough current now.

Yeah the symptoms scream inadequate power delivery. My money is on this

I concur.

Right to repair is fundamental. You own it, you're allowed to fix it.
How To Ask Questions The Smart Way
Do not ask Why !
https://www.vogonswiki.com/index.php/Serial_port

Reply 7 of 9, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

The PS/2 power lines for KB and mouse was one of the first I looked with scope-no visible voltage drops/ripple. Also data and clock lines looks fine, no distortion/slow edges/bad levels. Electrically it seems ok. There's no LM80 chip. I have another board with a bit older SB VIA VT82C586B and there both PS/2 mouse and KB (same I used here) works fine so it seem not be SB issue itself but maybe some broken trace between SB and SIO. I don't have PS/2 mouse protocol analyser but I used low level ps2 testing program and it also reported malformed/out of sync data.

Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA

Reply 8 of 9, by Nexxen

User metadata
Rank l33t
Rank
l33t
RayeR wrote on Today, 21:54:

The PS/2 power lines for KB and mouse was one of the first I looked with scope-no visible voltage drops/ripple. Also data and clock lines looks fine, no distortion/slow edges/bad levels. Electrically it seems ok. There's no LM80 chip. I have another board with a bit older SB VIA VT82C586B and there both PS/2 mouse and KB (same I used here) works fine so it seem not be SB issue itself but maybe some broken trace between SB and SIO. I don't have PS/2 mouse protocol analyser but I used low level ps2 testing program and it also reported malformed/out of sync data.

Can you post a hq pic of your board?

LM80 is in the upper right corner, U4. It is missing?

PC#1 Pentium 233 MMX - 98SE
PC#2 PIII-1Ghz - 98SE/W2K

- "One hates the specialty unobtainium parts, the other laughs in greed listing them under a ridiculous price" - kotel studios
- Bare metal ist krieg.

Reply 9 of 9, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

I'm away for some days so maybe I'm wrong about LM80. HW monitor page is present in bios but it maybe values from SIO... how it would be relevant to PS/2? I checked power lines with scope and DMM, hw monitor reported a bit off values like 13.x V instead real 12.2V.

Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA