Commit Graph

27756 Commits

Author SHA1 Message Date
Zephyron
453fc0d8af cmake: Fix Android external download URL to use main branch
The fix simplifies the logic to always use the main branch for Android
builds, since architecture is already encoded in the package filenames.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-31 15:07:45 +10:00
Zephyron
237413fceb Update README.md
Signed-off-by: Zephyron <zephyron@noreply.localhost>
2025-10-30 10:48:39 +00:00
Zephyron
07aa8db9dd Merge pull request 'feat(ldn): Implement missing Account and LDN services from SwitchBrew documentation' (#2) from acc-ldn-switchbrew-implementation into main
Reviewed-on: https://git.citron-emu.org/Citron/Emulator/pulls/2
2025-10-30 09:33:28 +00:00
Zephyron
68a8b07f78 feat(ldn): Implement missing Account and LDN services from SwitchBrew documentation
Implements 150+ missing functions across Account (acc:*) and LDN (ldn:*, lp2p:*)
services based on official SwitchBrew documentation.

Account Services (acc:su, acc:e, acc:u0, acc:u1, acc:e:u1, acc:e:u2, dauth:0):
- Add 70+ missing functions including notifiers, async operations, and OAuth procedures
- Implement GetUserRegistrationNotifier, GetUserStateChangeNotifier, GetProfileUpdateNotifier
- Add thumbnail management (LoadSaveDataThumbnail, GetSaveDataThumbnailExistence)
- Implement user management (DeleteUser, SetUserPosition, CancelUserRegistration)
- Add Nintendo Account procedures (CreateFloatingRegistrationRequest, etc.)
- Implement device migration functions (19.0.0+, 20.0.0+)
- Add debug functions for user qualification and token cache management

IManagerForApplication/SystemService (19.0.0+ compatibility):
- Rename LoadIdTokenCache (cmd 3) to LoadIdTokenCacheDeprecated
- Add new LoadIdTokenCache (cmd 4) with updated signature
- Add GetNintendoAccountUserResourceCache (cmd 136)

LDN Services (ldn:m, ldn:s, ldn:u):
- Add 80+ missing functions across all LDN interfaces
- Implement CreateClientProcessMonitor (cmd 1) for ldn:s and ldn:u (18.0.0+)
- Create IClientProcessMonitor service with RegisterClient function
- Implement IMonitorService functions (GetNetworkInfoForMonitor, GetIpv4AddressForMonitor, etc.)
- Implement ISystemLocalCommunicationService (GetState, Scan, Connect, Initialize, etc.)

LP2P Services (lp2p:app, lp2p:sys, lp2p:m):
- Implement ISfService functions (Initialize, Scan, CreateGroup, etc.)
- Implement ISfServiceMonitor (GetGroupInfo, GetMembers, AttachJoinEvent, etc.)
- Implement ISfMonitorService (GetLinkLevel)

Technical Changes:
- Change non-domain (C<>) to domain (D<>) functions in LDN to fix crashes
- Add enhanced error messaging to cmif_serialization.h for debugging
- Create client_process_monitor.cpp/.h for IClientProcessMonitor
- Add concrete async context implementations (EnsureSignedDeviceIdentifierCacheAsyncInterface, etc.)
- Add Kernel::KReadableEvent forward declarations

All functions properly stubbed with appropriate logging for future implementation.

References:
- https://switchbrew.org/wiki/Account_services
- https://switchbrew.org/wiki/LDN_services

Fixes 'Pokemon: Legends Z-A' LDN initialization crashes and improves compatibility
with games using Account and Local Network services.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-30 19:32:07 +10:00
Zephyron
57783503d1 DownloadExternals: use new raw/branch URLs select Android branch by ABI
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-30 17:27:23 +10:00
Collecting
981436bfc0 refactor/main.cpp
Compiler errors with a couple different indentations in the file alongside me accidentally adding the LOG_INFO (which *did* compile for Linux, but was alerted by MSVC) either way, done

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-30 05:38:52 +00:00
Collecting
d6294e6b99 revert 38ef9a30ec
revert fix: CI Error

Refactoring error (with another, need to indent)

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-30 05:37:25 +00:00
Collecting
38ef9a30ec fix: CI Error
Refactoring error

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-30 05:16:23 +00:00
Collecting
6bdd091db9 revert a8af280547
revert test: CI

Cause of old external revert, have to revert this as well

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-30 00:23:09 +00:00
Collecting
a8af280547 test: CI
Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-30 00:18:39 +00:00
Zephyron
8293b753d0 revert ff51046d16
revert fix: FFmpeg

Testing for CI due to Android & Windows failing, similar issue.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-30 00:15:04 +00:00
Zephyron
15c9cf2a10 revert 9d6a48b9c8
revert feat(build): Add external binaries as submodules for all platforms
2025-10-30 00:12:17 +00:00
Zephyron
260e1a26d5 Update CMakeModules/DownloadExternals.cmake
Signed-off-by: Zephyron <zephyron@noreply.localhost>
2025-10-30 00:11:32 +00:00
collecting
9d6a48b9c8 feat(build): Add external binaries as submodules for all platforms 2025-10-29 18:51:25 -04:00
Collecting
bb59a289c2 re-add/LOG_INFO
Old version I replaced removed title_ids & this log information so just re-adding.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 22:12:26 +00:00
Collecting
5a7c572292 revert ff51046d16
revert fix: FFmpeg

Testing for CI due to Android & Windows failing, similar issue.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 11:41:33 +00:00
Collecting
ff51046d16 fix: FFmpeg
Testing for CI due to Android & Windows failing, similar issue.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 11:16:33 +00:00
Collecting
92fdc23da7 fix: title_ids.h
Accidentally removed, now back.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 11:07:24 +00:00
Collecting
aed338b44a update/license-link
Forgot about this sneaky fella when updating Recent Commits.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 09:59:05 +00:00
Collecting
c8d6bada47 update/commit-link
New site so new link, adjusted accordingly.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 09:49:28 +00:00
Collecting
88e176b739 update/recent-commits-link
New link because of new site, so adjusted accordingly.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 09:48:36 +00:00
Zephyron
6ac5a892fb Merge pull request 'fix/properties-window' (#1) from fix/properties-window into main
Reviewed-on: https://git.citron-emu.org/Citron/Emulator/pulls/1
2025-10-29 08:57:38 +00:00
Collecting
89e3ed6c44 fix: Properties Window
Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 08:55:07 +00:00
Collecting
e4055ab003 fix: Properties Window
Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 08:53:56 +00:00
Collecting
edadec9cfb fix: Properties Window
Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 08:53:11 +00:00
Zephyron
5025c4ab76 Merge branch 'feat-fix/controller-overlay-std-badalloc' into 'main'
feat(ui)/(crash): Implement real-time Controller Overlay & Resolve std::bad_alloc

See merge request citron/emulator!122
2025-10-29 15:28:37 +10:00
collecting
61d9808660 feat: Controller Overlay 2025-10-29 05:25:53 +00:00
collecting
dbea569c88 feat: Controller Overlay 2025-10-29 05:25:07 +00:00
collecting
5a3c4cad03 feat: Controller Overlay 2025-10-29 05:23:48 +00:00
collecting
5dc79d01cf feat: Controller Overlay 2025-10-29 05:23:10 +00:00
collecting
94b77d68ef feat: Controller Overlay 2025-10-29 05:22:42 +00:00
collecting
fa36de9b39 fix: std::bad_alloc 2025-10-29 05:22:00 +00:00
collecting
c8e80a5358 feat: Controller Overlay 2025-10-29 05:21:27 +00:00
collecting
cd3656fcaa feat: Controller Overlay 2025-10-29 05:20:45 +00:00
collecting
8db5c0bd83 feat: Controller Overlay 2025-10-29 05:19:38 +00: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>
0.9.0
2025-10-28 19:22:04 +10:00
Zephyron
a060879519 Merge branch 'fix/auto-updater-appimage' into 'main'
fix: AppImage Update and Restart Logic (Linux)

See merge request citron/emulator!120
2025-10-27 15:56:27 +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
Zephyron
a0b334bd9c Merge branch 'fix/auto-update-link' into 'main'
fix(updater): Link to Commits

See merge request citron/emulator!119
2025-10-26 15:36:21 +10: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
254e9609be Merge branch 'fix/android-builds' into 'main'
revert: ${DEFAULT_ENABLE_OPENSSL}

See merge request citron/emulator!118
2025-10-26 14:44:36 +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
fb43a9cbad revert: ${DEFAULT_ENABLE_OPENSSL} 2025-10-26 02:16:59 +00:00
Zephyron
e77ac6f9e0 Merge branch 'fix/autoupdater' into 'main'
feat(updater): Overhaul to use commit hashes and improve UI

See merge request citron/emulator!117
2025-10-25 14:45:50 +10:00