VOGONS


Reply 20 of 31, by JUCED

User metadata
Rank Newbie
Rank
Newbie

Hello guys! I'm finally back. I built a board with VT82C42 IC but sadly i had no success. I tried to follow step by step what the datasheet says (about the controller initialization) but it seems that something is wrong. The first part says:

"The internal timer counting is based on an 8Mhz clock input from X1, X2 ( or X2, with X1 connected to
ground). After the deassertion of RESET#, the VT82C42 will drive high at pin P23 and pin P27. After 6 ms (6
x 8 clocks) of driving, the VT82C42 will check on pins T1 & P10; if both pins are low, then the VT82C42
will switch to PS/2 mode. Otherwise, the VT82C42 will remain in AT mode.
If the VT82C42 is in AT mode after the self test, then it will drive P24 and P25 low with all other ports high.
If the VT82C42 is in PS/2 mode, then it will drive P24, P25, P22, and P27 low with all other ports high."

I have 8Mhz clock on X2 (i made an onboard oscillator using a crystal and a couple of capacitors, so no external clock). RESET# seems to come correctly at startup. Then P23 and P27 go HIGH. After this, it should check on T1 and P10, they are both low but for some reason the VT82C42 doesn't initialize correctly (it seems that it's not in PS2 or AT mode). I should have P24, P25, P22, and P27 low, instead i have P24, P25 low and P22, P27 high.

Everything is connected correctly, i followed the previous schematics:

D0-D7 from the ISA BUS to D0-D7 (pins 12-19)
A2 from the ISA BUS to A0 (pin 9)
RD to RD (pin 😎
WR to WR (pin 10)
RESET to RESET (pin 4)
Pin 7 and 20 to GND
Pin 5, 25, 26 and 40 to VCC
CS# is connected to KBCS# of the STPC Elite (from the datasheet: "KBCS# Keyboard Chip Select. This signal is asserted if a keyboard access is decoded during a I/O cycle")

And all the mouse/keyboard interface is correctly wired to a double PS/2 connector.

Attachments

Reply 21 of 31, by JUCED

User metadata
Rank Newbie
Rank
Newbie

I was thinking if KBCS# from the STPC Elite is correct or not. I found another diagram where it is sent using a 74HCT688 address decoder. I think it should be the same thing. I don't know where to look anymore 😒

Attachments

  • 342.PNG
    Filename
    342.PNG
    File size
    96.79 KiB
    Views
    174 views
    File license
    Public domain

Reply 22 of 31, by rasz_pl

User metadata
Rank l33t
Rank
l33t
JUCED wrote on 2024-03-09, 18:32:

"The internal timer counting is based on an 8Mhz clock input from X1, X2 ( or X2, with X1 connected to
ground).
I have 8Mhz clock on X2 (i made an onboard oscillator using a crystal and a couple of capacitors, so no external clock).

Sorry for stating embarrassingly obvious thing - I see crystal on your board, in that case it should be connected to both X1 X2, X2 only is for use with generator. Is the thing oscillating correctly?

>KBCS#

put a scope/logic analyzer and see if chipset is generating it, I bet this part is fine

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

Reply 23 of 31, by JUCED

User metadata
Rank Newbie
Rank
Newbie
rasz_pl wrote on 2024-03-10, 08:40:
Sorry for stating embarrassingly obvious thing - I see crystal on your board, in that case it should be connected to both X1 X2, […]
Show full quote
JUCED wrote on 2024-03-09, 18:32:

"The internal timer counting is based on an 8Mhz clock input from X1, X2 ( or X2, with X1 connected to
ground).
I have 8Mhz clock on X2 (i made an onboard oscillator using a crystal and a couple of capacitors, so no external clock).

Sorry for stating embarrassingly obvious thing - I see crystal on your board, in that case it should be connected to both X1 X2, X2 only is for use with generator. Is the thing oscillating correctly?

>KBCS#

put a scope/logic analyzer and see if chipset is generating it, I bet this part is fine

Yes, the crystal is connected on both X1 and X2, and it's oscillating correctly. Connected like in Figure 5 of the attached picture.

I will try to take a look with the oscilloscope on KBCS#, if there is data, even if i don't know what kind of signal i should expect.

Attachments

Reply 24 of 31, by JUCED

User metadata
Rank Newbie
Rank
Newbie

I measured again the crystal and everything is ok, 8mhz signal on both xtal1 and xtal2. Everything connected like in the datasheet.

(Don't pay attention to the voltage showed on the oscilloscope. I was using X1 probe instead of X10).

On KBCS# there seems to be data. I attach pictures.

I checked again the controller ports. Seems like it's in AT mode (P24 and P25 low, with all other ports high), instead of PS/2 mode (P24, P25, P22 and P27 low, with all other ports high). Probably because there is some issue on T1 and P10 not being low. I will check if 7406 is broken...

Attachments

  • 20240311_213531.jpg
    Filename
    20240311_213531.jpg
    File size
    1.98 MiB
    Views
    129 views
    File license
    Public domain
  • 20240311_213502.jpg
    Filename
    20240311_213502.jpg
    File size
    1.36 MiB
    Views
    129 views
    File comment
    Data on KBCS#
    File license
    Public domain
  • 20240311_213032.jpg
    Filename
    20240311_213032.jpg
    File size
    1.62 MiB
    Views
    129 views
    File comment
    8mhz on xtal2
    File license
    Public domain

Reply 25 of 31, by JUCED

User metadata
Rank Newbie
Rank
Newbie

I replaced 7406, but the result is the same. The keyboard controller seems not initialized like is specified in the datasheet. Everything is connected correctly, checked more than once all the wirings to the ISA bus and others 😒

Reply 26 of 31, by rasz_pl

User metadata
Rank l33t
Rank
l33t

possibility of bad keyboard controller? Iv seen few posts from people receiving broken controlers from ebay Re: Native PS/2 mouse implementation for 386/486 boards using the keyboard controller

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

Reply 27 of 31, by JUCED

User metadata
Rank Newbie
Rank
Newbie

I bought 2 and they have the same behavior. Maybe they are both faulty.

Edit: i also noticed that on some schematics, A0 is connected to A0, on some is connected to A1, and also saw one where is connected to A2.

Also for D0:D7, on a diagram they are connected directly, meanwhile on some other i saw they are connected to D8:D15. Is there any difference?

Reply 28 of 31, by rasz_pl

User metadata
Rank l33t
Rank
l33t

do you have any other working 286-486 system where you could pull out keyboard controller out and plug your board into ISA to test?
16 bit Logic analyzer would come in handy right about now 😀
Do you have arduino? you could wire it to arduino and write simple initialization program to validate keyboard controller functionality

JUCED wrote on 2024-03-14, 11:54:

Edit: i also noticed that on some schematics, A0 is connected to A0, on some is connected to A1, and also saw one where is connected to A2.
Also for D0:D7, on a diagram they are connected directly, meanwhile on some other i saw they are connected to D8:D15. Is there any difference?

can you give example of such board? maybe some platforms invisibly translate addresses? I looked at my collection and everything is wired like the picture you linked earlier

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

Reply 29 of 31, by JUCED

User metadata
Rank Newbie
Rank
Newbie

Sadly no logic analyzer here 🙁
But i have arduino!

About the examples, you can see them in the previous page. Some are connected in a different way. So A0 from the keyboard controller should go to A2 on the ISA bus?

Reply 30 of 31, by rasz_pl

User metadata
Rank l33t
Rank
l33t

I meant where did you get those examples from. They might not be for standard PC.
Yes you need A2 because keyboard controller is expected to be at 60h and 64h.

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