Commit Graph
100 Commits
Author SHA1 Message Date
Stenzek 495b2ff29e GameDB: Front Mission 2 2024-07-20 22:32:50 +10:00
Stenzek 9b77a9aff7 TimingEvents: Move interrupt dispatch to end of loop
Saves another iteration.
2024-07-20 13:42:01 +10:00
Stenzek 4f7ddfaae6 TimingEvents: Remove pointer indirection
Probably should move this to one big array for locality.
2024-07-19 22:56:41 +10:00
Stenzek 56dd9878e1 Misc: RISC-V build fixes 2024-07-19 22:25:57 +10:00
Stenzek 0815aedca2 FileSystem: Drop use of stat64()
We define _FILE_OFFSET_BITS on 32-bit Linux anyway.
2024-07-19 22:25:57 +10:00
Stenzek 2e96931c32 CPU/CodeCache: Dynamically compute BIOS memory access timing
The timings can change if the game does so. Instead of forcing the
blocks to recompile, we can just manually multiply size * word_time.

Improves stability of Nightmare Creatures booting, and fixes corrupted
text in Formula Circus when using the cached interpreter.
2024-07-19 22:25:57 +10:00
Stenzek 5f36c2948f Updater: Fix missing newline on MacOS 2024-07-19 17:47:51 +10:00
Stenzek d9a224ef6c GameList: Fix bogus entries on disc change due to disc set 2024-07-19 15:51:25 +10:00
Stenzek 6a920b268e CDROM: Handle BFRD clears inbetween DMA transfers
Fixes disc detection in Metal Gear Solid: Special Missions.
2024-07-19 15:51:25 +10:00
Stenzek f0945ca3ca BIOS: Refactor loading/hashing of images
Fixes identification of PS2 BIOSes. However, they are not (yet) fastboot
compatible.
2024-07-19 15:51:25 +10:00
Stenzek 19063d4288 Bus: Mirror BIOS area up to 4MB
Fixes bus error when using PS2 BIOS.
2024-07-19 15:51:25 +10:00
Stenzek 7217536fdd MD5Digest: Span-ify 2024-07-19 15:51:25 +10:00
Stenzek 41e15539f9 FileSystem: Add Error parameter to more functions 2024-07-19 15:51:25 +10:00
Stenzek a6cf320776 Qt: Fix scan percent dropping back to 0% at end 2024-07-19 15:51:25 +10:00
Stenzek 6176a21ff1 ProgressCallback: Eliminate redundancy and drop C format strings 2024-07-19 15:51:25 +10:00
Stenzek 24ef76bfee StringUtil: Purge StdStringFromFormat() 2024-07-19 14:01:16 +10:00
Stenzek 567b86ce79 Host: Purge ReportFormattedDebuggerMessage() 2024-07-19 14:00:29 +10:00
Stenzek aa94b07f30 Qt: Purge format string usage from AutoUpdaterDialog 2024-07-19 13:54:00 +10:00
Stenzek ca2a8f1e1f Host: Purge C format string error overloads 2024-07-19 13:45:33 +10:00
Stenzek 00ccea84b8 GPUDevice: Replace remaining StdStringFromFromFormat() with fmt 2024-07-19 13:44:09 +10:00
Stenzek c286112966 Updater: Replace all StdStringFromFormat() with fmt 2024-07-19 13:28:48 +10:00
Stenzek 92038da3d5 CDROM: Handle speed change while reading
Fixes level music in Croc 2 demo.
2024-07-18 00:31:19 +10:00
Stenzek 5d5c04c9b4 RegTest: Fix compare with only missing but no diffs 2024-07-17 23:51:44 +10:00
Stenzek 8d94fd54f2 GameDB: Use SW readbacks for 360 Three Sixty 2024-07-17 23:51:44 +10:00
Stenzek c925becd57 GameDB: Set deinterlacing mode and line offset on a few games 2024-07-17 23:51:43 +10:00
Stenzek 9a89ab3bab GameDatabase: Add deinterlacing mode override 2024-07-17 20:57:36 +10:00
Stenzek f1ca914512 CDROM: Further adjust IRQ delay
Fixes audio dropouts in Crime Crackers, Ogre Battle seems fine now as
well.
2024-07-17 20:57:36 +10:00
Stenzek 9392c19a70 CDROM: Handle audio sectors in 2X mode
Fixes menu background in 360 Three Sixty.
2024-07-17 20:57:35 +10:00
Stenzek 44b9d16d9f CDROM: Defer set of autopause track
Pitball's menu music starts mid-second, and there's no pregap,
so the first couple of reports are for the previous track.

It doesn't enable autopause until receiving a couple, and it's
actually playing the track it wants.
2024-07-17 20:57:35 +10:00
Stenzek fb747d6ded CDROM: Drop setloc on double Play
And limit the locations position is updated while seeking.

