Commit Graph

2851 Commits

Author SHA1 Message Date
alyosha-tas 29fded3025 GBHawk: add testing framework 2020-03-29 10:21:34 -04:00
alyosha-tas 73afca9c67 GBHawk: finish intergration functions 2020-03-29 10:10:13 -04:00
alyosha-tas 47704b94fd GBHawk: more integration work 2020-03-28 20:21:43 -04:00
adelikat c008b57324 DS - some cleanup 2020-03-28 15:15:45 -05:00
adelikat 5f889e2568 DS - add screen gap option 2020-03-28 15:12:47 -05:00
adelikat a541b45231 DS - refactoring 2020-03-28 15:05:13 -05:00
adelikat 0aaf2b4151 DS - rethink ScreenArranger, fix side by side options 2020-03-28 14:48:24 -05:00
adelikat 730156b5db DS - wire up some screen setting options, the side by side ones don't work because screen arranger has a bug, and it is flawed, going to refactor all of this 2020-03-28 12:03:26 -05:00
adelikat 3e89a7f201 DS - refactor settings so that it is an enum that then translates to ScreenArranger settings 2020-03-28 11:21:39 -05:00
adelikat e2ac7d7a8f cleanup ds video options code 2020-03-28 10:31:25 -05:00
alyosha-tas 98265cd066 GBHawk: Clean up files and definitions 2020-03-27 20:16:24 -04:00
SuuperW 7aec03d788 Merge branch 'master' of https://github.com/TASVideos/BizHawk 2020-03-25 14:11:16 -05:00
SuuperW 1b419c7cfc fix an audio issue 2020-03-25 13:52:50 -05:00
SuuperW 34bfa46673 new Lid handling strategy 2020-03-25 13:50:21 -05:00
SuuperW cb73761ff6 fix for when screen layout options somehow get messed up 2020-03-25 13:45:18 -05:00
alyosha-tas 26619d367b O2Hawk: remove some unused code 2020-03-23 21:30:06 -04:00
alyosha-tas c5043d2ec3 O2Hawk: fix PAl timing a bit 2020-03-23 21:21:42 -04:00
adelikat f50b4e4c54 Odyssey2 - fix joypad.get(), apparently lua tables do not like keys that are just "." 2020-03-23 09:27:11 -05:00
YoshiRulz 16ed9e7bc9
Reorder modifiers (rule SA1206) 2020-03-23 20:03:51 +10:00
SuuperW 88904e6b44 support custom screen layouts in MelonDS core (no UI yet) 2020-03-22 18:40:52 -05:00
YoshiRulz cccf2c1920
Add port info and labels to MelonDS [Core] attr 2020-03-22 12:07:20 +10:00
alyosha-tas 5ea379c95d GBHawk: improve scanline zero emulation, still needs a little work. 2020-03-21 18:06:22 -04:00
adelikat 7a558f1951 cleanup NDS settings code 2020-03-21 13:38:42 -05:00
adelikat 85fcb99717 cleanup NDS Settings dialog code 2020-03-21 13:25:39 -05:00
adelikat d9d5658a7b add melonDS icon 2020-03-21 12:54:59 -05:00
SuuperW c59d8130bb
DS Hawk (#1884)
* Add MelonDS.cs, support opening (but not really) .nds files.

* init MelonDS

* MelonDS: Load selected ROM.

* MelonDS: FrameAdvance and frame counter.

* MelonDS: IVideoProvider

* MelonDS: Add DLL files.

* MelonDS: IInputPollable

* MelonDS: IStatable (and add forgotten file MelonDS_InputPollable.cs)

* update libmelonDS.dll

* MelonDS: ISoundProvider

* Add NDS to Global.SystemInfo, and convert screen coords when running NDS.

* set up default NDS controller

* MelonDS: ISaveRam

* MelonDS: remove romlist.bin

* MelonDS: ISettable

* Create firmware folder if it doesn't exist on Windows; otherwise, an exception is thrown.

* Add database entries for NDS bios/firmware files.

* MelonDS: Use the bios/firmware files selected in BizHawk's "Firmwares" dialog.

* MelonDS: Re-work sync settings a bit.

* NDS's firmware file contains user settings; these are over-written by sync settings, so we shouldn't allow them to impact the hash

* MelonDS: Add (currently unused) bootToFirmware sync setting, and NDSSettings dialog.

* Update NDS firmware hash; it seems I had somehow corrupted mine.

* MelonDS: Use boot to firmware sync setting.

* MelonDS: Allow user to set some firmware user settings via the NDS settings dialog.

* MelonDS: Add singleInstance attribute to core.

* MelonDS: IMemoryDomains

* update libmelonDS.dll

* MelonDS: Set up default sync settings if none are provided.

* MelonDS: Allow user to reset settings to default.

* MelonDS: bios+firmware files are recommended

* libmelonDS.dll

* MelonDS: Don't use real time.

* MelonDS: Update to reflect new way of handling RTC in MelonDS.

* MelonDS: Notify if savestate load failed.

* update MelonDS.dll

* MelonDS: Allow user to set startup date/time in settings dialog.

* MelonDS: Create melon directory if it doesn't already exist.

* Don't include Designer's "fixes" in PR (partially reverts 56b474c00)

* Don't show a broken console window; alert user of need to restart instead.
This fixes an error related to MelonDS trying to use the broken stdout stream.

* update default NDS controls to match other updated controls

* Implement a system bus, using ARM9 read/writes.

* MelonDS: Allow BizHawk to change the contents of the frame buffer.

* update libmelonDS.dll

* fix stuff that was merged incorrectly, or was broken by merge

* update libmelonDS.dll
(includes memory leak fix)

* update libmelonDS.dll
(fixes memory leak and an occasional savestate crash)

* fix stuff that broke with the merge

* cleanups, remove stuff that is no longer needed by service interaces

* simplify DS MemoryDomains

* DS - fix order of controller buttons to be consistent with other consoles.  This probably breaks any existing movies made on this core, but those would have been experiments, right?

* NDSSettings - make min value for day and month 0, whiel those aren't "valid" values they are the default values in the core for whatever reason, better to not crash on load and not show a value that isn't actually the setting.  This can easily be reverted if the core changes to default to 1

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
Co-authored-by: adelikat <adelikat@tasvideos.org>
2020-03-21 10:53:30 -05:00
alyosha-tas 04a33600da O2Hawk: fix the keyboard 2020-03-21 08:43:56 -04:00
adelikat 5c84c94a12 fix compile error in debug mode, oops 2020-03-20 21:05:44 -05:00
alyosha-tas 7e00b7892f gameboy memory domains: make consistent between gambatte and GBhawk 2020-03-20 20:04:58 -04:00
alyosha-tas aa165f36d2 O2Hawk: add PAL mode 2020-03-20 16:39:14 -04:00
adelikat 7fb89aed18 NesHawk - move BootGodDb to its own file 2020-03-19 21:35:36 -05:00
adelikat 01584431c4 NesHawk - cleanup Unif.cs 2020-03-19 21:28:32 -05:00
adelikat 22f6df3a70 NesHawk - CartInfo - turn into properties 2020-03-19 21:20:53 -05:00
adelikat daab35fc39 NesHawk- move CartInfo into its own file 2020-03-19 21:15:07 -05:00
adelikat dc56dd87e8 simplify MapperPropAttribute 2020-03-19 21:12:23 -05:00
adelikat 291275fe8c NesHawk - move MapperPropAttribute to its own file 2020-03-19 21:11:01 -05:00
adelikat f8acb61136 NesHawk - make boards and related classes internal, and sealed where possible 2020-03-19 21:06:54 -05:00
adelikat 620c38af73 NesHawk - move some enums out of NesBoardBase, simplifies a lot of usages 2020-03-19 20:29:15 -05:00
adelikat 720a2dce02 NesHawk - move NesBoardImpl attributes to their own file 2020-03-19 20:21:29 -05:00
adelikat 0d4dd3855b NesHawk - more missing variables in savestates 2020-03-19 20:02:22 -05:00
adelikat 659831c534 fix missing savestate data in some NESHawk mappers, note this is a breaking savestate change for these boards, but they were broken anyway, these were critical fields to savestate 2020-03-19 19:51:59 -05:00
adelikat 8bcab5af79 NESHawk - break off INesBoard and NesBoardBase into separate files 2020-03-19 19:06:03 -05:00
adelikat 9b68246b19 remove an unused varaible in VDC.Render.cs, fixes a warning 2020-03-19 10:18:35 -05:00
adelikat d60a00d682 NES mappers - remove documentation comments in favor of the nesdev wiki link 2020-03-19 08:24:05 -05:00
adelikat efb34f74e1 a2600 refactor - make mapper classes internal and sealed 2020-03-18 21:46:51 -05:00
adelikat f10b51558b Atari 2600 - make MapperBase abstract and make HardReset() abstract since we need implementations to properly reset variables (we can't get rid of hard reset so easily, since HardReset is the mechanism that multi-cart roms use 2020-03-18 15:58:53 -05:00
adelikat db6bbe22bb A2600 - expose CartRam memory domain for mCM and mFA 2020-03-18 15:48:32 -05:00
adelikat 8f860adf51 cleanup Atari2600 mapper code 2020-03-18 15:46:17 -05:00
adelikat a61230e4ab Atari2600 - refactor mapper creation logic to be a separate method with declared dependencies, remove an unused method 2020-03-18 10:52:53 -05:00
adelikat 8c10ca3e14 Atari2600 cleanup - pass Atari2600 core into constructor instead of setting after, use switch expression for mapper instantiation logic 2020-03-18 10:37:53 -05:00
adelikat c52bc603d7 Atari 2600 Mappers - remove useless HasCartRam virtual method, and simply check if CartRam.Length > 0 2020-03-18 09:23:43 -05:00
adelikat d953318160
Remove cbuffer (#1883)
* delete unused ShortBuffer

* convert IntBuffer to int[] in the Atari2600 core

* remove IntBuffer from NES mappers, and delete class

* convert ByteBuffer to byte[] in atari 2600 mappers

* remove ByteBuffer usages in NESHawk, remove ByteBuffer class

* remove Buffer.cs

* remove IDisposable from NES.NESBoardBase

* remove Dispose from Atari2600 MapperBase, note, it wasn't event being called
2020-03-18 08:55:02 -05:00
adelikat 20b99d4ae2 fix typo in GambatteLink file 2020-03-15 18:24:42 -05:00
alyosha-tas 38e89f01ee quicknes: add jetson's to blacklist 2020-03-15 11:24:12 -04:00
adelikat c66243254c remove unused GameInfo parameter in some core constructors 2020-03-15 10:19:01 -05:00
adelikat f4b1d3f747 oops, meant to check this in 2020-03-15 10:15:30 -05:00
adelikat d3f37a5beb remove CoreComm.Clone(), it is now safe to pass around into subcores 2020-03-15 10:12:20 -05:00
adelikat 3c638f018f refactor CoreComm usage in remaining cores 2020-03-15 09:44:47 -05:00
adelikat 79aec475a9 refactor CoreComm usage in sega cores 2020-03-15 09:42:48 -05:00
adelikat 899f8662c0 refactor CoreComm usages in more cores 2020-03-15 09:38:54 -05:00
adelikat c532b96245 refactor CoreComm usage in nes cores 2020-03-15 09:35:12 -05:00
adelikat b5c0bfa141 remove coreComm from N64 core 2020-03-15 09:32:29 -05:00
adelikat 8973e5e521 refactor CoreComm usage in GBHawk and related cores 2020-03-15 09:31:07 -05:00
adelikat 028bc83c88 refactor CoreComm usage in some Gameboy cores 2020-03-15 09:28:27 -05:00
adelikat 5886416cbf refactor CoreComm usage in more cores 2020-03-15 09:22:58 -05:00
adelikat 8833ce61c4 refactor coreComm in waterbox 2020-03-15 09:16:45 -05:00
adelikat 095b22d489 refactor CoreComm usage in atari cores 2020-03-15 09:14:33 -05:00
adelikat da95c1f56f remove RomAnnotation fields on CoreComm and use the service instead 2020-03-14 22:10:57 -05:00
adelikat 42dc7edd23 pass in rom annotation details to Octoshock so it can set coreComm, ideally the core should figure all this out but this works okay 2020-03-14 21:36:51 -05:00
adelikat 3cacb88e48 a few cleanups in octoshock 2020-03-14 21:27:05 -05:00
adelikat a884282fa4 remove CoreComm NominalX/Y, those values never different from buffer w/h for cores that set them which were only the gb/gba platforms and the original dualGb. The result defaulted to a very random 640x480. Instead just use the buffer w/h, which is a very reasonable video default 2020-03-14 17:06:42 -05:00
adelikat dd062b3ca7 replace CoreComm screenofsets with an emulator service 2020-03-14 16:35:54 -05:00
adelikat 870d7df6f2 cleanup some unneeded code 2020-03-14 16:09:25 -05:00
adelikat 9825963261 kill off the dead PSP core 2020-03-14 15:10:29 -05:00
adelikat 211883889b simplify CoreCom copying by implementing a Clone method, simplifies all the cores that have cores in them, this copies a lot more things than the original code had but it seems that's either fine or fixing broken stuff 2020-03-14 15:08:24 -05:00
adelikat cd7d907c0d get rid of CoreFileProvider SubFileDirectory 2020-03-14 14:02:19 -05:00
adelikat e655ad3abd remove obsolete ICoreFileProvider.PathSubfile(), and instead pass in the neccessary base path the the bsnes core that needs it 2020-03-14 13:56:20 -05:00
adelikat 6958ade3a8 nes ppu - have Reg_2000 depend on PPUREGS instead of PPU since that's all it's using 2020-03-14 10:32:59 -05:00
adelikat 4ababf383a NESHawk - PPUREGS - don't depend on PPU, move the one method that was using it out to PPU 2020-03-14 10:30:53 -05:00
YoshiRulz e12b5d8137
Refactor FloatRange creation and usage
effectively resolves #1200
* Replaced floats in FloatRange with ints (would have used shorts but
SubGBHawk/SubNesHawk use an axis to hack in cycle count or something), added
both Range<int> and Range<float> auto-properties
* Added bool field IsReversed to FloatRange
* Added enum AxisPairOrientation and factory method using it
* Cleaned up usages of FloatRange fields and properties
* Added new properties to PadSchema.ButtonSchema for type
PadInputType.AnalogStick (to hold the two FloatRanges) and used
ControllerDefinitions from cores to dedup these ranges in the schemata
* Made VirtualPadAnalogStick work properly: both the direction and bounds are
correctly set from the controller schemata, the polar conversion measures angles
consistently (though I think it might not work outside -128..127 e.g. for PSX),
and I didn't break the sensitivity override, plus negative percentages might
work now but I didn't allow those
* Renamed FloatRange to AxisRange, but did not rename related symbols
2020-03-14 20:47:45 +10:00
YoshiRulz 5196b97459
Fix resources for BizHawk.Emulation.Cores and cleanup 2020-03-07 07:45:19 +10:00
adelikat 565a319cef
Remove unused sound files (#1868)
* Remove unused ZeromusSynchronizer ISynchronizingAudioBuffer implementation as it hasn't been used in quite some time, also remove unused MetaspuAsyncSoundProvider that is no longer used. Remove some unsed methods on MetaspuSoundProvider

* use switch expression

* remove unused buffer

* remove unused NitsujaSynchronizer, even though it was the default, the only usage of ISynchronizingAudioBuffer is the vecna one

* remove enum ESynchMethod now that it only had 1 option

* expose VecnaSyncrhonizer and remove Metaspu static class

* remove unused method on ISynchronizingAudioBuffer
2020-03-01 14:18:24 -06:00
alyosha-tas 9810bd7541 GBHawk: oops missed one 2020-02-29 21:34:37 -05:00
alyosha-tas ca025488cd GBHawk 4x:linking improvements 2020-02-29 21:27:26 -05:00
alyosha-tas b1d17b0a57 GBHawk: proper bias emulation in audio, still needs some refinement but everything is in place. 2020-02-29 17:11:46 -05:00
alyosha-tas 7c32305cb4 GBHawk: fix videoplayer2 audio 2020-02-29 11:57:44 -05:00
alyosha-tas e87a0edb01 GBHawk 4x: cleaan up the 2x2 connections 2020-02-29 09:05:28 -05:00
alyosha-tas c9621eff19 GBHawk: CPU optimizations 2020-02-28 20:46:33 -05:00
adelikat 46d05de51f nothing to see here 2020-02-28 12:52:48 -06:00
alyosha-tas 5f5bf639c2 GBHawk: 4x cleanup 2020-02-27 18:15:34 -05:00
alyosha-tas 1e550e68eb GBHawk: 4x adapter functional 2020-02-27 16:37:08 -05:00
alyosha-tas 027dc6a6eb GBHawk: more 4x adapter work, pinging seems to work, need transmitting 2020-02-25 20:58:30 -05:00
adelikat 185dbda19a misc redundant code removal, empty argument in object intiializer, redundant elses 2020-02-25 15:14:13 -06:00
alyosha-tas 78454ea636 GBHawk: Start 4x adapter 2020-02-25 13:53:28 -05:00
alyosha-tas c16b47cbe4 GBHawk: rename GB compat cpu to have proper dependency 2020-02-25 08:06:43 -05:00
alyosha-tas f73c65d704 GBHawk: camera mapper 2020-02-23 17:38:56 -05:00
alyosha-tas f0692111d7 SubGBHawk: add 2020-02-23 09:54:42 -05:00
alyosha-tas e1128e4150 oops forgot a line 2020-02-23 07:37:38 -05:00
alyosha-tas 38e9dc02b7 GBHawk: camera mapper 2020-02-23 07:34:55 -05:00
adelikat f9c6234262 oops 2020-02-22 12:37:12 -06:00
adelikat 9008bf269a O2 - remove peek/poke methods 2020-02-22 11:44:13 -06:00
adelikat 8a60043697 a7800 - misc simplifications, remove mapperBase peek/poke methods since they weren't being used and did not differ from read/write on any mapper 2020-02-22 11:42:50 -06:00
alyosha-tas 9831ca59bd GBHawk linked modes: implement power button 2020-02-22 09:19:05 -05:00
alyosha-tas 1b301862db GBHawk: Implement power button 2020-02-22 08:47:39 -05:00
adelikat 512fed32db seimplify oddessey default mapper a bit 2020-02-20 15:57:38 -06:00
adelikat ae70577887 move get/set register logic from ChannelF to F3850 2020-02-18 16:30:38 -06:00
adelikat 943789c543 move Get/SetCputRegisters logic from Vectrex to MC6809 2020-02-18 16:18:15 -06:00
adelikat 0b388d669d PCE - implement IDebuggable.SetCpuRegister, and add flags to IDebuggable.GetCpuFlagsAndRegisters(), move logic to HuC6280 2020-02-18 15:58:39 -06:00
adelikat ae872d5c4f move Get/Set Register logic from Intellivision to CP1610 2020-02-18 15:45:49 -06:00
adelikat 8e261a7ddb move get/set cpu registers logic from O2Hawk to Intel8048 2020-02-18 15:40:57 -06:00
adelikat cdcc1eabde use inline out variables in Emulation.Cores 2020-02-18 15:10:29 -06:00
adelikat 4e03e14eea GBHawk - implement Get/SetCpuFlagsAndRegisters 2020-02-18 14:54:59 -06:00
adelikat a751aab744 GBLink 1,3,4 -> Implement Get/SetCpuFlagsAndRegisters, underlying GBHawk doesn't yet have it though so this technically does nothing 2020-02-18 14:08:23 -06:00
adelikat 8fbd375fd5 delete more ReadMe.txt files that just say TODO 2020-02-18 13:59:21 -06:00
adelikat 734dd9297d cleanup GBHawkLink4x 2020-02-18 13:56:44 -06:00
adelikat 721b150f78 cleanup GBHawkLink 2020-02-18 13:48:23 -06:00
adelikat 9418a57b54 cleanup GBHawkLink3x 2020-02-18 13:40:00 -06:00
adelikat 176b846f3b delete not so useful subneshawk ReadMe.txt 2020-02-18 13:23:38 -06:00
adelikat dedd618db4 subneshawk - delete a bunch of code by using the underlying core for services, cleanup, and implement some services that were missing 2020-02-18 13:19:17 -06:00
YoshiRulz 3afcf416e8
Follow attribute class best practices, cleanup docs on attributes 2020-02-19 03:54:50 +10:00
adelikat 0ff2539da7 subneshawk - support DatachBarcode service 2020-02-18 11:52:24 -06:00
adelikat 09f90cc0a2 subneshawk - implement IDIsassemb 2020-02-18 11:46:34 -06:00
adelikat 3a7977413c subnheshawk - implement IBoardInfo 2020-02-18 11:42:41 -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 2ccf03fd44 use property initializers in some cores and some constructor cleanups 2020-02-18 10:54:39 -06:00
adelikat d3c048c13c simplify atari 7800 mapper code 2020-02-18 07:23:21 -06:00
adelikat 48c9ada3e7 some misc cleanups in atari 2600 mappers 2020-02-18 07:23:21 -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
alyosha-tas dd2b3509e5 O2Hawk: fix some colors 2020-02-16 21:55:21 -05:00
alyosha-tas b3fac6ba12 O2Hawk: fix color output 2020-02-16 21:04:28 -05:00
adelikat 27352a6f8e add Get/SetCpuFlagsAndRegisters to Z80, and remove all the boilerplate from related cores 2020-02-16 17:55:40 -06:00
adelikat 969642b6c7 add Get/SetCpuFlagsAndRegisters to MOS6502X, and have cores point to that, instead of the same boilerplate in each core 2020-02-16 17:44:52 -06:00
adelikat b03b6eb9de convert spaces to tabs in some ZXSpectrum files 2020-02-16 16:10:26 -06:00
alyosha-tas 25d19cdb81 O2Hawk: sprite fix 2020-02-16 16:42:31 -05:00
adelikat ef4c2119ba Odyssey2 - duplicate audio channel 2020-02-16 13:52:47 -06:00
adelikat d1266aa82d fix coleco and oddessy2 text states 2020-02-16 13:41:10 -06:00
adelikat 8a5c3f443b subneshawk - opt out of text states 2020-02-16 13:40:43 -06:00
adelikat d72dabd732 fix vectrex text states 2020-02-16 13:32:26 -06:00
adelikat 77598ce2b2 GBHawkLink cores - opt out of text states 2020-02-16 13:25:44 -06:00
adelikat da8199160d GGHawkLink - opt out of custom text states 2020-02-16 13:21:28 -06:00
adelikat 06d92f9824 if sms text states 2020-02-16 13:15:59 -06:00
adelikat 04a185101a fix gbhawk text states, had to leave duplicate data just with a different key name, in order to keep backwards compatibiliy with old binary states 2020-02-16 12:55:32 -06:00
adelikat aa6654cf9d fix a7800hawk text savestates 2020-02-16 12:51:55 -06:00
adelikat 027dc01c8b
create StateSerializer as a base implementation of IStatable (#1850)
* create StateSerializer, an ITextStatable implementation using the Serializer class, and wire it up to the TI83 core

* wire StateSerializer to A2600 core

* wire up StateSerializer to AmstradCPC, C64, and ZXS

* wire up StateSerializer to MSX, A27800, and Coleco

* wire up state serializer to ChannelF, Vectrex, Intellivision

* fix GambatteLink to implement ITextStatable, implement TextSerializer in O2

* StateSerializer - wire up a loadstate callback and implement StateSerializer for NesHawk, a bit of rework to subNesHawk as a result

* fix subneshawk text savestates

* StateSerializer - implement byte[] buffer storing (optionally), wire up to PCE

* implement StateSerializer to SMS, tweak GGLink accordingly

* implement StateSerializer in GBHawk, fix link cores accordingly

* StateSerializer - use Serializer static methods to create serializers
2020-02-16 12:05:57 -06:00
alyosha-tas b8614dc3d4 O2Hawk: Misc bug fixes 2020-02-16 10:51:07 -05:00
alyosha-tas eb03f28e99 O2Hawk: fix noise bit 2020-02-15 21:38:57 -05:00
alyosha-tas 54542ffd6d O2Hawk: fix collision detection 2020-02-15 18:06:54 -05:00
adelikat 656f2b814e Move IEmulator extensions to the Emulation.Common namespace, the intent is that these are used and serve as built in functionality, so it's overly tedious to when most situations require both Common and an additional extensions namespace 2020-02-15 12:33:15 -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
adelikat 8d662fcee3 more nitpicks in nes savestate code 2020-02-14 10:20:27 -06:00