LmCast :: Stay tuned in

IRIX 3dfx Voodoo driver and glide2x IRIX port

Recorded: March 24, 2026, 2:23 a.m.

Original Summarized

IRIX 3dfx Voodoo driver + glide2x IRIX port – sdz-mods.com

sdz-mods.com

Skip to content

Menu

HomeSample Page

IRIX 3dfx Voodoo driver + glide2x IRIX port

by sdzPosted onMarch 23, 2026March 23, 2026

At the moment only SST1 (Voodoo1) is supported on IP32 (O2). Only tested on IRIX 6.5.30 with RM7000C CPU.-driver sources (SST1 and CVG support on IP32) https://github.com/sdz-mods/tdfx_irix-glide2x IRIX port (SST1 on IP32) https://github.com/sdz-mods/glide_irix-hinv wrapper with 3dfx support: https://github.com/sdz-mods/hinv_3dfx
Mar 23 13:48:33 5A:IRIS unix: NOTICE: tdfx: init — 3Dfx Voodoo1/Voodoo2 driver
Mar 23 13:48:33 5A:IRIS unix: NOTICE: tdfx: registering for Voodoo1 and Voodoo2
Mar 23 13:48:33 5A:IRIS unix: NOTICE: tdfx: attaching Voodoo1 (SST-1) as card 0
Mar 23 13:48:33 5A:IRIS unix: NOTICE: tdfx: SST-1 BAR0 mapped: reg_kva=bb000000 reg_phys=0x1b000000 fb_kva=bb400000 fb_phys=0x1b400000
Mar 23 13:48:33 5A:IRIS unix: NOTICE: tdfx: IP32 write-gather skipped for SST-1 (single BAR)
Mar 23 13:48:33 5A:IRIS unix: NOTICE: tdfx: card 0 (Voodoo1 (SST-1)) reg_phys=0x1b000000 fb_phys=0x1b400000
Mar 23 13:48:37 5A:IRIS unix: NOTICE: tdfx: card 0 accessible at /hw/tdfx0
Mar 23 13:48:37 5A:IRIS unix: NOTICE: tdfx: 1 card(s) registered
Mar 23 13:48:33 5E:IRIS lboot: Module /var/sysgen/boot/tdfx.o dynamically loaded.
IRIS 31# ./test20
test20:
mipmap modes
2.46
Resolution: 640x480
Press A Key To Begin Test.

Couldn't determine cpu type. Using i586
initEnumHardware: calling pciOpen
fxirix: 1 3Dfx card(s) opened
pciOpen: hasDev3DfxIrix=1
pciOpenIrix: numDevices=1
initEnumHardware: pciOpen OK
initEnumHardware: slot 0 vendor=0x121a device=0x1
initEnumHardware: SST1 defined, checking TDFXVID=0x121a SST1DID=0x01
initEnumHardware: SST1 card detected at slot 0
fxirix: device 0 TDFX_GET_REGBASE=0x1b000000
fxirix: card 0 reg_base=0x1b000000 fb_base=0x1b400000 reg_size=4194304 fb_size=12582912
fxirix: map card 0 reg window phys=0x1b000000 size=16777216
fxirix: mmap fd=3 offset=0x0 length=16777216
fxirix: device 0 TDFX_GET_REGBASE=0x1b000000
SetGrxClk: tex write sstbase=4000000 addr=4f00000
vidInit: A (after VCLK_ENABLE)
vidInit: B (timing regs done)
vidInit: C (SetResolution done)
vidInit: D (before CalcGrxClk)
vidInit: E (CalcGrxClk done)
SetGrxClk: tex write sstbase=4000000 addr=4f00000
fxirix: device 0 TDFX_GET_REGBASE=0x1b000000
grTexClampMode: tmu=0 hw=4000000 packerFix=0x4e20000
grTexClampMode: before PW1, SST_TMU(hw,0)=4000800
grTexClampMode: before TMU write addr=0x4000b00 val=0x800000c0
grTexClampMode: readback done, updating shadow
grTexClampMode: shadow updated, calling GR_END
grTexClampMode: returning
_grTexDetailControl: tmu=0 detail=0x40ff addr=0x4000b08
_grTexDetailControl: write+readback done
_grTexDetailControl: returning
IRIS 32# hinv_3dfx
CPU: QED RM7000 Processor Chip Revision: 5.1
FPU: QED RM7000 Floating Point Coprocessor Revision: 5.0
1 802 MHZ IP32 Processor
Main memory size: 1024 Mbytes
Secondary unified instruction/data cache size: 256 Kbytes on Processor 0
Ternary unified instruction/data cache size: 1 Mbyte on Processor 0
Instruction cache size: 16 Kbytes
Data cache size: 16 Kbytes
FLASH PROM version 4.18
Integral SCSI controller 0: Version ADAPTEC 7880
Disk drive: unit 2 on SCSI controller 0
Integral SCSI controller 1: Version ADAPTEC 7880
On-board serial ports: tty1
On-board serial ports: tty2
On-board EPP/ECP parallel port
CRM graphics installed
Integral Ethernet: ec0, version 1
Video: MVP unit 0 version 1.4
with no AV Card or Camera.
Vice: TRE
Graphics board: 3dfx Voodoo

