Commit Graph

19 Commits

Author SHA1 Message Date
YoshiRulz 2642ef4049
Remove empty docs 2019-06-06 16:41:10 +10:00
YoshiRulz df232e6184
Add additional CurrentOS checks 2019-05-19 14:46:50 +10:00
YoshiRulz 58c738957c
Rename PlatformLinkedLibSingleton and children 2019-05-18 15:40:46 +10:00
James Groom 779975f689
Use nameof 2019-03-28 14:17:14 +11:00
YoshiRulz 20b3112284
Use string interpolation
Excludes Sprintf.cs
2019-03-20 15:13:04 +10:00
nattthebear b82fd1fb2c Remove bogus TODO.
Absolute requirements of MemoryBlock include:

1) Ability to set and deny RWX permissions at the individual page level within the block
2) Ability to map and unmap from memory at will
3) Ability to specifiy the exact address at which the mapping occurs

From the docs, I don't see any way to get at any of these from the MemoryMappedFile stuff.  So that's a nonstarter.

Should be easy enough to rewrite in POSIX though.
2019-01-04 16:30:13 -05:00
James Groom 42764f0019 Add preliminary Unix compatibility (using Mono; resolves #1384) (#1380)
* 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 ...;`
2019-01-04 01:50:55 +03:00
nattthebear 66940747b0 Cleanup 2017-07-16 08:40:06 -04:00
nattthebear 2bd7726b9b Fix a memory leak in the loonix waterbox interop code that's never been used before ever 2017-07-12 17:57:29 -04:00
nattthebear 41fdb3a140 Lay down the CR/LF law 2017-07-03 14:44:30 -04:00
nattthebear a7f7583fcc waterbox: add space at the end of writable data pages, past what was allocated by the core but before the start of cpu enforced write protection, to savestates. theoretically fixes determinism issues from certain wild pointers 2017-06-20 20:56:17 -04:00
nattthebear 1292b27163 Add some draft work for supporting sysv <-> msabi interop. I wonder if we'll ever use this? I'd put it on a separate branch but it would be merge hell. 2017-06-18 08:51:09 -04:00
nattthebear 6f60eb5efc Create an abstract base class for waterbox cores, and adapt Virtual Boyee to use it. Not sure yet how useful this is... 2017-06-17 10:07:02 -04:00
nattthebear deaf22cb36 Make the bizinvoker, when not in compatibility mode, marshal bool returns as C++ would expect you to, and not winapi because fuck winapi 2017-06-06 17:59:27 -04:00
nattthebear b649927360 bizinvoke: make class ref interop work with null pointers 2017-05-27 14:40:15 -04:00
nattthebear 34791d8589 bizinvoker: fix clas being used in place of ref struct 2017-05-27 12:59:57 -04:00
nattthebear 7739b9dc80 rough in some snes9x stuff. not working yet 2017-05-21 17:43:43 -04:00
nattthebear 5c8efb51ba Add some Import related stuff to PeRunner. Build BizExvoker which will be used to import managed libraries as dependencies to PEs 2017-05-20 09:46:45 -04:00
adelikat b3ad3ce6ba Move BizInvoke files from Emulation.Common to Common 2017-05-01 17:30:42 -05:00