Commit Graph

1013 Commits

Author SHA1 Message Date
YoshiRulz cba0eada69
More nullability 2020-06-30 12:57:57 +10:00
YoshiRulz 52203314ca
Misc. style fixes 2020-06-30 11:32:52 +10:00
YoshiRulz 62537118ac Add GetPanelNativeSize() to DisplayManager
not really that helpful, but removes the annoying dependency on
PresentationPanel from IEmuHawkMainForm (ready for move to Client.Common)
2020-06-30 11:02:17 +10:00
YoshiRulz 962ac0d9d4 Extract interface from MainForm 2020-06-30 11:02:17 +10:00
YoshiRulz e3c54b2268 Change some MainForm event handlers to delegate typed properties
makes encapsulation easier
2020-06-30 11:02:17 +10:00
nattthebear 499b59a0bd zwinder refactoring
Looks like a big diff, but isn't.  It separates the zwinder buffer part (which does most of the work) with the rewinder impl on top of it.  This is part of the effort for a zwinderstatemanager for tastudio, which isn't done yet, but these changes can come in just fine
2020-06-29 15:55:53 -04:00
adelikat ed49e58489 remove some references to multitrack in some comments 2020-06-29 10:37:05 -05:00
adelikat 452611477b delete multitrack message position config values, and message config ui, also reposition thingsin message config and fix some positioining, hence designer barf 2020-06-29 10:32:04 -05:00
scrimpeh 1c82340cac ram search - fix loading of wch files 2020-06-29 09:01:33 -05:00
adelikat 64d14a7f92 mass replace System.Forms.Label with LocLabelEx 2020-06-29 09:00:05 -05:00
adelikat 80599ddbe8 BatchRun - use LabelLocEx 2020-06-29 09:00:05 -05:00
YoshiRulz 141541bc1f
Pass delegates instead of MainForm to RewindConfig 2020-06-29 14:47:53 +10:00
YoshiRulz e4df38602b
Pass delegates instead of MainForm to BatchRunner 2020-06-29 14:47:51 +10:00
YoshiRulz c0aefd438a
Pass delegates instead of MainForm to OpenAdvancedChooser 2020-06-29 14:47:44 +10:00
YoshiRulz 4f4a875382
Pass delegates instead of MainForm to EmuHawkOptions 2020-06-29 14:47:42 +10:00
adelikat b40812798b cleanup some icon images by removing some unnecessary resolutions (large images and low bit images) 2020-06-28 15:11:02 -05:00
adelikat 3c9a7ff7a5 Multidisk bundler - use LocLabelEx 2020-06-28 13:29:38 -05:00
scrimpeh 286b56de5a ram search - pr fixes. also remove out of range searches in ramsearch
- adds a static IsValid method to IMiniWatch implementations
- reverts .csproj changes
- 'remove out of range' button on ram search didn't seem to actually do anything. this was fixed
2020-06-28 12:29:49 -05:00
scrimpeh c8ca09724c ram watch - fix two minor bugs
fixes two minor bugs relating to ram watch display type

