Collecting
7c14003ebd
fix(android): Double for static_cast
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-25 14:35:44 +01:00
Collecting
6253352e1e
fix(compiler): generate the vtable within settings.cpp
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-25 13:42:55 +01:00
Collecting
f428c20bf6
fix(compiler): static_cast w/ unsigned long long to remove ambiguity
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-25 13:42:19 +01:00
Collecting
47656f1fdf
fix(compiler): static_cast w/ unsigned long long to remove ambiguity
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-25 13:41:26 +01:00
Zephyron
8eaa38540c
refactor(settings): simplify VRAM usage mode to Conservative/Aggressive
...
The removed modes added complexity without significant benefit now that
the new VRAM management system (gc_aggressiveness, vram_limit_mb)
provides finer-grained control over memory pressure.
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2026-01-25 15:29:25 +10:00
Zephyron
3e2137a470
feat(video_core): implement comprehensive VRAM management system
...
Add automatic VRAM leak prevention with configurable garbage collection
to prevent device loss crashes during extended play sessions.
New Settings:
- vram_limit_mb: Configurable VRAM limit (0 = auto-detect 80%)
- gc_aggressiveness: Off/Light/Moderate/Heavy/Extreme levels
- texture_eviction_frames: Frames before texture eviction (default 2)
- buffer_eviction_frames: Frames before buffer eviction (default 5)
- sparse_texture_priority_eviction: Prioritize large sparse textures
- log_vram_usage: Enable VRAM statistics logging
Core Changes:
- Enhanced texture cache with LRU eviction and sparse texture priority
- Enhanced buffer cache with configurable eviction thresholds
- Added VRAM pressure monitoring using VK_EXT_memory_budget
- Emergency GC triggers at 90%/95% VRAM usage thresholds
Platform Support:
- Desktop: Settings in Graphics > Advanced tab
- Android: Settings in Zep Zone category
Fixes VRAM climbing steadily during gameplay until device loss.
Target: Stable VRAM usage below configured limit for 2+ hours.
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2026-01-25 15:21:02 +10:00
Zephyron
44f9cb6347
fix(ssl): implement SetVerifyOption instead of stubbing it
...
Games can now properly disable SSL certificate verification by setting
option=0, which was previously ignored causing handshake failures.
Thanks to Raytwo and DogeThis (https://github.com/Raytwo/Cobalt ) for
helping debug this issue.
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2026-01-24 14:46:34 +10:00
Collecting
a3a8e6f916
feat(add): Logic to determine base location when using Global or Default Paths
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-24 03:00:58 +01:00
Collecting
7dee5834bf
feat(add): More options including Dynamic understanding of Global & Default NAND Locations
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-24 02:59:14 +01:00
Collecting
c0914868f6
feat(add): Boolean for Initial Sync to ensure re-arm for proper syncing
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-24 02:58:20 +01:00
Collecting
d7814f6f76
feat(add): Initial Sync to fix overwriting of NAND when Configuring Settings outside of emulation
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-24 02:57:14 +01:00
Collecting
3bf1497300
fix(ui): Ensure Paths are properly displayed when checking paths
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-23 23:26:36 +01:00
Collecting
a819b230d0
fix(filesystem): Re-organize Path Ordering
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-23 23:25:39 +01:00
Collecting
c22350feab
feat(multiplayer): Add Filtering for URL Logic
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-23 18:58:21 +01:00
Collecting
701d552b0e
feat(multiplayer): Add SanitizeMessage String for URL Links
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-23 18:57:34 +01:00
Collecting
44e8e2a630
fix(multiplayer): Ensure Node = 1 and not 0
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-22 05:32:45 +01:00
Collecting
2b810e766a
fix(multiplayer): Add mutable to packet_mutex
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-22 05:32:14 +01:00
Collecting
cc85173fa9
fix(multiplayer): Add sleep_for & remove yield for Stabilization
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-22 05:31:36 +01:00
Collecting
550b08335e
fix(multiplayer): Remove Socket Re-utilization
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-22 05:30:49 +01:00
Collecting
6a7fd947d5
Remove Redundant NavigateToGamedbEntry
...
Since new compatibility list is off-shored to separate repo, might as well get rid of this. Could of re-purposed for reading the listings but we'll think about it.
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-21 10:47:54 +01:00
Collecting
02e7a689bd
feat(compatibility): Overhaul Compatibility Logic for GitHub Parsing
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-21 08:41:13 +01:00
Collecting
1f1fa1e215
feat(compatibility): Fix QString w/ game_name to display properly w/ issues
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-21 08:39:52 +01:00
Collecting
c6ca62e706
Update src/android/app/src/main/AndroidManifest.xml
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-20 10:31:07 +01:00
Zephyron
c720e354d2
service/ldn: Implement SetProtocol and SetWirelessAudioPolicy commands
...
Adds support for LDN service commands introduced in firmware 20.0.0+:
- Command 105: SetWirelessAudioPolicy (stubbed)
- Command 106: SetProtocol
This enables ACNH Update 3.0 and other games using newer SDK versions
to properly initialize LDN for local multiplayer functionality.
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2026-01-19 16:29:46 +10:00
Collecting
23bb5078a7
fix(multiplayer): Z-A Connection Issues
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-18 22:39:29 +00:00
Collecting
78d70c6b48
add: Title ID for Optimizer
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-18 04:00:40 +00:00
Collecting
4d018eb894
add: Title ID for Optimizer
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-18 03:59:58 +00:00
Collecting
bd32690a76
revert c575341d1e
...
revert Merge pull request 'fix(multiplayer): Race Condition during Packet Discovery' (#101 ) from fix/lan_discovery_race_condition into main
Reviewed-on: https://git.citron-emu.org/Citron/Emulator/pulls/101
2026-01-18 00:01:51 +00:00
Collecting
df97c4f325
revert 47edb00351
...
revert Merge pull request 'Service: Sockets: Fix busy-waiting CPU starvation and Close/Socket race conditions' (#100 ) from fix-socket-performance-and-crashes into main
Reviewed-on: https://git.citron-emu.org/Citron/Emulator/pulls/100
2026-01-17 23:28:32 +00:00
Zephyron
d77cc3e518
chore: bump Citroen version
...
Signed-off-by: Zephyron <zephyron@citron-emu.org >
2026-01-18 00:48:31 +10:00
Collecting
c5c241aa73
Watch what you're typing next time
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 10:08:25 +00:00
Collecting
ad35ac85ef
Typo buddy
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 10:07:56 +00:00
Collecting
c7220e4c27
Update src/citron/mod_manager/mod_service.cpp
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 09:55:31 +00:00
Collecting
d3d7f41536
Update src/core/file_sys/patch_manager.cpp
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 09:54:48 +00:00
Collecting
e0b13d9414
Remove Un-used Title ID's
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 09:00:46 +00:00
Collecting
a380ba4c60
Remove Un-used Title IDs
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 09:00:03 +00:00
Collecting
2873e3b97f
Update src/citron/configuration/configure_per_game_addons.cpp
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 02:38:31 +00:00
Collecting
fb168f9283
fix: Corrupted Cache Cleanup
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 02:06:48 +00:00
Collecting
c30c7689c8
fix: Patch Manager Logic
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 02:04:27 +00:00
Collecting
7baf163539
add: Nx-Optimizer
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 02:00:20 +00:00
Collecting
c3dc22820e
add: Nx-Optimizer
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 01:59:19 +00:00
Collecting
a3de20eea5
add: Nx-Optimizer
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-17 01:57:08 +00:00
Collecting
c575341d1e
Merge pull request 'fix(multiplayer): Race Condition during Packet Discovery' ( #101 ) from fix/lan_discovery_race_condition into main
...
Reviewed-on: https://git.citron-emu.org/Citron/Emulator/pulls/101
2026-01-16 23:27:59 +00:00
collecting
5905d0bcff
fix(multiplayer): Race Condition during Packet Discovery
2026-01-16 18:26:21 -05:00
Collecting
47edb00351
Merge pull request 'Service: Sockets: Fix busy-waiting CPU starvation and Close/Socket race conditions' ( #100 ) from fix-socket-performance-and-crashes into main
...
Reviewed-on: https://git.citron-emu.org/Citron/Emulator/pulls/100
2026-01-16 22:43:48 +00:00
collecting
0b5701624a
Service: Sockets: Fix busy-waiting CPU starvation and Close/Socket race conditions
2026-01-16 17:42:54 -05:00
Collecting
79d4fd8e31
I should of looked at the compiler before pushing last fix
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-16 20:16:45 +00:00
Collecting
1b2363ba81
fix(mods): romfs/exefs regression from Mod Downloader
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-16 20:10:20 +00:00
Collecting
36baa59393
Update src/core/file_sys/patch_manager.cpp
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-16 12:17:30 +00:00
Collecting
d5b8d08ebc
Work Smarter, Not Harder
...
Signed-off-by: Collecting <collecting@noreply.localhost >
2026-01-16 11:48:47 +00:00