Skip to content

1.2.54

Pre-release
Pre-release
Compare
Choose a tag to compare
@icculus icculus released this 02 Sep 19:11
· 193 commits to main since this release
ae0fb29

sdl12-compat 1.2.54 PRERELEASE

What is this?

This is a PRERELEASE version of sdl12-compat. If everything looks good, we'll ship this as 1.2.56, so you have an even number and no chance you're still on a prerelease or development version.

PLEASE TEST THIS.

A list of things of known SDL 1.2 apps is here. Some tips on testing are in HOW_TO_TEST_GAMES.md. Please jump in and try things!

What works now?

Some apps and games that have started working with this release:

  • OpenXcom
  • DOSBox
  • Awesomenauts
  • Frogatto
  • mplayer
  • Multiwinia
  • tucnak
  • schismtracker
  • BasiliskII
  • Linapple
  • netsurf-framebuffer
  • BIT.TRIP Runner2
  • Many, many others!

Significant changes

  • All FIXMEs in the entire project have been resolved! (#143)
  • Make SDL2's OpenGL 2D renderer work with apps that update their screen surface from background threads (#104, #110, #181, #155, etc).
  • Better handling of audio and cd-rom needing the audio device in different formats. (#202)
  • macOS library install name has been fixed. (#194)
  • Fixed SDL_Flip error code for OpenGL windows (fixes OpenXcom). (#185)
  • Fake CD data tracks can now intersperse with audio tracks (put an empty trackXX.dat file in there). (#143)
  • SDL_EnableKeyRepeat now matches SDL 1.2's behavior. (#143)
  • SDL_Init/SDL_Quit pairing now matches SDL 1.2's behavior. (#143)
  • Non-fullscreen windows (software or OpenGL) can now scale like we do for fullscreen windows (#143)
  • SDL_ANYFORMAT is now supported. (#143)
  • Added basic/incomplete support for SDL_WINDOWID (#192).
  • Corrected SDL_WM_SetIcon() behavior (#191)
  • SDL_OpenAudio now respects the SDL_AUDIO_[FORMAT|FREQUENCY|CHANNELS|SAMPLES] environment variables (#143).
  • SDL_GetVideoInfo()->wm_available is usually correct now.
  • Can optionally use SDL2 Game Controllers for the 1.2 Joystick API. (#157)
  • Added a hack to let SDL 1.2 apps access the real SDL2 SysWM structure. (#186)
  • Lots of keyboard input fixes (#143, #187)
  • SDL_RemoveTimer now doesn't crash with bogus pointers, matching SDL 1.2.
  • Fixed rendering of 24-bit screen surfaces. (#183, #190, #199)
  • Updated dr_mp3 with various MP3 decoding fixes, for virtual CD audio.
  • Fixed building for ARM64 with Microsoft Visual C.
  • Now builds and runs on NetBSD and probably other non-Linux Unixes.
  • Updated list of fake fullscreen modes to match SDL2 Wayland target.
  • Several improvements to YUV overlay support (#164, #176, #143, #193, etc)
  • SDL_INIT_EVENTTHREAD support is now simulated; there's no actual thread.
  • Documentation improvements! (#173, #174, #197, #198, #188)
  • Several fixes for Awesomenauts, which now works great! (#168)
  • Implemented a "quirks" system to automatically adjust for known apps that need a little compatibility help.
  • Apps doing a "borderless fullscreen window" now convert to FULLSCREEN_DESKTOP (#168)
  • Fixed SDL_Surface refcounting.
  • SDL_GetWMInfo now works when SDL_SetVideoMode() hasn't been called. (#163)
  • "testthread.c" is now spelled correctly (#172)
  • Other fixes and improvements.

Thanks!

Thank you to Ozkan Sezer, David Gow, Sam Lantinga, Joshua Root, nia, and
Aaron Barany for their hard work on this release, and many others that
tested and contributed in ways not visible in the revision history!