www.princeton.edu/~bdsinger/Radeon10BitGamma -> www.princeton.edu/~bdsinger/Radeon10BitGamma/
now, so determining bit precision is a matter of asking Apple (which I've done) to support the 10-bit input mode of the ATI drivers and then testing them. According to ATI, the same drivers are used on OS X as on 9; Apple writes the glue to connect the CGDirectDisplay calls to the right driver control codes that testgamma (when booted into 9) calls directly. Note that in classic mode, Apple's "BB" proxy driver (for "Blue Box") does not support passing through greater-than-8-bit values to the ATI driver as reported by the classic version of testgamma.
LoadClut), so I'm removing my extensions to Psychtoolbox and Videotoolbox below since they are out of date. However, I've updated my standalone C program testgamma (formerly testclut) to operate as it originally did, knowing nothing about the video driver. It merely tries to load the gamma table with 16 bit entries (you can specify whether the upper or lower 10 bits should be significant) and shows a pattern that should be visible with greater than 8 bit DACs with driver support. This provides a way to test new drivers, such as the GeForce 4 (see next item).
If your driver supports >8 bit gamma table entries, that is said explicitly. If it does and you enter the opposite bit alignment, you will get characteristic display patterns which are explained now as well. An example app I put together seems to confirm this, but more rigorous measurements need to be made.
You'll need the latest Radeon driver (though I think they implemented this early on), DirectX 81 and Windows 98/2000/XP. Display_DualHead driverVersion = 10f69 I haven't updated the detection code below yet. However, I'll bet most of the changes are related to the newer cards. m doesn't check driver numbers, just the card model, those of you with 7000/7500 cards should be ok (assuming ATI didn't remove 10 bit gamma support).
I am aware of someone here with that model, I will attempt to test it out. If true, this would be a portable color psychophysics lab! Of course the CRT you'll be lugging around will weigh a little more :-) * 4/2/02 + An OEM AGP Radeon 7500 (dual head) comes standard in the base G4 tower now. A coworker next door has one, and I've updated the files below to work with the 7500, and fixed bugs in the older ones (testclut C program now works on gen2 Radeons, TestNewSetClut MATLAB script updated, and now works on gen1 again). David Brainard updated some of the scripts in the PTBExtension, and I tested them on the 7500 with success! Obviously the analog VGA out needs to be used, not the digital out which doesn't use the DACs. This is great for vision research, since you get two screens, and 10 bits on one of them with driver support, out of the box from Apple!
I (and a few others) haven't gotten any response from them, and the more of us asking the better. You might want to accidentally drop "Quake bug" into the subject line to get a quicker response.
I have also modified and contributed a little to the scripts he provided (for the little I know about the 7000/8500), available in the PsychToolbox extensions area below. These extensions will be part of the next update to PsychToolbox and will be removed when that update is available. Linda Glennie of Steve Shevell's lab got the 7000 Mac Edition to work. The drivers out of the box will do the job-- you just need to use the lower 10 bits in the gamma table instead of the upper 10, like we do with the first-generation Radeons. The files below are updated to detect and work with the 7000, but I don't have one to test. Will be fooling around with DirectX this weekend hopefully! I am working with Steve Shevell to add support for the 7000 in the files below, if he buys it as planned. I got around 200 MB/s with the AGP version and 20 MB/s for the PCI version! CopyBitsQuickly really helps with the PCI version: it brought it up to 70 MB/s. But CopyBitsQuickly on the AGP brought it down to 120 MB/s. To get the card pre-installed you need to put it in the PCI slot. To use an AGP Radeon you'd need to buy an AGP Radeon separately, then take out the pre-installed AGP Nvidia card, and buy another PCI card if you want 2 displays! It would be nice if one could use the Radeon VE with the 10-bit DAC drivers and use its dual-head capability, but there's no evidence yet that the VE works with the new drivers (see below), nor have I checked whether its dual-head feature works on Macs. I would like to see if the drivers work with these models. I tried a PC version of the Radeon VE in my Mac but apparently that doesn't work (need the Open Firmware on board I assume). Then remove the "Display Preferences" from the Preferences folder and reboot with the troubled card connected. What it is An update to the Radeon driver allows one to make a cscSetGamma control c all and pass a 256-entry gamma table that contains two bytes (16 bits) p er entry rather than the usual one byte. Only the upper 10 bits of the 1 6 bit entries are significant. This will probably be of primary interest to vision scientists, but could be useful for anyone who wants to provide very fine intensity changes o n their displays, either in space or time. In vision science experimente rs often want to measure the smallest change, or "threshold" in contrast that the subject can detect, and unfortunately in an 8-bit per channel system, there's no way to make changes along a single axis in color spac e fine enough to accurately measure the threshold. There are research-gr ade setups which provide up to 12 bits per channel color resolution, but they are often expensive or obsolete. The Radeon is a mainstream soluti on, is inexpensive and available now (costing about $150 in October 2001 ). History I learned that there were 10 bit DACs on the card in February 2001.
I communicated with ATI's Mac driver pe ople and requested 10-bit DAC support. After some back and forth on the best way to do so, they came up with a driver update and were very helpf ul and responsive. On 10/1/01 ATI released the Sept ember ROM Update which brought 10-bit gamma support to the retail cards. The second generation Radeons (7000,7500,8500) have drivers that support 10-bit DACs out of the box, so 10-bit DAC support at ATI seems to be the default now (at least in the Mac drivers)!
|