Commit Graph

78 Commits

Author SHA1 Message Date
adelikat 2b281116ed misc cleanups 2020-04-08 16:03:35 -05:00
adelikat 8833ce61c4 refactor coreComm in waterbox 2020-03-15 09:16:45 -05:00
adelikat cdcc1eabde use inline out variables in Emulation.Cores 2020-02-18 15:10:29 -06:00
adelikat 3bf8752ab3 delete unused ElfRunner and ElfSharp dependency since we don't expect to use it for waterbox going forward, if we ever need to for some reason, we can ressurect it from this commit 2020-02-18 11:29:57 -06:00
adelikat 54ba1e12eb set get only properties in Emulation.Cores, and a few other simplfiications 2020-02-18 11:11:59 -06:00
adelikat 606c3bf1c2
use more advanced language features in Emulation.Cores (#1852)
* Use expression bodies in Emulation.Cores, and a few other misc cleanups

* remove unused usings in Emulation.Common

* cleanups in Tables_Direct.cs

* some cleanups in nes boards - redundant code

* remove some redundant array initializers in Emulation.Cores

* cleanup AmstradCPC.Controllers

* use object initializers in a lot of places

* nes mappers - remove disch's notes comments in favor of the nesdev wiki link

* cleanup CdtConverter.cs, mostly use of object initializers

* remove redundant .ToString() calls in Emulation.Cores

* using var in Emulation.Cores

* AmstradCPC/ZXSpectrum - simplify some linq, tabs instead of spaces, a few other misc cleanups

* Use null-propagation in Emulation.Cores
2020-02-17 16:54:51 -06:00
adelikat 4b7a7dd293
Make Binary states default and Textstates opt-in for cores (#1848)
* Rewind & State config - remove the default option

* remove the savestate type of default, not that this is a breaking config change for anyone that had specifically set savestates to text

* remove BinaryStatesPreferred from IStatable and use config setting when starting movies from "Now" in record movie dialog

* remove BinaryStatesPreferred from cores

* make text savestates an extension method off of IStatable and an inteface ITextStatable it uses if the core implements it. This will allow cores to opt in to text states if desired

* make cores with actual text savestate impleemntations get ITextStatable, remove text state logic from cores that just have a binary as as text implementation
2020-02-15 10:22:26 -06:00
YoshiRulz c7801b8ce2
Move BizHawk.Common.BizInvoke namespace to separate project 2020-01-23 14:54:23 +10:00
YoshiRulz 4a5ece2076
Use ranges in MemoryBlock* 2020-01-03 23:35:07 +10:00
YoshiRulz 264b27475e
Fix default referring to non-nullable type 2019-12-23 04:12:02 +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 fef746dffa properly dispose of IDisposables in core savestate code, and a few other places 2019-12-06 17:33:17 -06:00
J.D. Purcell fec63fb66a Spaces -> tabs, fix mixed newlines. 2019-11-03 20:58:36 -05: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
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 4dd40305bc
Merge branch 'master' into interp_cores 2019-06-15 02:11:24 +10:00
YoshiRulz 2642ef4049
Remove empty docs 2019-06-06 16:41:10 +10:00
YoshiRulz 9af93be0d3
Use string interpolation 2019-04-04 02:41:18 +10:00
James Groom 4e91f88af3
Use nameof in cores 2019-03-28 14:18:58 +11:00
alyosha-tas c19c7cd5c3 SubNESHawk
also Input register shift fix

# Conflicts:
#	BizHawk.Client.EmuHawk/MainForm.Designer.cs
#	BizHawk.Client.EmuHawk/MainForm.Events.cs
#	BizHawk.Emulation.Cores/Computers/AmstradCPC/AmstradCPC.IEmulator.cs
#	BizHawk.Emulation.Cores/Computers/SinclairSpectrum/ZXSpectrum.IEmulator.cs
#	BizHawk.Emulation.Cores/Consoles/Nintendo/NES/PPU.run.cs
2019-01-10 18:25:59 +03:00
nattthebear 36a84bd0dd Fix savestate hash match issue with Saturnus 2017-08-13 17:21:00 -04:00
nattthebear d7032330f1 Remove console messages on swappable activate/deactivate, debugging cruft 2017-08-08 19:10:07 -04:00
nattthebear 06a369dbe2 PeRunner: Ignore writev iovecs with base == NULL. This seems to be what linux does and musl expects on fflush(). Fixes some saveram related stuff in sameboy 2017-07-25 17:02:59 -04:00
nattthebear 223902a2f8 tweak ECL_INVISIBLE a bit. Internal crap,. 2017-07-19 21:10:00 -04:00
nattthebear 57ca86710b sameboy: SAVERAMS 2017-07-19 19:49:23 -04:00
zeromus dce98db811 fix saturn PixelPro resolution management mode to reformat framebuffer to requirements, so it works like it's supposed to 2017-07-15 02:53:33 -05:00
nattthebear a6daf3cfb0 PeWrapper: Don't save a copy of executable images after loading is done. We don't need it anyway (only the base xorstate and the hash). Saves a few meggerbytes of rayums, depending on core 2017-07-11 18:48:56 -04:00
nattthebear 9ab8b50c82 waterbox: Allow special section attributes to put variables directly in sealed or invisible. This can be easier to use than the heaps for adapting some existing code 2017-07-11 18:46:25 -04:00
nattthebear 6406646893 waterbox: Use less rams and stuff 2017-07-03 14:44:14 -04:00
nattthebear bc9726f687 Waterbox: Connect basic stdio. You get an empty stdin, real stdout and stderr, and can present readonly files to the core. 2017-07-01 21:02:52 -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
nattthebear 203a0521b5 pizza: set up constructors right for SGB and GB 2017-06-28 22:19:20 -04:00
zeromus 3f45406d7d fix basic waterbox aspect ratio. yeah, all of them. should probably be finetuned per core later though. 2017-06-26 20:50:38 -05:00
nattthebear 7c5c3482e7 pizza: RTC, maybe 2017-06-25 09:19:32 -04:00
nattthebear 537b2a1616 pizza: saverams 2017-06-24 21:46:11 -04:00
nattthebear ed57f766ad Pizza: Savestates at ~600K in SGB mode 2017-06-24 11:05:59 -04:00
nattthebear b214b7eb55 we learned nothing from this 2017-06-21 19:11:50 -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 5a8fad73b9 saturnus: use waterboxcore 2017-06-17 15:30:03 -04:00
nattthebear c04beea4d0 update snes9x to use WaterboxCore 2017-06-17 12:57:43 -04:00
nattthebear 3e731ae0b3 Make ngp core use WaterboxCore infrastructure 2017-06-17 10:47:10 -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 0d7116ef06 they must never know my secret... 2017-06-14 19:58:13 -04:00
nattthebear d7809d0f52 mapheap: fix some bugs that weren't exercised (nothing uses mremap right now) 2017-06-14 19:51:43 -04:00
nattthebear 19883585c6 rewrite MapHeap to be much easier for me to understand 2017-06-12 17:58:19 -04:00
nattthebear 626de2d7c8 waterbox: add guard pages to libco stacks 2017-06-11 20:10:37 -04: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