Hey dreamer, many thanks for your interest and feedback about this patch! I suppose the former of which is being demonstrated by the integration into dosbox-staging.
In case there's any concern, I've just compared dosbox_sdl2_20181222.diff to dosbox_sdl2_20191120.diff, and the actual changes are really minor. These are more-or-less the important differences that I've seemed to spot:
- The few fixes for OS X: Added dependency in configure.ac, and minor fixes in compat_sdl_cdrom code.
- Minor GL-related changes in sdlmain.cpp, mostly with calls to glClear/glClearColor; The latter changes were done in order to be in sync with the upstream revision that I checked by the time.
- A couple of diffs from the 20181222 revision are now gone, since they're technically in upstream.
- Mouse sensitivity being split into separate x and y fields.
Replacing SDL_sound with the other libraries might be the way to go, if this works better. Another alternative, if there are problems with SDL2_sound as it currently is, is including and maintaining a modified copy of it (like compat_sdl_cdrom), I guess.
Originally, I also didn't think that physical CD-ROM mounting support was a big deal when it came to a migration to SDL2, but then I heard more than once that it was considered quite important. Thus, I initially added limited CD folder mounting support, and later, I brought a modified copy of the SDL_cdrom code into the patch for greater SDL 1.2-like support. It's indeed been ~4.5 years since then, though.
Querying SDL2 for available renderer drivers is a good thing; Originally I hardcoded them since it was close to the way it's done in this piece of DOSBox code.
For the ones not aware, my patch was intended to be not far from a "clean" SDL 2.0 patch, in the sense that it shouldn't add much more than the SDL2 support. I did make a few exceptions; Say, minor changes to configuration settings (partially making sense, say the SDL2 renderer driver); But also the Android bits, without too much work on touch input support, and minor changes in mapper UI drawing.
I thought that keeping the option to make SDL 1.2 builds made sense, since the code was still there, so why not keep the support (especially for environments where you can't easily use SDL2). It also made the patch files smaller, I guess. Many apps do eventually go for a total replacement, though.
While it's great to see there's an offer to join forces with you, I'm afraid that I don't have a lot to contribute. Usually, if I update the patch these years, it doesn't occur that often, it's mostly for compatibility with newer DOSBox SVN revisions, and it's occasionally having just the few changes (e.g., OS X fixes).