OpenAL: So I'm maintaining my own MacOSX OpenAL implementation now. http://icculus.org/al_osx/ I pounded on my high-level mixing code to make it stop thrashing the CPU cache, and now it takes 0.1% of the CPU instead of 0.3% in ut2003...while that doesn't sound like much of an improvement in those terms, it is three times faster, and when our total AL processing time is hovering around 1.5% of the CPU, this is actually a huge optimization win...one of the biggest ones I could find at this point. I also played around with vec_dst in the mixers, but it didn't seem to give a notable speed boost like I hoped...maybe I'm misunderstanding how to use it. It's also my understanding that the G5 notices sequential memory accesses and automatically starts pulling in cachelines in anticipation that you'll be touching them shortly...effectively, this does the same thing as vec_dst, but without your explicit intervention, and without having to worry about the architectural differences in prefetching between the G4 and G5. I think the bottom line is that this is a problem that will fix itself over time. I haven't benchmarked my AL implementation on a G5 yet; with the dual CPUs, the prefetching mechanism and IBM's G5 compiler...maybe I'm already below the mythical 1.0% CPU time. I'd have to check. I've been doing my work and profiling with ut2003 on a Powerbook G4 12" (the model MacSoft says the game absolutely isn't playable on...in light of that, it seemed like a good target to shoot for). I also put new upsampling code (yes, this is iteration number four for those keeping track) into CVS...my idea about Bresenham's line algorithm seems to have panned out very well...it's about identical in results to the previous iteration, but easily five times faster. I'm going to go reread Abrash's articles on optimizing Bresenham to see if I can push that farther...there's an obvious win by moving the branch out of the resampling loop and splitting it into two seperate loops, since a given sample's "run length" alternates between two definite values, you don't need to check if it's time to switch in the loop...just iterate for one length, then iterate for the other, then start over until the whole buffer is resampled. There are better sounding resampling algorithms, but I think you'd be hard-pressed to find one that is faster with equally acceptable quality (and if you can, send me a patch). I also like the idea of adding an alHint() entry point so an app can specify "fast" vs "good" resampling. But that's not really important in the scope of most games. Duke3D: Stuff on the MacOS TODO list: 1) x86 compatibility for savegames 2) keeping Mac/PC networking in sync 3) Coming up with a server browser/matching service. 4) Add Cmd-Q as a quit key. 5) Race condition in audiolib causes occasional crash. 6) Ship it. UTPG: Please stop emailing me to ask if this is done yet. We're doing some polishing to get ALAudio working on Windows and other details at the moment. Some long-standing bugs that have been delaying a release have been squashed recently, so progress is being made. Unreal Tournament 2003: Mac patch is out: http://www.macgamefiles.com/detail.php?item=17882 I'm a Smartey Man Gaem Developar. In fixing the ATI rendering issues on Panther, I broke them on Jaguar. :( Call of Duty: The Linux server floating around is prerelease; don't run it. Postal 2: Please stop emailing me to ask if this is done yet. The karma source is in my hands now, but the legal paperwork is still being done. :( MOHAA: Yes, I know the binary expired. A new binary will be along shortly. Sorry about that. Talked with EA today about Breakthrough, hoping source will be coming my way shortly, once all the NDA stuff is cleaned up. America's Army: Linux 1.9 is live: http://icculus.org/news/news.php?id=1616 ...and the Mac version: http://icculus.org/news/news.php?id=1622 If you're running on Linux and having trouble with Punkbuster because it wants to write to a directory you don't have permission to, please read this: http://americasarmy.com/forum/viewtopic.php?topic=88357&forum=43 You do NOT have to run the program as root. We'll automate this for the next release, but this'll get you running in the short term. Other stuff: I wanna be scattered from here on this catapult. --ryan.