nmlgc / ssg

秋霜玉 / Shuusou Gyoku
MIT License
20 stars 5 forks source link

Resurrect the i586 build by polyfilling the C++ standard library #58

Open nmlgc opened 4 months ago

nmlgc commented 4 months ago

The P0275 build started using std::jthread and std::filesystem around the .DAT file loading code, which Visual Studio 2022's CRT implements using several Win32 API functions that are only available on Vista and later. Since these functions are not covered by KernelEx and Kstub822.zip, I no longer ship an i586 build because I couldn't easily test such a build anymore.

Note that this issue is different from #53. That issue offers a choice between porting SDL 2 or just writing new DirectSound and DirectInput backend code, whereas this one necessarily involves new platform interfaces for threads and the filesystem, which would be unnecessary otherwise. Shouldn't be all too difficult though, and is very likely to fall on the lower end between 0.1 and 0.33 pushes in terms of effort.