IRIS 33# hinv_3dfx -v
CPU: QED RM7000 Processor Chip Revision: 5.1
FPU: QED RM7000 Floating Point Coprocessor Revision: 5.0
1 802 MHZ IP32 Processor
Main memory size: 1024 Mbytes
Secondary unified instruction/data cache size: 256 Kbytes on Processor 0
Ternary unified instruction/data cache size: 1 Mbyte on Processor 0
Instruction cache size: 16 Kbytes
Data cache size: 16 Kbytes
FLASH PROM version 4.18
Integral SCSI controller 0: Version ADAPTEC 7880
Disk drive: unit 2 on SCSI controller 0 (unit 2)
Integral SCSI controller 1: Version ADAPTEC 7880
On-board serial ports: tty1
On-board serial ports: tty2
On-board EPP/ECP parallel port
CRM graphics installed
Integral Ethernet: ec0, version 1
PCI Adapter ID (vendor 0x9004, device 0x8078) PCI slot 1
PCI Adapter ID (vendor 0x9004, device 0x8078) PCI slot 2
PCI Adapter ID (vendor 0x121a, device 0x0001) PCI slot 3
Video: MVP unit 0 version 1.4
with no AV Card or Camera.
Vice: TRE
Graphics board: 3dfx Voodoo (unit 0)
Vendor: 3Dfx Interactive Device ID: 0x0001
Register base: 0x1b000000 size: 4096 KB
Framebuffer base: 0x1b400000 size: 12288 KB

Posted in 3dfx, SGI

Published by sdz

View all posts by sdz

Post navigation
Prev S3 Savage4 Pro PCI low profile HDMINext SGI O2 PROM ISP

Leave a Reply Cancel replyYour email address will not be published. Required fields are marked *Comment * Name *
Email *
Website
Save my name, email, and website in this browser for the next time I comment.

Search for:

Search

Recent Posts

SGI O2 PROM ISP

IRIX 3dfx Voodoo driver + glide2x IRIX port

S3 Savage4 Pro PCI low profile HDMI

SGI O2 CPU PROM emulator

SGI O2 system PROM socket adapter

Recent Commentssdz on SGI O2 128MB DRAM moduleDaveK on SGI O2 128MB DRAM modulesdz on SGI O2 128MB DRAM moduleDavid on SGI O2 128MB DRAM modulesdz on SGI O2 128MB DRAM moduleArchives

March 2026
February 2026
January 2026
September 2025
December 2024
June 2024
May 2024
January 2024
June 2020
May 2019

Categories

3dfx

Q3D

S3

SGI

Uncategorized

Meta

Log in
Entries feed
Comments feed
WordPress.org

© Copyright 2019 – sdz-mods.comAllium Theme by TemplateLens ⋅ Powered by WordPress

This document details the development and testing of a driver for the 3dfx Voodoo graphics card, specifically the Voodoo1 and Voodoo2, utilizing the Glide2x IRIX port and the IRIX operating system. The project, undertaken by sdz-mods, focuses on compatibility with IRIX 6.5.30, utilizing a QED RM7000 CPU and an IP32 processor. The core of the effort involves a series of compiled modules, including the tdfx driver, a Glide2x port, and an HINV (Hardware Interrupt Wrapper) interface designed to facilitate 3dfx graphics support.

The primary goal appears to be establishing a functional interface between the 3dfx Voodoo card and the IRIX operating system's hardware architecture. The provided logs demonstrate the driver’s initialization, identifying the SST-1 (Voodoo1) card as card 0, mapping its registers and framebuffer, and ultimately establishing communication with the IRIX system. Key elements of the process include the allocation of physical memory addresses for the Voodoo graphics card’s registers and framebuffer (0x1b000000-0x1b400000), as well as the creation of a PCI device entry. The test20 program, running under IRIX, utilizes this interface to render a 640x480 resolution test with mipmap modes, showcasing the driver’s ability to translate 3dfx commands into graphical output. Further, the documentation highlights the use of an HINV wrapper to manage hardware interrupts and provide a consistent interface for the 3dfx driver, allowing communication with the VP3 card. The system information provided illustrates this card’s specifications including memory size, cache architectures, and peripheral connections such as SCSI controllers and serial ports. The overall focus is on a niche project aimed at reviving vintage 3dfx Voodoo cards on the IRIX platform.