Fixes menu music in Hot Wheels: Extreme Racing.
2024-07-17 20:57:35 +10:00
Stenzek bc30569a6d SPU: Reverb input should be muted when SPU muted
Fixes pause menu in Bubsy 3D, Tuning Car Battle Spec R.
2024-07-17 20:57:17 +10:00
Stenzek 889427e7f6 Qt: Disable a couple of unusable per-game settings 2024-07-15 22:17:42 +10:00
Stenzek 00cc3b65fc Qt: Fix a few places per-game settings were not checked 2024-07-15 22:17:42 +10:00
Stenzek 5381ad9cd1 Qt: Adjust controller diagrams 2024-07-15 22:17:42 +10:00
Stenzek 66f31d42b6 CI: Add workflow to upload cached deps/symbols 2024-07-15 22:17:42 +10:00
Stenzek fae6b7ae86 System: Fix double error on load/boot cancel 2024-07-14 21:32:10 +10:00
Stenzek fee888758f System: Purge unused RecreateSystem() 2024-07-14 21:30:52 +10:00
Stenzek 154a5b35b8 CDImageCHD: Refactor mode conversion to string_view
Incorrect length found by PVS-Studio.
2024-07-14 21:29:57 +10:00
Stenzek 640ed4a2d3 CPU/Recompiler: Eliminate redundant speculative reg read 2024-07-14 21:26:17 +10:00
Stenzek 59a2309a83 GPU: Use half width vector types where appropriate 2024-07-14 21:25:48 +10:00
Stenzek d70f5ddb32 GSVector: Remove unused functions 2024-07-14 21:25:48 +10:00
Stenzek df979d4648 Build: Fix DiscordRPC not being included in Mac bundle 2024-07-14 21:25:26 +10:00
Stenzek 500fbe5ef1 Achievements: Fix potential uninitialized data read 2024-07-14 21:25:25 +10:00
Stenzek 8698298499 CPU/NewRec: Fix incorrect condition in GenerateCall() 2024-07-14 21:25:25 +10:00
Stenzek a5a320720a GPU/HW: Fix incorrect dirty rect union
Reduces GPU usage during screen waves effect in Um Jammer Lammy from
over 70% down to 3% on my 7900GRE at 9x.
2024-07-14 18:26:02 +10:00
Stenzek 5d4f6e44d2 Qt: Use device pixel ratio when scaling gameicons 2024-07-14 18:26:02 +10:00
Stenzek 594962d247 Qt: Scale down custom icon pixmaps
Don't want it going outside of the control bounds.
2024-07-14 18:26:02 +10:00
Stenzek fd0626aa6d GameList: Re-extract memcard icon if deleted
But don't keep trying if the game doesn't have a save.
2024-07-14 18:26:02 +10:00
Stenzek ff77bd029f ImGuiFullscreen: Don't upload failed-loaded images 2024-07-14 00:01:06 +10:00
Stenzek afea18f65e Image: Fix crash loading corrupted/invalid JPEG files 2024-07-14 00:00:48 +10:00
Stenzek b7da118f96 Qt: Don't boot system twice on rapid clicking 2024-07-13 20:47:03 +10:00
Stenzek 5da6c926d9 GameList: Always open icon cache with r+b on Linux
Fixes flock() error on startup.
2024-07-13 18:32:42 +10:00
Stenzek 2cfa535784 System: Fix certain GPU settings not applying until unpause 2024-07-13 17:52:42 +10:00
Connor McLaughlin 97e555a47d README: Update link to last non-SSE4.1 build 2024-07-13 13:30:27 +10:00
Stenzek 7c45ad3fed GameList: Add dedicated gameicons directory 2024-07-11 17:17:25 +10:00
Stenzek 2ac2ad605e CPU/Recompiler: Break blocks on invalid instructions 2024-07-11 17:17:25 +10:00
Stenzek 3b9c489787 CPU: Pass instruction query values by reference 2024-07-11 17:17:25 +10:00
Stenzek 226a8eac81 MemoryCardIconCache: Ignore shared cards 2024-07-10 21:47:02 +10:00
Stenzek 11f7bfc461 CPU/PGXP: Refactor add/sub for small speedup 2024-07-10 20:56:42 +10:00
Stenzek e5c62b8baf CPU/PGXP: Fix incorrect Y on invalid add/sub 2024-07-10 20:56:21 +10:00
Stenzek 5881133cf5 CPU/PGXP: Set valid on bitwise ops from lowprec 2024-07-10 19:10:56 +10:00
Stenzek 9be7a37416 GSVector: SIMD-ify YUVToRGB
Almost 10x speedup on the function alone, 15% in practice ingame.
2024-07-10 15:18:42 +10:00
Stenzek 18b0b11094 CommonTests: Add GSVector MDEC YUVToRGB test 2024-07-10 15:18:42 +10:00
Stenzek 7c818c0c53 CI/Flatpak: Bump to flatpak-github-actions b6c9217 2024-07-10 15:18:38 +10:00
Stenzek a56ebf24b2 Qt: Fix incorrect sort indicator on loading 2024-07-09 21:49:17 +10:00
Stenzek 93836636a1 Qt: Center type icon in game list 2024-07-09 21:49:17 +10:00
Stenzek addadbabc6 Qt: Use memory card icon as window icon 2024-07-09 21:49:12 +10:00
Stenzek 9143116616 Qt: Show memory card icons in game list
You can disable it if you really hate it.
2024-07-09 21:38:38 +10:00
Stenzek 8659c8cca6 Core: Add MemoryCardIconCache 2024-07-09 21:38:38 +10:00
Stenzek ec851c9d6d FileSystem: Add FTruncate64() 2024-07-09 21:38:38 +10:00
Stenzek 36abbd97e8 GameDB: Set DisablePGXPOn2DPolygons on Xenogears
Fixes misaligned UI. For future reference: game does a multiply by 4096,
then a right shift of 12, which should give back the same value, but
with it being implemented in PGXP-CPU with a divide that does not round
down, it ends up being off by one.

