Opened 9 years ago

Closed 9 years ago

#6215 closed enhancement (fixed)

3dfx Video Driver Addition

Reported by: gerald.zajac Owned by: phoudoin
Priority: normal Milestone: R1
Component: Drivers/Graphics Version: R1/alpha2
Keywords: Cc:
Blocked By: Blocking: #3452
Has a Patch: no Platform: All

Description

This is a completely new video driver to replace the tdfx video driver that is currently in the source repository. This driver supports the Banshee, Voodoo3, and Voodoo5 chips, and has been tested with all three chips.

This driver has been tested under ZETA 1.21 and Haiku R1A2, and works fine under both operating systems. Although Haiku currently does not use the accelerated drawing or hardware cursor functions in the driver, these were tested under ZETA and work fine.

The attached zip file contains all the source files for this driver. It should be noted that the name of this driver is "3dfx" and the folders where the source files will reside are also named "3dfx".

Attachments (1)

3dfx.zip (39.1 KB) - added by gerald.zajac 9 years ago.
Source files for 3dfx video driver.

Download all attachments as: .zip

Change History (10)

Changed 9 years ago by gerald.zajac

Attachment: 3dfx.zip added

Source files for 3dfx video driver.

comment:1 Changed 9 years ago by anevilyak

Component: - GeneralDrivers/Graphics

comment:2 Changed 9 years ago by phoudoin

Owner: changed from nobody to phoudoin
Status: newin-progress

comment:3 Changed 9 years ago by phoudoin

Gerald, I've imported your driver in hrev37241.

But due to phys_addr_t introduction by Ingo for PAE and future x86_64 port, I had to do small changes in:

  • src/add-ons/kernel/drivers/graphics/3dfx/driver.cpp
  • headers/private/graphics/DriverInterface.h

I've also included string.h and stdlib.h that were missing in accelerant's mode.cpp and 3dfx_mode.cpp, respectively.

Please review them, so I could promote 3dfx driver in place of tdfx.

comment:4 Changed 9 years ago by gerald.zajac

I've looked at the source files and they look fine. Furthermore, I downloaded all the source files for hrev37242, and built the driver and accelerant. I then ran it under hrev37243, and it ran fine. It should be noted that because of the changes, this driver will not run under older revisions of Haiku such as R1A2.

comment:5 Changed 9 years ago by luroh

Blocking: 3452 added

comment:6 in reply to:  4 Changed 9 years ago by phoudoin

Resolution: fixed
Status: in-progressclosed

Replying to gerald.zajac:

I've looked at the source files and they look fine. Furthermore, I downloaded all the source files for hrev37242, and built the driver and accelerant. I then ran it under hrev37243, and it ran fine.

Okay, I'll then promote the 3dfx in place of tdfx in default Haiku image and remove tdfx from the source tree.

It should be noted that because of the changes, this driver will not run under older revisions of Haiku such as R1A2.

Will not build, but should still be binary compatible until phys_addr_t default to 64 bits. Which I fear Ingo just switch to by default by enabling PAE for x86 32 bits.

Maybe you could package your version and allow people using older Haiku revision to download and install (with instruction to disable tdfx on their system) it. I don't consider backporting it into the R1a<n> release branches for the moment ;-)

comment:7 Changed 9 years ago by phoudoin

Resolution: fixed
Status: closedreopened

comment:8 Changed 9 years ago by phoudoin

Reopened until 3dfx is actually promoted over tdfx. I should do this in a few moment...

comment:9 Changed 9 years ago by phoudoin

Resolution: fixed
Status: reopenedclosed

Done in hrev37294.

Thanks Gerald.

Note: See TracTickets for help on using tickets.