Commit Graph

78 Commits

Author SHA1 Message Date
YoshiRulz e7d0fb8299
Refactor/genericise MutableIntRange, add immmutables, add more methods
call now and I'll throw in not one but two float equality extensions for free
2020-01-03 03:32:51 +10:00
adelikat bdd0d56a70 delete the console log window, always show LogWindow instead 2019-12-29 14:39:44 -06:00
YoshiRulz 7cd29c0f54
Finish moving Win32 imports to BizHawk.Common, organise, and cleanup 2019-12-21 18:33:11 +10:00
YoshiRulz 580aa2eaf9
Refactoring and cleanup of dynamic lib loading
Also fixed error reporting in WindowsLLManager, and fixed bug in
MednaDisc.CheckLibrary
2019-12-21 18:22:58 +10:00
YoshiRulz 7ea8fb185a
Congregate, organise, and cleanup some Win32 imports and their usages 2019-12-21 18:21:51 +10:00
adelikat 049e3d12fc BizHawk.Common house cleaning - remove a bunch of unused code, use some higher language level features in some places 2019-12-06 18:12:57 -06:00
adelikat 2b00a98ab1 Remove unused Sprintf.cs 2019-12-06 17:48:46 -06:00
James Groom fcc0bc19a4
Change build config to support the Core build system (for #1415)
squashed PR #1702
2019-12-03 16:58:33 +00:00
adelikat 6c7653e158 Merge branch 'master' into MoreUnixMonoCompatWork
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
2019-10-31 17:01:19 -05:00
J.D. Purcell 69edada441 Set LangVersion to 8.0. Requires Visual Studio 2019 with 16.3+ update installed. 2019-10-27 12:14:19 -04:00
YoshiRulz db020e499e
Extract superclass from MemoryBase and start on a Unix implementation 2019-10-19 15:20:31 +10:00
adelikat b1296dd9bb rip out NDBDatabase 2019-06-15 15:13:08 -05:00
YoshiRulz 58c738957c
Rename PlatformLinkedLibSingleton and children 2019-05-18 15:40:46 +10:00
James Groom 6b56a65d11
Add MutableIntRange and float.RoundToInt and refactor AnalogStickPanel 2019-04-01 14:41:08 +11:00
upthorn 71215adf0d Merge branch 'master' of https://github.com/TASVideos/BizHawk 2019-01-04 04:58:58 -08: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
upthorn aba1da071d Completely refactored PluginAPI to extend ApiHawk. Ecco2AssistantPlugin is now an external tool. 2018-12-22 10:40:30 -08:00
frequem 71ba3024b7 Fixed linux build 2018-02-21 20:19:33 -05:00
zeromus cad5f441dd fix build paths to output 2017-06-26 17:57:50 -05:00
zeromus 0085729392 delete x64 build configuration, use anycpu instead. take care to set Prefer32Bit false in exe csproj, since visualstudio's gui preference doesn't work. 2017-06-26 17:47:51 -05:00
nattthebear ed02493297 fuck componentmodel 2017-06-19 21:23:20 -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
adelikat c5f15da366 Update BizHawk.Common from .net 4.5.2 to 4.6.1. I believe 4.5.2 was an oversight from the original .net upgrades. If I'm wrong and this library needs to be 4.5.2 for some reason, feel free to revert. 2017-06-12 13:55:30 -05:00
zeromus 39433e509e change some output64 to output 2017-06-12 01:38:02 -05:00
zeromus 0942d4f498 remove x86 project configurations 2017-06-12 01:24:35 -05:00
nattthebear 76022f66f9 update to framework 4.6.2. Since Windows XP 64 was very rarely used, there's no loss in switching to this if we're going to 64 bit. Add `FrameworkZipWriter` based on the 4.5 framework's built in zip writer. It shaves a decent amount of time off savestate save time, but rolling our own off of DeflateStream would be even faster. 2017-05-27 18:15:15 -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
adelikat e1750bdce9 Move BinaryQuickSerializer from Emulation.Common to Common 2017-05-01 17:26:39 -05:00
zeromus 1ae8605450 ugh. due to some extension my visualstudio doesnt save projectfiles automatically. 2017-03-06 05:25:09 -06:00
nattthebear 4bd73a626f Add Monitor support to BizInvoker. Monitors are called right before (Enter) and right after (Exit) each interop method call. Possible applications include AWE mutex+mapping, and cothread no-GC regions. If you ask for an invoker without monitor, this commit adds no overhead because the code isn't generated. 2016-03-22 20:17:28 -04:00
nattthebear 3bc6fe1b04 Add the elf stuff back to solution (doesn't do anything, don't use, ugly and embarassing, etc). Switch gpgx to use bizinvoker and slash a few hacks there. Bizinvoker - add support for forwarded attributes in Compatibility mode ([Out], [In]), and support enum, ref enum, and enum[]. Misc cleanup. 2016-03-10 22:00:52 -05:00
nattthebear 2a0e859a85 Add 64 bit build (doesn't work yet), move SlimDX.dll 2016-02-28 15:06:03 -05:00
zeromus bff0d5b95d add and hook up AWEMemoryStream option for movie storage. GUI is intentionally shoddy to convey sense that it's experimental. Has been cursorily verified but not thoroughly tested. 2016-02-10 01:09:43 -06:00
zeromus 753431c94a SHUT. UP. THE. EXCEPTIONS. IN. TEMP. FILE. MANAGER. 2015-12-10 07:13:40 -06:00
zeromus 28eae0dcb1 Revert "Revert "common logic for tempfiles""
This reverts commit 5196fc6b70.
2015-11-17 17:26:03 -06:00
zeromus 5196fc6b70 Revert "common logic for tempfiles"
This reverts commit 5afa44bbec.

and also "fix regression in libretro core loading and streamline open advanced libretro ui"
59048264cd but tortoisegit didn't put that in the commit message.
2015-11-17 17:10:27 -06:00
zeromus 5afa44bbec common logic for tempfiles 2015-11-15 03:01:58 -06:00
zeromus ecee3365cc add retro log interface 2015-11-08 04:57:28 -06:00
zeromus 7651f418fe usably functional libretro player 2015-11-07 00:14:59 -06:00
zeromus 18aeefb66a add InstanceDll 2015-10-24 03:03:29 -05:00
zeromus 5bf21e391c TasStateManager uses a new data structure to write all states to one auto-deleting file per TasStateManager instance. TasStateManager is now IDisposable; this needs to be followed rigorously (I didn't do that). 2015-08-13 21:51:51 -05:00
jdpurcell 0a345b0084 Issue 368: Set all platform targets to x86, rename build platforms to match, and remove unused build platforms. 2015-01-13 15:28:58 +00:00
zeromus e0c09a553b redo how subwcrev stuff is done, so that the subwcrev process doesnt have to run for every project. improves build times. 2014-12-09 19:20:22 +00:00
goyuken 277b277c2e benchmark savestate time to console 2014-10-09 01:49:44 +00:00
zeromus cfa433a9a6 for issue #223 : create 2 workarounds for taskbar minimizing ding-and-fail bug and activate one of them. The bug is virtually impossible to fix and isnt really our fault. The bug is theoretically existing under other conditions than the "run n64 core" repro steps. The workaround might could be deployed in other situations as needed. 2014-09-14 09:11:34 +00:00
goyuken 768c2762a5 cleanup 2014-08-03 22:05:32 +00:00
goyuken 4fa8df8e30 internal settings infrastructure 2014-08-03 21:36:38 +00:00
adelikat 1c0eca190e Remove some unused extensions, Remove Extensions.cs and move methods into better named files with their own namespaces 2014-07-03 18:54:53 +00:00
adelikat 6269e957e6 Remove some unused extension methods and move some others to CollectionExtensions 2014-07-03 18:43:49 +00:00