Commit Graph

789 Commits

Author SHA1 Message Date
Exzap
15ceda1233 GfxPack: Log line number for errors caused by malformed expressions 2026-04-29 18:24:29 +02:00
Exzap
c080b7385e Latte: Rework interval tree for vertex/uniform cache 2026-04-29 18:24:29 +02:00
Exzap
1baf219cb2 Vulkan: Add tilemode to texture debug name 2026-04-29 18:24:29 +02:00
Exzap
414aa9d6b3 GX2+Latte: Rework GX2CopySurface 2026-04-29 18:24:29 +02:00
Exzap
e2a69becf1 debugger: Rework PPC debugger
This is a first pass for now, more work is needed mostly for UI polish.
Changes in this commit:
- Debugger now exposes a thread-safe API. Previously everything would just access internal debugger state directly without regard for race conditions
- Reworked stepping logic to be more reliable. For example previously Cemu could get forever stuck in the middle of stepping to the next instruction
- Support for debugging while using multi-threaded CPU emulation. Originally the debugger was added when only single core support existed in Cemu. It was possible to debug multi-threaded before but it was very very prone to state corruptions.
- Debugger should now remember breakpoints correctly across sessions
2026-04-29 18:24:29 +02:00
Emma
1c2b7d787e
build: Add ENABLE_LIBUSB option (#1886) 2026-04-26 21:24:57 +02:00
SSimco
6f6c1299e2
Logging: Add compile-time format checks (#1885) 2026-04-22 15:51:44 +02:00
Emma
f8fb588b36
build: macOS CMake fixes (#1883) 2026-04-22 15:49:41 +02:00
Lightnight1
cd23241f29
UI: Added a button to download and install gfx packs from an url (#1866) 2026-04-22 15:24:18 +02:00
Emma
02383542b2
mac: Allow running without logicOp and update macOS build instructions (#1880) 2026-04-18 22:57:27 +02:00
Emma
5ac87ba7f3
mac: Log CPU and OS version (#1879) 2026-04-18 19:53:21 +02:00
goeiecool9999
5ee74b5a6a GL: clean up shader object after compilation
On Linux/mesa, when compiling a big shader cache like BOTW this saves about 8.2 GiB of RAM usage
(only when ~/.cache/mesa_shader_cache and precompiled/_gl.bin cache is also fresh)
2026-04-18 18:48:54 +02:00
shinra-electric
deb000f947
build+mac: Add current year to app bundle copyright (#1877) 2026-04-17 05:42:03 +02:00
goeiecool9999
553990a25e debugger: fix crash when adding breakpoint
Checking the item in the event handler that is triggered when an option is checked caused recursion stack overflow

fixes: #1876
2026-04-16 10:31:04 +02:00
shinra-electric
125765c913
ci+mac: Codesign macOS app bundle (#1875) 2026-04-16 03:26:26 +02:00
shinra-electric
d96104d00d
ci+mac: Fix rpath for libusb (#1874) 2026-04-16 03:18:44 +02:00
Sapphire
7e5516f94d
Vulkan: Fix compile error on glibc 2.43 (#1870) 2026-04-12 05:16:07 +02:00
goeiecool9999
391478b307
vulkan: Improve the Breath of the Wild RADV/LLVM workaround (#1862) 2026-04-10 22:46:51 +02:00
iPixzl
1644fd2e09
GamePatch: Add additional FFL endian-swap patch signature for Mario Kart 8 (#1867) 2026-04-10 22:45:27 +02:00
goeiecool9999
b9b46ecb65
Vulkan: Use LLVM shader compiler for BOTW on Linux + Mesa (#1857)
Workaround for GPU crashes when using certain runes in BOTW
Can be overridden by setting RADV_DEBUG=aco
2026-04-04 19:14:49 +02:00
goeiecool9999
b3e310220e vulkan: use the right exit function when vulkan fails to initialize.
(fixes: #1833)
2026-04-04 16:48:43 +02:00
GaryOderNichts
c16936d381
build: Link zstd explicitly (#1860) 2026-04-04 16:32:12 +02:00
goeiecool9999
fd1a1d1688 unix: simplify the case-insensitivity algorithm 2026-04-03 02:47:52 +02:00
goeiecool9999
72b5740ed4 unix: check current working directory for case-insensitive relative paths when no more parents 2026-04-03 02:30:48 +02:00
goeiecool9999
a1d47c37b6 unix: handle edge case where path does not exist
fixes crash when passing an invalid path with the "-g" launch option
the algorithm would recurse up the tree infinitely looking for blank parent directories
probably fixes more things
2026-04-03 01:11:56 +02:00
Squall Leonhart
2913a8ca7a
input: Fix bitwise operation for button mask (#1851)
Fixes classic controller buttons which were shifted beyond 32bit range
2026-03-29 08:56:12 +02:00
Exzap
6648a9c225 coreinit: Log errors in OSUnlockMutex instead of debug asserts 2026-03-24 04:15:28 +01:00
Exzap
f2f70e5df8 GX2: Fix several missing/incorrect cmd reserve calls 2026-03-24 04:15:28 +01:00
Exzap
f893e2928c GX2: Fix return type of GX2DrawDone 2026-03-24 04:15:28 +01:00
Exzap
8065520583 PPCRec: Fix eflags optimization 2026-03-24 04:15:28 +01:00
Exzap
0121e63408 coreinit: Implement OSFatal 2026-03-24 04:15:28 +01:00
Exzap
c92bef0352 coreinit: Refactor OSScreen 2026-03-24 04:15:28 +01:00
Exzap
5e0e3f42da coreinit: Improve vcprintf implementation 2026-03-24 04:15:28 +01:00
Exzap
a5ae41fdbe build: Remove unnecessary includes to improve compile times
Also revert PCH reuse for everything but MSVC. Other compilers/platforms have limitations that make reused PCH a bit too fragile. I got it to work but only after forcing certain flags globally (like -pthread) and I dont think its a good idea to do that
2026-03-24 04:15:28 +01:00
Exzap
8e2e2c44bb build: Generate precompiled header only once (msvc only) 2026-03-24 04:15:28 +01:00
Exzap
1a5546e4ad GfxPack: Add version (8) for new features 2026-03-24 04:15:05 +01:00
Squall Leonhart
0ff7d6ef0c
input: Fix logging crash in WPADGetInfoAsync due to mismatching type (#1832) 2026-03-13 21:38:33 +01:00
Crementif
a04eb53822
vcpkg: Update wxWidgets to 3.3.2 (#1824) 2026-03-12 21:58:22 +01:00
Crementif
3ee166101a debugger: fix breakpoints window right-click being offset 2026-02-23 17:08:30 +01:00
Exzap
ceb9771a5c Vulkan: Fixes for object refcounting 2026-02-23 03:21:43 +01:00
Exzap
4ca4d1caed config: Retain Vulkan device selection from previous config format 2026-02-23 03:21:43 +01:00
Exzap
2096c434de Latte: Cleanup some endian handling code 2026-02-23 03:21:43 +01:00
Exzap
18dd75c1f5 Latte: Force height of 1D textures to 1 2026-02-23 03:21:43 +01:00
Exzap
556fc24896 GameList: Reduce time it takes for the list to be populated 2026-02-23 03:21:43 +01:00
Exzap
f5be6bef2d GameList: Save config after updating favorites 2026-02-23 03:21:43 +01:00
Luminyx
cd5838fc7f
Windows: Don't re-attach stdio when piping output (#1812)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2026-02-19 03:30:45 +01:00
Crementif
3b5c6f5246 Fix dark mode in download manager
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2026-02-09 14:10:19 +01:00
Exzap
9f58f3a118 coreinit: Fix initialization order
Threads were initialized before SDA values were available from RPL loader. Fixes crash in Skylanders Swap Force and some other games
2026-02-09 07:08:01 +01:00
Exzap
8cd5ce102f Vulkan: Properly shutdown pipeline compile threads + code cleanup
This fixes an issue where the Vulkan renderer would hang up on shutdown due to resources still being in use
2026-02-09 04:11:10 +01:00
Luminyx
2c03ac3217
GraphicPack: Support wildcard titleId and RPX hash + entrypoint callbacks (#1805)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2026-02-09 02:20:34 +01:00
rcaridade145
5bc60b9452
AX: Fix linear filter (#1802)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
The else code would be unreachable.
2026-02-02 17:16:46 +01:00
goeiecool9999
ba82dc57d6
OpenGL+Vulkan: Use unified uniform block layout for output shaders (#1785)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2026-02-01 02:06:05 +01:00
shinra-electric
4ad3f21047
macOS: Bump macOS min version to 13.4 (#1798) 2026-02-01 01:54:04 +01:00
Crementif
07bdb3454a
debugger: Various QoL improvements (#1777)
* Ignore keyboard inputs when debugger is focused
* Add workaround for slightly improved multi-thread debugging
* debugger: Add interpreter mode switch and log-only memory breakpoints
2026-02-01 01:53:02 +01:00
Exzap
4fe73a3582 rpl: Fix RPLs not loading from cafeLibs/ 2026-01-22 06:55:22 +01:00
Exzap
f45623523d CPU: Fix PSQ_L/PSQ_ST scaler calculation 2026-01-21 06:31:10 +01:00
RedBlackAka
a20032ffb5
Latte/Metal: Exclude more Metal only logic on non-Apple platforms and cleanups (#1781)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2026-01-21 04:46:06 +01:00
oltolm
7db733b337
UI: more cleanup (#1769) 2026-01-21 04:38:38 +01:00
SamoZ256
d9cc8f81c2
metal: Create temporary autorelease pools (#1783)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2026-01-16 04:23:12 +01:00
goeiecool9999
3d26998975
UI: Update graphics settings immediately when possible (#1782) 2026-01-16 04:21:44 +01:00
goeiecool9999
42262b5823 UI: Fix crash on exit hotkey button press 2026-01-16 00:55:00 +01:00
goeiecool9999
8af510b9e3 Vulkan: Move command buffer setup to more sensible location 2026-01-15 22:54:01 +01:00
goeiecool9999
e376b15075 Vulkan: Fix validation error on Spir-V Execution Mode intrinsic 2026-01-12 22:44:56 +01:00
goeiecool9999
ca73549717
nim: Fix memory leak (#1775)
Store NIMPackage structs in vector instead of pointers on the heap
2026-01-09 16:47:59 +01:00
goeiecool9999
e3260daea2 Fix dump directory creation
Thanks to Switch-9867 on GH for pointing out the issue
2026-01-09 11:04:43 +01:00
Exzap
bc0ebfc106 rpl: Fix sysapp name + fix logging order 2026-01-09 02:15:01 +01:00
Exzap
c5913fe8cb refactor/rpl: Treat HLE libs more like RPL modules
HLE modules now have a unified interface via which they can get notified when mapped into the process or when loaded/unloaded.

We also always call the unload functions when stopping emulation to give the module implementations a chance to reset all state (although many of them are still missing proper cleanup code for now)
2026-01-07 02:46:49 +01:00
oltolm
59a5118472
UI: misc. code cleanups (#1762) 2026-01-03 11:23:41 +01:00
qurious-pixel
c7ac9900a9
build: Search for MVK when not bundling (#1765) 2026-01-02 23:48:02 +01:00
goeiecool9999
7330cdf3a9 Vulkan: Reuse pipeline layout for DRC to fix layout object leak 2025-12-29 13:38:19 +01:00
goeiecool9999
422b5b3a1d Vulkan: force barriers on Gerudo Town water shader 2025-12-28 23:18:31 +01:00
oltolm
08aa28468b
Latte: Fix ASAN error (#1760) 2025-12-28 13:20:54 +01:00
Exzap
232ff2257a Fix compile error in debug builds 2025-12-27 14:01:43 +01:00
kevinmmccormick
07371327f5
UI: Implement hotkey for "Exit application" (#1756) 2025-12-26 23:38:50 +01:00
oltolm
d86dc5e5f5
UI: fix crash in DumpCtrl (#1755) 2025-12-26 23:01:50 +01:00
RedBlackAka
13683d417c
UI: Small adjustments and cleanup, end emulation hotkey for debug builds (#1754) 2025-12-26 23:00:40 +01:00
goeiecool9999
13c6d497a0 Vulkan: Refactor HandleScreenshotRequest 2025-12-24 21:25:34 +01:00
RedBlackAka
aaf6d5d677
UI: Hide Metal only options on non-Apple builds (#1753) 2025-12-23 20:43:28 +01:00
oltolm
1c7fe5673f
UI: Replace to_wxString and wxHelper::FromUtf8 with wxString::FromUTF8 (#1752) 2025-12-23 15:37:01 +01:00
oltolm
5cfebb4373
UI: Replace sprintf with wxString::Format (#1749)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-12-19 20:54:34 +01:00
rcaridade145
7ab5c5e267
h264: Clear display buffer before allocation (#1750) 2025-12-19 20:53:35 +01:00
Arian K.
7dd0b90f53
olv/hle: Functioning Miiverse applet (#1747) 2025-12-19 20:53:09 +01:00
goeiecool9999
42da9712a9 AX: Don't exit when initializing audio backend fails
just continue running without audio
2025-12-19 16:57:43 +01:00
SSimco
3746f018c3 TCL: make tclRingBufferA_writeIndex atomic & refactor 2025-12-19 04:17:48 +02:00
goeiecool9999
a87bded17d UI: Make File menu exit option use OnClose for cleaner shutdown 2025-12-18 15:26:39 +01:00
goeiecool9999
6cee127852 Move clipboard flush to OnExit
Fixes occasional hang on exit
2025-12-18 15:19:23 +01:00
rcaridade145
0ddcba4ff1
Update MoltenVK to 1.4.1 with private api support. (#1743)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-12-11 21:53:50 +01:00
SamoZ256
26e40a4bce
Add Metal backend (#1287)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-12-06 17:14:25 +01:00
goeiecool9999
5520613dc3 nn_boss: Check for nullptr
Fixes a crash in Super Smash Bros.
2025-12-05 23:57:57 +01:00
Exzap
47b8d911b9 Latte: Instance count minimum is 1
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
Previously we skipped drawcalls when the instance count was set to zero. But the hardware register enforces a minimum of 1.

Fixes black screen in "Cubit The Hardcore Platformer Robot" which does all it's drawcalls with an hardcoded instance count of 0.
2025-11-28 10:34:52 +01:00
Carlos Estrague / Mrc_munir
5bf58c3d20
Vulkan: Added support for implementations which only expose host-visible buffers as device-local (#1737)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-11-27 17:50:03 +01:00
Crementif
51c1e80ba7
Vulkan: Always embed shader source code when RenderDoc, Nsight or other frame debuggers are attached (#1733) 2025-11-27 17:46:42 +01:00
Joshua de Reeper
bb3fb81fb6
nsyshid/libusb: Don't attempt kernel driver detach on MacOS (#1736) 2025-11-27 17:42:00 +01:00
mazes-80
85c8f95b69
build: Fixes to how ENABLE_BLUEZ=OFF is handled (#1731) 2025-11-27 17:41:06 +01:00
mazes-80
921e91ed75
build: Add missing includes required for gcc 14 (#1730) 2025-11-27 17:39:54 +01:00
Crementif
ad89b5ef37 ppc: Add fabs instruction to assembler
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-11-23 16:52:47 +01:00
oltolm
eb95e63d94
UI: Fix warnings (#1729)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-11-23 11:51:44 +01:00
Crementif
934cc3eb9d
UI: Improvements and fixes for Windows dark mode (#1728)
Some checks are pending
Build check / build (push) Waiting to run
Generate translation template / generate-pot (push) Waiting to run
2025-11-22 23:26:27 +01:00
oltolm
1382ee0381
build/cmake: Clean up target_link_libraries (#1726)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-11-21 01:50:52 +01:00
oltolm
f5b19278d1
UI: fix Curl deprecation warnings (#1724)
Some checks failed
Build check / build (push) Has been cancelled
Generate translation template / generate-pot (push) Has been cancelled
2025-11-18 05:14:59 +01:00