SDL 1.2 with CTPCI/Radeon support

On Bitbucket website I’ve published the source code with SDL 1.2 library and my changes. I’ve added CTPCI/Radeon support and resolved conflicts between some constants and latest system headers (found with latest gcc 4.5.3 compiler).
I have improved XBIOS driver a little – hardware checking is done only once during initialisation – it needs little more work though, mainly removing redundant code.

To get the latest version you have to type:
$ hg clone -b SDL-1.2
Repository is based on Mercurial and is cloned branch 1.2 from official SDL project repository.

Currently there are three issues and two are not connected with SDL itself, but with ATI Radeon drivers or CTPCI firmware.
First one is with audio system and compilation for 020-060 processors. If this will be fixed all the changes will be sent to official SDL project.
Second one is connected with XBIOS VSetRGB() (palette setting in 8-bit video modes) and Radeon 7000 cards. Function call takes too long (after measurement 3,8 seconds!). Problem wasn’t noticed on Radeon 9200. So all game ports based on 8-bit color depth (HHexen, HHeretic, Quake MiKRo) aren’t working good on R7000 cards. It’s hard to tell now if this is CTPCI firmware fault or Radeon driver.
Third one is an issue with VSetscreen CMD_GETINFO, sometimes this call fails (especially under FreeMiNT) – in result current video mode isn’t saved and cannot be restored on program quit.

About this entry