Morilli
837c8611fc
more warning fixes
2023-06-05 19:30:56 +02:00
Morilli
6bfc0783dc
fix some warnings idk
2023-06-05 02:41:06 +02:00
Morilli
f958fd7589
Need this apparently
2023-06-04 15:13:10 +02:00
Morilli
3ccf07a310
Fix AssemblyName
2023-06-04 15:03:11 +02:00
Morilli
c2a392c34b
Cleanup output folder better
2023-06-04 14:18:02 +02:00
Morilli
711b4d7a03
Can we just do this maybe?
...
lol
2023-06-04 14:13:25 +02:00
Morilli
e98b8d12a4
Fix EmuHawkMono project
2023-06-03 19:10:04 +02:00
Morilli
ecd9e0b59e
Fix OpenTK dll not being copied to output
...
no idea how this works on master
2023-05-24 18:43:24 +02:00
Morilli
0efbc54187
ContextMenu -> ContextMenuStrip
2023-05-23 22:33:07 +02:00
Morilli
4308e7772d
Optimize string comparison on net6+ by using ordinal comparison
...
this probably needs to be done in lots more places
2023-05-23 22:27:17 +02:00
YoshiRulz
528545f82c
Target .NET 6 on Windows
2023-05-23 22:17:58 +02:00
YoshiRulz
20df6e94fb
Add BizHawkMono solution and project files
2023-05-23 22:15:00 +02:00
YoshiRulz
9daac2c26f
Add and use extension method `string.StartsWith(char)`
...
reverts 333ce98a7
, partially reverts bc16a2cda
2023-05-23 09:18:25 +10:00
adelikat
333ce98a71
low hanging fruit speed up in inputlog loading using str[0] == c instead of str.StartsWith(c)
2023-05-22 12:50:30 -05:00
YoshiRulz
681ef72cd5
Change wording of checkbox for `Config.SuppressAskSave`
2023-05-21 16:22:54 +10:00
CasualPokePlayer
ccf2c61a23
fix #3664
2023-05-20 03:11:40 -07:00
CasualPokePlayer
08ead80385
make these callback delegate caches static (why didn't this warn that static was possible here?)
2023-05-19 22:30:17 -07:00
CasualPokePlayer
3c53f52c6d
remove some debugging crap from c9e30060d4
2023-05-19 22:28:32 -07:00
CasualPokePlayer
542cf2433a
Reduce allocation spam in Jaguar disassembly functions
2023-05-19 22:26:45 -07:00
CasualPokePlayer
c9e30060d4
Rework the Reader/Writer callbacks for the WaterboxHost, a bit nicer here working with the userdata
...
Also make it so initial loading uses the zstdstream or filestream directly instead of a memorystream with it all loaded
something of note, not really happy with how these read/write callbacks get used in practice, it seems they get spammed in small chunks
for initial loading, it's 8192 byte chunks each, which can be a LOT of callbacks, depending on core size (gpgx is ~500, MAME is ~22K)
similarly, savestates suffer a similar issue, although instead it's a ton of 4096 byte chunks (page size eh?)
The unmanaged <-> managed transitions obviously are not exactly performant, and I imagine are taking a significant portion of the time here
Perhaps some buffering strategy should come in on the native waterboxhost side to alleviate callback spam?
2023-05-19 22:26:45 -07:00
adelikat
99a6b1d339
add hotkey for toggling the 'Display Nothing" feature
2023-05-19 20:05:16 -05:00
CasualPokePlayer
8a13793d00
Turn WaterboxHostNative ReturnData to a struct, misc cleanups elsewhere
2023-05-18 22:21:17 -07:00
CasualPokePlayer
332143ea8d
invalidate cram caches when poking, maybe
2023-05-18 21:14:57 -07:00
CasualPokePlayer
473d3cc294
fix #3662
2023-05-18 19:09:08 -07:00
CasualPokePlayer
ea854ff39d
make discohawk form a bit bigger
...
all the formats supported means the box wasn't big enough to display all of them lol
2023-05-18 07:28:10 -07:00
CasualPokePlayer
fe79b69123
(Partial) .nrg support
...
TAO support isn't complete, a lot of sanity checking isn't done yet
2023-05-18 07:14:14 -07:00
Morilli
3d30f52e7c
Fix LogWindow treating everything as ascii
...
hopefully this doesn't break anything
2023-05-17 14:54:18 +02:00
CasualPokePlayer
f11b5bc9c4
fixup CDI generated subcode (not sure why I did that)
...
have it generate "leadin" and "leadout" tracks for multisession discs... this is almost certainly wrong for leadin (doesn't matter so far), leadout is probably right...
2023-05-12 20:47:29 -07:00
CasualPokePlayer
0e6d5fb708
minor addendum to 2012b083f6
2023-05-12 03:28:14 -07:00
CasualPokePlayer
2012b083f6
Fixup multisession handling with MDS and improve its track/sector size handling, also maybe fix it entirely? (not sure if this ever worked)
...
Move the various synths using the CUE SS_Base to a file, mostly just a nicer organizational change as MDS and CDI use one of these but not CUE
Misc improvements elsewhere
2023-05-12 02:44:05 -07:00
CasualPokePlayer
1f3068fe77
fix synthesizing disc tracks with multisession discs when the first session has a large amount of tracks
...
FirstRecordedTrackNumber only works here for the first session, for future sessions it doesn't work and may just result in out of range exception
2023-05-11 02:57:14 -07:00
CasualPokePlayer
858ea372a9
Fix Jaguar CD detection for Caves of Fear
2023-05-11 02:28:33 -07:00
CasualPokePlayer
e3c27813b6
fix the fix in 45a0c8cffb
2023-05-10 05:37:03 -07:00
CasualPokePlayer
45a0c8cffb
another fix for 9551394
2023-05-10 05:23:24 -07:00
CasualPokePlayer
c52a950c41
Fix dumping CCDs with multisession discs, fix oopsies with CDI parsing giving the wrong last recorded track number
2023-05-10 04:58:37 -07:00
CasualPokePlayer
2379650e1b
Implement error and verbose message callbacks for rcheevos (currently they just output to the console)
...
Implement debug option for hashing with more pure rcheevos logic, mostly just useful for figuring out disc hashing issues
2023-05-10 03:11:50 -07:00
CasualPokePlayer
d3a689c589
Resolve #3650 . Also fix a bug which caused overwriting lua scripts with a new lua script to fail (fixes 380e459bec
)
2023-05-08 03:01:41 -07:00
CasualPokePlayer
f677e92504
fix TOC field mixup with Jaguar CD
2023-05-07 22:09:52 -07:00
CasualPokePlayer
40e21b716e
fix 955139454a
2023-05-07 02:59:38 -07:00
CasualPokePlayer
7d5a1d5c98
Lower CPU usage from RCheevos http stuff
2023-05-07 02:41:07 -07:00
CasualPokePlayer
68cd28c28a
fix directionals and other common buttons being dropped from controller inputs when hotkeys overrode controller inputs
2023-05-07 01:00:13 -07:00
YoshiRulz
4a752f66b7
Add Analyzer to require checking or discarding `TryGetValue`
...
I'm pretty sure all the existing instances were intended to use `default(T)` if
the key isn't present, except maybe the cheatcode converters but I don't care to
rewrite those at the moment
2023-05-05 06:27:15 +10:00
YoshiRulz
384a4e1e18
Bump version info post-release
2023-05-04 08:10:07 +10:00
CasualPokePlayer
36fae775d4
Prevent annoying waits when using firmware manager with DSi NANDs present
2023-05-03 02:19:56 -07:00
CasualPokePlayer
5f6d70ac46
Fix random crashes with rcheevos. The issue was that rc_runtime_t can store pointers to itself, which is bad when rcheevos expected the user to allocate that struct and did not provide functions for that. I've added that functionality and PR'd it (I'll fixup submodule to point to upstream when it's merged)
...
PR can be found here: https://github.com/RetroAchievements/rcheevos/pull/239
Also minor fixes wrt the ContinueWith usage in InternalDoRequest
2023-05-03 01:54:57 -07:00
CasualPokePlayer
248b8ab984
Fixup bad threading (no, you cannot access rcheevo's _runtime in a separate thread! main thread use only!). Should fix up some random crashes
...
Slightly change up the request model, now InternalDoRequest does not block
Fixup logic of ToSoftcoreMode (and comments so it isn't screwed up again)
2023-05-02 21:47:09 -07:00
CasualPokePlayer
8ef1d93891
Prevent UI thread deadlocking on Dispose()'ing rcheevos stuff
2023-05-02 17:18:31 -07:00
CasualPokePlayer
b9a983f1fe
Fix typo causing crash with SMSHawk with RetroAchievements & Hardcore Mode
2023-05-02 17:08:39 -07:00
CasualPokePlayer
41d94e4262
Change up multithreaded rendering in melonDS
...
Instead of creating a new Task and destroying it every frame, just create a new thread and call the delegate when needed.
Also allow for rendering a frame twice, this is actually possible anyways (albeit rarely done).
This should also help against a potential deadlock due to the Task.Wait call on the UI thread (which has special semantics in WinForms)
Also minor nitpicks in RCheevos code
2023-05-02 16:52:48 -07:00
CasualPokePlayer
b517228475
Refactor rcheevo http requests (again). This should better protect against the UI thread deadlocking due to Task semantics with WinForms
2023-05-01 03:50:49 -07:00