Writeup: To boldly stumble… pushing the Alliance AT3D to its limits

Yeah. We’re venturing into levels of absolute jank that none have ever gone before.

Fun fact, this card singlehandedly killed Alliance Semiconductor’s graphics division! All three successor cards that were planned for release after the AT3D were promptly scrapped and never heard of again. Alliance themselves would crumble not long after, and at present is a shell of its former self that manufactures only memory chips as opposed to… well, mainly memory chips and a few other things on the side.

Aaaaaaanyhow, let’s get on with this with a quick spec-dump.

Alliance AT3D – specs

  • Year released: 1997
  • Core: Alliance AT3D, unknown manufacturing node, 61MHz
  • Driver version: 4.10.01.2072
  • Interface: PCI
  • PCI device ID: 1142-643D / 0000-0000 (Rev 02)
  • Mem clock: 61MHz real/effective
  • Mem bus/type: 4MB 64-bit EDO, 488MB/s bandwidth
  • ROPs/TMUs/Vertex Shaders/Pixel Shaders/T&L hardware: 1/1/0/0/No
  • DirectX support: DirectX 6 (DX 3/5)

OpenGL support:

  • Native: no support
  • Techland OGL to D3D:
    –100% OpenGL 1.1 compliant
    –12% OpenGL 1.2 compliant
    –0% compliant beyond OpenGL 1.2
    –Vendor string:

Vendor: Techland
Renderer: Direct3D (display, Primary Display Driver) KNI
Version: 1.1 beta 6

OpenGL support (continued)

  • AltOGL OGL to D3D:
    –100% OpenGL 1.1 compliant
    –100% OpenGL 1.2 compliant (but I highly doubt it)
    –Vendor string:

Vendor: Brian Paul
Renderer: altD3D
Version: 1.2 Mesa 3.0

As for the rest of the system…

  • Windows 98 SE w/KernelEX (no updates)
  • Matsonic MS7102C
  • Intel Pentium III (Coppermine) @ 750 MHz
  • 256MB PC-133 SDRAM (single stick of Kingston KVR133X64C3/512, can’t extract SPD data bc system crashes)
  • Hitachi 4GB Microdrive
  • Some random Slot 1 Cooler Master CPU cooler

And with that out of the way, onto the notes!

So. Uh, yeah. The Alliance AT3D, and more specifically this AT3D, is a very… VERY strange card. Despite releasing rather late for a 3D-capable graphics chip in comparison to the competition, the AT3D is very clearly half-baked at best, and a flaming dumpsterfire at worst. I’m not sure if it’s the hardware itself or drivers written by the world’s worst driver dev team to have ever existed, but there is something very, very wrong with the 3D rendering capabilities that this card has.

As implied by the specs of the card from up above, the AT3D has no native OpenGL support. Or native DirectX 6, for that matter. Windows 98 just happens to like to stamp DX6 support onto cards that don’t support anything higher. This card was released targeting Windows 95, and drivers for Windows 98 and up were never made available. Luckily, with how similar the two OSes are at the kernel level, the Win95 drivers are fully-compatible with ’98. Yes, that is in spite of the atrocious 3D rendering.

So, anyway. OpenGL. That was what this video was intended to focus on, but between me catching Covid back in August and only finally recovering enough to begin recovering by late September, the video ultimately ended up as this congealed pile of rambling and chaos, with plenty of Windows 98 crashes sprinkled in for flavor.

ClassiCube runs… okay, I guess, if you’re willing to look past the amazing rendering quality. AltOGL crashes ClassiCube 1.3.5, and though I’ve been told that 1.3.6 works with AltOGL, with the AT3D at least it still crashes.

So, instead of AltOGL, I am using Techland’s OpenGL to Direct3D wrapper. Though intended to be a “mini-GL” for their Crime Cities game, Techland’s wrappers have a decent reputation for speed and compatibility among low-end cards. Though, the AT3D is clearly an outlier on both fronts.

Minecraft itself is unable to launch with either wrapper. With the Techland wrapper, the game complains about not being able to create an OpenGL context, which isn’t too surprising given how the Techland wrapper implements only a subset of the OpenGL spec. Slightly more surprising, however, is the fact that AltOGL also fails to allow the game to launch, instead resulting in an instant crash back to desktop. So, while Minecraft proper isn’t able to run on the AT3D, I still would say that you could pull off some block game shenanigans with this thing if you’re willing to suffer the pain of its rendering hardware screaming in agony.

