* Changed default sound/display methods to OpenAL/OpenGL on Windows to match
non-Windows, and replaced DirectInput with OpenTK input (needs regression
testing on Windows).
* (meta) As a result of the above, DirectX is no longer a prerequisite, leaving
only: .NET Framework 4.6.1 (comes with Win10, as does 4.8), MSVC 14 (also comes
with Win10), MSVC 12 for Mupen, and MSVC 10 for BSNES/Mupen.
* Refactored static Program ctor, using ExceptionBox for missing prereqs, and
removed PrereqsAlert.
* Added OS version check for Windows, with a flag in the config to skip it.
* Updated readme for Win7 EOL (and generally cleanup Windows sections).
This doesn't compile because of Input.cs, didn't know what to do. Also search for Merge TODO for some commenting things that probably need to be deleted
# Conflicts:
# BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj
# BizHawk.Client.EmuHawk/CustomControls/InputRoll.Drawing.cs
# BizHawk.Client.EmuHawk/CustomControls/InputRoll/InputRoll.cs
# BizHawk.Client.EmuHawk/Program.cs
# BizHawk.Client.EmuHawk/tools/Lua/LuaConsole.cs
# BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs
# BizHawk.Client.EmuHawk/tools/ToolHelpers.cs
# BizHawk.Client.EmuHawk/tools/ToolManager.cs
# BizHawk.Client.EmuHawk/tools/TraceLogger.Designer.cs
# BizHawk.Client.EmuHawk/tools/TraceLogger.cs
# BizHawk.Client.EmuHawk/tools/Watch/RamSearch.Designer.cs
# BizHawk.Client.EmuHawk/tools/Watch/RamSearch.cs
# BizHawk.Common/BizInvoke/DynamicLibraryImportResolver.cs
* Move PlatformSpecificLinkedLibs and implementations to common and rename
* Specify file ext. at LoadPlatformSpecific call site
* Move Client.Common.Global.RunningOnUnix to PlatformLinkedLibSingleton
* Inline var Resolver
* Use PlatformLinkedLibManager internally
* Move plugin load check to LinkedLibManager, use LinkedLibManager
* Interpolate
* Return exit code from dlclose/FreeLibrary
* Skip all calls to externs in BlipBufDll when using mono
* Use PlatformLinkedLibManager in SevenZipLibraryManager
* Add expected return value to workaround (from testing on Win32)
* Remove ".dll" from DllImport attr, remove temporary workaround, see desc.
The library can be built by changing the output file name in
`.../blip_buf/Makefile` to `libblip_buf.so`, and running `make`. It will be
loaded if placed in the `.../output` folder.
* Remove unused code, add TODO (this class is req. for Waterbox.PeWrapper)
The TODO is to [rewrite with
C#](https://docs.microsoft.com/en-us/dotnet/standard/io/memory-mapped-files)
instead of importing from `kernel32.dll`.
* Update OpenTK again but better (for #1384)
* Add Mono run script
* Add libblip_buf.so (temporary)
Temporary because it should be a separate package which BizHawk depends on.
* Add distro detection, add "already running" and "unknown distro" messages
* Gray-out Lua Console on Unix
* Extract superclass from EmuLuaLibrary, add shell implementation for Unix
* Specify libdl version, Fedora doesn't have the versionless symlink
* Remove empty `ToolStripMenuItem`, null `Text` caused crash on Unix
* Transform OpenTK keyboard input into a `List<KeyEvent>` and read that
Also fixes crash on rebind
* Remove debug `using ...;`
- Update to latest OpenTK, add input code from `mono-stable` branch
(kudos), and fix bugs arisen from version differences
- Move some functionality into Win-specific classes and add Wine+Mono
implementation where simple
- Add conditions to main loop so some things only run on Windows
I did this in a funny way (sets the environment for the process).
The idea is that any code which sloppily used Path.GetTempDirectory (etc.) would now have its pathing changed.
It is a little dangerous to allow this to be changed on the fly (I do allow it) since something may expect it to be stable, but I think it's OK.
So anyway. keep your eyes peeled for problems. It's possible I could do this differently and only affect a subset of safely managed things.
should fix#1252