YoshiRulz
84cc71e454
Use `DialogResult.IsOk` extension everywhere and clean up
2022-11-07 06:03:55 +10:00
YoshiRulz
36cb62a792
Create and use `ToolStripDropDownItem.ReplaceDropDownItems` extension
2022-11-07 06:03:55 +10:00
YoshiRulz
5df9879842
Refactor `MultiDiskFileSelector.BrowseButton_Click`
2022-11-07 05:27:15 +10:00
YoshiRulz
04f34ac7af
Add `Util.BreakDebuggerIfAttached` helper
2022-11-07 04:37:34 +10:00
YoshiRulz
f1f0f1695c
Encapsulate `OpenFileDialog`/`SaveFileDialog`
2022-11-05 09:10:11 +10:00
YoshiRulz
2db5235319
Cache and reuse `FilesystemFilterSet`s
2022-11-05 09:10:11 +10:00
YoshiRulz
1232157cc1
Improve caching of `FilesystemFilterSet.ToString`
2022-11-05 09:10:11 +10:00
YoshiRulz
1b5ec471e0
Disable SA1015 "Closing generic bracket should be followed by a space"
2022-11-05 09:10:11 +10:00
YoshiRulz
c153505b58
Invert some conditionals to reduce nesting
2022-11-05 09:10:10 +10:00
YoshiRulz
df63853cd5
Add `IDialogParent` interface to a couple of config dialogs
2022-11-05 09:10:05 +10:00
YoshiRulz
8949b1aa6b
Make sure `CheckLib` in `Program` static ctor disposes GUI properly
2022-11-04 07:08:54 +10:00
YoshiRulz
c891cc2cb5
Don't ignore mGBA skip BIOS setting when recording ( resolves #2465 )
...
also disable skip BIOS with TAS profile and enable with Casual profile
also removed `DeterministicEmulation ||= !SkipBios`, does it matter?
2022-11-03 12:04:16 +10:00
YoshiRulz
77f824ab55
Clean up `MGBAHawk.DeterministicEmulation` assignment
2022-11-03 11:56:01 +10:00
YoshiRulz
13a01340de
Refactor Libretro ControllerDef generation, fixing input display
...
see #3360
2022-11-03 11:02:53 +10:00
YoshiRulz
781c152bf6
Remove old ControllerDef copying that was messing with ControlsOrdered
2022-11-03 11:02:52 +10:00
YoshiRulz
a8f571f2d6
Reinstate `GameInfo.NullInstance`'s name, and only instantiate it once
...
reverts 8dcea2470
`PathEntryCollection.RetroSystemAbsolutePath` extension didn't like this, there
may be others, and I don't want to look through them all
2022-11-03 11:02:44 +10:00
YoshiRulz
3e79e68d1d
Dedup in `CheatEdit.GetCheat`
2022-11-02 01:05:12 +10:00
YoshiRulz
414c21609b
Disallow updating cheats when multiple rows selected ( resolves #1726 )
2022-11-02 01:01:09 +10:00
YoshiRulz
5ae23c63bf
Change "Edit" button in Cheats dialog to read "Overwrite"
...
kept the mnemonic because idk
2022-11-02 01:00:16 +10:00
YoshiRulz
fd2772707b
Update `forms.drawImageRegion` documentation with a diagram
...
only embeds on TASVideos Wiki, which I held off on updating because there are a
lot of changes and we can do them all at once
2022-10-30 18:19:23 +10:00
CasualPokePlayer
8ee75879e6
Rework MAME integration a bit
...
The periodic callback is now used as a way to service "commands" sent from the main thread
Upon servicing a command, the mame thread will set the current command to NO_CMD then wait for the main thread allow the mame thread to continue
During this wait, the main thread may optionally set the next command (done here for STEP -> VIDEO), ensuring the next callback will service that command
A dummy "WAIT" command can be sent to trigger this waiting behavior, allowing the main thread to safely touch mame while the mame thread is frozen (important for mem accesses and probably savestates?)
A/V sync is also reworked. We can assume that 1/50 of a second worth of samples will be sent each sound callback. We can also assume 1/FPS of a second worth of time will be advanced each frame advance
So, we can just give hawk 1/FPS worth of samples every GetSamplesSync, if they are available. If we have less (probable on first few frames), we'll just give all the samples, and hope it balances out later.
2022-10-29 17:07:50 -07:00
CasualPokePlayer
cc71882059
BSNES Memory Domain Fixes ( #3423 )
...
* Use SameBoy submodule symlink for BSNES
* SGB memory domains
* Fix SGB saveram issues (extra data like rtc will be saved correctly now here)
* Various cleanups, avoid unneeded unsafe use, a little better EnterExit use
Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
2022-10-28 19:22:49 -07:00
YoshiRulz
02d1542e40
GitLab CI: Switch to Alpine Docker images where possible
...
partially reverts cdeec7cfb
2022-10-27 15:53:02 +10:00
Morilli
256a8617e9
Fix #3399 by always calling UpdateViewerMouseover
2022-10-27 01:30:41 +02:00
YoshiRulz
cdeec7cfb4
GitLab CI: Pin Nix Docker image
2022-10-24 20:25:23 +10:00
CasualPokePlayer
2d6c0af570
Fix oops from fe9e97e505
2022-10-21 18:58:08 -07:00
CasualPokePlayer
fe9e97e505
Fix #3425
2022-10-21 18:52:18 -07:00
Morilli
e073173a8c
Update make-all-cores.sh
2022-10-22 03:18:59 +02:00
CasualPokePlayer
dd33e92a9f
ensure ClockRate in the Bk2Header uses . instead of ,
2022-10-21 02:34:59 -07:00
CasualPokePlayer
c8d4e606af
suppress updates while rebooting core, fixes #3424
2022-10-21 02:19:22 -07:00
CasualPokePlayer
b81728b2dc
Correctly account for multiboot GBA ROMs, fixes #3421
2022-10-20 02:42:31 -07:00
CasualPokePlayer
8f1a0b9bb1
update melonds (TODO: Wire up camera)
2022-10-20 00:47:16 -07:00
Prcuvu
ad85be7bed
Register TCM areas for melonDS core ( #3420 )
...
* Register TCM areas for melonDS core
* reorder mem domains a bit, add TCM to ARM9 System Bus, build
Co-authored-by: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
2022-10-19 23:47:42 -07:00
CasualPokePlayer
f29113287e
add Jaguar to MultiDiskBundler menu
2022-10-11 21:51:26 -07:00
YoshiRulz
cbe298b467
Nix expr: Add FlatBuffers package
...
fixes 158c897702
2022-10-12 14:08:50 +10:00
YoshiRulz
2b4d9c0c7d
Add debug utility to byteswap N64 roms
2022-10-11 10:12:49 +10:00
YoshiRulz
5b859960e9
Move types for debug menu to own files
2022-10-11 10:12:49 +10:00
YoshiRulz
82c3b471a5
Minor refactors to byteswapping (N64 rom loading and Lua bit library)
2022-10-11 10:12:45 +10:00
YoshiRulz
bb4ba2184f
Fix `forms.*` acting on every LuaPictureBox, not the specified one
...
fixes #3395
this has been broken since introduction in 2ddadeae2
2022-10-08 11:11:40 +10:00
YoshiRulz
7930a79cef
Prompt to disable cheats when starting movie playback ( resolves #3389 )
2022-10-08 10:42:10 +10:00
YoshiRulz
28c53cfa21
Fix `APIContainer.Comm` not having `HTTP`/`Sockets` on first boot
2022-10-06 11:53:11 +10:00
CasualPokePlayer
2fa46efda6
add jaguar db, change db parser to prefer the strongest hash available, fix potential edge case if a crc32: prefix is present (and simplify the code)
2022-10-04 22:05:38 -07:00
CasualPokePlayer
5382d4d345
Revert ""cheat" around the lack of pipeline emulation, delaying bankswitches/imask clears (note: branching resets the pipeline)"
...
This reverts commit d5a47490ff
.
2022-10-04 18:10:42 -07:00
CasualPokePlayer
d5a47490ff
"cheat" around the lack of pipeline emulation, delaying bankswitches/imask clears (note: branching resets the pipeline)
2022-10-04 17:58:29 -07:00
CasualPokePlayer
c547a20f8e
Use `LoadOther` for GBS files, cleanup the code a little, update SameBoy version info
2022-10-03 15:49:09 -07:00
CasualPokePlayer
9528a2030f
GBS support using SameBoy
2022-10-03 01:55:14 -07:00
CasualPokePlayer
0c6f0523a0
Update sameboy, expose audio channel enable/disabling, cleanup settings to go through a single call/struct
2022-10-02 21:40:00 -07:00
CasualPokePlayer
7f8b4b8c87
fix whitespace in default controls (fixes 8732e561a1
)
2022-10-02 19:10:13 -07:00
CasualPokePlayer
8732e561a1
Better Jaguar Virtual Width/Height
...
Jaguar VPad
Proper Jaguar default controls
Remove a lot of unneeded `ReSharper disable once UnusedMember.Global` in vpads (Global has been gone for a while now...)
Set VirtualJaguar to released
2022-10-02 18:53:34 -07:00
CasualPokePlayer
71f2676ad8
more virtualjaguar cleanup, fix various bugs, have the DSP run more in sync with the CPU/GPU (makes Zoop boot, Doom is much less laggy, various missing sound issues are no longer present)
2022-10-02 06:50:11 -07:00