Boxedwine compatibility
https://github.com/danoon2/Boxedwine
I've been playing around with this and I think it might actually have potential. It's a nice little program that can grab older Wine versions and play Windows .EXEs with them. It's mainly compatible with Win3.1/Win9x stuff, but later programs may work as well. It has a GUI where you can change different settings like Windows version, command line arguments, GL extensions, etc. I have had luck running this in libTAS under certain circumstances. Here's some screenshots:


I built the regular 32-bit build from the git (projects/linux/build.sh) because the 64-bit build apparently has multi-threading. It will be in the /bin/ folder when built. In the above examples frame advance and savestates work fine, and movie actually appears to play back deterministically.
There is no really neat way to launch a container through the command-line, but this method works:
- Install your .EXE natively in Boxedwine, and then run it once. Wait for it to run the .EXE and play around a bit to make sure it works, and then close it.
- Back at the GUI, right-click on the shortcut for your .EXE and click Options.
- On this screen you will see an entry called Storage Location with a folder path; click Open to open it in a file manager.
- In this folder you will see a text file called
lastLog.txt, open it up in a text editor. - The first line starts with
Command line arguments: "./boxedwine". Copy everything on the first line after this, it will be your command-line options for libTAS.
In libTAS you just set the executable to /path/to/boxedwine and set the command-line options to what you copied above. It needs both gettimeofday() and SDL_GetTicks() time tracking. Here are some bugs I noticed that don't occur natively:
- Using anything below Wine 5.0 will result in Boxedwine not being able to find any files.
- Has trouble importing DLLs on any Wine version.
- "Prevent writing to disk" causes Boxedwine to fail eventually.
- Any sound playing completely freezes Boxedwine.
It's not compatible with everything but I think there's a lot of potential here. This is the furthest I've ever been able to get with anything Wine-related.