Commit Graph

445 Commits

Author SHA1 Message Date
adelikat 348cbd18df
Remove PathManager code that had dependencies on Globals (#1881)
* move one usage of Firwmare method into Firmware config where it is better suited

* PathManager - remove unused code

* move some PathEntry specific logic out of PathManger and into PathEntryCollection extension methods

* PathManager - detangle some exe pathing logic from Global.Config usage, clarify what a completely broken method should actuall do

* move more logic from PathManager to PathEntryCollection extension method

* move absolute path creation to PathEntryCollection, lots of refactoring and simplifying of PathEntries usage

* simplify PathEntryColleciton usage more

* simplify PathEntryCollection more

* break PathEntry classes into separate files, a bit of cleanup

* move Rom path logic out of PathManager into PathEntryCollectionExtensions

* move config UseRecentForRoms and LastRomPath into PathEntries, note that this is a breaking change for previous configs, those values will revert back to default values

* move SaveRamPath logic from PathManager to PathEntryCollections

* move cheats path logic from PathManager to PathEntryCollection

* move another method out of PathManager

* move some Retro hacks to PathEntryCollections, exposes more implicit dependencies

* move savestate logic out of PathManager to PathEntryCollection

* move more logic out of PathManager

* move some savestate logic out of PathManager, move most to MainForm where it is used, detangle some implicit dependencies from SaveSlotManager

* rename method

* move more logic from PathManager to PathCollectionEntry

* movie final Global.Config.PathEntries logic out of PathManager and into PathEnties
2020-03-15 15:12:36 -05:00
adelikat da95c1f56f remove RomAnnotation fields on CoreComm and use the service instead 2020-03-14 22:10:57 -05:00
adelikat 870d7df6f2 cleanup some unneeded code 2020-03-14 16:09:25 -05:00
adelikat 16781fa212 FirmwareManager - don't depend on Global.Config 2020-03-14 12:20:28 -05:00
YoshiRulz d02a8df549
Fix audio buffer looping on drag-and-drop 2020-03-13 08:49:05 +10:00
adelikat 4bfb4ab00d
Gameshark refactor (#1867)
* first round of GameShark.cs cleanups, redundant code and stylecop cleanup

* simplify how gba readonly values are set

* a few more cleanups

* GameShark - use NESGameGenieDecoder for nes logic

* remove now unused NESGameGeneie tool

* Client.Common - move nes encode/decoder to a cheats folder

* GameShark - move genesis game genie coding logic to its own class

* remove NesGameGenieEncoder that i snow unused

* fix naming

* remove GenGameGenie in favor of using the unified Cheat Code decoder

* move Gameboy/GameGear decoding logic from GameShark to its own class, cleanup

* remove GBGameGenie, was only exposed via the toolbox, GameShark tool does all of this logic

* GameShark - move snes game genie decoding logic to its own class

* cleanup

* remove unused snes GameGenie tool

* move Gb GameShark decoding to its own class

* cleanup

* move Genesis action replay decoding logic to its own class

* cleanup

* cleanup

* cleanup

* cleanup

* move Sms ActionReplay decoding to its own class, cleanlup

* cleanup

* move snes action replay decoding to its own class

* cleanup with a helper method

* cleanup

* more cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* move Psx GameShark decoding to its own class

* Move saturn gameshark parsing to its own class

* cleanup

* cleanup

* move N64 decoder logic to its own class

* remove GBA cheat code that hasn't been ready for 5 years, easier to try to implement this in the re-architected code, so delete for now at least

* start to detangle GBA gameshark mess

* Gameshark - remove most gba cheat code functionality for now, easier to rebuild it later

* Gameshark - cleanup

* cleanup

* cleanup

* cleanup

* redesign nes decoder to simpler design

* simplify more

* convert psx and saturn decoders and simplify

* convert more decoders

* convert more decoders

* convert more decoders

* convert more decoders

* convert gba decoder

* convert more decoders

* convert and simplify N64 decoder

* GameShark - simplify more
2020-02-29 15:18:40 -06:00
adelikat b810060fcf move AdvancedRomLoaderType out of Emulation.Common, it doesn't belong here (moved to EmuHawk where it is used) 2020-02-26 16:36:15 -06:00
alyosha-tas f0692111d7 SubGBHawk: add 2020-02-23 09:54:42 -05:00
YoshiRulz 9829fd699b Unify helpers for generating file extension lists (for open/save) 2020-02-20 21:59:20 +00: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 2d637b6d1d rip out mainform context menu items for changing savestate type - we don't have those in the regular menu item anymore, and the menu items had no click events so they didn't work anyway 2020-02-14 11:20:38 -06:00
adelikat 29cddca49a use globals a bit less 2020-02-08 09:12:45 -06:00
adelikat 626efe8caf put control extension methods into the EmuHawk names space isntead of a custom one. We want these to be found and used, and most dialogs use them 2020-02-03 12:54:32 -06:00
adelikat c2bec296e6 simplify some repeated boilerplate on the DragEnter event by consolidating it to an extension method 2020-02-03 12:42:28 -06:00
YoshiRulz 593e1ef97d
Refactor external tool attributes 2020-02-01 01:54:23 +10:00
YoshiRulz 1fdb7a6fe2
Allow external tools to have any namespace / class name if annotated
This change is more convenient at the cost of a little duplicate code in
ToolManager. The annotation is [ExternalToolEntryPointForm], and having no more
than one such class per assembly is enforced.
2020-01-30 23:41:52 +10:00
adelikat e6e1962b54
Convert SMS settings to use GenericCoreConfig (#1816)
* refactor Sms settings including naming conventions and fix a typo, breaks configs with SMS settings already saved

* convert SMS controller type setting to an enum

* convert SMS Region setting to an enum

* Move SMS display type setting to an enum

* convert sms settings to properties

* SMS - wire up generic core config to a settings menu item

* remove some SMS menu items that are redundant to generic settings config

* remove more SMS menu items that are now redundant to generic core config

* remove more redundant SMS settinsg including SMSGraphicsConfig dialog, add descriptions and display names to SMS settings objects
2020-01-26 12:56:54 -06:00
adelikat e9be088105 vectrex - hide settings tab since there are no settings 2020-01-25 15:13:03 -06:00
adelikat ef13754f79 consistent variable naming in config.cs 2020-01-25 10:57:39 -06:00
YoshiRulz b80dd2fab7
Enable SA1113 and fix noncompliance
"Comma should be on the same line as previous parameter"
2020-01-25 18:06:50 +10:00
YoshiRulz b1e02fbdce
Enable SA1106 and fix noncompliance
"Code should not contain empty statements"
i.e. don't put a semicolon there
2020-01-25 18:06:34 +10:00
adelikat 3d833af617 break out enums from Config.cs 2020-01-21 09:02:42 -06:00
adelikat 8da1bb4e73 cleanup mainform menu item naming and using pattern matching instead of direct casts for core types when possible 2020-01-14 11:12:52 -06:00
adelikat 9a88a94ddc remove old joke about box, you will be missed. 2020-01-12 14:55:59 -06:00
feos c330541c35 Revert "cleanup ArgParser"
This reverts commit 84593b2d48.
magical fix to magically broken avi dumping
2020-01-12 21:33:41 +03:00
adelikat 8ccbe94a38 don't enable VirtualPad uless controller definition has any button, don't enable Macro Input tool if no movie is active 2020-01-12 11:00:11 -06:00
YoshiRulz 7062ba5b6a
Clarify "Autoload" text (from #971) 2020-01-13 01:54:15 +10:00
alyosha-tas 46d0818f09 MSXHawk: Core interface stuff 2020-01-10 15:51:56 -05:00
adelikat ee84c92ada pass in dependencies to OpenAdvancedChooser 2020-01-03 14:19:42 -06:00
adelikat ba68a307df pass dependency into PsxHashDiscs 2020-01-03 14:09:00 -06:00
adelikat 84593b2d48 cleanup ArgParser 2020-01-03 13:09:27 -06:00
YoshiRulz 8540773435
Fix typo 2020-01-03 06:04:01 +10:00
adelikat 1fd9bd7b38 SoundConfig - pass in mainForm 2019-12-31 17:14:04 -06:00
adelikat 6e49f1c07d Convert LogWindow to a tool that implements IAutoToolformConfig 2019-12-29 15:05:45 -06:00
adelikat ab812ab081 pass in mainform to log window stuff 2019-12-29 14:16:44 -06:00
alyosha-tas f1faf5988a EmuHawk: fix NES core picker, was broken by picking subneshawk due to the xor 2019-12-29 08:29:18 -05:00
feos cfce96c672 copypaste error 2019-12-23 19:28:51 +03:00
adelikat 5eee9a6004 misc tool cleanups 2019-12-22 16:42:56 -06:00
adelikat e7e30371fe Remove Rewinder from Global and put as a mainform variable instead 2019-12-22 14:25:06 -06:00
adelikat c101f672ee RewindConfig - pass in dependencies 2019-12-22 14:23:00 -06:00
adelikat afd460f1d2 pass in globals to Play/Record movie dialogs 2019-12-22 14:18:17 -06:00
adelikat 1332079f84 pass more globals into some config dialogs 2019-12-22 14:09:58 -06:00
adelikat 60c789df22 pass inGameInfo to N64VideoPluginconfig 2019-12-22 13:34:14 -06:00
James Groom 78fcde9480
Merge branch 'master' into winhacksbgone 2019-12-22 17:01:10 +00:00
adelikat 0ca53ccfcb SoundConfig - move some mainform usage to mainform 2019-12-22 10:57:06 -06:00
adelikat b80b367831 refactor IMovie to expose the movie mode, and make extension methods that do IsPlaying type logic. This way there can be direct checks, and more variety of methods without cluttering the interface 2019-12-21 16:34:29 -06:00
adelikat e7160a7387 MessageConfig - pass in config dependency 2019-12-21 14:16:23 -06:00
adelikat 5848cc5948 NESGraphicsConfig - remove some more global usage 2019-12-21 12:49:24 -06:00
YoshiRulz 784c800ca2
Disable features using Win32 unless on Windows host
forms: GBAGPUView, GBGPUView, LogWindow, SNESGraphicsDebugger,
SynclessRecordingTools; features: A/V recording, logging to AWE(?)
2019-12-21 18:31:03 +10:00
adelikat bfb39e79d0 MainForm - setter for Config property 2019-12-20 10:08:20 -06:00