Commit Graph

24232 Commits

Author SHA1 Message Date
Zephyron
ab09ef55ec feat(vulkan): add mobile GPU driver compatibility layer
Implement comprehensive compatibility layer for Qualcomm Adreno, ARM Mali,
and Samsung Xclipse drivers to maintain rendering quality while working
around driver bugs and missing features.

- Extended Dynamic State fallback
- Custom Border Color fallback
- Shader Int64 fallback
- Push Descriptor fallback
- Modern Adreno 7xx/8xx detection

Ensures stable emulation on stock mobile drivers without turnips.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-29 11:56:22 +10:00
Zephyron
cbfa876fb0 refactor: extract game title IDs into TitleID utility class
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-29 11:16:18 +10:00
Zephyron
e0d2ab3abb chore: bump version to 0.9.0
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-28 19:22:04 +10:00
collecting
6855bac278 fix: AppImage 2025-10-27 03:08:55 +00:00
collecting
7680ab8220 fix: AppImage 2025-10-27 03:08:14 +00:00
collecting
d4b0c4a84f fix: AppImage 2025-10-27 03:07:37 +00:00
collecting
c63396459b fix: Auto Update Link 2025-10-26 05:34:26 +00:00
collecting
deefdd36b0 fix: Auto Updater Link 2025-10-26 05:33:41 +00:00
Zephyron
131893389d Disable OpenSSL for Android builds 2025-10-26 15:14:13 +10:00
Zephyron
3b97f8b55a android: Fix crash when opening Zep Zone settings
Fixed NullPointerException caused by missing EXTENDED_DYNAMIC_STATE and
USE_CONDITIONAL_RENDERING entries in SettingsItem.settingsItems HashMap.

These settings were referenced in the Zep Zone menu but not registered,
causing the app to crash when trying to display them.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-26 14:56:40 +10:00
Zephyron
72253c76d1 Fix: Disable multi-core for Final Fantasy Tactics (010038B015560000)
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-26 14:06:49 +10:00
collecting
1175bf35b7 Edit updater_service.h 2025-10-25 02:13:00 +00:00
collecting
8050dc0cd2 Edit CMakeLists.txt 2025-10-25 02:12:01 +00:00
collecting
7a7cd0004b Edit updater_service.cpp 2025-10-25 01:05:17 +00:00
collecting
d329e75fd5 Edit updater_service.h 2025-10-25 01:04:12 +00:00
collecting
66fc50646f Edit updater_dialog.cpp 2025-10-25 01:03:30 +00:00
collecting
ab3429ed1c Edit updater_dialog.h 2025-10-25 01:02:37 +00:00
collecting
ee7aebca9b fix: Auto Updater 2025-10-24 11:31:39 +00:00
collecting
c1dda00eea fix: Auto Updater 2025-10-24 11:30:59 +00:00
collecting
ada780f3f8 fix: Auto Updater 2025-10-24 11:30:19 +00:00
collecting
7df644499a fix: Auto Updater 2025-10-24 11:29:21 +00:00
collecting
f8a96f4964 fix: Autoupdater 2025-10-24 10:44:01 +00:00
collecting
339d78cd08 fix: Autoupdater 2025-10-24 10:43:27 +00:00
collecting
f5029f62a1 fix: Autoupdater 2025-10-24 10:39:53 +00:00
collecting
1a29259e33 fix: Autoupdater 2025-10-24 10:39:04 +00:00
collecting
d5f1589341 fix: Autoupdater 2025-10-24 10:38:02 +00:00
collecting
5628d07b9c fix: Autoupdater 2025-10-24 10:36:49 +00:00
Zephyron
20250c3e31 fix: add missing NCA encryption type support and patch handling
Changes:
- Add missing encryption type cases to all switch statements
- Only call CreatePatchMetaStorage() when both tables are present
- Update assertions to allow partial table combinations

Fixes loading for Hades II, Pokémon Legends: Z-A, and other games
with newer NCA structures.

