First post, by marzsyndrome
I've noticed that with a select few games certain 9x-only functions are explicitly required, namely "SMapLS_IP_EBP", "SUnMapLS_IP_EBP", "ThunkConnect32" and "QT_Thunk". They all seem to be related to Thunk (as proven by this random page I discovered).
Swiv 3D for instance uses ThunkConnect32 within its crucial DLL file, DLL32.dll, but this can actually be gotten around by replacing it with GetProcessHeap (as proven with an existing XP patch for the game).
There's a few others, however, which I have not been able to get around so easily. Lemmings Paintball won't go into fullscreen mode because it relies on DispDib32.dll, which won't even load because it can't find the above-mentioned SMap and SUnMap functions within Kernel32.dll. I thought I could get around it by using this Windows 2000 API wrapper set, but it turns out it only adds SUnMap and not SMap also. I'm aware that Baku Baku Animal and Resident Evil's installation programs expect these functions as well (but will still try and install the game, albeit with dodgy behaviour).
Finally, there's a Windows version of the late 90's Malaysian shoot 'em up Vanguard Ace, and two of its DLL files - DD32 and Video - expect QT_Thunk. I doubt it's related to QuickTime btw, but likely related to display/video output nevertheless.
Considering some of the impressive work that we've seen over the years trying to restore compatibility with many older titles, I was wondering if coming up with alternative/wrapper DLLs utilising (or even replacing) these missing functions would be a feasible prospect in the future?