VOGONS


First post, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

Spurred by another forum, I looked at an ET4000-based ISA graphics card (unbranded, PN 9201 Rev A) with one particular oddity: Pin 12 of the ET4000 (TC6100AF, in its usual 144-pin package) was connected to a clock selection pin on the clock generator IC.

According to the publicly available data book for the ET4000, this pin supposedly is DTEAL; an "output enable" signal for the video RAM.

The attachment dteal.png is no longer available

But it makes no sense to switch the main/pixel clock of the card depending on RAM access. It would make more sense if this pin were another clock-select output of the ET4000, like the adjacent pin 13 (CS2). For example, the newer ET4000W32i has more clock-select outputs under software control via CRTC register 0x31, bits 6-7.

The attachment w32i-clockselect.png is no longer available

But this register is not even mentioned in the original ET4000 data book.

The attachment crtc-31-undocumented.png is no longer available

However, by using a multimeter and writing these CRTC register bits on the card in question, I could confirm that the register does, in fact, exist in the ET4000. At least in the chip revision (marked TC6100AF) that I have. Bit 6 controls pin 12 (DTEAL, according to the data book); bit 7 controls pin 109 (DTEBL, allegedly yet another RAM "output enable").

My findings are free of doubt as I measured the voltages on these pins while changing the register.

But does a data sheet for the newer revision of the ET4000 exist that mentions the additional clock select pins? What are other undocumented features in there?

Reply 1 of 22, by weedeewee

User metadata
Rank l33t
Rank
l33t

Does the vga bios for that card have a function that writes to that register/bit?
Do other drivers exist that use that register/bit ?

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 2 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

The video BIOS contains code to set bits 6-7 of CRTC register 0x31. See part of it in the following Ghidra disassembly. The clock select value to be programmed is in CH. Then it puts one bit into the (documented) "clock-select 2" bit of CRTC register 0x34, and the rest into CRTC register 0x31:

The attachment ghidra-tseng.png is no longer available