1.binary display was broken on 32 bit watches
2.changing a watch's size to one with an incompatible display type resulted in an exception (e.g. 32 bit float -> 8 bit unsigned)
2020-06-28 12:29:49 -05:00
scrimpeh f9e174fd2d ram search - incorporate domain checking 2020-06-28 12:29:49 -05:00
scrimpeh 1721e4f9ea ram watch - add IsValid method 2020-06-28 12:29:49 -05:00
adelikat cacf04f8ca N64pluginConfig - replace Label wtih LocLabelEx 2020-06-28 09:04:16 -05:00
adelikat 4d53efcf85 N64 plugin config - use property grid in video plugin tabs 2020-06-28 09:04:16 -05:00
adelikat ff4eda68c8 N64 plugin config - remove use of GameInfo that was nonsense. It was setting per game hacks to GameInfo settings if enabled, but these values are already overridden on RomLoad, so this code was doing nothing 2020-06-28 09:04:16 -05:00
zeromus bc0849ad9d add a path entry for libretro ROM, even though it doesn't make sense, because it just isn't worth making sure every consumer of the ROM path is prepared for the possibility that ROM may be missing. This fixes #2176, but there's any number of other settings we could choose. 2020-06-27 22:32:51 -04:00
YoshiRulz 4f7c1a0b76
Enable nullability in AxisSpec and related types 2020-06-26 15:03:28 +10:00
YoshiRulz d0f96339ce
Fix reboot.png; no clue what was wrong but the warning is gone
for reference, I converted it to .bmp and back w/ ImageMagick
the warning was to stderr and it read `libpng warning: sRGB: cHRM chunk does not
match sRGB`
2020-06-26 14:45:33 +10:00
YoshiRulz 69146b04b2
Add and use DEBUG-conditional WriteLine methods 2020-06-26 14:37:36 +10:00
diddily 46e744cd33
Catch and retry when DirectSound crashes (squashed PR #2166, fixes #1212)
* Handling for BufferLost
Fixes issue #1212 where adding/removing headphones would lead to a crash by restoring the sound device when it's detected and being defensive with exception handling.

* Internalize the handling of buffer lost and make it a bit more efficient.
Remove interface function for SoundLost and move the logic to soley live inside DirectSoundOutput. Additionally I discovered I did not need to tear down the entire device to restore sound, typically Restore() and Play() handle it. Still need to wrap every place that can throw an exception in a try/catch block and wait for WriteSamples to handle it.

* Update DirectSoundSoundOutput.cs
Logic is hard.

* Retry limiter added to recovery
Added a self reducing retry counter that will try to start sound 5 -> 4 -> 3 -> 2 -> 1 times each time it tries to recover until it succeeds, at which point the counter returns to 5. This allows for quicker attempts at recovery without the risk of an infinite loop or terrible performance from sleeping 10 ms.
2020-06-26 11:56:27 +10:00
adelikat 312f029b0b Ram Watch - user LocLabelEx 2020-06-25 18:13:08 -05:00
YoshiRulz 3d8ed7483f
Move axis types to own files 2020-06-26 09:00:33 +10:00
YoshiRulz a0c8f722d2
Use constraints for grouping, add new class for unconstrained pairs
e.g. for Intellivision `_controllerDeck.Definition.Axes["P1 Disc X"].PairedAxis`
gives "P1 Disc Y"
2020-06-26 08:53:10 +10:00
YoshiRulz 1e67fc1d4b
Use inheritance for AxisConstraints 2020-06-26 08:43:17 +10:00
YoshiRulz 15906af6e4 Merge AxisRange into AxisSpec
was going to move only Mid but this made more sense
2020-06-26 08:08:58 +10:00
YoshiRulz 6cb60aa9fd Merge AxisControls, AxisRanges, and AxisConstraints into a single dict 2020-06-26 08:08:58 +10:00
adelikat af2649d9a0 move icon references in designer files to the main files before the designer eats them 2020-06-25 16:32:29 -05:00
adelikat 09a6f54735 add icon back to LogWindow AddToDatabase button, that got eaten by the designer at some point 2020-06-25 09:40:19 -05:00
adelikat 39535eacda RomStatus picker - remove image setting out of designer before it gets eaten by a designer based change 2020-06-25 09:18:33 -05:00
adelikat 371a7bd4f3 use MainForm.thing instead of GlobalWin.thing in some places, this is marginally better, maybe 2020-06-25 08:52:53 -05:00
alyosha-tas 49cb426a59 GBHawk: Double speed mode timing fix 2020-06-24 17:17:46 -04:00
scrimpeh 85d140c4b5 ram watch: allow duplicate identical ram watches
Allows duplicating identical Ram Watches. Previously, the Duplicate Watch dialog would silently discard a new watch if the address didn't change. As a side effect, multiple watches can now be duplicated simulatenously. This commit also removes the check for separate memory domains - it doesn't seem to cause any problems
2020-06-23 11:55:37 -05:00
scrimpeh d6994ea1af ram watch: watches are deleted by index
If you have two watches with an identical address, deleting one will always delete the first one. This commit fixes that
2020-06-23 11:55:37 -05:00
adelikat c13430896f remove empty controller mappings from defctrl, also remove duplicates that caused it to be invalid json (.net happily was deserilizing it anyway), don't save empty mappings when saving from the ui 2020-06-22 19:54:36 -05:00
adelikat 93c47b87b9 Controller config - take label width into account when generating columns 2020-06-22 18:11:31 -05:00
nattthebear 1ce0905deb Minor zwinder tweaks
Change the implementation of state eviction slightly.  The result is identical, but this is slightly easier to understand and will be needed to allow an evicted state to be read before eviction.
2020-06-22 18:52:18 -04:00
adelikat b9f59337dd fix Saturn and NGP default controls 2020-06-21 17:31:28 -05:00
adelikat 29a492fc2a fix pc-fx controller name to match old name 2020-06-21 17:22:00 -05:00
nattthebear 53c2318b56 nyma - activate controller deck names 2020-06-21 16:55:41 -04:00
adelikat cf4a0176a3 bk2 mnemonic lookups - we have a lot of keyboards now, make fkeys standard mnemonics instead of core specific 2020-06-21 15:32:45 -05:00
nattthebear ae9405fb84 saturn: autofire blah blah again 2020-06-21 16:14:50 -04:00
YoshiRulz 31e621d64e
Move init of form icons to ctor (from InitializeComponent)
tested the `global::` syntax on VS2019, the Designer refuses to cooperate
2020-06-22 06:06:59 +10:00
adelikat 03d7fc2498 Saturn virtualpad work 2020-06-21 14:51:22 -05:00
zeromus 2a4ac1f7e1 display manager: fix "use 1:1 pixel size" aspect ratio (re #2159) 2020-06-21 15:27:51 -04:00
adelikat c76515d7f7 Saturn - fix virtualpad logic broken by settings changes, fix mnemonic in 3d controller 2020-06-21 13:14:30 -05:00
adelikat 5404fb90d7 nyma - do button name overrides on analog stick suffixes 2020-06-21 12:36:01 -05:00
adelikat 0862024ba6 virtualpad support for NGP 2020-06-21 12:14:12 -05:00
adelikat 39ff851972 tastudio track engaged flag better 2020-06-21 11:00:57 -05:00
adelikat 4d0d9e04aa TAStudio - don't draw unless Tastudio is "engaged", fixes a lot of NREs through various core reboot scenarios 2020-06-21 10:57:23 -05:00
adelikat b0258ef3db fix NRE when closing tastudio 2020-06-21 10:43:05 -05:00
zeromus 4319096b50 format shader compiling errors better 2020-06-20 22:25:41 -04:00
zeromus f6f7847b95 allow copying selected text from ExceptionBox 2020-06-20 22:25:41 -04:00
YoshiRulz e24ddc9ebe
Finish renaming floats to axes 2020-06-21 12:16:32 +10:00
alyosha-tas 6fc1228ec2 GBHawk: HDMA timing bug fix 2020-06-20 22:05:05 -04:00
YoshiRulz 3d45799fc5 Specify [SpecializedTool] belongs on classes 2020-06-20 21:31:16 -04:00
YoshiRulz f76f301f8d Enable SA1015 and fix noncompliance
"Closing generic brackets should be spaced correctly"
2020-06-20 21:31:16 -04:00
YoshiRulz 3c02545066 Enable SA1026 and fix noncompliance
"Code should not contain space after new or stackalloc keyword in implicitly
typed array allocation"
2020-06-20 21:31:16 -04:00
YoshiRulz 14e0c96fd8 Enable SA1121 and fix noncompliance
"Use built-in type alias"
2020-06-20 21:31:16 -04:00
YoshiRulz 0021cfee70 Enable SA1130 and fix noncompliance
"Use lambda syntax"
2020-06-20 21:31:16 -04:00
YoshiRulz 0a3cb5f23f Enable SA1410 and fix noncompliance
"Remove delegate parenthesis when possible"
2020-06-20 21:31:16 -04:00
YoshiRulz dcae34ce47 Enable SA1314 and fix noncompliance
"Type parameter names should begin with T"
2020-06-20 21:31:16 -04:00
YoshiRulz a8bd9733f4 Enable SA1626 and fix noncompliance
"Single-line comments should not use documentation style slashes"
2020-06-20 21:31:16 -04:00
YoshiRulz a1aca37476 Enable SA1617 and fix noncompliance
"Void return value should not be documented"
2020-06-20 21:31:15 -04:00
YoshiRulz 135490c740 Enable CS1572, CS1574, and CS1734, and fix noncompliance
malformed references or wrong XML tag
2020-06-20 21:31:15 -04:00
YoshiRulz 0e1271c7c2 Fix exception creation 2020-06-20 21:31:15 -04:00
YoshiRulz abcf91f7d6 A bit of Range cleanup 2020-06-20 21:31:15 -04:00
YoshiRulz f37b74c4ba Enable CS1570 and fix noncompliance
malformed XML
2020-06-20 21:31:15 -04:00
YoshiRulz 43cc80f6a3 Mess w/ doc comment warnings 2020-06-20 21:31:15 -04:00
zeromus dfe027cf8f finish renaming hyper/turbo wbx files 2020-06-20 20:20:42 -04:00
zeromus 602dec0c4c clarify that CloneSaveRam() can return null 2020-06-20 20:13:00 -04:00
zeromus f98c4d18b1 dont create empty file when manually flushing null save ram 2020-06-20 20:12:59 -04:00
nattthebear a9d1ad16b1 GPGX: Saveram tweaks
When saveram doesn't exist, return null, not new byte [0].  If passed a 0-length saveram file, do not pass it to the core (this crashed in interop stubs).  Note that as best as I can tell, this is not fixing any problem; even without this commit it seems impossible to get BizHawk to actually generate a 0 byte saveram file for GPGX because of other checks that already existed.
2020-06-20 19:21:55 -04:00
zeromus fc5e325608 add Reset Speed hotkey. it's bound to Shift+Equals by default because.. well, it's kind of logical... kind of. If you have any better suggestions...
fixes #2154
2020-06-20 18:55:39 -04:00
zeromus 936b7606d0 cleanup to Choose A/V writer dialog 2020-06-20 18:46:37 -04:00
adelikat c6694a5e29 TasMovie - cache mnemonic look ups, gives a noticeable speed boost to drawing 2020-06-20 16:00:08 -05:00
adelikat 249259d7b3 move QuickCollections to the PCEHawk core where it is used, since we don't expect to use it elsewhere, and one of it's advantages was speculating that being in the same assembly would give it good inlining, so being in a common library was negating this 2020-06-20 14:54:21 -05:00
adelikat dc656ccb23 remove unused extension method 2020-06-20 14:36:57 -05:00
adelikat 21d2667736 remove useless dropdown opened event 2020-06-20 14:27:23 -05:00
adelikat 46188f977c convert SMSHawk to generic core menu 2020-06-20 14:11:23 -05:00
adelikat f1d5ef0f0f create ISmsGpuView and have the Sms VdpViewer tool depend on it 2020-06-20 14:03:57 -05:00
adelikat 8bfe6011bc convert PCE to generic core menu 2020-06-20 13:42:00 -05:00
adelikat 5570af6514 convert Genesis to generic core menu 2020-06-20 13:12:09 -05:00
adelikat 831197aeaa created a SpecializedTool attribute for system/core specific tools, and use it to dynamically add available tools to the generic core menu, replace the hardcoded GBA menu using this 2020-06-20 13:05:36 -05:00
adelikat f1131b1907
Create a generic core menu (#2155)
* poc - have a default core menu that provides a generic settings menu item, wire up some cores to this generic menu that only have settings to begin wtih

* vectrex - remove strong type for settings, if there are no settings the convention is to use object, which allows GenericCoreConfig to be smart

* convert saturn menu to default core menu

* fixups

* convert PCFX menu to generic core menu

* convert snes9x and faust to generic core menu

* convert GBLink to generic core menus

* convert MAME to generic core menu

* convert NGP to generic core menu

* convert GGLink to generic core menu

* convert wonderswan to generic core menu

* convert virtualboy to generic core menu
2020-06-20 11:28:23 -05:00
nattthebear e6858c702b nyma - fix bug that stopped NGP from booting
Happened in a recent refactoring.  NGP hides the constantfb setting (Because it is always at a constant fb), and that needs to override the core provision, not cause an exception.
2020-06-20 12:12:34 -04:00
zeromus 5e399b8fc3 fix crash shutting down when GL retroshaders failed compiling 2020-06-20 00:52:38 -04:00
zeromus 1b4a6f6415 get gl display method working, at least, minimally, with the scanlines shader. someone else can fix up the others if they need to or make me a bug. at least the hard part is past 2020-06-20 00:48:42 -04:00
zeromus 00e546a537 keep working on CGC-removal 2020-06-20 00:48:42 -04:00
zeromus b842f3ed16 remove cgc (step 1) 2020-06-20 00:48:42 -04:00
nattthebear 1f966a4cc1 Fix potential crash on exit if certain native resources weren't disposed
Finalizers in SpeexResampler and QuickNes assume that the underlying native dll still exists when they run, as they have to in order to successfully clean up leaked memory.  This is not true if those resolvers, which were stored as static fields themselves, had been finalized, which can only happen on app exit (because the static fields were readonly and always kept their value).  If a SpeexResampler or QuickNes was never disposed and itself lasted all the way to app exit, then the order of these two finalizers would be unspecified and a crash could happen.

In normal circumstances, this was only observable in DS core because apparently Suuper couldn't copy paste properly and missed the dispose part, but that was already fixed in 129d454a67.
2020-06-19 23:10:56 -04:00
nattthebear 129d454a67 blah blah dispose blah blah 2020-06-19 20:56:16 -04:00
zeromus ee963e8d64 I found this old icon on an old hard disk. I think I meant it for the log window, but maybe that was back when it opened the windows console instead of another window? Anyway, it's cute, maybe someone will figure out what to do with it. 2020-06-19 19:07:20 -04:00
adelikat 65a6ec03f6 reduce some mainform redundant menus for gb3/4x, they have the same logic as gbhawk link 2020-06-19 17:07:42 -05:00
adelikat 7bac6e933b add icon that the designer ate 2020-06-19 16:49:23 -05:00
nattthebear 020e5a7e32 minor cleanup 2020-06-19 17:26:58 -04:00
adelikat 487c596d76 cleanup Zwinder 2020-06-19 16:16:07 -05:00
adelikat 53716a40e5 Rewind Config - add UI for Rewind.TargetFrameLength, and a bit of visual re-org. Designer was used so this includes designer file barf 2020-06-19 16:09:17 -05:00
adelikat da59add3f6 add TargetFrameLength to rewind settings 2020-06-19 15:58:18 -05:00
adelikat 4978fe4b92 Rewind config - more cleanup - calculate maths correctly 2020-06-19 15:53:08 -05:00
adelikat 32b14641f1 Rewind config - better buffer size settings 2020-06-19 15:22:39 -05:00
adelikat 9faa159647 Rewind settings cleanup, make default buffer size 512mb 2020-06-19 15:19:50 -05:00
adelikat d431947d4e rewind config cleanup 2020-06-19 15:14:11 -05:00
adelikat 392611d6c6 Rewind - rename Small state enable to just enabled 2020-06-19 15:09:59 -05:00
adelikat c83027b817 remove medium and large state enabled rewind options 2020-06-19 15:05:49 -05:00
adelikat 6b514293ff Rewind - remove speed multiplier option, very redundant given that speedup and turbo calculate toward rewind speed 2020-06-19 15:02:03 -05:00
adelikat 6440d92a34 remove rewind frequency settings 2020-06-19 14:57:09 -05:00
adelikat 63533888ad Rewind config - remove on disk option 2020-06-19 14:47:25 -05:00
adelikat 9d17cd40e8 Rewind - remove ability to define Small, Medium, Large state sizes 2020-06-19 14:45:08 -05:00
adelikat a58a10e633 remove rewind threading config option 2020-06-19 14:37:36 -05:00
adelikat 270d03bf40 rewind - change UseDeltaCompression to UseCompression 2020-06-19 14:35:55 -05:00
adelikat dec20a4683 remove old rewinder code 2020-06-19 14:10:06 -05:00
adelikat 84c691021b settings hacks - actually map compression to a compression settings, give rewind an "off" switch, hacked to small states for now 2020-06-19 14:05:38 -05:00
adelikat 02a2efbed1 oopsies 2020-06-19 14:05:38 -05:00
adelikat 7dd78a9fa4 zwinder - hack in some settings from the ui 2020-06-19 14:05:38 -05:00
nattthebear 3b8e0ce39d Zwinder: Don't tell the mainform we're rewind-state-capping every 0 frames, that's just silly 2020-06-19 14:05:38 -05:00
nattthebear 1121d430f4 zwinder: add optional compression 2020-06-19 14:05:38 -05:00
nattthebear 5bd75fd001 Testing a new "zwinder" rewinder 2020-06-19 14:05:38 -05:00
alyosha-tas a914cb69e0 GBHawk: Speed change and window fixes 2020-06-19 14:09:03 -04:00
adelikat 75bd2f8063 fix NRE fix fail 2020-06-19 10:18:28 -05:00
adelikat 91c33a49c0 Rewind config - fix NRE when turning off rewind then going back to the config dialog 2020-06-19 10:01:01 -05:00
zeromus 25327b510d mgba - try resetting sram memdomain after frame advance, so sram autodetection can progress and feed into frontend. addresses #1620, maybe not in the best way 2020-06-18 03:08:57 -04:00
zeromus 1efc91cb94 hex editor: handle tiny (even 0 size) memory domains without crashing 2020-06-18 03:07:44 -04:00
YoshiRulz 8e414aea29
Enable CA1829 and fix noncompliance
"Use Length/Count property instead of Count() when available"
2020-06-18 09:44:01 +10:00
YoshiRulz 620e54580d
Enable CA1052 and fix noncompliance
"Static holder types should be Static or NotInheritable" (classes with only
static members should be static classes)
2020-06-18 09:43:57 +10:00
YoshiRulz 16d1782c9e
Enable CA1018 and fix noncompliance
"Mark attributes with AttributeUsageAttribute"
2020-06-18 09:43:53 +10:00
YoshiRulz 7f99dd95d6
Enable CA1010 and fix noncompliance
"Collections should implement generic interface"
2020-06-18 09:43:50 +10:00
YoshiRulz 8ca791852a
Enable MEN011 and fix noncompliance
"Align using directives"; this file had 2 BOM chars for some reason
2020-06-18 09:43:47 +10:00
YoshiRulz e71f5b32f0
Minor style cleanups 2020-06-18 09:43:36 +10:00
alyosha-tas 01e3a6cf43 QuickNES: blacklist Burai Fighter fixes #2145 2020-06-17 13:58:51 -04:00
nattthebear 4d3558d7e3 State manager API cleanup
add some comments.  Remove two methods from the interface definition that aren't actually used in public API
2020-06-17 07:31:00 -04:00
YoshiRulz abca8e02f2
Move some static data from MainForm to RomLoader 2020-06-17 10:46:54 +10:00
YoshiRulz 77e6a7300a
Create and use MainForm.ShowDialogAsChild(Form) helper 2020-06-17 10:46:51 +10:00
YoshiRulz 0e767add09
Rename ApiHawk files to match type name 2020-06-17 10:38:31 +10:00
YoshiRulz 9d1dfd71a1
Fix EmuClientApi not being registered and merge CloseEmulator()s
fixes a74d657a2, 51a83193a
2020-06-17 10:35:14 +10:00
alyosha-tas c53bda9235 NESHawk: make game genie compare cheats work 2020-06-16 20:01:34 -04:00
YoshiRulz ff4662efe8
Delegate more of ClientLuaLibrary to ApiHawk 2020-06-17 08:02:09 +10:00
YoshiRulz a74d657a2a
Promote IEmuClient to a full-fledged IExternalApi
also remove UnpauseEmulation() (duplicate of Unpause()) and rename
SetExtraPadding to SetClientExtraPadding (to match Lua)
2020-06-17 08:02:02 +10:00
nattthebear 9597be621a Partially revert c42889ceef
Pretty sure it's impossible for this to be null; the entry assembly always has a location and only weird dynamic assemblies can have none.

But if somehow it was, then we don't want to create a jumplist item that doesn't work!
2020-06-16 17:30:18 -04:00
nattthebear 8607f7891f Fix virtual size output on nyma cores. Expose more debugging info to console about screen sizes. 2020-06-16 15:53:10 -04:00
YoshiRulz 51a83193a1
Merge overloads of CloseEmulator to param w/ default 2020-06-17 02:15:33 +10:00
YoshiRulz cb08d00372
Replace single-use delegate type with Action<bool> 2020-06-17 02:15:11 +10:00
YoshiRulz 03acb1ded7
Move LoadRomArgs to own file 2020-06-17 02:14:33 +10:00
nattthebear 8b9debb8b9 Hide mission stick autofires again
I hope someone comes into irc screaming about how they can't do their TAS because we don't support the exact hardware semantics of the mission stick, but the more realistic outcome is that no one ever uses the mission stick for anything
2020-06-16 10:20:11 -04:00
nattthebear fa4a95f1b1 Looks like this existed solely to support the old bsnes interop, which everyone agrees was awful and something we only did because we had to 2020-06-16 07:45:34 -04:00
nattthebear 7b2ac98520 guess nothing was using this 2020-06-15 17:10:27 -04:00
adelikat 27bb2759a6 more mnemonics for saturn 2020-06-15 15:33:54 -05:00
adelikat c5ec8eb0ba saturn - mnemonic for smpc reset button 2020-06-15 14:59:24 -05:00
adelikat 03e2bccf6c remove a debug line of code 2020-06-15 14:49:26 -05:00
zeromus 98b3d8d335 change PSX framerates to follow mednafen instead of nocash (fixes #2138) 2020-06-15 15:10:29 -04:00
adelikat e6a2fe39e1 faust - support virtual pads 2020-06-15 14:02:34 -05:00
adelikat cf3e1d51e0 nyma cores - fixes to mnemonic lookups and add a few overrides 2020-06-15 13:43:23 -05:00
adelikat c8a0b6c323 virtual pads - pce, pcfx - add console buttons 2020-06-15 13:29:31 -05:00
adelikat 25dddf5160 hack to fix Nyma roman numeral buttons, virtualpads - PCE and PCFX fixes 2020-06-15 13:20:40 -05:00
adelikat 3d8920308c remove nyma virtual pad hacks for direcitonal buttons now that nyma buttons conform to typical naming conventions 2020-06-15 13:20:40 -05:00
adelikat 4122a51153 bk2 mnemonic lookup - remove some nyma hacks now that nyma directional buttons conform to the typical naming scheme 2020-06-15 12:59:54 -05:00
nattthebear b8bea93cce Rework nyma controller overrides 2020-06-15 13:37:50 -04:00
nattthebear 5b2b1cf13b Enable SNES and GBA gpu view on linux
I tested the SNES one and it seemed to work.  Don't have any working GBA cores right now in linux, I think?  But no reason to expect it wouldn't work
2020-06-15 10:49:17 -04:00
nattthebear 8e689dae76 Don't lock out the GB gpu view on linux
It works there, why was it disabled?
2020-06-15 10:42:47 -04:00
YoshiRulz 77a810600b
Inline the thing I deleted into somewhere it shouldn't be used, again 2020-06-15 13:09:58 +10:00
YoshiRulz 5f809d8e24
Cleanup N64 controller def init and re-init 2020-06-15 13:03:15 +10:00
nattthebear e5e4983464 waterbox - remove some unused saverammerer junkus
ngp doesn't use this, so...
2020-06-14 20:29:22 -04:00
adelikat 67489bfc3a PCFX - fix virtualpads, support mouse 2020-06-14 16:21:37 -05:00
nattthebear 30fd675903 woops 2020-06-14 16:27:08 -04:00
adelikat 9027223018 PCE - virtualpads - support all the buttons 2020-06-14 15:19:28 -05:00
adelikat cecf29e90a Support PCE mouse in movie mnemonics and virtualpads 2020-06-14 15:19:28 -05:00
nattthebear ecdfc66617 nyma big setting update
Moves a lot of settings around, hopefully addressing some concerns
2020-06-14 16:02:33 -04:00
YoshiRulz 99a5563490
Inline value that was public for some reason 2020-06-15 05:12:14 +10:00
YoshiRulz dbeb279bf0
Add an extension method to help w/ ControllerDefinition init of axes 2020-06-15 04:47:54 +10:00
nattthebear 2707d1cd92 nyma - rework settings architecture a bit
This gives us flexibility to define more featureful overrides
2020-06-14 14:18:13 -04:00
adelikat e41659e237 rough in for gamepad or none virtualpad support for Turbo and Hyper Nyma cores, only 2 button currently supported, support some uppercase button names in mnemonics 2020-06-14 12:02:09 -05:00
adelikat 9dfd6c3fb3 remove nyma button name overrides, they don't help with virtualpads, and ar e a hassle to maintain, we can just consistently be inconsistent for these cores 2020-06-14 11:32:01 -05:00
nattthebear a0aa1fb805 Bare minimum to unbreak some mnemonics 2020-06-14 11:58:00 -04:00
nattthebear 278317685c actualportdata api 2020-06-14 11:47:02 -04:00
nattthebear aa3369a080 Get saturn virtualpad closer to reworking again
This is a mess and we need a new notion of controller definition
2020-06-14 11:33:51 -04:00
nattthebear 7ba3f6db03 saturn - fix crash in dead or alive
It does look pretty awful with interlacing, but that's not something bizhawk is equipped to solve at present
2020-06-14 10:15:05 -04:00
adelikat 3610ca2b4c virtualpads - prevent crash on Turbo and HyperNyma cores, just empty for now, will support these cores later 2020-06-13 18:17:11 -05:00
nattthebear f2b461bed1 nyma - overhaul some input stuff to support some more things
saturn guns and keyboards now work
2020-06-13 18:19:41 -04:00
nattthebear 7f83f311f9 saturnus - wire up the needed analogs for 3d controller 2020-06-13 17:00:59 -04:00
nattthebear 77e3f9acb3 saturn - hide unavailable ports depending on multitap
One slight issue is that the bulitin smpc reset is always "player 13", but that's not enough of an issue for me to care
2020-06-13 16:53:46 -04:00
nattthebear d6cc6abfec pcfx - hide ports based on multitap 2020-06-13 16:50:01 -04:00
nattthebear 13a5e9d102 faust - hide ports 3-5 and/or 6-8 depending on multitap settings 2020-06-13 16:45:06 -04:00
nattthebear 60614ffa7b PCE: Hide controllers 2-5 if multitap is disabled
They have no power in that situation
2020-06-13 16:39:26 -04:00
adelikat 2dd618b6f2 PCFX - remap some buttons, add (bad) mnemonics for mode buttons 2020-06-13 15:21:52 -05:00
adelikat 573b544a88 new pce cores - add some button name overrides, and support mnemonics 2020-06-13 15:11:00 -05:00
adelikat b1c2ed0d3d set movie = null on stop movie, this used to crash tastudio but I can't make it crash anymore, either we fixed the underlying problem or I didn't reproduce it correctly, will fix if it comes up 2020-06-13 14:29:47 -05:00
nattthebear 398d9c45cb Revert "fix nyma button binding label"
This reverts commit 14661f4c76.

Dunno what was going on here, this is a feature that we'll need to fix #2129 and similar... please don't randomly delete code?
2020-06-13 15:08:20 -04:00
zeromus 14661f4c76 fix nyma button binding label 2020-06-13 13:42:45 -05:00
YoshiRulz f48e3cd2ea
Re-enable A/V recording on Linux and add a big ol' disclaimer dialog 2020-06-14 02:59:50 +10:00
adelikat 4c77ebd3d1 remove tastudio hack that I'm convinced is either 1) does nothing 2) causes bugs 3) fixes something that should be handled in a different place in the code 2020-06-13 11:47:21 -05:00
adelikat 51e1ee3a46 MovieSession - simplify and improve performance - remove unnecessary CopyController wrapper on MovieIn, and don't set movie controller state unless recording 2020-06-13 11:38:30 -05:00
adelikat 268ab96ae9 remove built-in multitrack movie recorder, justification: tastudio is a much better alternative, it isn't used, and it's causing strain on better movie architecture, also this logic is easily done via lua script. It could be built from scratch one day in a way that plays nice with better movie architecture, if there's demand, but we need to remove this to keep moving forward 2020-06-13 09:49:25 -05:00
nattthebear 03d10cebb9 Support bsnes on LOO-NICKS
Had to fix up libspeex and some waterbox cothread funsies
2020-06-12 19:10:42 -04:00
adelikat bb2e82c94a GlobalWin.MainForm begone 2020-06-12 16:59:44 -05:00
adelikat 590a2fc245 VirtualPadButton - be more thorough about not responding to keyboard input, instead of focusing on mainform to avoid it 2020-06-12 16:31:38 -05:00
adelikat 336d2fc3a9 simplify EditSubtitlesForm 2020-06-12 15:53:01 -05:00
adelikat ee0d32d56f simplify the EditCommentsForm and remove usages of GlobalWin 2020-06-12 15:29:45 -05:00
nattthebear 25a5449a48 Work around mono marshalling issue
Fixes #2116, but it'd be nice if mono fixed it too
2020-06-12 15:22:46 -04:00
adelikat f21132a2ac move EnsureCoreIsAccurate() out of EmuUtil and back into mainform since it has so many dependencies, including mainform itself, and 50% of its use is in mainform anyway 2020-06-12 13:57:28 -05:00
adelikat ac54318cfb GlobalWin.Cheatlist begone 2020-06-12 13:39:31 -05:00
nattthebear eb811b7d79 Remove check that stops a nymacore from creating "thread" in deterministic mode
The MT ppu renderer in saturn looks cool to me, so it probably won't cause nondeterminism, probably

Fixes #2126
2020-06-12 14:31:09 -04:00
adelikat 61b852c571 remove some unused usings 2020-06-12 12:56:58 -05:00
adelikat 53b0472c1a N64 plugin config - simplify use of GameInfo 2020-06-12 12:56:58 -05:00
adelikat ac61701aa3 GameInfo - simplify 2020-06-12 12:56:58 -05:00
adelikat 4e7e314a33 GameInfo - simplify a method name 2020-06-12 12:56:58 -05:00
adelikat 0c300cf5bf Remove our home-grown ReadonlyDictionary in favor of the built in .net one (as of 4.5 we have one of these built in), Gameinfo.GetOptionsDict() - return IReadonlyDictionary instead of Dictionary 2020-06-12 12:18:50 -05:00
adelikat c81f052f94 GameInfo - demand a value for key params, and force calling code to pass in an empty string if that's what they choose (better would be to pass a bool or a 0/1 even if we don't require it) 2020-06-12 12:11:53 -05:00
adelikat 10c62764ba improve some if checks in OSDManager 2020-06-12 11:58:17 -05:00
adelikat 5ef2a4d7e6 use IGameInfo instead of GameInfo in various palces 2020-06-12 11:56:05 -05:00
adelikat 066e282b39 remove GlobalWin usage in RecordMovie.cs 2020-06-12 11:48:51 -05:00
adelikat 13b6b09771 pass in systemId dependency to PathConfig 2020-06-12 11:36:21 -05:00
adelikat 777a2e8f3e reduce some copy pasta for Bmp file creation across various tool dialogs 2020-06-12 11:14:25 -05:00
adelikat f9fff69ce4 BmpView - use DesignMode flag instead of shenanigans 2020-06-12 10:21:19 -05:00
adelikat 195b01fb44 nitpick 2020-06-12 09:25:05 -05:00
YoshiRulz 5d25d537d1
Hopefully EmuClientApi will now have the loaded emu/game
see f78af85cc, 109ba1d31
2020-06-12 09:47:07 +10:00
YoshiRulz aca3768c78
Align ApiHawk and Lua library names 2020-06-12 09:47:04 +10:00
adelikat 597e010faf use GlobalWin.Game less 2020-06-11 18:31:32 -05:00
adelikat ba939466df Pass an IGameInfo into ToolFormBase and use it in tools 2020-06-11 18:25:34 -05:00
adelikat 109ba1d31a fix NRE on startup for EmuClientApi, this is a band-aid, I think _emulator should never be null 2020-06-11 17:48:41 -05:00
adelikat f1818e7f7e add Api suffix to ApiHawk interfaces, so they will stop colliding with non-api interfaces 2020-06-11 17:40:39 -05:00
adelikat d9ef084e2f add a readonly interface for GameInfo for code that only needs to read, pass into SynclessRecordingTools instead of globals, refactor SynclessReocrdingTools a bit 2020-06-11 17:35:40 -05:00
YoshiRulz 52cc0050b8
Allow ApiManager to pass some extra globals to the 5 EmuHawk APIs 2020-06-12 06:14:32 +10:00
YoshiRulz d2e20a7a1e
Pass MainForm.AllowInput to Input instance as delegate 2020-06-12 05:57:52 +10:00
YoshiRulz b972b8a771
Inline MainForm.IsLagFrame and change global usage in OSDManager 2020-06-12 05:47:23 +10:00
YoshiRulz dc352c0225
Pass globals to EmuClientApi as ctor params 2020-06-12 05:37:04 +10:00
YoshiRulz f78af85cc6
Delegate ClientApi implementation to an instantiable class
The new class, EmuClientApi, is abstracted as IEmuClient, but this interface is
not an IExternalApi. This is because a future commit will add a ctor not
compatible with the current instantiation code in ApiManager.
2020-06-12 05:37:00 +10:00
adelikat a930b5f950 fix typo in a comment 2020-06-11 13:06:27 -05:00
adelikat 8270c5f997 put classes in MultitrackRecording into separate files, and make a few of them internal 2020-06-11 12:27:26 -05:00
nattthebear 638c2095ed Update labelling for every mednacore that we updated
WonderSwan/Cygne did not move to nyma, but I manually backported changes so it counts as "1.24.3" mostly
2020-06-11 12:22:32 -04:00
nattthebear f14dace4a0 Move saturn over to nyma, get latest version. 2020-06-11 12:17:10 -04:00
adelikat 73e2922a0d Fix logic that news up new Rewinders, properly dispose of the Rewinder on closeRom, this might fix memory leaks in rewinder that pre-date the recent refactor 2020-06-10 15:06:34 -05:00
adelikat af93cf3e92 consolidate logic that instantiates a new rewinder, be sure to dispose the old one 2020-06-10 09:15:52 -05:00
adelikat de5508ca6c rewinder - fix potential NRE 2020-06-10 08:56:25 -05:00
zeromus c9c1aa91ad fix temp directory pathing in path manager which was previously making no attempt to do the right thing (fixes #2118). did I do this right? I don't see what was so hard about it in the first place, but I had left a todo there..... i dunno 2020-06-09 23:27:49 -05:00
feos f9ffeec81b we can launch and use mame debugger 2020-06-09 22:34:15 +03:00
feos 9b3e18e992 mame: document build command 2020-06-09 21:43:59 +03:00
feos 36787d7292 mame: obtain rom names and hashes 2020-06-09 21:38:34 +03:00
nattthebear ef02263122 fix mouse on the pcfx core
this was a regression from the move around, it worked before
2020-06-09 13:12:12 -04:00
nattthebear 69e30ee33f Decrease state size in pcfx, pce, pce-fast 2020-06-09 10:09:17 -04:00
nattthebear 9bb56f0b5c move pcfx to nymacore 2020-06-09 08:15:06 -04:00
nattthebear 11e1019590 nyma -- support cd switching
motorcycle shifter, but neutral is before 1st instead of between 1st and second
Yes, I had to rebuild the non cd cores here, and I am sorry
2020-06-08 20:24:30 -04:00
zeromus 9c875b42f4 background thread bootgod loading 2020-06-08 16:45:44 -05:00
nattthebear 481a48fe85 Fix path config on loonix
Somewhere things are being normalized wrong and I don't care to find out where.  This is correct and functional on all systems.
2020-06-08 16:59:04 -04:00
nattthebear db866653c2 Don't try to start d3d on loonix... 2020-06-08 16:48:37 -04:00
zeromus d98bfc82c5 fix threaded DB loading (fixes #2113) 2020-06-08 14:08:50 -05:00
nattthebear b11b50a950 all nyma cores: support constant size framebuffer
this will do lossless integer scaling using mednafen provided screen geometry data
2020-06-08 13:05:31 -04:00
adelikat ddfd6fd49a put IRewinder in its own file 2020-06-08 11:35:19 -05:00
adelikat 799742c3ff IRewinder - dress up the api a bit, fix a potential NRE 2020-06-08 11:29:12 -05:00
alyosha-tas 843c70d6e1
Merge pull request #2111 from LodanZark/patch-1
update msx bios filenames and description
2020-06-08 10:19:14 -04:00
adelikat 11fb1a99bb Rewinder - be more careful about null things, fixes #2112 it seems 2020-06-08 08:32:26 -05:00
nattthebear 6eb4ec4c0d minor cleanup 2020-06-08 07:55:38 -04:00
LodanZark 896612eb4d
update msx bios filenames and description
Updated the msx bios filename based on mame 0.221 and cbios0.29a, this way it fixes the filename conflict while using the feature "Organize" through Firmware Manager.
Couldn't figure it out about the bios_test origin, so I kept that one unchanged.
2020-06-08 03:32:18 +01:00
adelikat 62c6513ee3 ugh 2020-06-07 19:27:14 -05:00
adelikat 10e5df99f1 simplify naming of Rewinder api 2020-06-07 19:26:00 -05:00
adelikat ef9bb3208d simplify Rewinder api a bit 2020-06-07 19:22:08 -05:00
adelikat 225f1e7c59 oops 2020-06-07 19:19:45 -05:00
adelikat 018bed9422 interface Rewinder 2020-06-07 19:12:13 -05:00
adelikat e66e53c15d Rewinder - make IDisposable and new up and dispose of it instead of calling Init/Uninit methods. Tastudio - actually disable rewind on load instead of clearing it, and re-enable it when closing 2020-06-07 19:00:39 -05:00
zeromus 93f06f2a68 oops, fix database loading 2020-06-07 18:43:13 -05:00
adelikat 82c6efd274 Rewinder - take in an immutable version of rewindConfig 2020-06-07 17:34:41 -05:00
YoshiRulz 4cf30f4592
Fix ClientApi.RunningSystem when using new PCE cores (fixes #2109) 2020-06-08 08:06:42 +10:00
zeromus bd8003c725 thread gamedb load 2020-06-07 16:43:50 -05:00
zeromus 3ae6515d2a rename LibTerboGrafix LibTurboNyma 2020-06-07 16:09:32 -05:00
zeromus 741e8b18fd rename TerboGrafix to TurboNyma 2020-06-07 16:07:58 -05:00
zeromus 4f9855665d rename TerboGrafix.cs to TurboNyma 2020-06-07 16:07:12 -05:00
zeromus 8fca454ebf fix copy/paste error for PCE in PromptToSwitchCore? 2020-06-07 16:06:01 -05:00
zeromus d28f827b06 rename TurboTurboNyma and LibTerboGrafixSanic to HyperNyma.. I think 2020-06-07 16:04:05 -05:00
adelikat 060d436a69 add turbo pce core to the movie "inaccurate core" nag list 2020-06-07 14:11:30 -05:00
adelikat 3658638251 remove some unused usings 2020-06-07 13:56:13 -05:00
nattthebear 6b8b021df7 fix crash loading snes 2020-06-07 14:55:41 -04:00
adelikat 71aa667b3b don't put IMovie extensions in separate namespace 2020-06-07 13:35:16 -05:00
adelikat 265a5f3149 fix lots of tools not updating at lots of times, I broke this with tool refactors 2020-06-07 13:28:10 -05:00
adelikat ce19e489ef Global.cs begone! 2020-06-07 13:14:01 -05:00
adelikat acd928afa5 move InputManager from Global to GlobalWin 2020-06-07 13:13:39 -05:00
adelikat 71cb4fbdb0 pass sticky adapter into MovieSession 2020-06-07 13:11:42 -05:00
adelikat c4c820fad3 move MovieSession from Global to GlobalWin 2020-06-07 13:07:09 -05:00
adelikat 8c5538405f move movie input logic from InputManager to MovieSession, multitrack is broken currently, will fix later 2020-06-07 13:03:27 -05:00
YoshiRulz fefdf0d60a
More misc. cleanups in RomLoader 2020-06-08 02:06:52 +10:00
YoshiRulz 40fd96f216
Use out params instead of tuples for multi-return 2020-06-08 02:06:46 +10:00
nattthebear 8c9d9715e2 quicknes - reorder buttons for presentation 2020-06-07 11:42:52 -04:00
adelikat ce2381ea54 nitpicks 2020-06-07 09:30:50 -05:00
adelikat 7ff91c234e InputManager - remove a null check on movie session, it will never be null 2020-06-07 09:30:50 -05:00
nattthebear 8259d908bb Let's not do the same thing 3 times in a row 2020-06-07 10:04:36 -04:00
adelikat 954adf4ab6 remove dependency on an IMovie from GetRetroSaveRAMDirectory, since it shoudl only be getting the directly, not the the filename 2020-06-07 08:31:49 -05:00
nattthebear 2952ac24aa savestates on waterbox 2020-06-07 09:26:08 -04:00
YoshiRulz 95dbd7c20b
Simplify execution path for extension checks 2020-06-07 19:59:18 +10:00
YoshiRulz 81cb8eb094
Pretty sure this is unreachable, HawkFile.Exists is checked earlier 2020-06-07 19:47:27 +10:00
YoshiRulz 977f725de0
Reorder extension checks in LoadRom 2020-06-07 19:45:58 +10:00
YoshiRulz f6f6106ccf
Misc. cleanups in LoadRom and helpers 2020-06-07 19:36:42 +10:00
YoshiRulz 7c9792db58
Remove useless parameters of load helpers 2020-06-07 19:09:29 +10:00
YoshiRulz dffce9ceb4
Extract methods from LoadRom
also move declaration of bool cancel closer to usage
2020-06-07 18:46:49 +10:00
YoshiRulz 347ed0d404
Cleanup Sound ctor 2020-06-07 18:06:35 +10:00
nattthebear 0326bf63d3 Bare minimum fix gpgx lazystates rewinder
This was a lazystates regression -- after lazystates, there is no longer any knowledge in the core of how big the state will be
2020-06-06 18:50:44 -04:00
nattthebear aa48af9c94 linux: support gpgx
as before, do not load state even if your life depends on it
2020-06-06 18:25:59 -04:00
adelikat 4d80b5d4e8 Movie importers - fix importers, broken with recent movie refactors, fix bkm importer, most systems were broken due to contorller definition names changing over the years 2020-06-06 17:17:50 -05:00
adelikat ff61fc3c71 move Global.Game to GlobaWin.Game 2020-06-06 15:11:42 -05:00
adelikat 886c687817 try to detangle Global.Game from advanced loader mess 2020-06-06 15:09:48 -05:00
adelikat cdd5c75488 Move FirmwareManager from Global to GlobalWin 2020-06-06 14:57:37 -05:00
adelikat 981dc95c62 pass FirmwareManager into RomLoader instead of using Global 2020-06-06 14:55:32 -05:00
nattthebear 364d551940 waterbox linux progress
uzem runs.  i don't know about anything else yet.  DO NOT ATTEMPT TO LOAD A SAVESTATE.
2020-06-06 15:51:51 -04:00
adelikat 664c829a30 move Global.Config to GlobalWin.Config 2020-06-06 14:43:46 -05:00
adelikat 5ab7f1a18e pass in an instanced of Config to RomLoader instead of relying on Global.Config 2020-06-06 14:41:11 -05:00
adelikat d8ded66c35 don't use Global.Config in bk2movies, this solution is a bit of shenanigans but it's the least shenanigans I could come up with 2020-06-06 14:29:37 -05:00
nattthebear dcaf504202 Some progress on loonix waterbox
It doesn't work
2020-06-06 14:39:55 -04:00
adelikat 8063393c04 maybe speed up movie state handling a bit by handlign the more likely case of | first, make multitrack and tastudio resistant to unexpected empty lines in the input log 2020-06-06 13:29:26 -05:00
adelikat 1ffa5bc97a simply some movie code a bit 2020-06-06 13:21:10 -05:00
adelikat 877b02e429 Bk2Movie - remove some more copy pasta I missed from an earlier commit 2020-06-06 13:13:30 -05:00
adelikat 420253b6dd break out cheat related config items to their own class, pass this config into CheatList 2020-06-06 12:26:35 -05:00
adelikat 6b22630ab1 cheats - when a cheat is auto-removed, also remove it from the recent cheats list 2020-06-06 12:26:34 -05:00
adelikat 554052f660 Sim;lify CheatList 2020-06-06 12:26:34 -05:00
nattthebear 4a4c59fcda When using dummy sound output, don't crash on exit
My bad -- I had meant to move this outside the if
2020-06-06 12:29:36 -04:00
nattthebear b4517d8e0d Actually respect the no sound output config variable 2020-06-06 12:21:31 -04:00
adelikat e69cedfdfa InputManager - simplify by moving RewrieInputChain logic into SyncControls since it is only called from there, and does similar work 2020-06-06 10:39:40 -05:00
adelikat 3d48376436 InputManager - lock down RewrireInputChain, and have calling code only call SyncControls 2020-06-06 10:37:13 -05:00
adelikat c6edcc4131 remove some vestigial code, no need to RewrireInputChain from MovieSession.QueueMovie, first of all, controls need to be resynced on running of a movie not queuing, secondly, it's already called as a result of a SyncControls() call 2020-06-06 10:32:32 -05:00
adelikat 2bf902b942 remove outdated bk2 "scrub" hotkey, this is an obscure feature that is non-trivial to use, but a higly trivial thing to do in tastudio 2020-06-06 09:58:49 -05:00
adelikat bd1c3cb991 controller config - simplify allow L+R to just a checkbox, where off = "forbid" option, since nobody cares about priority vs forbid, simplify ULDRController and don't use globals 2020-06-06 09:52:29 -05:00
nattthebear e8b84b466b More hacks, just need to unblock yoshi and fix this for real later pinky swear 2020-06-06 10:05:10 -04:00
adelikat 4479202151 move DefaultTasStateManagerSettings to the MovieSettings class allowing to not use Global in TasMovie constructor, also pass stuff in to DefaultGreenzoneSettings instead of using Globals 2020-06-06 08:52:09 -05:00
nattthebear db934f3689 quick hack to hopefully unbreak quicknes on loonix 2020-06-06 08:21:26 -04:00
YoshiRulz 6766e45c5e
Simplify core selection menu code 2020-06-06 21:02:42 +10:00
adelikat 069bdddbba use Session.Settings more in movie classes now that it is never null 2020-06-05 21:17:41 -05:00
adelikat 55bb627550 Move MovieService.Get to IMovieSession, and require an IMovieSession in Bk2Movie and TasMovie ctors, refactor accordingly 2020-06-05 21:09:03 -05:00
adelikat 863d022bc5 fix an NRE I caused in movie code. The old code was wrong, this one is better 2020-06-05 20:10:20 -05:00
adelikat 8303321586 rename method to try to better describe what it does 2020-06-05 19:26:30 -05:00
YoshiRulz ede8877ccf
Move core selection menus out of Designer
Generation is based on a convoluted data structure declared statically in
MainForm. I've removed duplicate core selection options that were present under
system-specific menus, some only when emulating SGB.
2020-06-06 07:45:15 +10:00
nattthebear 6a63373c48 Make use sram default in some cores that have this as an option
true is what end users would expect most of the time.  false is only for advanced use cases.
2020-06-05 14:11:09 -04:00
adelikat 8b5e0ae8fd MovieConccersionExtensionTests - use DataRow and add more scenarios 2020-06-05 13:06:45 -05:00
adelikat bf5aca721e move MovieConversionExtensions 2020-06-05 11:44:12 -05:00
adelikat b22f9e6e01 move methods for Log copying from ITasMovie to IMovie. This bloats the IMovie contract more, but this allows for converting from one IMovie to another without an IEmulator dependency. Refactor conversion extensions to use these methods and remove emulator and movie session dependencies 2020-06-05 10:14:49 -05:00
YoshiRulz b88f20faed
Rename Verison to BizHawk.Version, fixes #2101 2020-06-06 00:20:48 +10:00
nattthebear ad16294b11 Fix gb roms running without bios 2020-06-05 08:50:30 -04:00
TiKevin83 81628bf109
Ports from Upstream GSR for Babs and Robopon (squashed #2091) 2020-06-05 20:27:19 +10:00
adelikat 89789b4358 band-aid fix bk2 to tasproj conversions in tastudio 2020-06-04 20:06:23 -05:00
nattthebear 5319aba113 Remove an unused setting from pce_fast
This was bad copy pasta -- the core doesn't actually support this at all
2020-06-04 20:26:35 -04:00
adelikat d84cd95ab8 oops 2020-06-04 19:23:07 -05:00
TiKevin83 3837ff7cf9
More cleanup to the new tasproj filename code (#2093)
* Test class and basic unit test
2020-06-04 19:21:22 -05:00
adelikat e11509421d simplify the construction of TasMovie but not requiring a startsFromSaveState param that doesn't actually set the movie's StartsFromSavestate bool, it just defined the text of the first marker 2020-06-04 19:20:09 -05:00
alyosha-tas 92bbf768af GBHawk: Fix HuC3 SRAM 2020-06-04 18:34:39 -04:00
adelikat 39636f6ef1 IMovieSession - remove CurrentInput and PreviousInput and move the logic to the one tool that utilizes them. Since these are purely derivable convenience properties, it's better to not be in the spec. If other other needs to do this logic we can move this out to an extension method 2020-06-04 16:37:02 -05:00
adelikat dba9de4f29 remove COreForcingViaGameDb user option. We should not give the user the ability to turn this off. If they are power users and want to overright our db, they can mod the db entries 2020-06-04 16:06:07 -05:00
adelikat d86aabb8b5 remove the "poke frame" hotkey, as this is a very legacy feature, we have a whole tool for this now 2020-06-04 15:30:26 -05:00