Commit Graph

780 Commits

Author SHA1 Message Date
SamoZ256
4281959b64
Merge branch 'main' into metal 2025-06-26 08:42:24 +02:00
Exzap
e91740cf29 coreinit: Make sure thread deallocation runs before join returns
Fixes crash in Coaster Crazy Deluxe
2025-06-22 23:34:41 +02:00
Exzap
4f4c9594ac GX2: Fix command buffer padding writing out of bounds 2025-06-22 22:17:29 +02:00
Exzap
5a4731f919 HLE: Make HLE table access thread-safe
Previous code could sometimes resize the vector while a read access was happening
2025-06-22 20:56:47 +02:00
Joshua de Reeper
4f4412b334
nsyshid: Play Emulated Portal Audio via Mono Audio (#1478) 2025-06-19 23:30:19 +02:00
Exverge
00ff5549d9
General aarch64 improvements & Apple Silicon support (#1255) 2025-06-18 10:36:05 +02:00
oltolm
c8ffff8f41
Replace basic_string<> of betype with std::vector (#1601) 2025-06-18 10:34:06 +02:00
goeiecool9999
f3fe6f3455
GameList: Allow sorting by more columns (#1571)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-06-13 12:47:46 +02:00
Luminyx
3eff2d4a60
GraphicPack: Allow overlay for code folder (#1574) 2025-06-10 08:03:18 +02:00
Wiichele
d427b59019
boss: Use HTTP/1.1 instead of default (#1593)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-06-08 07:16:09 +02:00
Exzap
7168d20cde FST: Refactor IV handling
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-05-27 16:51:46 +02:00
Samuliak
144e11be07
address neebyA's review 2025-05-24 06:57:37 +02:00
SamoZ256
c7aef3a52e
cmake: sort files alphabetically
Co-authored-by: neebyA <126654084+neebyA@users.noreply.github.com>
2025-05-23 11:49:25 +02:00
SamoZ256
390da4fc4a
latte: remove unused include
Co-authored-by: neebyA <126654084+neebyA@users.noreply.github.com>
2025-05-23 11:48:10 +02:00
Samuliak
b59d134e03
shader-decompiler: fix disabled rasterization errors 2025-05-22 18:58:49 +02:00
Samuliak
bddf3159ee
latte: check for mip levels in framebuffer fetch 2025-05-22 18:31:44 +02:00
Samuliak
4311a41f34
latte: rename metal specific options 2025-05-20 18:26:52 +02:00
Samuliak
feba1aa7ba
latte: isolate Metal-specific hashes 2025-05-19 20:22:45 +02:00
SamoZ256
4ec2638395
latte: check if Vulkan or Metal
Co-authored-by: Exzap <13877693+Exzap@users.noreply.github.com>
2025-05-19 16:30:32 +02:00
SamoZ256
c01e6bf3b8
Merge branch 'main' into metal 2025-05-19 16:24:19 +02:00
Exzap
783d88a892 coreinit: Fix race condition in __FSAIoctlResponseCallback
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-05-17 21:35:42 +02:00
Exzap
28ea70b6d8 GX2+TCL: Reimplement command buffer submission
- GX2 utilizes TCL(.rpl) API for command submission instead of directly writing to an internal GPU fifo
- Submission & retire timestamps are correctly implemented as incremental counters
- Command buffering behaviour matches console
- Fixes race conditions on aarch64
2025-05-17 21:35:42 +02:00
Exzap
96765e4ac6 Latte: Refactor clear code 2025-05-17 20:47:01 +02:00
gamerbross
111637a9fd
nsyshid: Skylander 360 Portal small optimization and code formatting (#1568)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-05-15 19:58:43 +02:00
Mefiresu
05617a332b
dmae: Implement 16bit endian swap for DMAECopyMem (#1564) 2025-05-12 18:16:14 +02:00
Joshua de Reeper
caef34f2ff
nsyshid: Add Kamen Rider USB Device to Whitelist (#1560)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-05-12 09:28:01 +02:00
Exzap
61484598fc Vulkan: Use per-pipeline buffer robustness
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
And if the extension is not supported then fallback to enabling robust buffer access for all shaders.
2025-05-10 09:49:21 +02:00
SSimco
081ebead5f
Add AArch64 recompiler backend (#1556)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-05-09 12:47:22 +02:00
Exzap
d13dab0fd8 Vulkan: During shutdown submit buffer before deleting resources 2025-05-09 10:00:38 +02:00
Exzap
ba09daf328 PPCRec: Reenable float copy optimization
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-05-09 02:06:08 +02:00
Exzap
557aff4024 PPCRec: Implement PSQ scaling 2025-05-08 08:29:47 +02:00
Exzap
de542410c2
PPCRec: Rework floating point instructions (#1554)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-05-08 03:48:22 +02:00
gamerbross
33d5c6d490
nsyshid: Add Skylander Xbox 360 Portal support (#1550)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-05-04 21:44:46 +02:00
Crementif
352a918494
debug: add CLI option to have multi-core interpreter (#1553)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
This option still allows you to have proper stack traces for crashes or for the PPC debugger, but is a lot faster then the really slow interpreter (especially when loading into large games like BotW where there has to be a lot of asset decompressing). It makes memory access breakpoints much more brittle though, so it's not a perfect option.

Normal users should of course stick with using the recompiler.
2025-05-04 18:04:26 +02:00
Crementif
d083fc0470 Reorder PPCInterpreter memory layout to keep plugin compatibility
Commit b089ae5b32 changed the PPCInterpreter struct that external plugins rely on to hook Cemu through e.g. the exported "osLib_registerHLEFunction". This commit moves some unused values down so that it keeps the same memory layout as before the PPC recompiler rework.
2025-05-04 17:19:56 +02:00
goeiecool9999
e6a64aadda undo revert of style improvement
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-04-27 17:03:00 +02:00
goeiecool9999
a5f3558b79 Revert "fix building with fmt11 and GCC"
This reverts commit 372c314f06.
It broke formatting in an attempt to fix GCC builds.
Some other change (perhaps dependency updates) has resolved the issue.
2025-04-27 16:57:22 +02:00
Exzap
b089ae5b32
PowerPC recompiler rework (#641)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-04-26 17:59:32 +02:00
Exzap
4972381edc Vulkan: Fix imgui validation error when sRGB framebuffer is used 2025-04-15 22:46:19 +02:00
Exzap
cd6eb1097b Vulkan: Fix a validation error + minor code refactor
We were using VK_EXT_DEPTH_CLIP_ENABLE but didn't actually request it.

Also fixed an assert when closing Cemu caused by incorrectly tracking the number of allocated pipelines
2025-04-15 21:10:11 +02:00
Crementif
186e92221a
debugger: allow printing registers using logging breakpoint placeholders (#1510)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
This allows a savy user, developer or modder to change the comment field of a logging breakpoint to include placeholders such as {r3} or {f3} to log the register values whenever that code is hit.
2025-03-07 23:40:17 +01:00
goeiecool9999
31d2db6f78 OpenGL: Add explicit/matching qualifiers in output shader interface
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
fixes issues with old intel drivers
2025-03-05 22:23:06 +01:00
Samuliak
d4e2135725
add an option to force mesh shaders 2025-03-04 08:34:35 +01:00
Samuliak
06491baafa
check for mesh shaders support 2025-02-11 18:09:42 +01:00
Exzap
ec2d7c086a coreinit: Clean up time functions
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-01-30 03:49:17 +01:00
Exzap
c714e8cb6b coreinit: Time to tick conversion is unsigned
The result is treated as signed in most cases, but the calculation uses unsigned arithmetic.

As a concrete example where this matters, DS VC passes -1 (2^64-1) to OSWaitEventWithTimeout which internally causes an overflow. But only with unsigned arithmetic this will result in a large positive number that behaves like the intended infinite timeout. With signed arithmetic the result is negative and the events will timeout immediately.
2025-01-30 03:32:24 +01:00
Samuliak
3fececc3ba
support line strip as vertex output with geometry shaders 2025-01-28 19:23:47 +01:00
Samuliak
1fb9cfd783
create helper function for rasterization kill 2025-01-28 16:41:30 +01:00
Samuliak
05518c01fb
support max anisotropy overwrite 2025-01-28 07:12:10 +01:00
SamoZ256
2f9ef596d2
Merge branch 'main' into metal 2025-01-27 20:42:24 +01:00