AGP only, because the pcigart has not been ported to fbsd yet. Anyone with an r128 is invited to try the latest code and report back. MGA and tdfx are now working to some extent. I think I found a bug with handling AGP for the MGA, and I have now successfully run X and 3d clients several times in a row without crashing. Unloading and reloading the module and starting X again had some bad effects, though.
Patches are up.
I've put up diffs against CVS as of today with code that compiles, although it's untested. The previous MGA code was causing memory allocations to fail, thus the odd errors, though I haven't figured out why the code was causing that to happen. Hopefully it won't do it again in the new codebase. I really need to figure out how to do linked lists right, because I seem to botch handling them all the time . I changed it, and I think it's right.