Rounding down loses precision in other games, so that's not an option.
2024-07-09 20:38:21 +10:00
Stenzek de27e5de92 GPU: Add option to disable PGXP on 2D polygons 2024-07-09 20:37:58 +10:00
Stenzek f0e2d1a9fa CPU/PGXP: Rewrite SLTI/SLTIU handlers
Don't read uninitialized memory...
2024-07-09 20:14:08 +10:00
Stenzek d922a43127 CPU/PGXP: Don't force valid input on slt/sltu 2024-07-09 19:45:44 +10:00
Stenzek 3b7844be5a CPU/PGXP: Don't force valid inputs on mult/div 2024-07-09 19:21:47 +10:00
Stenzek d831cb69a9 CPU/PGXP: Normalize variable names 2024-07-09 19:16:16 +10:00
Stenzek 5410a42fd7 CPU/PGXP: Explicitly handle addi rt, zero, nnnn 2024-07-09 19:07:17 +10:00
Stenzek 985b9f8a38 GameDB: CPU-PGXP for Xenogears 2024-07-08 17:20:46 +10:00
Stenzek b6f7420018 CPU/PGXP: Don't force inputs to valid on add/sub 2024-07-08 17:18:27 +10:00
Stenzek f5cc70923b CMake: Fix typo in Mac CMAKE_CXX_FLAGS 2024-07-07 15:12:49 +10:00
Stenzek 7373342ea9 GameDB: CPU-PGXP for Resident Evil 3
And disable WS for Japanese releases of RE1-3.
2024-07-07 14:29:29 +10:00
Stenzek 7f21226a99 GameDatabase: Warn if vertex cache is enabled but unnecessary 2024-07-07 14:29:29 +10:00
Stenzek fe055280e1 Deps: Patch macdeployqt timeout 2024-07-07 14:10:24 +10:00
Stenzek aac7a9992c CI/AppImage: Drop gcc13 workaround
Been fixed upstream for some time now.
2024-07-07 14:10:24 +10:00
Stenzek e1a9c69a4a Deps: Bump to SDL 2.30.5 2024-07-07 14:10:18 +10:00
Stenzek d63ae8718f GPU: Always calculate draw rect
Stops postfx shaders that depend on the draw rect going into NaN
territory.
2024-07-07 12:46:09 +10:00
Stenzek ff7bfaaadb dep/reshadefx: Avoid emitting more reserved keywords as identifiers 2024-07-07 12:46:09 +10:00
Stenzek 6f50e12ea2 PostProcessing/FX: Remove debug shader dump 2024-07-07 12:46:09 +10:00
Stenzek ed5a99066f GPU: Cull off-screen sprites/lines
And further optimizations to culling in general.
2024-07-06 22:13:46 +10:00
Stenzek bc73dacea4 System: Use socket multiplier for sleeping when connected
Should significantly reduce PINE latency.
2024-07-06 21:56:30 +10:00
Stenzek 1fd8d2701d Sockets: Add HasAnyClientSockets() 2024-07-06 21:56:30 +10:00
Stenzek b06fceffa4 GDB/PINE: Fix listen socket leak on shutdown 2024-07-06 21:56:30 +10:00
Stenzek 9a70003b70 MSBuild: Silence MSVC warning C4324 2024-07-06 19:45:16 +10:00
Stenzek eba0794b4f FileSystem: Add Error to file writing 2024-07-06 19:36:15 +10:00
Stenzek 29b3fa2b95 GSVector: Add {min,max}v_{u8,u16} 2024-07-06 19:36:15 +10:00
Stenzek 23962fd07e GTE: Pack local config in struct 2024-07-06 19:33:38 +10:00
Stenzek b6a264b8b4 TimingEvents: Pack state in struct 2024-07-06 19:18:25 +10:00
Stenzek a57101c1f0 Timers: Pack state in struct 2024-07-06 19:18:25 +10:00
Stenzek f5cae1957b MDEC: Pack state in struct 2024-07-06 19:18:25 +10:00
Stenzek e1a4c7dfdd DMA: Pack state in struct 2024-07-06 19:18:25 +10:00