Commit Graph

22058 Commits

Author SHA1 Message Date
YoshiRulz 03b1d353a7
s/firmwares/firmware/ in `FirmwaresConfig` member identifiers 2024-10-27 02:16:55 +10:00
YoshiRulz 02bf292a85
s/firmwares/firmware/ in `PathEntryCollection` 2024-10-27 02:16:55 +10:00
YoshiRulz eee34dd69a
s/firmwares/firmwareIDMap/ in Nyma core init methods 2024-10-27 02:16:55 +10:00
YoshiRulz 6955ad3591
s/firmwares/firmware/ in strings 2024-10-27 02:16:55 +10:00
YoshiRulz ab1f002481
Clarify dropdown options in Record Movie dialog 2024-10-26 02:33:00 +10:00
feos 90287b3396 puae: support region changes
by user at the start and by the game on the fly
todo: ntsc par (pal par is 1:1)
2024-10-25 01:17:52 +03:00
feos 703955fcd7 puae: block some unsupported images, reduce heap sizes 2024-10-24 21:47:50 +03:00
Asnivor 52f4f7426c [A7800Hawk] Make ProLine controller default for the core. Fixes #3895 2024-10-24 14:24:33 +01:00
Asnivor b3426624f7 [ChannelFHawk] Some code tidy 2024-10-24 13:49:27 +01:00
Asnivor 9c322f8967 [ChannelFHawk] More sensible viewport trimming and set default viewport to AllVisible 2024-10-24 13:32:38 +01:00
Asnivor e0264ed102 [ChannelFHawk] ICodeDataLogger 2024-10-24 12:27:46 +01:00
YoshiRulz 4c69ce4e27
Avoid `string.Split` in `Database.InitializeWork`
On my machine (Mono) in Release config, this reduces the number of
string- and char-arrays allocated by an order of magnitude,
bringing the gamedb's total bytes allocated down by -10%.
2024-10-24 06:31:44 +10:00
YoshiRulz 6f3fd9740e
Add setup for profiling gamedb
simply build with
`-p:MachineExtraCompilationFlag=BIZHAWKBUILD_RUN_ONLY_GAMEDB_INIT`
2024-10-24 06:31:44 +10:00
YoshiRulz 4678d90646
Extract method from `Database.InitializeWork`, clean up, and add test 2024-10-24 06:31:44 +10:00
YoshiRulz 9ce3771e85
Move gamedb init before single-instance check 2024-10-24 04:27:30 +10:00
feos 09a39a5630 puae: dependent upon 2024-10-23 19:10:24 +03:00
YoshiRulz 9acdcdbcf7
Restore `BitmapBuffer.AsSpan` and add `AggressiveInlining`
fixes 9a5a75e5b and 7ab2ca6b8
2024-10-21 17:44:58 +10:00
Morilli 4f82b30370 cleanup some SequenceEqual related code 2024-10-20 21:24:24 +02:00
Morilli b7b8788354 Optimize ZwinderStateManger.GetStateClosestToFrame
AllStates() sorted the returned states, but this order was not used anywhere else, so I've removed it. GetStateClosestToFrame is solvable in O(n), so sorting is not required there either.

This is an O(n log(n)) -> O(n) improvement that is mostly relevant for the state history integrity checker
2024-10-20 16:56:47 +02:00
Morilli 7ab2ca6b89 Add SequenceEqual extension to prevent linq usage
this speeds up the state history integrity check by about an order of magnitude
2024-10-20 14:00:11 +02:00
YoshiRulz 1dbd7356eb
Fill in Stella upstream version 2024-10-20 05:35:42 +10:00
Morilli 8dee116d77 fix watch combo boxes being cut off 2024-10-19 11:29:20 +02:00
Morilli 59c8125241 some WatchEditor code style 2024-10-19 11:29:01 +02:00
CasualPokePlayer 84130285aa fix host mouse to touch input weirdness with melonDS savestates 2024-10-19 00:51:14 -07:00
CasualPokePlayer c954e8c189 Do encrypted DS rom detection better 2024-10-18 20:41:13 -07:00
CasualPokePlayer 2ddfc5f172 Add more NDS extensions
srl -> "official" DS rom extension (generally found in prototypes etc)
dsi -> used for DSi only games
ids -> used for iQue DS games

