eden-miror/src/common
John 0d950195e9
[Settings] Add "Enable Legacy Rescale Pass" Toggle (#3582)
This PR introduces an optional Legacy Rescale Compatibility Mode that restores the previous rescale‑pass behavior for titles that rely on its quirks. While the new rescale logic is generally more correct, some games exhibit visual issues that the legacy behavior incidentally avoids.
Enabling this mode can mitigate line artifacts on AMD GPUs and reduce grey‑texture flickering on Nvidia GPUs in Luigi’s Mansion 3. This is a compatibility workaround rather than a full fix, and should only be used for titles affected by these rare edge‑case rendering problems.

Original Logic from MaranBR

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3582
Co-authored-by: John <john@eden-emu.dev>
Co-committed-by: John <john@eden-emu.dev>
2026-02-26 03:57:25 +01:00
..
android [fs/core] Load external content without NAND install (#2862) 2026-02-06 14:05:44 +01:00
arm64 Rework time service to fix time passing offline. 2024-01-24 04:26:55 +00:00
fs [*] change all std::unordered_map and std::unordered_set into ankerl::unordered_dense::map/set variants (#3442) 2026-02-10 03:34:07 +01:00
logging [common] remove uneeded allocations in logs (#3409) 2026-02-05 05:47:43 +01:00
windows [port] windows 7 support (#3105) 2025-11-30 06:04:36 +01:00
x64 [windows] Return x86 microsleep for Windows (#3563) 2026-02-17 06:15:45 +01:00
address_space.cpp
address_space.h Move to Clang Format 15 2023-01-29 17:49:42 -07:00
address_space.inc Fix address space allocator slow path to avoid OOB 2023-05-07 15:11:16 +01:00
algorithm.h
alignment.h fssystem: rework for yuzu style 2023-08-15 17:47:40 -04:00
announce_multiplayer_room.h [chore] Fixed a couple memory leaks using up ~15 MB each iteration (#398) 2025-12-26 02:55:52 +01:00
assert.cpp [common] Do not expose platform specific Crash() macro that is only used ever once (#2909) 2025-11-03 21:07:30 +01:00
assert.h [chore] Resolve "warning C4127: conditional expression is constant" while building under MSVC (#3567) 2026-02-21 03:01:19 +01:00
atomic_ops.h [common] provide fallback for lack of atomic u128 support (#2999) 2025-11-13 13:27:32 +01:00
bit_field.h externals: Update to fmt 10 and add format_as formatter for BitField 2023-05-28 15:05:55 -04:00
bit_util.h Move to Clang Format 15 2023-01-29 17:49:42 -07:00
bounded_threadsafe_queue.h [video_core] reduce SPSC/MPSC queue contention for commands (#289) 2025-11-16 22:39:46 +01:00
cityhash.cpp
cityhash.h
CMakeLists.txt [windows] Return x86 microsleep for Windows (#3563) 2026-02-17 06:15:45 +01:00
common_funcs.h [common] Do not expose platform specific Crash() macro that is only used ever once (#2909) 2025-11-03 21:07:30 +01:00
common_types.h [tools, cmake] refactor: update/hash check scripts, use tags for some more deps, proper CPMUtil separation (#2666) 2025-10-05 03:04:53 +02:00
concepts.h [common] replace Common::(DerivedFrom, IsArithmetic, Size, ConvertibleTo, IsIntegral) with libstdc++ equivalents (#290) 2025-11-07 17:03:01 +01:00
container_hash.h container_hash: use climits 2023-03-26 10:24:33 -04:00
demangle.cpp [compat] Solaris build fixes for openssl, catch2; NetBSD build fixes (#2752) 2025-10-17 22:12:58 +02:00
demangle.h Move demangle impl to cpp 2023-01-14 05:12:41 +00:00
detached_tasks.cpp general: Silence -Wshadow{,-uncaptured-local} warnings 2023-07-18 19:31:35 -04:00
detached_tasks.h
device_power_state.cpp Add Device Power State (Windows, Linux, Mac and Android) (#197) 2025-06-18 08:34:54 +00:00
device_power_state.h Add Device Power State (Windows, Linux, Mac and Android) (#197) 2025-06-18 08:34:54 +00:00
div_ceil.h Move to Clang Format 15 2023-01-29 17:49:42 -07:00
dynamic_library.cpp Update fmt to allow for v11 2025-04-10 01:11:22 +02:00
dynamic_library.h common: dynamic_library: Add ctor for existing handle. 2023-06-03 00:05:31 -07:00
elf.h jit: add support for relr-type relocations 2023-10-11 11:13:19 -04:00
error.cpp common: error: Fix for Android. 2023-06-03 00:05:27 -07:00
error.h
expected.h Move to Clang Format 15 2023-01-29 17:49:42 -07:00
fiber.cpp [fiber] fix windows 11 regression with DefaultSettings due to fiber stack corruption (#3400) 2026-01-27 23:42:34 +01:00
fiber.h [common, core] remove uneeded memory indirection overhead at startup (#3306) 2026-01-16 23:39:16 +01:00
fixed_point.h [common] replace Common::(DerivedFrom, IsArithmetic, Size, ConvertibleTo, IsIntegral) with libstdc++ equivalents (#290) 2025-11-07 17:03:01 +01:00
free_region_manager.h [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
hash.h
heap_tracker.cpp Partial revert "[common] remove HeapTracker (#3001)" (#3107) 2025-11-27 15:31:34 +01:00
heap_tracker.h Partial revert "[common] remove HeapTracker (#3001)" (#3107) 2025-11-27 15:31:34 +01:00
hex_util.cpp
hex_util.h Update fmt to allow for v11 2025-04-10 01:11:22 +02:00
host_memory.cpp [host_memory] avoid doing madvise(2) syscall for a simple memset op (#3108) 2026-02-19 09:16:19 +01:00
host_memory.h [host_memory] remove unused fastmem fallback path (#3133) 2026-01-13 02:06:35 +01:00
input.h [*] change all std::unordered_map and std::unordered_set into ankerl::unordered_dense::map/set variants (#3442) 2026-02-10 03:34:07 +01:00
intrusive_list.h common: add intrusive list type 2023-04-29 17:46:26 -04:00
intrusive_red_black_tree.h general: fixes for gcc 13 2023-04-02 19:02:04 -04:00
literals.h
lru_cache.h
lz4_compression.cpp fssystem: rework for yuzu style 2023-08-15 17:47:40 -04:00
lz4_compression.h fssystem: rework for yuzu style 2023-08-15 17:47:40 -04:00
make_unique_for_overwrite.h Move to Clang Format 15 2023-01-29 17:49:42 -07:00
math_util.h [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
memory_detect.cpp
memory_detect.h Rework time service to fix time passing offline. 2024-01-24 04:26:55 +00:00
multi_level_page_table.cpp
multi_level_page_table.h
multi_level_page_table.inc
overflow.h [common] replace Common::BitCast with libc++ provided one (#2774) 2025-10-22 02:56:28 +02:00
page_table.cpp [dynarmic, common] pagetable clustering (#3215) 2026-01-13 00:27:31 +01:00
page_table.h [dynarmic, common] pagetable clustering (#3215) 2026-01-13 00:27:31 +01:00
param_package.cpp
param_package.h [*] change all std::unordered_map and std::unordered_set into ankerl::unordered_dense::map/set variants (#3442) 2026-02-10 03:34:07 +01:00
parent_of_member.h
point.h
polyfill_thread.h [common] use libc++ provided jthread instead of in-house one (which deadlocks on FBSD 14) (#351) 2025-10-01 06:59:35 +02:00
quaternion.h
range_map.h [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
range_mutex.h smmu: use new range mutex construction for protecting counters 2024-01-31 16:38:51 +01:00
range_sets.h Common: Rename SplitRangeSet to OverlapRangeSet 2024-02-05 23:01:17 +01:00
range_sets.inc [cmake] enable clang-cl and WoA builds (#348) 2025-09-09 20:47:49 +02:00
ring_buffer.h [cmake] enable clang-cl and WoA builds (#348) 2025-09-09 20:47:49 +02:00
scm_rev.cpp.in [cmake, frontend] Fix update checker and move to self-hosted Git (#3558) 2026-02-15 20:51:05 +01:00
scm_rev.h [cmake, frontend] Fix update checker and move to self-hosted Git (#3558) 2026-02-15 20:51:05 +01:00
scope_exit.h scope_exit: Make constexpr 2024-02-19 16:00:46 +01:00
scratch_buffer.h Fix ScratchBuffer moves 2023-07-04 16:02:58 +01:00
settings.cpp [frontend] Slow and Turbo modes (#3525) 2026-02-12 01:31:55 +01:00
settings.h [Settings] Add "Enable Legacy Rescale Pass" Toggle (#3582) 2026-02-26 03:57:25 +01:00
settings_common.cpp Fix more typos 2024-01-15 23:26:53 +00:00
settings_common.h [cmake, common] allow build with -fno-rtti and /GR-, to disable gen of rtti and save some bytes in vtables (#359) 2026-02-22 03:09:03 +01:00
settings_enums.h [common, hle] add new updates Polish+Thai languages (#3587) 2026-02-23 13:39:16 +01:00
settings_input.cpp core: hid: Split SL and SR buttons 2023-11-11 21:03:15 -06:00
settings_input.h android: Input mapping 2024-02-17 12:32:33 -05:00
settings_setting.h [cmake, common] allow build with -fno-rtti and /GR-, to disable gen of rtti and save some bytes in vtables (#359) 2026-02-22 03:09:03 +01:00
signal_chain.cpp android: Add cpu bakend gui toggle 2023-11-25 00:47:28 -05:00
signal_chain.h Address some review comments 2023-11-25 00:47:35 -05:00
slot_vector.h [compat] Debian stable gcc12/clang14 compilation fixes (#2763) 2025-10-18 01:54:43 +02:00
socket_types.h ssl: Reorder inclusions 2023-07-17 15:46:24 -04:00
spin_lock.h [common] move spinlock to pure header def (#3287) 2026-01-13 04:17:27 +01:00
stb.cpp cmake: prefer system stb headers 2023-10-25 21:47:32 +02:00
stb.h cmake: prefer system stb headers 2023-10-25 21:47:32 +02:00
steady_clock.cpp [port] windows 7 support (#3105) 2025-11-30 06:04:36 +01:00
steady_clock.h steady_clock: Introduce a real time clock 2023-03-07 21:17:46 -05:00
stream.cpp
stream.h
string_util.cpp [common, fs] Use std::string_view instead of std::string&; inline functions that are used rarely (#330) 2025-08-27 22:21:04 +02:00
string_util.h [common, fs] include missing header introduced on #330 (#370) 2025-08-31 08:40:46 +02:00
swap.h [common] fix formatting of swapped u32_le/u64_le for BE targets (#2998) 2025-11-13 13:23:46 +01:00
thread.cpp [android, core] pin core threads to logical CPUs 0-3 (#3121) 2026-02-01 01:54:59 +01:00
thread.h [android, core] pin core threads to logical CPUs 0-3 (#3121) 2026-02-01 01:54:59 +01:00
thread_queue_list.h
thread_worker.h [common] use libc++ provided jthread instead of in-house one (which deadlocks on FBSD 14) (#351) 2025-10-01 06:59:35 +02:00
threadsafe_queue.h [common] use libc++ provided jthread instead of in-house one (which deadlocks on FBSD 14) (#351) 2025-10-01 06:59:35 +02:00
time_zone.cpp Rework time service to fix time passing offline. 2024-01-24 04:26:55 +00:00
time_zone.h common: Move system time zone string detection 2023-06-05 15:15:11 -04:00
tiny_mt.h [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
tree.h [common] Use U8 for colour of RB-tree instead of integer to save space (#228) 2025-08-15 23:21:15 +02:00
typed_address.h Update fmt to allow for v11 2025-04-10 01:11:22 +02:00
uint128.h [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
unique_function.h
uuid.cpp Update fmt to allow for v11 2025-04-10 01:11:22 +02:00
uuid.h [desktop, core] yuzu -> Eden, eden -> Eden 2025-07-19 00:12:21 -04:00
vector_math.h [vector_math]: Use NEON intrinsics in Vec4 dot operation (#177) 2025-08-02 01:48:04 +02:00
virtual_buffer.cpp [compat] HaikuOS port (#2805) 2025-10-22 04:53:40 +02:00
virtual_buffer.h
wall_clock.cpp [common, core] remove uneeded memory indirection overhead at startup (#3306) 2026-01-16 23:39:16 +01:00
wall_clock.h [common, core] remove uneeded memory indirection overhead at startup (#3306) 2026-01-16 23:39:16 +01:00
zstd_compression.cpp zstd: Use ZSTD_getFrameContentSize instead of ZSTD_getDecompressedSize 2023-03-23 22:16:20 -04:00
zstd_compression.h