Other games aside from Minecraft and ClassiCube were tested as well, or at least attempted to be tested, but much like Minecraft itself, they crashed in varying levels of severity with both wrappers. Aside from ClassiCube, the only thing I was successful in running were the 3DMark99 and 2000 benchmarks and demos.

But, this is not where this writeup ends. Oh, no. There’s still a completely fresh, unopened can of worms sitting right here on the table for all of us to enjoy.

That can of worms? The card itself and its BIOS.

If you take a look at VGA Legacy MKIII’s entry on the Alliance AT3D, you’ll find that all of the cards shown on the website are made by a company called “Super Grace”. All of them are identical.

My card, however, has a little extra something: a populated 10-pin header.

I’m not 100% sure about what its function is, but just from eyeballing where the traces lead to from the pin header suggests that this may be a header for some kind of optional TV-out add-on board. Perhaps one that outputs composite and/or s-video. It certainly fits in line with the strange video BIOS (vBIOS) that this card comes with. (Also, wow! Matching graphics core, PCB, and memory chip branding! And look at that neato peacock logo from an unknown company!)

So then. The BIOS. This card’s BIOS is version 4.30.00 Build 29, whereas the version of BIOS on the Super Grace cards is 2.30.00 Build 29. The differences go beyond just a bump from a 2 to a 4, too; the “version 4” BIOS has a neat animated Alliance Semiconductor logo and banner that slides in from the right, whereas the “version 2” BIOS is a static text box with no logo or anything. However, the lack of animation does also allow the system to complete the bootup process much faster.

Below are a pair of videos demonstrating the difference:

Beyond the visual differences, the primary functional difference between the v2 and v4 BIOSes is that the v2 BIOS seems to be completely unaware of the card’s seeming TV-out capability. The v4 BIOS, however, is practically hypersensitive to it.

I’ll give you a rundown of what happened.

I often use a program called “VCS” to let my Datapath VisionRGB capture card pass video through and act more or less like a regular monitor. The problem, however, is that apparently, when the capture card is hooked up to the AT3D, this causes the EDID (Extended Display Identification Data) that the capture card sends to the AT3D to seemingly identify itself (to the AT3D, at least) as… a TV.

Now, normally this shouldn’t be much if any issue. Graphics cards after all are meant to be able to handle this sort of connection. Heck, before the capture card, I was using an actual TV as the monitor for my testbench.

But because weird hardware seems to gravitate towards me, this was not the case for the AT3D. Whatever EDID info the capture card seems to send to the AT3D when VCS is used causes the card to trigger its “TV mode”, which enables a TV features tab in the card’s graphics settings and disables almost all of the regular settings for refresh rate and screen positioning available in the regular settings tab. Attempting to disable the TV features tab results in a system crash.

The solution to this? Going into the VisionRGB configuration, manually wiping the EDID information, and using OBS as a video-out from the capture card instead after rebooting both the capture system and the testbench. This finally gets the AT3D to recognize the capture card as a regular monitor rather than a TV, and makes the TV features tab go away and unlocks the regular monitor settings.

The v2 BIOS does not do any of this.

I really don’t have anything else to say about this card. The AT3D alone is already known for being one of if not THE worst graphics card to ever exist, and the extra sprinkle of weird behavior that my specific card shows is more or less just icing on the terribleness cake. The lack of the ability to really do anything aside from purely-2D tasks makes it hard to have much that can be done with the card in the first place. Though, I guess Baldur’s Gate 1 works pretty well since it’s a sprite-based isometric 3D game that only uses 2D rendering techniques.

Anyway yeah this card is peak jank lol. Have my card’s weird BIOS that doesn’t exist anywhere else on the internet. The v2 BIOS is available from VGA Legacy MKIII.

https://archive.org/details/AT3D43000b29BIOS

Also the AT3D can run Tux Racer if you slap AltOGL on it. It crashes the whole system if you try and use the Techland wrapper, so the behavior is the polar opposite of ClassiCube 1.3.5.

Suggested articles

Leave a Reply

Your email address will not be published. Required fields are marked *