upstream handles all these rom extensions already
2024-10-18 18:03:04 -07:00
CasualPokePlayer d3f4c1f441 fix mupen buffer overflow checks; fix pure interpreter
resolves #4095
2024-10-18 15:36:38 -07:00
Morilli 542f917b1f fix a new waterboxhost warning 2024-10-18 23:54:18 +02:00
CasualPokePlayer 593e7c125b force real bios file usage if an encrypted DS rom is used 2024-10-18 13:47:15 -07:00
CasualPokePlayer 64d55404ba Add more invisible heap for melonDS 2024-10-18 13:47:15 -07:00
YoshiRulz a3901f66e5
Add Analyzer to require `class`/`struct` keyword on records
fixes eef190d33, e8c957a7a, and c68dd703d
2024-10-19 04:53:35 +10:00
Morilli c68dd703dc implement dirty checking for N64 settings 2024-10-18 13:28:25 +02:00
Asnivor 13584ceb62 [ZXHawk] Remove ParseDisk() track limit
This fixes 3D Construction Kit and potentially other dsk games with more than 42 tracks on disc.
The +3 disc drive may only be able to read 41-ish tracks of standard sized data, but it appears many images have more tracks than this. 3D construction kit for example has 45 tracks in what passes for the TOC, but the last 5 of these are empty.
2024-10-18 11:04:20 +01:00
CasualPokePlayer 1f261b2c33 Fix crashes with GPU compute renderer w/ wbx states 2024-10-17 21:44:14 -07:00
Morilli f748f93764 simplify GetModChecksum256 2024-10-18 04:10:00 +02:00
Asnivor 7d68a0b017 Fix DSKIdentifier ModChecksum function
This never worked. Will probably fix a whole bunch of core-selection issues (including ones listed here: https://tasvideos.org/HomePages/CloakTheLurker/ZXHawk)
2024-10-17 17:47:38 +01:00
CasualPokePlayer ce3af37b24 Fix off by 1 in PSX RetroAchievements disc hashing 2024-10-16 17:39:48 -07:00
CasualPokePlayer 0105caee6e Do PSX RetroAchievements hashing subdirectory handling better 2024-10-16 17:24:55 -07:00
CasualPokePlayer 09d72bf34f Do RetroAchievements PSX hashing better
Make sure to scan entire directory record (some games seem to end up ending the search early with the old code)
Find "BOOT = cdrom:" with any variable amount of whitespace
2024-10-16 16:14:27 -07:00
CasualPokePlayer a325119362 Add a new DiscSectorReader policy: inspect the sector, but assume mode 2 form is 1
This behavior "needed" for rcheevo hashing to work, since a few games (e.g. `Chinmoku no Kantai - The Silent Service (Japan)`, maybe others) have mode 2 form 2 sectors for the exe (for some reason)
2024-10-16 12:59:55 -07:00
CasualPokePlayer 2c2c2e9ee8 buf2442 -> buf2448
It's not a 2442 byte buffer
2024-10-16 12:46:32 -07:00
CasualPokePlayer b7e57db84f Fix RCTrack sector reads
It appears rcheevos expects user data, not raw sector data
2024-10-15 16:47:46 -07:00
Morilli 6582431d4c fix loading active tasproj into TAStudio
- fixes a43a64b899
- closes #4091
2024-10-15 18:59:27 +02:00
Asnivor 85a7d3474b Identify correct core for IPF image
Obviously we don't support IPF images right now, but with any luck we will eventually. So it makes sense to have something in place in the frontend to do core selection (when a gamedb hash is not found) based on the INFO block within the IPF file itself.
2024-10-15 17:27:05 +01:00
Morilli f26fe45ea9 fix path separators 2024-10-15 16:54:09 +02:00
Asnivor 6a907cdfe3 [FlooohZ80] Remove LICENSE.txt (this now lives in the submodule) 2024-10-15 14:59:19 +01:00
Asnivor e7e2b8f801 [FlooohZ80] use z80.h in submodule 2024-10-15 14:57:25 +01:00
Asnivor aec82f32a9 Add Floooh chips repo as submodule 2024-10-15 14:56:13 +01:00
CasualPokePlayer cef4f10ed8 update comment for previous commit too 2024-10-14 23:55:17 -07:00
CasualPokePlayer c703b5f6a2 Don't immediately change buffer width/height for melonDS video buffer reallocation
They'll get changed later anyways
2024-10-14 23:54:02 -07:00