Reported-by: Dr.Stug@citron-emu.org
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-24 16:25:38 +10:00
Zephyron
7672d2f1ff Merge branch 'fix/multiplayer-room-overlay' into 'main'
Fix: Resolve multiplayer overlay notification and state bugs

See merge request citron/emulator!115
2025-10-24 15:36:14 +10:00
collecting
ba62e4be62 Edit: multiplayer_room_overlay.cpp 2025-10-24 04:11:55 +00:00
collecting
e8d838335f fix: Multiplayer Room Overlay 2025-10-24 03:42:24 +00:00
collecting
18348b150b fix: Multiplayer Room Overlay 2025-10-24 03:41:57 +00:00
collecting
662930f3e1 fix: Copyright License Identifier 2025-10-24 00:36:14 +00:00
collecting
805ca4e04f Feat: Add multiplayer-room-overlay 2025-10-24 00:11:33 +00:00
collecting
15aeee4add feat: Add multiplayer-room-overlay 2025-10-24 00:10:20 +00:00
collecting
25c46b247c feat: Add multiplayer-room-overlay 2025-10-24 00:09:44 +00:00
collecting
850a9f8f6d feat: Add multiplayer-room-overlay 2025-10-24 00:09:11 +00:00
collecting
d76f2faa69 feat: Add multiplayer-room-overlay 2025-10-24 00:08:25 +00:00
collecting
ee47c4d095 feat: Add multiplayer_room_overlay files 2025-10-24 00:05:32 +00:00
collecting
bfa94f4ca6 feat: Add multiplayer_room_overlay.cpp 2025-10-24 00:04:51 +00:00
collecting
b03341ac8d feat: Add multiplayer_room_overlay.h 2025-10-24 00:04:24 +00:00
collecting
49f18763d8 update: About Section 2025-10-22 18:14:41 +00:00
Zephyron
d5081c3919 fix: implement missing shader recompiler instructions
Resolves compilation errors in move_register.cpp by using proper
register offset approach instead of non-existent Y/Z/W methods.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-22 21:13:00 +10:00
Zephyron
c425e3b06f fix: implement missing shader recompiler instructions
- Implement FSWZADD NDV mode support by removing stubbed warning
- Add proper SAM and RAM instruction implementations (no-op with logging)
- Implement comprehensive masked move operations for all mask patterns
- Remove all shader recompiler stubbed instruction warnings

Thanks to Dr.Stug for providing the logs that identified these missing implementations.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-22 20:59:04 +10:00
Zephyron
4c7ee4ac3b fix: BSD socket assertion failure in PollImpl
Initialize PollFD.revents field to prevent assertion failures when
copying from read buffer. The assertion was failing because revents
contained uninitialized data from the buffer.

Thanks to Dr.Stug for providing the logs that identified this issue.

Fixes assertion failure at core\hle\service\sockets\bsd.cpp:564

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-22 20:47:24 +10:00
Zephyron
9c13799b49 kernel: Add 12 GiB heap support
- Increased heap region from 8 GiB to 12 GiB
- Fixed memory manager page reference count allocation
- Made resource region sizing dynamic for >8GB DRAM
- Increased physical address space bits to support 16GB

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-22 15:06:47 +10:00
Zephyron
8cc5aa143f fix: implement DeleteCacheStorage stub to prevent TOTK crashes
- Add stubbed DeleteCacheStorage function to FSP_SRV service
- Return success instead of causing assertion failure
- Prevents userspace PANIC when games attempt to delete cache storage

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-22 13:25:16 +10:00
Zephyron
7107f4cfd7 fix: autoloader null pointer dereferences and Windows API conflict
- Use VfsFilesystemCreateDirectoryWrapper to avoid Windows API collision
- Add null check for dest_file before accessing it
- Prevent crashes when file/directory creation fails during autoload

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-22 12:52:04 +10:00
collecting
ca8c822b93 Fix configure_per_game.cpp 2025-10-22 01:22:18 +00:00
collecting
bcbe8fddfc Fix configure_per_game.h 2025-10-22 01:21:51 +00:00