YoshiRulz
faddddca05
Add /usr/lib to the search path
2019-10-25 21:22:56 +10:00
YoshiRulz
4974807b21
BizInvoke: resolve full path for DLLs on Unix
2019-10-25 21:19:58 +10:00
adelikat
6c22e1c4c6
Lua console - implement saving/loading of column info
2019-10-19 10:45:42 -05:00
YoshiRulz
db020e499e
Extract superclass from MemoryBase and start on a Unix implementation
2019-10-19 15:20:31 +10:00
James Groom
90b0574bc3
Remove unnecessary calls to ToList (e.g. in foreach)
...
squashed PR #1591
2019-10-13 15:50:57 +00:00
YoshiRulz
7df71f2c86
Properly fix lib loading (builds upon 77bbc4128
)
...
Also cleaned up OSTailoredCode.cs and fixed qualifiers in Program.cs
2019-10-13 15:23:14 +10:00
J.D. Purcell
77bbc41286
Fix prerequisites dialog (broken by 42764f00
and 436b6452
).
2019-10-12 17:56:20 -04:00
YoshiRulz
67cbe9a5ee
Cleanup OSTailoredCode
2019-08-12 20:53:55 +10:00
YoshiRulz
b7249a99a5
Extract shell command helpers
2019-08-12 20:00:42 +10:00
adelikat
b1296dd9bb
rip out NDBDatabase
2019-06-15 15:13:08 -05:00
YoshiRulz
3fa0f71a24
Inline ToHexString extension where param numdigits is constant
2019-06-14 15:54:17 +00:00
YoshiRulz
a2a5ec7566
Replace $"{a}{b}" and similar with concatenation
2019-06-14 15:54:17 +00:00
YoshiRulz
2642ef4049
Remove empty docs
2019-06-06 16:41:10 +10:00
YoshiRulz
268ed1a69d
Fix malformed docs
2019-05-29 20:58:01 +10:00
YoshiRulz
df232e6184
Add additional CurrentOS checks
2019-05-19 14:46:50 +10:00
YoshiRulz
35056ae2d9
Remove #if WINDOWS, using runtime check where applicable
2019-05-18 20:17:02 +10:00
YoshiRulz
58c738957c
Rename PlatformLinkedLibSingleton and children
2019-05-18 15:40:46 +10:00
YoshiRulz
d76e1a8a8b
Refactor PlatformLinkedLibSingleton and replace RunningOnUnix with CurrentOS
2019-05-18 15:30:29 +10:00
Asnivor
ff4acab261
Serializer: Add support for float[], double and double[]
2019-04-08 08:59:01 +01:00
James Groom
6b56a65d11
Add MutableIntRange and float.RoundToInt and refactor AnalogStickPanel
2019-04-01 14:41:08 +11: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
upthorn
435d717f7b
Merge branch 'master' of https://github.com/Upthorn/Bizhawk
2019-01-14 17:10:45 -08:00
zeromus
303e9df26e
rejigger PlatformLinkedLibSingleton so it can be used embedded in the EXE without requiring a dependency on dlls, so it can boot when dlls are relocated
2019-01-04 17:42:12 -05:00
upthorn
c8f826ada3
Merge branch 'master' of https://github.com/TASVideos/BizHawk
2019-01-04 13:58:01 -08: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
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
zeromus
2eade372fd
try a new technique to just unstick the frontend when the n64 emulation thread dies
2018-11-07 15:37:37 -05:00
zeromus
ba4b32f619
rename TempFileCleaner to TempFileManager; add global path config for temp files
...
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
2018-09-11 21:32:50 -04:00
adelikat
22d1818641
DoSettings file for all project to explicitely set language level to C#6
2018-06-23 13:06:13 -05:00
zeromus
d55e03538f
revert weird changes to util.cs for unused parameter-filling code
2018-03-13 20:41:29 -04:00
Xadrophonix
4bcd69924b
All required contents for: https://github.com/TASVideos/BizHawk/issues/1122
2018-03-02 12:06:01 -08:00
frequem
71ba3024b7
Fixed linux build
2018-02-21 20:19:33 -05: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
bdfb859480
pizza boy: add the required SPC file as an embedded resource because zeromus said to
2017-07-01 09:06:04 -04: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
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
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
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
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
fa9dcfae35
waterbox: When compiled in debug mode, forcibly evict self at every opportunity. This can be used to catch bugs using pointers past their valid time. Catch and fix two such bugs in the libsnes wrapper.
2017-06-11 07:47:16 -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
2887ba5823
savestates for vb. this includes savestates for mmap_heap. unfortunately, usage of mmap_heap was scrapped as the things going into it were better suited for invisible/sealed. it may be eventually useful
2017-05-29 11:26:38 -04: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
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
2665510502
Add enough changes so that snes9x now boots. This includes stubs for a bunch of syscalls, a few mmglue changes, and C++ global constructor support
2017-05-27 12:29:05 -04:00
nattthebear
7739b9dc80
rough in some snes9x stuff. not working yet
2017-05-21 17:43:43 -04:00
nattthebear
6053cd6e35
stuff
2017-05-20 12:24: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
nattthebear
ebe789eed2
heh
2017-05-10 07:45:23 -04:00
adelikat
f31f3af0c8
InstanceDLL - throw if _hModeule == IntPtr.Zero, advanced loader - show the error if one occured
2017-05-04 19:43:51 -05: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
adelikat
a8c15a652b
Emulation.Common cleanups
2017-04-27 11:37:26 -05:00
J.D. Purcell
3d6b1da94d
Whitespace only (indentation fixes/cleanup).
2017-04-19 20:34:30 -04:00
zeromus
d7b0043379
add HModule accessor to InstanceDll
2017-04-17 22:42:12 -05:00
zeromus
42ab6b5df4
add tiny comment to HawkFile.Name
2017-04-17 22:41:58 -05:00
J.D. Purcell
b53502eed8
Spaces -> tabs.
2017-04-15 16:37:30 -04:00
adelikat
3965af851f
Misc code cleanups in BizHawk.Common
2017-04-13 13:57:58 -05:00
adelikat
e767e1b673
Fix loading roms from archive when using recent roms menu
2017-04-01 16:15:32 -05:00
zeromus
e484a69950
put RemoveMOTW back in the EXE assemblies. They can't load MOTW'd dlls which contain RemoveMOTW. We still need the RemoveMOTW code in a shared place for externalcores.
2017-03-21 11:09:43 -05:00
zeromus
b2cfc199cc
add gizmo for resolving LNK files
2017-03-15 22:49:48 -05:00
zeromus
b4ad2f40d9
snes c# cleanup
2017-03-15 17:49:19 -05:00
zeromus
1ae8605450
ugh. due to some extension my visualstudio doesnt save projectfiles automatically.
2017-03-06 05:25:09 -06:00
zeromus
fbd7601b77
for evaluation:
...
overhaul snes core -- radically simplify IPC.
There were two goals
1. speedup (failed)
2. not break in the old way of becoming unstable when GC happens (uncertain)
3. lay framework for simplified libretro interface (success, provisional on #2 )
the speedup failed, I think, because a slower libco is needed to coexist with .net. I think I will fix this be incorporating both libcos, one for bsnes internal use, and one for .net<->c++ switching
2017-03-06 05:21:35 -06:00
zeromus
569113f2f8
fix #741 , maybe, by removing MOTW from external cores before interrogating them. Will it still trigger when running them, if that's done somehow before interrogating them? (untested)
2017-02-21 18:23:02 -06:00
adelikat
6b5710ea25
HawkFile - meh, don't attempt to extract .dll files, these qualify as archives but there is no use case for attempting to load files from within them, then again, there is no reasonable use case for attempting to do so this is basically a useless commit
2016-12-06 12:31:18 -06:00
adelikat
eba11b259e
HawkFile - fix exception when a file has no extension, and also simplify the logic
2016-12-06 12:21:05 -06:00
adelikat
5665de1797
Intellivision - add a "Fake analog" controller as the default controller for easier binding for casual play, but also leave a boolean option as well for more precise (TAS) control. Add a controller config dialog to select them.
2016-12-03 17:44:25 -06:00
adelikat
2af7765ae0
Don't attempt to detect .smc and .sfc files as archives. Do we want to do this for all known rom extensions?
2016-11-19 14:48:52 -06:00
zeromus
a9c0211d46
change a bunch of old googlecode urls in assemblyinfos
2016-06-13 11:34:27 -05: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
51bec2a4a8
add 250ms upper limit to time spent in TryMoveBackupFile loops
2016-02-27 20:23:31 -06:00
zeromus
3c96e9d434
ok so i messed up with the FileInfo, because it was already there and I just lazily used it. But lets try handling this with the sophistication it calls for
2016-02-27 16:19:41 -06:00
nattthebear
7de39ef656
SettingsUtil: Convert between various integer types automagically because [DefaultValueAttribute] is cls complaint and it's awkward to specify unsigned types for it
2016-02-27 16:50:42 -05:00
Isaac Miell
1252944251
Better null checks in string validation functions
...
This fixes an exception when pressing "Ok" on the "Go to Address" input prompt in the Hex Editor with an empty string
2016-02-17 02:41:09 +10:30
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
Hathor86
f145f3cc68
Polar Coord
...
- Add polar coordinates to VirtualPadAnalogStick
- Update N64 pad Schema as VirtualPadAnalogStick is a bit larger
- Add Clamp method to NumberExtensions (allows a IComparable<T> value to be restriced between 2 specified other values)
2016-01-23 22:56:41 +01:00
zeromus
753431c94a
SHUT. UP. THE. EXCEPTIONS. IN. TEMP. FILE. MANAGER.
2015-12-10 07:13:40 -06:00
Hathor86
8ad0dc3a6d
Fix missing }
2015-11-20 14:09:27 +01:00
Hathor86
bae4d53cbf
merge remote master
2015-11-20 13:14:38 +01:00
zeromus
4de1d244ce
fix endianness of sprintf floats. i thought i checked this, but i guess not
2015-11-18 18:12:16 -06:00
zeromus
4b46bc60bb
TempFileManager throws less exceptions
2015-11-17 17:41:01 -06:00
zeromus
5086ea62c2
fix libretro sprintf of %f and %e throwing exceptions
2015-11-17 17:40:51 -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
59048264cd
fix regression in libretro core loading and streamline open advanced libretro ui
2015-11-17 16:56:30 -06:00
Hathor86
c7dcb42b94
Merge from maser@TASVideos
2015-11-15 11:27:00 +01:00
zeromus
5afa44bbec
common logic for tempfiles
2015-11-15 03:01:58 -06:00