(Note, though, that I run this card in a non-x86 system. So the video BIOS does not get executed and I can't say which specific values would be written into the register.)

Reply 3 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

There is (in an IBM PS/2 document) a reference to a newer ET4000 data book, dated 1992. But no one seems to have scanned it?

The attachment databook.png is no longer available

Reply 4 of 22, by pentiumspeed

User metadata
Rank l33t
Rank
l33t

Much of the VGA chips especially WD were made to interface with MCA bus as well but in practice I didn't see any produced besides cirrus logic.

Cheers,

Great Northern aka Canada.

Reply 5 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

To be clear: I merely used the citation from the IBM document as evidence that a newer data book exists for the ET4000; newer than the 1990 edition that is on Bitsavers and archive.org. This thread is still about an ISA card.

Reply 6 of 22, by mattw

User metadata
Rank Oldbie
Rank
Oldbie
pentiumspeed wrote on 2023-02-06, 00:20:

Much of the VGA chips especially WD were made to interface with MCA bus as well but in practice I didn't see any produced...

I found at least 2 : "Matrox Magnum Graphics Controller MG-104, MG-108" and even all the software IBM released for them is preserved:

Re: 8bit PVGA1A OEM VGA for Olivetti. Drivers ?

but I confused WD95C01 with WD90C01, the real chip used in those is WD95C01.

Reply 7 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

I got to test an the older revision of the ET4000, marked TC6058AF. In that revision, the chip behaves as described in the 1990 data book:

  • Pins 12 and 109 act as output enable for the video RAM,
  • CRTC register 0x31 does not exist. I.e., it always reads back as zero, regardless of what you write to it.

In contrast, as described above, in the newer TC6100AF revision of the ET4000...

  • pins 12 and 109 can be used as additional general purpose outputs, e.g., connected to the clock generator;
  • they are controlled by bits 6-7 of CRTC register 0x31, which can also be read back.

Since no one so far came up with the updated edition of the data sheet, there's no way of knowing what other features were added to the TC6100AF revision.

Reply 8 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

PS: I forgot to mention: In the newer ET4000 (TC6100AF), the newly added, undocumented CRTC register 0x31 seems to work exactly as on the later ET4000W32i. As described, bits 6-7 control the clock select lines. Bits 4-5 are not implemented and always read back as 0. Bits 0-3 can be written and read, and probably serve as "scratch bits" without any functionality behind them.

Reply 10 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

If the graphics card manufacturer took advantage of the additional clock select pins – like on the card that started this thread – he could easily have the card select between more than the usual 8 pixel-clock frequencies. For the end user: If the video BIOS and/or driver knows about this, this can add more video modes or additional refresh rates to existing video modes.

(And in my case: I'm not an end user; I work on low-level drivers for these cards.)

Reply 11 of 22, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t
mxmxmx2 wrote on 2023-02-17, 17:26:

If the graphics card manufacturer took advantage of the additional clock select pins – like on the card that started this thread – he could easily have the card select between more than the usual 8 pixel-clock frequencies. For the end user: If the video BIOS and/or driver knows about this, this can add more video modes or additional refresh rates to existing video modes.

(And in my case: I'm not an end user; I work on low-level drivers for these cards.)

Okay, good to know! I was just curious as to what it meant from a practical standpoint, and I can see now why that'd be a big deal.

Also, thank you for your time in doing this. Not many people are out there doing driver work to expand the capabilities of vintage hardware. 😀

Now for some blitting from the back buffer.

Reply 12 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie

I like to "bump" this thread because I have discovered yet another difference between the TC6058AF chip revision (as documented in the available data sheet) and the newer TC6100AF revision of the ET4000.

In the data sheet (and, hence, in the TC6058AF) pins 44 - 41 are used as address inputs A23 - A20:

The attachment et4000.png is no longer available

However, in a TC6100AF-based ISA graphics card that I have tested, pins 43 - 41 are actually connected to the LA19 - LA17 (unlatched address lines) of the ISA bus. This only makes sense if those pins were reassigned a different function in the newer chip revision.

Hence, to repeat my question from two years ago: Does a data sheet for the newer revision (rev. F or rev. G, TC6100AF) of the ET4000 exist? If anyone has it, I'd be very happy to receive it.

Reply 13 of 22, by noshutdown

User metadata
Rank Oldbie
Rank
Oldbie

hello
i checked out my collection and found that i have an early version of et4000. it was made in week 9002 and instead of et4000ax, its marked et4000c, and with no tc6058af or tc6100af code at all.
er i robbed the card off my former colleague about 16 years ago...

Reply 14 of 22, by Tiido

User metadata
Rank l33t
Rank
l33t

ET4000/W32i has a register that controls what these upper address line pins do, maybe the same register is used for these pins on the older chips too. The datasheet is too large to attach to this post but I imagine it won't be difficult to find.

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 15 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie
Tiido wrote on 2025-03-06, 16:02:

ET4000/W32i has a register that controls what these upper address line pins do, maybe the same register is used for these pins on the older chips too. The datasheet is too large to attach to this post but I imagine it won't be difficult to find.

Yes, I know about the data sheet for the ET4000W32i. But that does not help me in finding all the changes in the ET4000 revision TC6100AF. (Like the address pin reassignment.)

Reply 16 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie
noshutdown wrote on 2025-03-06, 15:31:

i checked out my collection and found that i have an early version of et4000. it was made in week 9002 and instead of et4000ax, its marked et4000c, and with no tc6058af or tc6100af code at all.
er i robbed the card off my former colleague about 16 years ago...

Fascinating. Out of curiosity: Can you post a photo of it?

Reply 17 of 22, by noshutdown

User metadata
Rank Oldbie
Rank
Oldbie
mxmxmx2 wrote on 2025-03-06, 18:08:

Fascinating. Out of curiosity: Can you post a photo of it?

yes, here it is:

Reply 18 of 22, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t
noshutdown wrote on 2025-03-07, 00:34:
mxmxmx2 wrote on 2025-03-06, 18:08:

Fascinating. Out of curiosity: Can you post a photo of it?

yes, here it is:

Hey, that is really similar to this one that I picked up several years ago. The design really is different from other ET4000 models, which was the main reason I grabbed it.

The attachment YeOlde_ET4000AX.jpg is no longer available

On mine the chip is marked ET4000AX TC6059AF. The board part number is lower than yours, but there are lots of differences so it's hard to say if one is older than the other. The fact that yours also has an EGA output is really interesting too.

Looking up the FCC ID, mine appears to have been made by DFI. It looks like it was a retail product too, since there is a tiny tiny thumbnail for an ebay listing in this post for a boxed card with the same name.

EDIT: Also, this may be the original software for the card? https://www.ebay.com/itm/365253084619

Now for some blitting from the back buffer.

Reply 19 of 22, by mxmxmx2

User metadata
Rank Newbie
Rank
Newbie
Ozzuneoj wrote on 2025-03-07, 08:18:

On mine the chip is marked ET4000AX TC6059AF.

... and it has a datecode of CW7 1992, whereas noshutdown's has a datecode of CW2 1990.

Thank you both for your photos. I had never seen those two chip revisions before.