kalimag
a3bf347e22
Defer main window resize while minimized/maximized
2024-09-13 23:32:12 +10:00
kalimag
2e4d2ce232
Add option to disable automatic resize of main window (squashed PR #4011 )
...
* Add option to disable automatic main window resize
* Add option to window size submenu
* Rename parameter to `forceWindowResize`
* Add XML doc comments
* Save main window size
* Make `Config.MainWndx `/`MainWndy` nullable
* Reduce total diff size
* Move cast inside of `foreach`
* Remove obsolete workaround
Position isn't saved anymore when minimized
* Combine config values into `Point` and `Size`
* Add `Point` and `Size` to known good serializable types
* Remove doc comment from implementation
2024-09-13 22:17:27 +10:00
CasualPokePlayer
d0482ac787
Fix EGL fixes
...
fixes 3b62a38f1d
2024-09-12 19:54:04 -07:00
Morilli
494dcb1224
start OSDManager cleanup
2024-09-12 18:48:58 +02:00
YoshiRulz
dc582a4e7a
Skip setting `SDL_HINT_VIDEO_X11_FORCE_EGL` on NixOS again
...
see 60fae3540
, 08bd14e80
, and 3b62a38f1
2024-09-13 00:17:55 +10:00
Morilli
89235cc9cf
Make FramesPrompt title readable
2024-09-12 11:10:54 +02:00
CasualPokePlayer
4d71db1089
Add many more missing TMDs
...
resolves #4028
resolves (partially) #3840
2024-09-12 00:36:29 -07:00
CasualPokePlayer
245f0e2271
Don't invoke UB with possibly unaligned memory
2024-09-11 16:26:00 -07:00
CasualPokePlayer
3b62a38f1d
More properly fix EGL issues
2024-09-11 16:26:00 -07:00
Morilli
fdb7a0df46
Remove no-op
2024-09-11 19:51:30 +02:00
Asnivor
6513e2700c
Update readme.md
2024-09-11 16:48:12 +01:00
ASNiVOR
2ec60924d0
[ChannelFHawk] Markdown is the devil
2024-09-11 16:47:02 +01:00
ASNiVOR
958eb454e3
[ChannelFHawk] Update readme
2024-09-11 16:44:40 +01:00
ASNiVOR
fabc7e9aca
[ChannelFHawk] Enable for release
2024-09-11 16:08:34 +01:00
ASNiVOR
58b5f40277
[ChannelFHawk] Add viewport controls as a SyncSetting
2024-09-11 13:43:25 +01:00
Sergio Martin
bf8758e61c
Adding Stella as A2600 emulation core ( #3911 )
...
* Adding initial version of the core
* Adding base files
* Trying to load waterbox now
* Adding stella
* Adding bk class
* Compiling bk interface to stella core
* Now compiling against Stella + SDL2-based BK backend
* Progress
* More progress
* Frame advancing (no render)
* Calling video update but crashing on zero div
* Now rendering to screen with correct palette
* Now rendering appropriately and with correct palette based on region
* Now reading controls
* Trying to capture audio
* Now adding audio
* Now polling inputs
* Now polling inputs
* Now reporting memory regions
* Added memory regions
* Removing debug prints
* Fixing indent
* Adding stella core
* Updating readme and make all cores
* Recovering ending comma
* Using heap alloc for sound buffer
* Removing unnecessary files
* Update src/BizHawk.Emulation.Cores/Consoles/Atari/Stella/Stella.IMemoryDomains.cs
Co-authored-by: James Groom <OSSYoshiRulz+GitHub@gmail.com>
* Update src/BizHawk.Emulation.Cores/Consoles/Atari/Stella/Stella.IMemoryDomains.cs
Co-authored-by: James Groom <OSSYoshiRulz+GitHub@gmail.com>
* Fix
* Restoring vscode
* Removing warning
* Update waterbox readme
* Fix Stella's `[Core]` attr
* Increased sound buffer size to 1Mb, as some games need more than 4K
---------
Co-authored-by: James Groom <OSSYoshiRulz+GitHub@gmail.com>
Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
Co-authored-by: YoshiRulz <OSSYoshiRulz+git@gmail.com>
2024-09-11 08:18:54 +03:00
Moritz Bender
a0800862b3
Refactor InputDisplayGenerator + LogEntryGenerator + ControllerDefinition ( #3782 )
...
* refactor InputDisplayGenerator and LogEntryGenerator handling
* Fix NRE in Tastudio. I can already see this avalanching into 100 different bugs
* cba, revert 48f4e13de and bring back bullshit dummy default MovieController
* Refactor MnemonicCache + make Bk2LogEntryGenerator and Bk2InputDisplayGenerator static. This should simplify stuff and make the logic clearer
2024-09-10 22:19:54 +03:00
YoshiRulz
08bd14e800
Skip setting `SDL_HINT_VIDEO_X11_FORCE_EGL` on NixOS
...
see 60fae3540
2024-09-11 02:57:48 +10:00
Morilli
a955868e04
Fix Cell add exception in SelectBetweenMarkers
...
- closes #3971
2024-09-09 22:44:37 +02:00
YoshiRulz
29c15adbbf
Promote BHI1007 to a build error, fixing some cases and muting others
...
"Don't use target-typed new for throw expressions"
where there was a type name checked-in before being removed,
I've restored it (they were all `Exception`)
2024-09-10 05:42:11 +10:00
Moritz Bender
a72b0f7e8c
Cleanup before/after frame logic in MovieSession ( #4023 )
...
This does change some behavior, but hopefully the new structure is more logical and more correct. Calling HandleFrameAfter from HandleFrameBefore definitely didn't feel proper.
2024-09-08 20:18:37 +03:00
YoshiRulz
09f037544f
Don't set `PrivateAssets="all"` for `System.CommandLine` package
...
fixes d908d7718
2024-09-09 00:26:31 +10:00
kalimag
2d938ae61d
Dispose input files in DiscoHawk
2024-09-09 00:11:15 +10:00
YoshiRulz
e68243fca5
Attempt to restore InputRoll invariant during Select All (see #3971 )
...
I believe this method was already non-atomic so this clear operation
shouldn't change anything
2024-09-08 21:46:04 +10:00
Sergio Martin
aa662eb930
Update quickerNES and add Arkanoid input support (squashed PR #3997 )
...
* Update QuickerNES interface to accept arkanoid controllers
* Updating
* Updating quickernes to its latest version and now supporting ArkanoidNES and ArkanoidFamicom controllers
* Apply suggestions from code review
applying yoshi's suggestions
Co-authored-by: James Groom <OSSYoshiRulz+GitHub@gmail.com>
* Using proper C#
* Updating based on Morilli's comments
* Updating the linux core
* Fixes based on Yoshi's comments
---------
Co-authored-by: James Groom <OSSYoshiRulz+GitHub@gmail.com>
2024-09-08 21:24:27 +10:00
Morilli
5e9d3cd2bc
Implement clone # times hotkey for TAStudio
...
- closes #3992 .
2024-09-08 12:44:17 +02:00
Morilli
b02baf5a6a
reorder TAStudio context menu items
...
they are now better semantically grouped together imo.
2024-09-08 12:40:40 +02:00
RetroEdit
e3fee6f824
movies: normalize loaded hashes to upper case
...
fixes #3979
2024-09-08 19:55:15 +10:00
YoshiRulz
08c215905f
Standardise command-line flags to kebab-case
2024-09-08 19:48:11 +10:00
YoshiRulz
ab129bcf35
Improve documentation of CLI flags (output of `--help`)
2024-09-08 19:48:11 +10:00
YoshiRulz
a55a5ee5a4
Add `--help` command-line flag
2024-09-08 19:48:11 +10:00
YoshiRulz
d908d77186
Replace implementation of `ArgParser` using `System.CommandLine`
2024-09-08 19:48:11 +10:00
YoshiRulz
799f838f13
Manually implement equality on `AxisSpec`
...
fixes 76a30e5d7
2024-09-08 19:30:29 +10:00
CasualPokePlayer
16d51b429d
Actually use IZ80ALink's IRQ/NMI/IRQACK callbacks
2024-09-07 16:50:02 -07:00
Morilli
f6ce041ccf
change FirmwareOptionStatus.Ideal description
...
see #3974 . I see no reason why there can't be multiple ideal firmwares.
2024-09-07 23:49:26 +02:00
YoshiRulz
fa56f2abef
Better document genericisation of virtual CPU classes
...
fixes f3ea6fe02
(#1189 ), 84f4d6ae2
, and 666cb3939
2024-09-08 07:08:45 +10:00
Moritz Bender
f47c58f550
Fix movie header values being potentially outdated upon starting a movie record ( #4010 )
...
* Rename StartNewMovie parameter
* Move PopulateWithDefaultHeaderValues to MainForm.Movie, make private
Author still needs to be set locally
* Make PopulateWithDefaultHeaderValues non-static
* Remove now-unnecessary firmware parameter in RecordMovie
* add TODO comment
* add Prepopulate function before movie load
Now, the main header population happens after the core is reloaded, ensuring all values are in the correct state.
A few movie values still need to be set beforehand though to ensure the core reboot works correctly.
* Allow recording movies even with outstanding reboot
Should be safe now with the previous commit.
2024-09-07 15:27:20 +02:00
YoshiRulz
650c7cae17
Restore end `#nullable` fence
...
fixes 76a30e5d7
2024-09-07 22:26:32 +10:00
Morilli
daedf5ae07
clarify handling in MovieSession.HandleFrameBefore
2024-09-07 14:25:21 +02:00
Morilli
b2131287be
increment rerecords when recording frames in a TasMovie
...
I believe this is more correct than what was previously done. In particular the lag log and statemanager should always be invalidated at the same time. Maybe the `this.IsRecording()` check should be removed altogether?
2024-09-07 14:22:17 +02:00
Morilli
76a30e5d71
random code cleanup
2024-09-07 09:26:13 +02:00
CasualPokePlayer
85d6002673
Put some more callbacks into IZ80ALink; remove MemoryCallbacks in Z80A (it's not actually used at all)
2024-09-06 18:18:41 -07:00
CasualPokePlayer
666cb39392
Implement cpu link interface for z80
2024-09-06 18:02:41 -07:00
CasualPokePlayer
94c9f1eaf6
use new scratchpad mem domain for cheevos
2024-09-06 14:08:06 -07:00
CasualPokePlayer
84f4d6ae28
[ChannelF] Cleanup + optimize some code
2024-09-06 13:43:32 -07:00
YoshiRulz
314f32b95f
Revert "Attempt to fix buttons' labels being invisible on some Forms"
...
This reverts commit 404f28fa64
.
2024-09-07 06:03:21 +10:00
Asnivor
139114acd4
[ChannelFHawk] vars to keep the style gods happy
2024-09-06 19:17:08 +01:00
Asnivor
f826da6286
[ChannelFHawk] Unnecessary comments
2024-09-06 19:13:57 +01:00
Asnivor
de698f05a7
[ChannelFHawk] Revert VRAM back to the correct size and mitigate any index out of range errors in the ClockVideo() method
2024-09-06 19:12:18 +01:00
Asnivor
c8327871af
[ChannelFHawk] Missed a syncing
2024-09-06 18:40:08 +01:00
Asnivor
ad1887589d
[ChannelFHawk] More cleanup
2024-09-06 16:01:04 +01:00
Asnivor
8638f4c550
[ChannelFHawk] Remove random usings
2024-09-06 15:54:14 +01:00
Asnivor
955438d9bb
[ChannelFHawk] Remove obsolute stuff
2024-09-06 15:48:01 +01:00
Asnivor
789a6266fc
[ChannelFHawk] Approximate the clocking of video circuitry rather than generating the framebuffer from RAM at the end of a frame
2024-09-06 15:44:46 +01:00
YoshiRulz
404f28fa64
Attempt to fix buttons' labels being invisible on some Forms
...
The "workaround" in question is `GTK_DATA_PREFIX='' ./EmuHawkMono.sh`,
which I'll be recommending in the short term until I can figure out how
to load or not load it. (Though `GTK_DATA_PREFIX` is likely part of the
answer).
2024-09-06 17:28:29 +10:00
YoshiRulz
a13333b965
Rework doc comment for `IDriveLight.DriveLightIconDescription`
2024-09-06 17:08:10 +10:00
Asnivor
02ecb0ad24
Enhance the IDriveLight interface so that custom tooltip text can be displayed
2024-09-06 17:08:10 +10:00
CasualPokePlayer
0dbc2b0c27
fix ChannelF mnemonics
2024-09-05 17:17:12 -07:00
CasualPokePlayer
be01202c68
Do ChanF platform framerates slightly better
2024-09-05 17:03:41 -07:00
CasualPokePlayer
c17930c40f
Do ChannelF timings a bit better; some cleanups
2024-09-05 16:56:12 -07:00
ASNiVOR
ca104aec8a
[ChannelFHawk] Bk2 Mnemonics
2024-09-05 22:08:27 +01:00
ASNiVOR
81043839c1
[ChannelFHawk] More accurate rates
2024-09-05 21:47:19 +01:00
YoshiRulz
6d05b9874c
Refactor `MainForm.HandleToggleLightAndLink`
2024-09-06 02:33:05 +10:00
YoshiRulz
234c7dda6b
Remove unused import
...
fixes 830760b12
2024-09-06 02:33:05 +10:00
Asnivor
830760b12a
[ChannelFHawk] Launch internal games by passing bios files as a ROM (which in turn contain said internal games)
2024-09-05 17:03:58 +01:00
Asnivor
b3e8182f26
[ChannelFHawk] Implement Channel F II System
2024-09-05 16:47:49 +01:00
Asnivor
cd391a6e88
[ChannelFHawk] Remove the computer thinking activity indicator from the non-chess mappers
2024-09-05 16:23:04 +01:00
Asnivor
c994e7bc84
[ChannelFHawk] Fix the chess (Schach) computer 'thinking' activity LED (the original cart had an LED built into it - we are using the DriveActivity indicator in Bizhawk for this purpose)
2024-09-05 14:16:08 +01:00
Asnivor
1fb56010e6
Fix analyzer run failure
2024-09-05 13:49:12 +01:00
Asnivor
8ae73ed850
[ChannelFHawk] Implement the Sean Riddle multi-cart mapper
2024-09-05 13:41:57 +01:00
Morilli
c77486f88d
simplify float division to modulo operator
2024-09-05 07:14:27 +02:00
Morilli
d9069ea2cc
Simplify PathExtensions.IsAbsolute
...
I've somewhat extensively tested this and this should be good. I've gotten to the point where even `Path.IsPathFullyQualified` returns wrong results (for "\?test"), so I'm not gonna look further.
2024-09-05 06:46:23 +02:00
CasualPokePlayer
fa9c581d19
[ChannelFHawk] Expose scratchpad registers as a memory domain
...
This more or less acts like memory for the ChannelF in practice, due to the actual console lacking RAM. Using debugger apis is very annoying for peeking at these registers and of course you can't just use RAM Watch or the Hex Editor with it locked to debugger apis
2024-09-04 18:48:34 -07:00
CasualPokePlayer
817efd6598
remove debug code from last commit
2024-09-04 18:25:14 -07:00
CasualPokePlayer
1ada77e51f
[ChannelFHawk] Fix off by one for ROM array creation
2024-09-04 18:24:21 -07:00
CasualPokePlayer
7f3a1668d8
[ChannelF] Move PollInput() to before CPU loop, add missing variables to states, fixup usings
2024-09-04 18:18:07 -07:00
CasualPokePlayer
c1ec22c26a
Fix ChannelF settings not being properly saved
2024-09-04 16:01:53 -07:00
CasualPokePlayer
0a7e6c4c00
Don't set ChannelF byte array domains as non-writable
2024-09-04 15:49:35 -07:00
CasualPokePlayer
f67c766469
fix incorrect constant in cheevo code
2024-09-04 15:40:53 -07:00
CasualPokePlayer
425cafe1e8
[ChannelF] Add cart ram to memory domains, ensure loading a savestate keep the correct byte array for memory domains, expose cart ram for cheevos
2024-09-04 15:38:41 -07:00
CasualPokePlayer
60fae3540d
Prefer EGL over GLX
...
should fix Nvidia proprietary driver issues on XWayland
2024-09-04 12:29:05 -07:00
Asnivor
5d37fb1ec2
ChannelFHawk: Default controls and VirtualPad
2024-09-04 17:36:57 +01:00
Asnivor
999c7c2a80
ChannelFHawk: Updating gamedb
2024-09-04 15:48:05 +01:00
Asnivor
323288872b
ChannelFHawk: Audio subsystem now working correctly, Debugger exception fixed, SyncState updated
2024-09-04 09:55:04 +01:00
CasualPokePlayer
7061acbfcf
silence resharper warning
2024-09-03 14:56:47 -07:00
CasualPokePlayer
38c4e51fbd
Add more proper ZX Spectrum memory maps for cheevos
2024-09-03 14:56:47 -07:00
CasualPokePlayer
c778d49b01
Add DTCM to DS/DSi memory maps for cheevos
2024-09-03 14:56:47 -07:00
Morilli
92724aee0b
Use current value from detailed watches in RamSearch
2024-09-03 01:41:02 +02:00
Morilli
e09bfa8ca9
expose Current value in IMiniWatchDetails
2024-09-03 01:40:59 +02:00
Morilli
b90e40ae5c
don't refetch current vale in MiniWatchDetails.SetPreviousToCurrent
2024-09-03 01:40:56 +02:00
Morilli
3b1ce44fb5
Make MiniWatchDetails derive from MiniWatch
2024-09-03 01:40:54 +02:00
Morilli
70f7238d96
fix ChangeCount logic in MiniWatchDetails
...
fixes another case of #4001 for ram search
2024-09-03 01:40:50 +02:00
Morilli
39ca6ce628
fix DearchivalTests
...
bit ugly that opening an archive or checking its type via sharpcompress seeks the input stream, but welp
2024-09-02 21:43:07 +02:00
YoshiRulz
4fc3d9bd40
Update Meziantou.Analyzer and enable new rule MA0160
...
"Use ContainsKey instead of TryGetValue"
I checked the source and MA0159 "Use 'Order' instead of 'OrderBy'" looks
for the LINQ method in the BCL specifically, not by signature, so we
can't replace our bespoke `OrderBySelfAnalyzer` :(
2024-09-02 22:34:11 +10:00
CasualPokePlayer
57d6355083
Use VersionInfo user agent for rcheevos too
2024-09-01 12:41:25 -07:00
YoshiRulz
e9aba0557e
Use correct product name in `User-Agent` value
2024-09-02 05:31:19 +10:00
YoshiRulz
cda23dd38e
Move `User-Agent` value to `VersionInfo` and ensure it's valid
...
fixes e22082c6b
2024-09-02 05:21:56 +10:00
CasualPokePlayer
133ff5a77e
Suppress the context menu if right click has a binding
2024-08-31 19:07:57 -07:00
CasualPokePlayer
e22082c6b4
Set a user agent for HttpCommunication
2024-08-31 19:07:57 -07:00
YoshiRulz
5b5652d01e
Revert "Update VersionInfo.cs"
...
This reverts commit b9d8af8854
.
Per https://github.com/TASEmulators/BizHawk/wiki/Release-checklist this
should be done immediately before release.
The reason for that is to avoid having several values for dev builds
between releases, a "stable API" if you will.
2024-08-31 22:50:44 +10:00
feos
b9d8af8854
Update VersionInfo.cs
2024-08-31 09:46:54 +03:00
YoshiRulz
c138e38951
Ask the user to reconsider quitting if A/V recording ( resolves #4017 )
2024-08-31 12:34:35 +10:00
YoshiRulz
31b0a29d2d
Refactor `MainForm`'s `Closing` handler
2024-08-31 11:37:55 +10:00
CasualPokePlayer
aeda8f1659
Add microphone button for melonDS
...
This changes the behavior so the user just has to press the microphone button to blow the mic, where the volume of the blowing can be controlled with the mic volume axis (but now the neutral value of mic volume is 100 rather than 0)
2024-08-30 17:35:18 -07:00
CasualPokePlayer
1ce8b855c7
remove app.config dpi stuff
...
mono does not like this (fixes #4002 )
2024-08-30 17:11:22 -07:00
CasualPokePlayer
d70daae5d6
Create Contains impl for arrays, fix device id blacklist detection
2024-08-30 16:10:54 -07:00
CasualPokePlayer
c54102b3a6
prevent Broadwell gpus from using GL interop
...
a user reported to me they just get a crash in DxopenDevice, although yet their pc does not have a dual gpu setup, indicating the drivers for their gpu are rather bad
Intel HD Graphics 5500 was the specific gpu, but i'll just be safe and blacklist all of Broadwell
2024-08-30 01:07:15 -07:00
Morilli
ea1dcf5b22
Simplify SearchEngineSettings ctor
2024-08-30 02:23:40 +02:00
Morilli
82fa98fc7d
Ensure the ram search changes column is in a consistent state
...
the settings store whether or not the column should be visible even though that should be controlled by the Mode setting alone
2024-08-30 02:21:39 +02:00
YoshiRulz
10ebea4dda
Ban `BitConverter.To*`
...
I was hoping not to mute this Analyzer for the Cores project, but there
were a couple usages of `BitConverter` there that were too far gone into
dumb territory to fix in this commit
2024-08-30 00:17:01 +10:00
Morilli
15ac8e2905
Fix cursor icon position in horizontal tastudio orientation
...
necessary with 00228a1f20
2024-08-29 08:22:25 +02:00
YoshiRulz
f09e72e7e0
Clean up `WatchValueBox.SetFromRawInt`
2024-08-29 06:43:14 +02:00
Morilli
d479cb4366
Delete ConversionTests.cs
2024-08-29 06:23:56 +02:00
Morilli
a51ed03c02
move ReinterpretAsF32 to a common location and use it more
...
as well as its inverse
2024-08-29 06:17:40 +02:00
Morilli
5588d68e4a
make DifferentBy uint as well
2024-08-29 05:54:05 +02:00
Morilli
b4bcb5755d
fix some exception types
...
can these even occur?
2024-08-29 05:39:48 +02:00
Morilli
6d9c74b7ea
change a bunch of stuff to uint
...
- closes #4001
2024-08-29 05:35:50 +02:00
Morilli
564b916499
remove unused function
2024-08-29 05:35:27 +02:00
Morilli
3c218c6642
Optimize RamSearchEngine.Preview
2024-08-29 05:35:27 +02:00
CasualPokePlayer
53436e81f5
fix GDI+ on Linux (again)
2024-08-28 20:26:00 -07:00
YoshiRulz
ef028dfea4
Add comment to `TasMovie.AddTasProjLumps`
...
fixes 884110e61
2024-08-29 13:11:27 +10:00
Morilli
884110e61a
Fix TasMovie save when TasStateManager is null
2024-08-28 03:47:38 +02:00
Morilli
74dcd81b85
don't control stop movie in TAStudio movie load
...
was removed in b6a0688be0
, and while not strictly required this will leak TasMovies otherwise.
2024-08-28 03:47:38 +02:00
Morilli
8956657a34
lazy-initialize TasStateManager and markers
...
This is a bit of a dangerous change. Ideally this will fix the TasStateManager being initialized twice for loaded movies and have no other noticable effect.
2024-08-28 03:46:14 +02:00
Morilli
532dc06e64
tweak TasMovie.StartNewRecording slightly
...
StartNewRecording is now always called for new tas projects in TAStudio, and the marker change code in there caused the Changes bool to get set and never cleared.
2024-08-27 23:43:55 +02:00
Morilli
b6c031beaa
Update window titles properly in TAStudio
...
Some change at some point removed code that implicitly triggered window title updates, so they weren't always correct now.
2024-08-27 23:41:52 +02:00
Morilli
4194870f6f
Add tasmovies to recent list on load
...
This was removed in 42aa9d991d
, but I don't remember if it was intentional or a mistake.
In any case it feels bad to open tas movies and not get them added to the recent list.
2024-08-27 23:37:48 +02:00
Morilli
00228a1f20
Tweak some InputRoll values
...
- see #3708
A bit experimental, let's just see how it feels.
2024-08-27 18:53:06 +02:00
CasualPokePlayer
3c1248547f
This should be Max, not Min
2024-08-25 22:10:27 -07:00
CasualPokePlayer
0a9c2dc276
Don't allow 0 width/height rectangle to be used with GDI+'s buffered graphics
2024-08-25 22:09:10 -07:00
CasualPokePlayer
f9883f6700
remove ?
2024-08-25 18:32:53 -07:00
CasualPokePlayer
f18c2467de
Undo previous commits, try setting glx depth explicitly (probably isn't what's needed? maybe it is? ehhh)
...
TODO: this seems to be an issue anyways with buggy nvidia drivers under xwayland, perhaps that setup can be detected and forced over to GDI+?
2024-08-25 18:30:10 -07:00
CasualPokePlayer
516a021add
Try making this actually work
2024-08-25 17:37:41 -07:00
CasualPokePlayer
bb456e45be
Try to workaround some Linux Nvidia driver bug
2024-08-25 15:48:14 -07:00
Morilli
436be60222
cleanup and fix GenericDebugger.DecrementCurrentAddress
2024-08-25 21:07:40 +02:00
Morilli
1ea8cf2f36
check disassembler address properly in GenericDebugger.Disassemble
...
- closes #3524
- the address was not checked on the first call
- the comparison needs to be >=, not >
2024-08-25 21:01:06 +02:00
YoshiRulz
93fe2c8b6a
Ban some more BCL methods (not used anywhere)
2024-08-26 02:01:06 +10:00
YoshiRulz
67f87b15c4
Ban runtime asserts without a message
2024-08-26 02:00:50 +10:00
YoshiRulz
8e12e44411
Ban `Control.Focus`
...
"Focus is a low-level method intended primarily for custom control
authors. Instead, application programmers should use the Select method
or the ActiveControl property for child controls, or the Activate method
for forms." --MSDN
2024-08-26 01:21:40 +10:00
YoshiRulz
2dd87d78f9
Use binary literals instead of `Convert.ToByte` in `D64`
2024-08-25 23:34:09 +10:00
YoshiRulz
c882fe4ea5
Add official `BannedApiAnalyzers` and ban some string parsing methods
2024-08-25 23:31:16 +10:00
YoshiRulz
846253760e
Extract more helpers for finding Lua forms/controls by handle
2024-08-25 03:49:57 +10:00
YoshiRulz
b69e466c03
Extract constant in `FormsLuaLibrary`
2024-08-25 03:39:29 +10:00
YoshiRulz
a1faf8bf0a
Speed up `forms.*` by knowing that form/control handles are unique
2024-08-25 03:39:13 +10:00
YoshiRulz
170d1a62ed
Add warning message for Lua functions called with mismatched x/y/w/h
2024-08-25 03:39:02 +10:00
YoshiRulz
884fee6c6d
Encapsulate x/y/w/h checks in `FormsLuaLibrary`
2024-08-25 03:39:02 +10:00
YoshiRulz
ecaece0488
Fix Lua forms having a blank title when not specified
2024-08-25 03:39:01 +10:00
YoshiRulz
c3057298f9
Fix `forms.destroyall` not clearing the list
2024-08-25 03:39:01 +10:00
YoshiRulz
681a5764d6
Fix LuaPictureBox functions only working on the first form
...
fixes 672536305
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
2024-08-25 03:38:58 +10:00
YoshiRulz
bda40c7ba3
Dedup `forms.{drawString,drawText}` implementations
2024-08-25 03:38:41 +10:00
YoshiRulz
b99a3831e9
Change return type of `BootGodDb.Identify` to `IReadOnlyList`
2024-08-23 16:51:40 +10:00
YoshiRulz
fc446868a7
Fix `BootGodDb.Identify` mutating lookup
...
fixes f010d6f80
, 633216be1
2024-08-23 16:45:44 +10:00
Morilli
8c9587e00b
Fix BootGodDB lookup being completely broken in quicknes
...
- closes #3703
Presumably broken since e38726db50
.
2024-08-22 23:15:20 +02:00
Morilli
f010d6f802
Fix bootgod exception on missing game hash
...
fixes 633216be14
2024-08-22 22:54:21 +02:00
YoshiRulz
7dfb624427
Remove `WorkingDictionary<K, V>`
2024-08-23 02:53:30 +10:00
YoshiRulz
34d71e90bc
Add more `GetValueOrDefault` overloads
2024-08-23 02:53:30 +10:00
YoshiRulz
72b2e78957
Refactor `AutoFireStickyXorAdapter.IncrementLoops`
2024-08-23 02:49:47 +10:00
YoshiRulz
5dd3dc7ae5
Refactor `AutofireController.{IsPressed,LatchFromPhysical}`
2024-08-23 02:49:47 +10:00
YoshiRulz
384e4c913c
Short-circuit loops in `{,Autofire}Controller.LatchFromPhysical`
2024-08-23 02:49:47 +10:00
YoshiRulz
633216be14
Remove `Bag<K, V>`
2024-08-23 02:48:03 +10:00
YoshiRulz
ba4c406a36
Add names to bool argument in `TAStudio.StartNewMovieWrapper` calls
...
fixes b6a0688be
2024-08-22 22:44:14 +10:00
YoshiRulz
325880be18
Further cleanups to `MainForm.ProcessInput`
...
fixes 2f5dfcea3
2024-08-22 22:40:42 +10:00
Morilli
2f5dfcea33
simplify variable assignment
2024-08-22 13:34:39 +02:00
Morilli
17733e38f7
Check all individual buttons with input key priority
...
- closes #3842
If any of the pressed buttons is an input, don't trigger any hotkeys.
2024-08-22 13:33:56 +02:00
Morilli
f07c689c58
Improve horizontal TAStudio layout a bit
...
see #3708
2024-08-22 01:30:46 +02:00
Morilli
b6a0688be0
simplify TAStudio movie starting
...
- removes HandleMovieLoadStuff, which should ™️ not be necessary
- pass newMovie parameter into MainForm.StartNewMovie. This is currently probably irrelevant, but useful later
2024-08-21 22:24:39 +02:00
Morilli
1c44dc5913
don't create undo steps when setting TasMovie.StartsFromSavestate
...
A movie either starts from a savestate, or doesn't. It should not be possible to undo the marker changes done when setting this value.
2024-08-21 22:12:32 +02:00
YoshiRulz
c2a336647c
Use `Type.EmptyTypes` in `MovieImport.ImportFile`
2024-08-21 22:15:14 +10:00
kalimag
4e85a71d53
HexEditor "File on Disk" fixes (squashed PR #3998 )
...
* Fix keeping rom domain selected
* Turn unnecessary field into local
* Handle `null` return from `GetRomBytes()`
* Simplify `GetRomBytes()`
* Add try-catch around opening rom file
2024-08-21 15:59:39 +10:00
CasualPokePlayer
b9cd4a93cc
Remove unneeded modifer
2024-08-20 15:23:36 -07:00
CasualPokePlayer
02acd542c2
Guard against cheat codes in RetroAchievements' hardcore mode
...
originally I thought just blocking the cheat window would be enough, but autoloaded cheat codes could sneak through. An actual check for cheat codes being active prevents this being an issue.
2024-08-20 15:22:39 -07:00
Morilli
beab2b141b
Only force a core name if one exists
...
This could actually not be the case for imported movies for example and is handled elsewhere, but this force parameter breaks rom loading completely when QueuedCoreName is empty.
2024-08-20 23:10:38 +02:00
Morilli
cdd7ee1fea
Improve missing firmware dialog readability
...
see comment here: https://github.com/TASEmulators/BizHawk/issues/3980#issuecomment-2269483563
2024-08-20 23:09:16 +02:00
Morilli
8d4c29a64f
ensure updated core settings are always saved in config
...
- closes #3966
2024-08-18 23:12:24 +02:00
RetroEdit
3ede77b8b7
Change OnMovieEnd default to 'Pause' instead of 'Finish' ( #4008 )
2024-08-18 18:45:04 +03:00
YoshiRulz
d9331c5a28
Add feature flag to disable the gamedb
2024-08-18 16:21:51 +10:00
YoshiRulz
c319bf5fb8
Fix LINQ chain in `FirmwareManager.DoScanAndResolve`
...
fixes 963b925a1
2024-08-18 16:09:31 +10:00
Morilli
963b925a1a
prefer ideal firmware over acceptable firmware
...
see #3974
2024-08-18 03:30:31 +02:00
Morilli
fa08002fbf
don't set quickNES's priority to low
...
it's the preferred core after all, this doesn't make sense
2024-08-18 03:28:56 +02:00
Morilli
92399482d4
also search in descriptions in the lua functions filter
...
- closes #3651
2024-08-18 02:46:57 +02:00
Morilli
e893e3a1ff
Cleanup CueFileResolver
...
also closes #3532
2024-08-18 02:38:23 +02:00
Morilli
7c89bda312
update displaymanager on rom load failure
2024-08-17 22:26:10 +02:00
Morilli
9085bd6e0c
Set correct GameInfo even when rom loading failed
...
- closes #3986
(maybe this should be in CloseGame as well?)
2024-08-17 22:25:55 +02:00
YoshiRulz
60366c13b5
Fix signature of `IMemoryApi.WriteFloat`
2024-08-16 22:49:35 +10:00
YoshiRulz
70b640240e
Simplify boolean comparison
...
this was getting flagged in CI but not on my machine
2024-08-16 21:09:38 +10:00
YoshiRulz
6b160d9bd0
Revert RAM Search refactor (PR #3954 )
...
reverts 1a9e5e52f1
2024-08-15 01:57:47 +10:00
YoshiRulz
0f22ef2ad0
Revert "Change ToRawInt to ToRawUInt"
...
This reverts commit 542e043261
.
2024-08-15 01:53:59 +10:00
YoshiRulz
0184bcd0af
Restore numeric values for `PreviousType` enum
...
fixes 1a9e5e52f
2024-08-14 00:38:12 +10:00
kalimag
ab7f379e74
Correct rewind dialog typo
2024-08-09 19:41:52 +10:00
YoshiRulz
a1aaabe8d5
Add ctors to `LoadRomArgs` and `OpenAdvanced_OpenRom`
2024-08-09 13:36:27 +10:00
YoshiRulz
12310befff
Remove IOpenAdvanced parsing from places unrelated to recents menu
2024-08-09 13:36:22 +10:00
YoshiRulz
9f5a5d8593
Fix crash due to mutating `ToolManager._tools` while enumerating it
...
resolves #3983
2024-08-06 02:11:17 +10:00
kalimag
cdf79d3593
Make external tools path independent of working directory (squashed PR #3987 )
...
* Make external tools path independent of working directory
* Add `ExternalToolsAbsolutePath` extension
* Use absolute path for external tool dependencies as well
2024-08-06 01:56:10 +10:00
CasualPokePlayer
494fe90bfc
fix Tilt Y in 3ds schema
2024-08-05 00:47:49 -07:00
CasualPokePlayer
a675e882fe
avoid double compressing zstd zip entries
2024-08-04 15:08:53 -07:00
CasualPokePlayer
7ebb89fec9
release Encore
2024-08-04 14:30:43 -07:00
CasualPokePlayer
618f66f970
Add 3DS virtualpad schema
2024-08-04 14:26:48 -07:00
CasualPokePlayer
91de8608af
Do image/texture caching better
...
also don't try to cache the sampler / avoid set sampler calls (the sampler is not pipeline specific, so it's affected by other pipelines setting the sampler)
2024-08-03 23:59:20 -07:00
YoshiRulz
2b371e2752
Fix Gambatte and SameBoy palette load file pickers using wrong dir
...
fixes 348cbd18d
2024-08-04 03:46:13 +10:00
YoshiRulz
1bc1f1b3d2
Add overload for `IGuiApi.WithSurface` with stronger encapsulation
2024-07-26 16:03:02 +10:00
YoshiRulz
7b644f771e
Use `System.Drawing.Primitives`
2024-07-26 10:33:20 +10:00
kalimag
413fd40b46
Fix fuzzy cue file resolving
...
Partially revert 7cde8bb
2024-07-25 16:46:28 +10:00
James Groom
3a8b3913bf
Fix Uzebox framerate (squashed PR #3975 )
...
These numbers are derived from the 2010 whitepaper:
NTSC's 4*(315/88 MHz) is doubled to give the master clock rate, which is
then divided by 1820 cycles per line and 262 lines per (progressive)
frame.
---------
Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
2024-07-24 07:31:34 +10:00
YoshiRulz
8fda95066c
Fix value being cached when it shouldn't in `InputRoll.LastVisibleRow`
...
resolves #3972
partially reverts dd4f9aaf6
2024-07-21 06:28:31 +10:00
Morilli
cc1b9c5903
TAStudio: access CurrentTasMovie before stopping it
...
fixes 4c39a81228
- closes #3973
2024-07-20 08:15:10 +02:00
Morilli
5fd3575c0f
Improve tastudio refresh behavior in tastudiolualibrary
...
should resolve #3969 . Let's hope this doesn't break anything.
There still seems to be some overhead, but I can't profile this so I can't say whether it's from submitclearframes or applyinputchanges.
2024-07-20 07:56:52 +02:00
YoshiRulz
cee9661f0e
Reduce indentation in `Bk2Controller.SetFromMnemonic`
2024-07-20 13:41:49 +10:00
YoshiRulz
151491c844
Use an array for `Bk2Controller.ControlsOrdered`
2024-07-20 13:39:37 +10:00
YoshiRulz
1049a091c0
Convert `Bk2Controller.ControlMap` to a struct
2024-07-20 13:38:40 +10:00
YoshiRulz
b7a851ea92
Set default window scale for WonderSwan to 3x
2024-07-19 07:27:13 +10:00
Morilli
15125ec11f
Improve tastudio lualibrary speed
...
see #3969
2024-07-18 02:15:07 +02:00
Morilli
f59cfb1710
set current branch properly in TAStudio movie load
...
apparently, GoToFrame might frameadvance, which in turn calls UpdateAfter(), which in turns updates the current selected branch in the TasSession with the value of the current movie.
So, we need to set the current movie's current branch from the session's value before it gets deleted.
- closes #3968
2024-07-17 22:46:00 +02:00
YoshiRulz
9a5a75e5bb
Add some helpers to `BitmapBuffer`
2024-07-16 08:08:41 +10:00
YoshiRulz
d7e9668d50
Add and use `Span`-from-`IntPtr` helper
2024-07-16 07:30:09 +10:00
YoshiRulz
f742fe55d5
Refactor `ToolManager.Close`
...
that ought to cover everything
2024-07-16 04:09:01 +10:00
YoshiRulz
f9cdad2ea6
Move system-specific helpers in `MainForm` to separate file
2024-07-14 05:40:25 +10:00
YoshiRulz
e49c4689de
Minor refactors to system-specific helpers in `MainForm`
2024-07-14 05:34:42 +10:00
YoshiRulz
b2184e46d5
Clean up some `DropDownOpened` handlers for disk switch submenus
2024-07-14 05:31:04 +10:00
YoshiRulz
65979e61ec
Reduce indentation in system-specific helpers in `MainForm`
2024-07-14 05:25:36 +10:00
YoshiRulz
2321bc55e6
Add `LoadedCoreIsNesHawkInVSMode` helper prop in `MainForm`
2024-07-14 05:10:23 +10:00
YoshiRulz
f21c8b914c
Refactor `MainForm.EnsureCoreIsAccurate`
2024-07-13 01:21:45 +10:00
YoshiRulz
1fdacd762a
Refactor `yield`ing methods to conventional LINQ
2024-07-12 14:42:11 +10:00
YoshiRulz
dfe8b1308c
Refactor `yield`ing methods to direct, stateless returns
2024-07-12 14:42:10 +10:00
YoshiRulz
166f1d537e
Comment-out unused `DiskBuilder.BamEntry.Entries` (C64Hawk)
2024-07-12 14:42:10 +10:00
YoshiRulz
fc8fd64143
Simplify `DiskBuilder.BamEntry.GetBytes` (C64Hawk) implementation
2024-07-12 14:42:10 +10:00
YoshiRulz
18bc51f5e7
Simplify `IDisassemblable.AvailableCpus` implementations
2024-07-12 14:42:10 +10:00
YoshiRulz
da06dae80c
Decrease indentation in `InputRoll.GenerateContextMenuItems`
2024-07-12 14:42:10 +10:00
Morilli
c5820f0c0f
TAStudio: don't select branch when none exists
...
-closes #3967
2024-07-12 06:03:14 +02:00
YoshiRulz
616437ff31
Restore exception message in `SavestateFile.Create`
...
partially reverts e9d6716a3
2024-07-12 08:09:59 +10:00
YoshiRulz
ee0c0a80d0
Bump supported Win10 version
2024-07-12 01:51:28 +10:00
Morilli
e9d6716a33
Fix savestating being possible after movie has finished
2024-07-10 21:03:59 +02:00
CasualPokePlayer
662fd83f5e
Prevent user changing clock stopping message pumping
...
TODO: Audit other usages of DateTime.Now assuming it is monotonic (also use DateTime.UtcNow where applicable to avoid DST causing issues)
2024-07-10 01:51:28 -07:00
YoshiRulz
e44810a725
Fix stacktraces for `RangeToExclusive` extension
2024-07-10 13:30:35 +10:00
YoshiRulz
00c103da0b
Remove unused import
2024-07-10 13:20:55 +10:00
CasualPokePlayer
d8431d615e
Avoid zealously copying the entire video buffer
...
this might be larger than bufferwidth*bufferheight, and thus possibly dramantically decrease screenshot/dumping performance
2024-07-08 16:29:51 -07:00
Morilli
57e3c47bcc
Fix InputRoll not updating CellHeight and CellWidth on padding change
2024-07-08 19:21:35 +02:00
YoshiRulz
0d2844d1fd
Improve docs on `Config.CorePickerUIData`
...
fixes 14cf4b348
, 81e2b5b47
, and bbb3b4cd7
2024-07-08 23:57:58 +10:00
Morilli
bbb3b4cd7d
Update comment on CorePickerUIData
...
also restore systemid default core restore logic that exists for some reason
2024-07-08 06:26:57 +02:00
Chris Siebert
45002e6870
Fix NesHawk tracelogs sometimes using 32-bit addrs (squashed PR #3964 )
...
specifically, only for the few instructions in this diff, and only when the PC would over- or underflow as a result of the offset
2024-07-08 11:26:34 +10:00
Morilli
81e2b5b47b
Make preferred core labels more verbose
...
they now display all system choices that they set instead of just the first
2024-07-08 03:03:34 +02:00
Morilli
d74b130c22
Add preferred core picker choice for Satellaview
...
idk if this list is supposed to be sorted because it kinda isn't?
2024-07-08 03:00:47 +02:00
YoshiRulz
2a5d4b903c
Add Analyzer to disallow `^= true`
2024-07-08 10:39:06 +10:00
YoshiRulz
c99d2212b2
Dedup `MainForm.CheckHotkey` with existing helpers / event handlers
2024-07-08 09:27:21 +10:00
YoshiRulz
d515b1bdad
Document bare minimum of CLI flag parsing behaviour
2024-07-08 04:05:12 +10:00
YoshiRulz
5e5f5772c6
Enable Analyzer rules re: blank doc comments and fix noncompliance
2024-07-08 01:37:22 +10:00
YoshiRulz
9a82dfd05f
Enable SA1517 and fix noncompliance (except in Cores)
...
"Code should not contain blank lines at start of file"
2024-07-08 01:17:05 +10:00
YoshiRulz
39b69641a6
Enable SA1506 and fix noncompliance
...
"Element documentation header should be preceded by blank line"
also fixes typo in rule config from c93a0f9d1
2024-07-08 01:13:06 +10:00
YoshiRulz
c93a0f9d1b
Enable SA1514 and fix noncompliance (except in Cores)
...
"Element documentation header should be preceded by blank line"
2024-07-07 12:12:08 +10:00
feos
ee9639a6fc
video dumper: mention dependency for AVC AVI
2024-07-06 19:05:33 +03:00
Morilli
4c39a81228
Remove unnecessary duplicated actions in TAStudio
...
this should not change any behavior.
2024-07-06 17:39:52 +02:00
Morilli
d161215754
Don't control reboot in TAStudio
...
There seems to be no good reason for why this would be necessary. TAStudio behaves just fine when the MainForm reboots itself.
2024-07-06 01:56:13 +02:00
Morilli
74970cc576
Remove unnecessary Thread.Sleep(0)
...
In this same loop we are already sleeping when necessary, so this Thread.Sleep(0) could only add unwanted delay
2024-07-05 19:21:42 +02:00
CasualPokePlayer
e48e6c69f2
respect GreenZoneSettings.txt even if greenzone is missing; fix ClientSettings.json loading (probably regressed in 42aa9d991dc3dde03234a15ddfdc2efdebf1c097?)
2024-07-04 21:34:09 -07:00
YoshiRulz
1c302e56db
Fix default arguments in `override`s which don't match the declaration
...
not enabling the relevant Analyzer rule MA0061 since that also triggers
when the override omits the default argument
2024-07-04 06:43:43 +10:00
YoshiRulz
1f7d75b7d2
Enable MA0044 and fix noncompliance
...
"Remove useless ToString call" (on a `string`)
2024-07-04 06:36:57 +10:00
YoshiRulz
9f0009b972
Use `HashCode.Combine` instead of `string.GetHashCode` + XOR
...
may write an Analyzer for this later
2024-07-04 06:31:44 +10:00
YoshiRulz
8546618c9a
Remove unused import
...
fixes da25438b1
2024-07-04 06:23:26 +10:00
YoshiRulz
da25438b1f
Remove redundant `Stream.Read` result check in `LsmvImport`
...
fixes a7e1c8fd0
2024-07-04 06:18:54 +10:00
YoshiRulz
b818f5325a
Enable MA0040 and silence remaining case
...
"Flow the cancellation token"
2024-07-04 05:48:35 +10:00
YoshiRulz
a7e1c8fd09
Enable MA0060 and fix noncompliance (except in Cores)
...
"The value returned by Stream.Read/Stream.ReadAsync is not used"
2024-07-04 05:12:58 +10:00
YoshiRulz
a329d44e41
Enable MA0090 outside of Cores project
...
"Remove empty else/finally block"
2024-07-03 23:11:48 +10:00
YoshiRulz
c4498685c2
Enable MA0091 and fix noncompliance
...
"Sender should be 'this' for instance events"
2024-07-03 23:10:57 +10:00
YoshiRulz
67edf3f047
Enable MA0070 and fix noncompliance
...
"Obsolete attributes should include explanations"
2024-07-03 23:10:19 +10:00
YoshiRulz
152b3ad6f5
Enable MA0057 and fix noncompliance
...
"Class name should end with 'Attribute'" (when subclassing `Attribute`)
2024-07-03 23:08:23 +10:00
YoshiRulz
3fb0afa05e
Use a global import for `MS.VisualStudio.TestTools.UnitTesting.*`
2024-07-03 22:51:48 +10:00
YoshiRulz
ccb69b18a9
Use a global import for `System.*`
2024-07-03 22:51:48 +10:00
YoshiRulz
c0b676647b
Enable MA0104 and silence remaining cases
...
"Do not create a type with a name from the BCL"
2024-07-03 22:51:47 +10:00
YoshiRulz
1be3531e7c
Rename `GBHawk.Timer` to `GBHawk.GBTimer`
2024-07-03 22:51:47 +10:00
YoshiRulz
91c48117a3
Rename `BizHawk.BizInvoke.ParameterInfo` to `InvokerParameterInfo`
2024-07-03 22:51:47 +10:00
YoshiRulz
db2782ca1b
Enable MA0140 and fix noncompliance (except in Cores)
...
"Both if and else branch have identical code"
see 618951403
2024-07-03 22:51:47 +10:00
YoshiRulz
c188feb50c
Move `SimpleGDIPDisplayManager` to `BizHawk.Client.Common`
2024-07-03 22:51:19 +10:00
YoshiRulz
db8454a0ff
Fix testroms project compilation
...
fixes e8c957a7a
2024-07-03 22:49:01 +10:00
YoshiRulz
c6101a190e
Update StyleCop and other Analyzers
2024-07-03 20:44:25 +10:00
YoshiRulz
504ba590b1
Switch to `string.Replace(char, char)` and `string.LastIndexOf(char)`
2024-07-03 20:44:21 +10:00
YoshiRulz
0067dd4b0a
Extract helper method `HawkFile.PathContainsPipe`
2024-07-03 20:38:46 +10:00
YoshiRulz
43d16473d8
Backport `string.Contains(char)` and `string.EndsWith(char)`
2024-07-03 20:35:35 +10:00
YoshiRulz
ad8b4653d4
Simplify `MovieImporter.SingleSpaces`
2024-07-03 19:43:43 +10:00
YoshiRulz
759784a648
Fix bug in PCEHawk's tracelog
2024-07-03 19:39:38 +10:00
YoshiRulz
17a268934e
Remove outdated comment
...
fixes b842f3ed1
2024-07-03 18:47:16 +10:00
feos
fd40b32277
uae: for testing writing to floppy
2024-07-02 21:38:42 +03:00
Morilli
04e9bf054e
Fix core reboot flag on preference change
...
This now checks core names instead of system ids
2024-07-02 02:14:07 +02:00
feos
97dc7108c3
uae: "support" rds and reduce magic
2024-06-30 15:48:08 +03:00
CasualPokePlayer
86943143f3
Fix SGM domains using stale arrays after state load
2024-06-28 22:37:56 -07:00
Morilli
384b08a7b7
Fix customization options dialog text overrun
...
Should now display all text on screen without cutting off.
2024-06-27 20:43:59 +02:00
Morilli
12981dc6df
Add column name tooltip to column headers in TAStudio
...
- closes #3124
2024-06-27 02:45:22 +02:00
Morilli
2860a0189c
Regenerate designer files after changes in last commit
...
restores previous default values after default changes in 7414aea850
2024-06-27 02:07:19 +02:00
Morilli
7414aea850
Fix InputRoll DefaultValue not matching initialized value
2024-06-27 01:54:37 +02:00
Morilli
722de0c765
Render before throttling
...
By putting the throttle step after the render step, the screen will be updated with the emulated frame's video output immediately instead of having to wait for the throttle sleep to complete.
In scenarios where running the core is relatively cheap (<< 1 / fps), this should noticably improve visual latency while playing.
For example, assuming a 60fps game (~16.7ms per frame), 5ms core update and 1ms render time, there will be a 10-11ms earlier render.
2024-06-26 23:32:51 +02:00
Morilli
b3a1d5eb13
Increase input thread polling frequency
...
This does not have a significant impact on cpu usage in my testing (~+0.5% cpu on a 4-core system) and should improve input latency by 4ms on average.
2024-06-26 23:25:35 +02:00
Morilli
bf82d95e0d
Respect background input setting for axis values
...
- closes #3957 .
Previously, axis values were always set, even when that setting was offf.
2024-06-26 23:19:56 +02:00
CasualPokePlayer
64ef1bfc17
Make NDS sys bus hack work better
...
fixes e6f8450685
2024-06-24 19:22:51 -07:00
CasualPokePlayer
ce1df52af2
Fix ToSysdrawingBitmap(Bitmap) when bitmapbuffer does not have alpha
...
see https://tasvideos.org/Forum/Posts/530047
2024-06-24 12:27:51 -07:00
Morilli
31b8bedad7
Allow exporting bk2 from TAStudio without saved tasproj
...
- closes #3504 .
This also makes the bk2 export always open a file picker dialog when the file to be written already exists instead of just asking for overwrite.
2024-06-24 18:19:34 +02:00
Morilli
e6f8450685
Fix NDS System Bus name being invalid
...
- closes #3535
2024-06-24 13:49:11 +02:00
Morilli
d7b92cbb72
Apply some free optimizations to TasMovieMarkerList
2024-06-24 12:05:45 +02:00
Morilli
1c3f7204bd
Fix TAStudio branch load not cloning markers
...
-closes #3899
2024-06-24 11:59:38 +02:00
YoshiRulz
f468d4ad01
Offer 1-click update/add cycle count when at end of movie
2024-06-24 03:42:09 +10:00
YoshiRulz
478d375fe5
Minor refactors to `MovieSession.HandlePlaybackEnd`
2024-06-24 00:29:18 +10:00
Morilli
8935a3a676
Don't attempt to load recent tas after restart if it's diferent from the current tas
2024-06-23 04:59:25 +02:00
Morilli
6cbf06d444
Enable the Movie menu even with no core loaded
...
- resolves #3570
2024-06-23 04:24:17 +02:00
Morilli
3841d88268
Regenerate MainForm.Designer.cs
...
this is not a functional change. I changed something, did ctrl+z and saved.
2024-06-23 02:53:49 +02:00
Morilli
e1af631af6
Apply some sketchy nullable related changes
...
TasView_PointedCellChanged will now not short-circuit when the OldCell has null values (happens on MouseEnter mainly).
Also, null column is accepted as this allows dragging off-control without input being dropped.
Also, OldCell and NewCell are assumed to never be null (is true in the current logic).
2024-06-23 02:11:37 +02:00
Morilli
8278b30579
Do local selection check in TasView_PointedCellChanged
2024-06-23 02:09:00 +02:00
Morilli
cfc76ee47a
Fix subframe core check in tastudio bk2 exporting
2024-06-22 23:04:03 +02:00
Morilli
ad1f4f40b5
Fix cheat compare value saving
...
- closes #3567 , closes #3523
2024-06-22 21:13:37 +02:00
Morilli
6364475b21
Fix potential crash in savestate loading
...
Also throw when attempting to create such an invalid savestate. No idea yet how that can happen but apparently it can.
2024-06-22 01:41:01 +02:00
Morilli
aeb80e5810
Implement DragDrop for MultiDiskBundler
...
- closes #3950
2024-06-21 20:15:10 +02:00
Morilli
542e043261
Change ToRawInt to ToRawUInt
...
I firmly believe this has advantages. Don't ask me which.
Also move ReinterpretAsF32 to BizHawk.Common and use it more
2024-06-21 17:14:11 +02:00
CasualPokePlayer
a11077ef4e
Revert "Simplify MainSlnExecutable.props"
...
This reverts commit 1edddb2126
.
2024-06-20 16:21:58 -07:00
CasualPokePlayer
1edddb2126
Simplify MainSlnExecutable.props
...
makes it play nicer with Rider WinForms designer and is much simpler than what was present before
also not sure where the "TargetName changing AssemblyName" behavior actually came from, testing on Rider/dotnet build/VS2022 all yield no changes to AssemblyName, so I assume this is fine
2024-06-20 15:16:48 -07:00
Moritz Bender
256218305b
Refactor IControlMainform handling in Mainform ( #3935 )
...
This allows any loaded tool to control any aspect of `IControlMainform` independently of others. Also improves rewinder handling when any tool `WantsToControlRewind`.
2024-06-20 19:16:11 +02:00
Moritz Bender
1a9e5e52f1
Refactor RamSearch to increase speed and improve functionality ( #3954 )
...
- merges `IMiniWatchDetailed` and `IMiniWatch` into one
- allow switching search modes without restarting the search
- general speed improvements due to less peeks when e.g. auto-search is toggled
- removes `PreviousType.LastSearch` due to its questionable use case
2024-06-20 18:25:15 +02:00
CasualPokePlayer
866fb86b60
Guard against mismatched GPUs with D3D11 GL interop
...
resolves #3939
2024-06-19 23:04:03 -07:00
YoshiRulz
a9df8b40d7
Simplify About dialog audio playback
2024-06-20 04:17:01 +10:00
YoshiRulz
3490b544b4
Have About dialog copy full Git commit hash to clipboard
...
and use full hash in GitHub web app URI
2024-06-20 04:01:58 +10:00
YoshiRulz
e5dc04dc37
Move some version processing from About dialog to `VersionInfo`
2024-06-20 03:59:39 +10:00
Morilli
90c79d2220
ensure tests don't fail
2024-06-18 21:33:56 +02:00
Morilli
f6d5271c61
Add test file just to be sure
2024-06-18 21:14:35 +02:00
Morilli
8abe276829
Give slightly more infformation in LoadOrThrow
2024-06-18 20:53:46 +02:00
Morilli
89824bac1c
Simplify ReinterpretAsF32
2024-06-18 20:53:20 +02:00
CasualPokePlayer
6f68c84d8f
bump up max samples for melonDS
2024-06-16 23:30:53 -07:00
YoshiRulz
ae74e37d2d
Fix AooRE due to malformed response from wbox core (seen in melonDS)
2024-06-17 15:59:44 +10:00
CasualPokePlayer
d52e67b9e9
Don't use ToLower()
2024-06-16 21:28:50 -07:00
CasualPokePlayer
a9c04524c7
get ICycleTiming from service provider
...
fixes 87209aa11b
2024-06-16 21:27:05 -07:00
CasualPokePlayer
87209aa11b
Add way to unregister auto-registered services with BasicServiceProvider
...
allows for better handling with SubNESHawk and Libretro statable, maybe others
2024-06-16 21:18:24 -07:00
CasualPokePlayer
145e0431d0
Register IDriveLight for SubNesHawk
...
fixes another issue pointed out in #3949
2024-06-16 20:57:06 -07:00
CasualPokePlayer
d2869686dc
Hook up FDS and VS controls for SubNesHawk
...
fixes #3949
2024-06-16 20:55:34 -07:00
feos
acca29a66e
uae: allow loading HDFs even tho they give black screen now
2024-06-17 02:36:03 +03:00
Morilli
4cfaf74837
Simplify this function
2024-06-17 01:22:53 +02:00
Morilli
bbd21eb775
Prefill values in the MultiDiskBundler from currently loaded xml
...
If the currently loaded "rom" is an xml, the MultiDiskBundler will now prefill its text boxes with the information from that xml instead of leaving everything empty.
- closes #3947
2024-06-17 01:11:52 +02:00
Morilli
a364ec9a11
Allow creating MultiDiskBundler xmls with absolute paths
2024-06-17 01:08:49 +02:00
Morilli
ec1c27596b
Reduce unnecessary action duplications in MultiDiskBundler
2024-06-17 00:47:01 +02:00
Morilli
85886bc2cd
Don't freeze first selection in HexEditor when freezing was canceled
...
- fixes #3833
The entire "primary highlight" + n "secondary highlights" system seems overengineered, but I chose to just fix this in the simplest way possible.
2024-06-16 19:54:54 +02:00
Morilli
b904041edd
Fix clear all / clear current tab buttons in hotkey config
...
fixes 3a2b3e1d06
.
I fixed the incorrect logic but forgot to reverse the parameter.
2024-06-16 16:31:37 +02:00
Morilli
3a2b3e1d06
Add button to hotkey config to restore defaults for the current tab
...
- closes #3900
2024-06-16 16:27:20 +02:00
Morilli
33d34dca78
Ignore Restart in RamSearch when form hasn't loaded yet
...
- closes #3724
2024-06-15 17:38:04 +02:00
feos
4d4333aa19
uae: mnemonics
2024-06-14 12:07:25 +03:00
feos
d3c560b0df
uae: eject when inserting
...
less repeated magic
2024-06-14 10:58:42 +03:00
CasualPokePlayer
f54faf4e7b
Expose SGM memory for RetroAchievements
...
see https://github.com/RetroAchievements/rcheevos/pull/350
2024-06-13 20:21:11 -07:00
CasualPokePlayer
bc1fa455f3
Fix Hex Editor scroll bar; include older dpiAware for < Win 10 v1607
2024-06-13 19:10:14 -07:00
Morilli
2cf2eaf643
Make OSD scale float to more accurate match system scale
2024-06-14 03:11:39 +02:00
Morilli
6200a12d9c
Revert back to system level dpi awareness for now
2024-06-14 03:03:04 +02:00
CasualPokePlayer
99ba03823a
Add back dpiAware stuff in app.manifest
...
also make it so it uses the newest dpiAware possible
2024-06-13 17:04:33 -07:00
feos
ab20bb8eb5
simplify
2024-06-14 01:29:15 +03:00
feos
0069c6825b
analyzer
...
(disks will be supported later)
2024-06-14 00:39:06 +03:00
feos
a01a7bb61e
uae: swapper
2024-06-13 23:13:42 +03:00
feos
939762d9fb
uae: cd swapping will happen later
2024-06-13 19:07:15 +03:00
feos
52fb840b0e
uae: swapper wip
2024-06-13 17:33:55 +03:00
CasualPokePlayer
830f5ba205
Add Amiga support for RetroAchievements
2024-06-12 23:38:18 -07:00
feos
1a62b7874c
uae: allow limiting drive count
2024-06-13 00:13:16 +03:00