Commit Graph

348 Commits

Author SHA1 Message Date
Exzap
b0b2c25762 coreinit: Improve accuracy of OSSwitchCoroutine
Fixes Injustice: Gods Among Us crashing during boot.
2024-04-03 01:56:48 +02:00
goeiecool9999
5230fcab37
Debugger: Fix infinite loop in symbol storage (#1134) 2024-03-27 11:14:01 +01:00
goeiecool9999
111e383d1b
coreinit: Fix race condition that causes crash (#1138) 2024-03-26 13:07:08 +01:00
Exzap
4b7d2f88ae Latte: Enable colorbuffer optimization if gfx packs are aware
The optimization for colorbuffer resolution introduced in PR #706 is now enabled. This optimization changes the resolution of certain framebuffer textures, which may conflict with the texture resolution rules set by some graphic packs. As a result, if a graphic pack that specifies texture resolution rules is in use, the optimization will automatically be turned off to prevent any issues.

To circumvent this, graphic packs can now include the setting "colorbufferOptimizationAware = true" in their rules.txt. This setting indicates that the pack has been updated to handle the resolution changes introduced by the optimization. Cemu will allow the optimization to remain enabled if resolution packs have this flag set.
2024-03-25 21:35:38 +01:00
capitalistspz
241915e1a6
Gamelist: Display title long names + improvements for shortcuts (#1126)
- Windows icons are stored as .ico files to %LOCALAPPDATA%/Cemu/icons/
- Long title names chosen as some games (NSMBU + NSLU) add trailing dots for their shortnames
- Long title names have their newlines replaced with spaces at parsing
- Linux shortcut paths are saved with UTF-8 encoding
- Game titles are copied and saved with UTF-8 encoding
2024-03-24 11:11:18 +01:00
goeiecool9999
17060752b6
Vulkan: Several swapchain fixes and refactors (#1132) 2024-03-24 10:57:08 +01:00
goeiecool9999
42d14eec96
Minor code improvements (#1124) 2024-03-18 09:18:02 +01:00
goeiecool9999
eaa82817dd
Update thread names (#1120) 2024-03-15 23:06:48 +01:00
Exzap
731713de3a OpenGL: Remove "-legacy" flag
"Intel legacy mode" was a special mode to workaround various Intel OpenGL driver limitations during the earlier years of Cemu. It's been unmaintained for years and no longer serves a purpose.

If we ever bring back compatibility with ancient Intel GPUs it should be done in a more structured way than a blunt yes/no flag.
2024-03-14 03:11:04 +01:00
Exzap
193767e6cc Latte+Vulkan: Code cleanup
Besides a general cleanup:
- Remove deprecated resource destruction queues
- Move functionality from renderer into Latte base classes to deduplicate code
2024-03-14 01:10:52 +01:00
Exzap
bc04662525 Latte+GL+VK: Improve handling of gfx pack texture overwrite format
Graphic packs can overwrite the format of a texture (e.g. for higher bitdepth to lessen banding) but the code for this wasn't correctly working anymore.

- Fixes overwrite format being ignored for texture views on Vulkan backend
- Fixes overwrite format not being used for texture views on OpenGL

Format aliasing is complicated enough as it is, even without overwrites, so this adds a new rule to make behavior more well defined: If two textures share memory but only one uses an overwrite format, then they are no longer synchronized and are considered separate textures.

Bonus fixes for OpenGL:
- Use fbo 0 instead of -1 as the default. This silences some warnings in debug output
- On OpenGL, bind new framebuffers on handle generation so they are considered created
2024-03-13 02:41:42 +01:00
Exzap
8bc444bb97 Latte: Derive framebuffer size from correct mip of depth buffer 2024-03-12 16:16:52 +01:00
Exzap
6fa77feba3 Latte: Fix regression in dd7cb74 2024-03-12 05:53:31 +01:00
Exzap
a50e25300d Vulkan: Remove unused code path for texture copies
In 2020 we switched to drawcalls for texture copies replacing the copy-via-buffer path. It's not been used since so lets remove it
2024-03-11 23:01:37 +01:00
Exzap
1f9b89116f Vulkan: Fix crash during shutdown if shaders are still compiling
Make sure the async shader compiler threads are stopped before the shaders are deleted
2024-03-11 21:57:37 +01:00
Exzap
40d1eaeb72 nn_ac: Refactor and implement more API
Doesn't fix any issue as far as I know but it removes some of the unsupported API complaints in debug logging
2024-03-11 21:57:37 +01:00
Exzap
dd7cb74cd2 Latte: Small refactor and clean up for texture size code 2024-03-11 21:57:37 +01:00
Exzap
0993658c82 GX2: Rework GX2Set*UniformReg
- Use cafeExportRegister() instead of legacy export
- Submit as a single PM4 packet
- Add logging for the special case of the size parameter (not sure if this is used by any game?)
- Add some extra validation and logging which may be helpful to homebrew devs
2024-03-11 21:57:37 +01:00
goeiecool9999
bb88b5c36d
Fix crash introduced by #1115 (#1117)
* Revert "CafeSystem: Init recompiler after game profile has been loaded (#1115)"
* Instead move gameprofile load call
2024-03-11 02:40:47 +01:00
goeiecool9999
788da3cdf7
CafeSystem: Init recompiler after game profile has been loaded (#1115) 2024-03-11 01:47:31 +01:00
goeiecool9999
e1435066ee
OpenGL: Fix crash related to wxWidgets handling of vsync (#1112) 2024-03-11 00:57:31 +01:00
Exzap
d9e8ca2c83 Revert "Vulkan: Update some code to use VK_KHR_synchronization2"
This reverts commit 8f1cd4f925.

We received reports from users stuck with Vulkan drivers from 2019. (E.g. Kepler on Windows). So let's not unnecessarily increase the Vulkan requirement for now and postpone this to after the next stable release
2024-03-09 02:38:08 +01:00
Exzap
ea68f787eb Vulkan: For MSAA surface copies make the target MSAA too
Fixes #1108
2024-03-08 14:45:02 +01:00
Exzap
9f9bc9865f Vulkan: Avoid calling vkCmdClearColorImage() on compressed textures
This is not allowed according to the spec and can crash drivers. Fixes #1100
2024-03-08 14:43:40 +01:00
Exzap
b8d81283e8 Vulkan: Remove unnecessary index buffer for backbuffer drawcall 2024-03-08 14:39:46 +01:00
Exzap
8f1cd4f925 Vulkan: Update some code to use VK_KHR_synchronization2 2024-03-08 14:39:46 +01:00
Simon
49c55a3f56
nsyshid: remove stray print statements (#1106) 2024-03-06 14:37:36 +01:00
Exzap
72ce4838ea Latte: Optimize uniform register array size for known shaders 2024-02-20 10:57:05 +01:00
Exzap
96bbd3bd25 Latte: Avoid assert in texture view check 2024-02-20 10:57:05 +01:00
Mike Lothian
72aacbdcec Vulkan: Don't use glslang internal headers
Signed-off-by: Mike Lothian <mike@fireburn.co.uk>
2024-01-19 04:58:08 +01:00
Exzap
9b0a1d53dc Latte: Fix syntax error in generated GLSL 2024-01-14 23:40:29 +01:00
Exzap
223833cac4 Update libraries 2024-01-13 22:36:04 +01:00
GaryOderNichts
4405116324
GDBStub: Support watchpoints on linux (#1030)
* GDBStub: Support watchpoints on linux
* GDBStub: Use `TCP_NODELAY`
2023-12-23 15:25:01 -08:00
Exzap
bab1616565 nsysnet: Add support for SO_BIO and handle SO_ENOTCONN 2023-12-13 22:43:51 +01:00
Exzap
d2ba4e65c5 Latte: 1D views are compatible with 1D textures 2023-12-13 18:10:10 +01:00
Exzap
2167143c17 Latte: Support for SAMPLE_LB 2023-12-13 12:45:20 +01:00
Exzap
df282ab230 Latte: Clean up OpenGL relics in shared render code 2023-12-13 12:45:20 +01:00
Exzap
646835346c Latte: Refactor legacy OpenGL code for shader binding 2023-12-13 12:45:20 +01:00
Exzap
dee764473d Latte: Small refactor for GLSL texture coord handling
Also adds support for 2D textures coordinates with source as 0.0 or 1.0 literals instead of GPRs. Seen in shaders generated by CafeGLSL
2023-12-10 08:30:52 +01:00
Exzap
e7fa8ec0c6 Vulkan: Properly shut down compilation threads 2023-12-10 08:30:52 +01:00
Exzap
bffeb818d1 GfxPack: Refactor + better unicode support 2023-12-10 08:30:52 +01:00
Exzap
67f7ce815c nn_pdm: Refactor code to use new module structure 2023-12-10 08:30:52 +01:00
Exzap
9398c0ca6b Latte: Simplify and fix texture copy 2023-12-10 08:30:52 +01:00
GaryOderNichts
5047c4d083
GDBStub: Fix checkSum string to int conversion (#1029) 2023-11-27 12:21:52 +01:00
Exzap
f3c95f72e7 nn_fp: Multiple fixes 2023-10-19 05:55:52 +02:00
Exzap
9bb409314d coreinit: Fix potential race condition in IPC code 2023-10-18 10:43:36 +02:00
Exzap
63861bf812 Fix SpotPass downloads on Linux/MacOS 2023-10-17 13:07:43 +02:00
Exzap
c440ecdf36 FPD: Fix a crash due to incorrect instantiation 2023-10-17 06:16:29 +02:00
Exzap
0d71885c88 nn_fp: Full rework of friend service 2023-10-17 05:26:30 +02:00
goeiecool9999
d4a2a8e8de
Vulkan: Cleanup image barrier code (#988) 2023-10-16 07:33:12 +02:00
Exzap
db53f3b980 Fixes for titles in NUS format
Symlinks were not handled correctly
2023-10-02 21:24:50 +02:00
Exzap
29c823fa1f Latte: Fix uniform size limit being too low 2023-10-02 19:05:44 +02:00
Exzap
757d458161 Compatibility with fmtlib 10.1.x 2023-10-02 18:53:00 +02:00
Exzap
ff9d180154 Code cleanup 2023-10-01 11:46:26 +02:00
Exzap
43976ca7eb Prioritize non-NUS format over NUS
If a title exists multiple times in the game folder in different formats, then prefer and use non-NUS format if one is available. This is so we match previous Cemu behavior where Cemu would pick non-NUS simply due the fact that NUS format wasn't supported yet.
2023-09-30 06:21:14 +02:00
Exzap
8bb7ce098c
Bump CI clang version to 15 + workaround for unsafe fiber optimizations (#982) 2023-09-29 17:17:28 +02:00
Exzap
8a4abb8bbb Update Windows build instructions 2023-09-29 06:48:10 +02:00
Exzap
abce406ee8 Refactor more wstring instances to utf8-encoded string 2023-09-29 06:48:10 +02:00
Exzap
f6c3c96d94 More detailed error messages when encrypted titles fail to launch 2023-09-29 06:48:10 +02:00
Exzap
5ad57bb0c9 Add support for games in NUS format (.app)
Requires title.tmd and title.tik in same directory
2023-09-29 06:48:10 +02:00
Exzap
f9f6206929 Vulkan: Add profiler for Vulkan API CPU cost
Disabled by default. Set VULKAN_API_CPU_BENCHMARK to 1 to enable
2023-09-29 06:48:10 +02:00
Exzap
3e925b7707 Latte: Bound uniform buffers based on access patterns within the shader 2023-09-29 06:48:10 +02:00
Exzap
4d6b72b353 Latte: Very minor refactor + optimization 2023-09-29 06:48:10 +02:00
Squall Leonhart
638c4014a1
nn_olv: Handle nullptr key in SetSearchKey (#974) 2023-09-22 19:20:22 +02:00
goeiecool9999
b4aa10bee4
Vulkan: Only create imgui renderpass once (#972) 2023-09-20 19:01:56 +02:00
Exzap
90c56b7731
Latte: Optimizations and tweaks (#706) 2023-09-19 21:17:21 +02:00
Simon
98b5a8758a
nsyshid: Add backends for cross platform USB passthrough support (#950) 2023-09-19 01:27:40 +02:00
Exzap
2a735f1fb7 coreinit: Use native COS locks instead of STL 2023-09-14 20:52:40 +02:00
Exzap
92ab87b049 Latte: Fix shader compilation error when subroutines are used
Fixes character colors in Tekken Tag Tournament 2
2023-09-14 20:52:40 +02:00
Exzap
b902aa2048 Logging: Refactor and optimizations 2023-09-14 20:52:40 +02:00
Exzap
fda5ec2697 ih264d: Small optimizations and experiments with multi-threading
Using the multi-threaded decoder doesn't seem to be worth it but at least we have a way to enable it now
2023-09-14 20:52:40 +02:00
Exzap
f04c7575d7 coreinit: Handle non-existing modules in OSDynLoad_Acquire
Fixes Togabito crashing on boot

coreinit: Handle non-existing modules in OSDynLoad_Acquire
2023-09-14 20:52:40 +02:00
Exzap
c168cf536a Vulkan: Dont immediately crash on bad pipeline cache 2023-09-14 20:52:40 +02:00
Exzap
524188bb7a Refactor more GX2 code to use LatteReg.h 2023-09-14 20:52:40 +02:00
Francesco Saltori
c16e258c93
Localization improvements and fixes (#956) 2023-09-08 02:09:03 +02:00
GaryOderNichts
d8b9a74d86
Latte: rendertarget is a bitmask (#942) 2023-08-16 23:52:06 +02:00
Exzap
892ae13680 Log Windows version + Fix logging crash on Linux 2023-08-13 14:50:38 +02:00
Colin Kinloch
22bf6420d2
Log platform info (#931) 2023-08-08 23:22:22 +02:00
Exzap
a17111e6b0 TitleManager: Improvements for .wua conversion
- Print more detailed paths in confirmation dialogue
- Prefer the title right clicked by the user
- When sourcing titles from other .wua files, use the correct subpath
Fix include path
2023-08-03 20:31:12 +02:00
Exzap
911573e0dd TitleList: Use narrower filter for identifying data titles
Previous code accidentally caught some game updates and dlc titles
2023-08-03 20:31:12 +02:00
Exzap
0f469eb2b9 Small cleanup + Fix memory base logged as 0 2023-08-03 20:31:12 +02:00
Exzap
0d96255bae nn_olv: More work on post API 2023-08-03 20:31:12 +02:00
Exzap
67819a68d9 nn_act: Handle incorrect slot 0 for PersistentId 2023-08-03 20:31:12 +02:00
Crementif
651e5336b4
debugger: Add logging breakpoint + misc fixes (#927) 2023-08-03 15:45:11 +02:00
Colin Kinloch
1d1e1e781b
Vulkan: Retry instance creation if validation layer is not present (#909) 2023-08-03 15:16:22 +02:00
Exzap
2200cc0ddf
Initial support for title switching + better Wii U menu compatibility (#907) 2023-07-21 13:54:07 +02:00
Rambo6Glaz
ea86c77088
Fix UTC offset calculation (#890) 2023-07-05 20:20:01 +02:00
Rambo6Glaz
b0ae008a89
Fix NEX DataStore uploads (nlibcurl) and stub Miiverse PostApp (#888) 2023-07-05 18:59:33 +02:00
Exzap
9499870cc9 Debugging: Add minimalist PPC profiler 2023-06-25 08:40:52 +02:00
Exzap
45072fccb2 Remove remnants of frame profiler code 2023-06-25 08:40:52 +02:00
Exzap
4a04fab9c4 coreinit: Set file flag in stat 2023-06-25 08:40:52 +02:00
Rambo6Glaz
a8d157d310
nn_olv: Added community related API (#873)
- Initialize
- Download communities (self-made / favorites / officials)
- Upload communities (create subcommunity)
- Upload favorite status (Add/Delete favorite to a subcommunity)

Enough for support of Mario Kart 8 tournaments
2023-06-24 14:51:41 +02:00
Squall Leonhart
1beec40445
Fix logging related crash in KPADGetUnifiedWpadStatus (#875) 2023-06-22 04:11:31 +02:00
Maschell
fd3b5b7f27
coreinit: Fix FSGetMountSource and FSAppendFile implementation (#863)
Fixes SD access in SSBU
2023-06-17 13:51:55 +02:00
Chris Purnell
f0ef8f3cc2
Fix some out of bound array access. (#862) 2023-06-16 20:15:43 +02:00
Exzap
633e5c0e05 Fix incorrect return values in OSAtomic 2023-06-15 22:36:45 +02:00
Exzap
808d1bb424 Add debug asserts for invalid MEMPTR
Also fixed some corruptions this uncovered
2023-06-15 22:36:35 +02:00
Exzap
7886b594a2 nsysnet: Implement inet_ntop 2023-06-15 22:36:25 +02:00
Exzap
0bead50065 coreinit: Implement support for ".." in paths 2023-06-15 21:23:18 +02:00
Maschell
f1ebfa9941
coreinit: Implement several FSA functions and fix some bugs (#844) 2023-06-15 21:05:16 +02:00
Maschell
6073ab3ec6
coreinit: Refactor FS functions to be more accurate (#842) 2023-06-04 11:13:45 +02:00
Colin Kinloch
4ae5b4f8b8
Wayland: Use viewporter (#836) 2023-05-28 02:04:24 +02:00
Crementif
d903b2cf12
Remove deprecated logging system and expose developer logging window (#825) 2023-05-20 02:46:12 +02:00
Alexander
b8dec03cb5
Add missing template arguments for std::forward (#819) 2023-05-15 18:31:53 +02:00
Jonathan Barrow
b74ae21953
Resolve domains to IPs in Friends NEX (#807) 2023-05-10 11:51:54 +02:00
why-keith
e58a84629f
Migrate coreinitMemLog_printf to new logging (#799) 2023-04-25 18:09:00 +02:00
why-keith
caa57a3cfd
Logging migration (forceLogDebug_printf) (#780)
* script changes - no arguments

* script changes with 2 arguments

* script changes with > 2 arguments

* script conversions with 1 argument - pt. 1

* script conversions with 1 argument - pt. 2

* script conversions with 1 argument - pt. 3

* script conversions with 1 argument - pt. 4

* script conversions with 1 argument - pt. 5

Pointer format hunting

* Fixed pointer format

* script conversions with 1 argument - final

* fixed conversion in non utf-8 file

* fixed conversion with capital letter

* actually fixed conversion with capital letter

* fixed another capital lettering issue

* Added conversions with LR removed

* removed LR from logs

* Converted logs that previously contained LR

* converted log that originally specified string length

* fixed log with commas in main text

* fixed multi-line log

* Fixed more logs with commas in main text

* Fixed unformatted pointer

* added conversion with float value

* converted lines with double parameters

* converted missed line

* corrected argument formatting

Co-authored-by: Crementif <26669564+Crementif@users.noreply.github.com>

* Fixed misspellings of "unhandled"

unhandeled -> unhandled

Co-authored-by: Crementif <26669564+Crementif@users.noreply.github.com>

---------

Co-authored-by: Crementif <26669564+Crementif@users.noreply.github.com>
2023-04-25 08:43:31 +02:00
Exzap
41f2c27229 Remove dependency on boost::dll and boost::range 2023-04-16 11:51:25 +02:00
why-keith
80953fe603
Migrate saveLog_printf to new logging (#768) 2023-04-16 00:31:53 +02:00
why-keith
27a5671056
Migrate inputLog_printf to new logging (#767) 2023-04-16 00:18:11 +02:00
why-keith
a519b01b58
Migrate socketLog_printf to new logging (#766) 2023-04-16 00:08:22 +02:00
why-keith
9c6e3fb144
Migrate nfpLog_printf to new logging (#769) 2023-04-15 15:19:00 +02:00
Exzap
ecb7b77326 Latte: Use better hashing algorithm for cache invalidation
Decreases chance of hash collisions while also being faster due to 4 channel vectorization
2023-04-15 10:08:58 +02:00
why-keith
a640bd079c
Migrate sndApiLog_printf to new logging (#762) 2023-04-13 14:18:45 +02:00
why-keith
486e228f72
Migrate gx2Log_printf to new logging (#761) 2023-04-13 14:13:54 +02:00
why-keith
4be57f4896
Migrate force_log_printf to new logging (#714) 2023-04-12 16:31:34 +02:00
Exzap
3ff3b732c8
Upgrade vcpkg + submodule dependencies (#719) 2023-03-28 17:43:02 +02:00
JP-Carr
a7f6043205 switched cafeLog_logLine() with cemuLog_log() 2023-03-26 15:10:48 +02:00
Exzap
9049ad91f9 Add missing constructor 2023-03-13 05:34:53 +01:00
Exzap
e803c6be47 Use attribute for AES-NI instead of -maes option 2023-03-13 05:34:53 +01:00
Exzap
504e0488a8 Remove shaderMulAccuracy "min" option
It's less accurate and it doesn't actually perform better on most hardware.
2023-03-13 05:34:53 +01:00
Exzap
8ce3f834c4 Latte: Optimize shader decompiler output 2023-03-13 05:34:53 +01:00
Exzap
a2c518354f Remove unnecessary include 2023-03-02 16:44:22 +01:00
Exzap
466ad8d35e Latte/Vulkan: Set RoundingModeRTE for all float types
Seems like GLSL's unpackHalf2x16() is affected by the 16bit rounding setting
2023-03-02 16:22:28 +01:00
Exzap
f8ea594447 Latte: Small refactor for shader decompiler
Latte: Small refactor for shader decompiler
2023-03-02 16:22:19 +01:00
Exzap
4a564e2447 Latte/Vulkan: Set shader rounding mode via VK_KHR_SHADER_FLOAT_CONTROLS 2023-03-02 16:22:05 +01:00
lisa-wolfgang
4c697d3755
Add cross-platform "disable screen saver" setting (#497) 2023-02-24 22:10:07 +01:00
Exzap
80b1c50b50 coreinit: Fix thread scheduler not resetting quantum
When a thread was force-rescheduled (e.g. via OSYieldThread) the next time it resumed it would not reset the time slice duration (remainingCycles) back to ppcThreadQuantum. As a consequence threads were often immediately rescheduled and only on the next turn they would get their full time slice.

Aside from (very slightly) improving performance, this also fixes the OSDisableInterrupts warning spam in the log for TPHD.
2023-02-22 13:37:14 +01:00
Exzap
9d25b88368 Latte: Add support for MIN_DX10 shader instruction 2023-02-22 13:37:14 +01:00
Crementif
05e0f349e0
debugger: Disable Linux read/write breakpoints for now (#669)
It seems that there's some differences for some distros so until a proper solution is found, just disable it for now.
2023-02-20 00:29:32 +01:00
Crementif
6d75776b28
Add GDB stub for debugging (#657)
* Implement GDB stub debugger

Can be enabled by using the "--enable-gdbstub" option (and the debugger GUI, although that's untested) which'll pause any game you launch at start-up. Will start at port 1337 although it'll eventually be user-editable. The code is a bit weirdly sorted and also just needs a general cleanup, so expect that eventually too. And uses egyptian braces but formatting was easier to do at the end, so that's also something to do.

It has been tested to work with IDA Pro, Clion and the standalone interface for now, but I plan on writing some instructions in the PR to follow for people who want to use this. Memory breakpoints aren't possible yet, only execution breakpoints.

This code was aimed to be decoupled from the existing debugger to be able to be ported to the Wii U for an equal debugging experience. That's also why it uses the Cafe OS's thread sleep and resuming functions whenever possible instead of using recompiler/interpreter controls.

* Add memory writing and floating point registers support

* Reformat code a bit

* Format code to adhere to Cemu's coding style

* Rework GDB Stub settings in GUI

* Small styling fixes

* Rework execution breakpoints

Should work better in some edge cases now. But this should also allow for adding access breakpoints since it's now more separated.

* Implement access breakpoints

* Fix some issues with breakpoints

* Fix includes for Linux

* Fix unnecessary include

* Tweaks for Linux compatibility

* Use std::thread instead of std::jthread to fix MacOS support

* Enable GDB read/write breakpoints on x86 only

* Fix compilation for GCC compilers at least

The thread type varies on some platforms, so supporting this is hell... but let's get it to compile on MacOS first.

* Disable them for MacOS due to lack of ptrace

---------

Co-authored-by: Exzap <13877693+Exzap@users.noreply.github.com>
2023-02-19 15:41:49 +01:00
goeiecool9999
05d82b09e9
Add back missing flag to keep background image in background (#667) 2023-02-19 14:52:19 +01:00
goeiecool9999
cbb79fd34c
Separate imgui contexts for TV and Pad windows. (#664) 2023-02-18 11:56:43 +01:00
Exzap
f3ff919be2
Code clean up + replace some wstring instances with utf8 (#640) 2023-01-29 13:53:31 +01:00
Exzap
8651c4bae7 coreinit: Correctly return success code in FSRemove 2023-01-28 10:05:29 +00:00
Exzap
404af95a2c Latte: Less aggressive texture readback
By mistake we would read affected textures back after every single drawcall. As an optimization if the same texture gets drawn to multiple times we'll try to only read it back once at the end of the sequence.
2023-01-27 09:57:10 +00:00
Exzap
859dc78e90 coreinit: Dont yield uninterruptible threads in spinlock 2023-01-27 09:57:10 +00:00
Exzap
387b712959 Logging: Add TextureReadback logtype and clean up code 2023-01-27 09:57:10 +00:00
Exzap
9bbfd33842 Latte: FragCoord w should not be reciprocal
Fixes rendering in various Virtual Console DS titles
2023-01-27 09:57:10 +00:00
Exzap
43b5ad2f1c PPCInterpreter: Improve overflow handling 2023-01-27 09:57:10 +00:00
Exzap
4b5014c16a coreinit: Fix memory mapping API
Fixes Unity based games freezing on boot
2023-01-27 09:57:10 +00:00
goeiecool9999
33bd10b4e0
Vulkan: Use the correct resolution for out-of-date check (#595) 2022-12-29 00:19:05 +01:00
SSimco
fcab8f8f1a
Linux: Add CMake find module for wayland + make wayland optional (#572) 2022-12-15 08:44:14 +01:00
Tillsunset
4491560b32
Add check for backwards delete (#564) 2022-12-09 18:01:08 +01:00
SSimco
fca7f5dfe4
Linux: Add Vulkan support for wayland (#553) 2022-12-07 16:45:25 +01:00
Exzap
2c81d240a5
Make codebase more CPU-agnostic + MacOS disclaimer (#559) 2022-12-07 01:48:24 +01:00
Tom Lally
445b0afa95
Better screenshot error handling (#552) 2022-12-05 17:16:08 +01:00
Tom Lally
dd538d477c
Correctly create screenshot directory if it does not exist (#551) 2022-12-03 17:57:32 +01:00
Tom Lally
b361b154d8
Cross-platform screenshots (#543)
Co-authored-by: Tom Lally <tomlally@protonmail.com>
Co-authored-by: Exzap <13877693+Exzap@users.noreply.github.com>
2022-12-02 04:51:07 +01:00
goeiecool9999
2cfb7f3737
Automatically scale imgui text based on display pixel density (#545) 2022-12-01 15:58:08 +01:00