Boost.Process is not compatible with Android platform, causing build failures. This change conditionally includes the package only on non-Android platforms.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Updates UDP client code to use boost::asio::io_context instead of the
deprecated boost::asio::io_service, fixing compilation errors with newer
Boost versions.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Add an implementation for function 92 (SetGestureOutputRanges) in the HID service.
This fixes a crash in Donkey Kong Country Returns HD which occurs when the game
attempts to access this unimplemented function. The function is now properly
registered and returns success while logging the call.
The specific error that was occurring:
"Unknown / unimplemented function '92': port='hid'"
According to the official Switch documentation, this function was introduced in
firmware 18.0.0+ and is used for setting gesture output ranges for touch/gesture
controls.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Implements the ssl:s service alongside various SSL-related functionality that
was causing Xenoblade Chronicles X: Definitive Edition to crash. The changes
include:
- Add the ssl:s service with proper command handlers
- Add InfoType::TLSCapability (0x1C) to the system call handler
- Implement a stub SSL backend for basic network operations
- Add FlushSessionCache functionality to both ssl and ssl:s services
These changes resolve the "TLS initialization failed" crash and the "Unknown
function '5': port='ssl:s'" error that were preventing the game from starting.
The implementation is mostly stubbed, allowing network requests to pass through
unencrypted but enabling games to proceed without crashing.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Add implementation for the missing nim:ecas service documented in SwitchBrew.
Provide stub implementations of critical NIM service functions that games might call:
- System update related functions (CreateSystemUpdateTask, GetSystemUpdateTaskInfo)
- Network installation functions (RequestNetworkInstallTaskRun, GetNetworkInstallTaskInfo)
- Local communication for system updates and applications
- Delta update related functions (CreateApplyDeltaTask, GetApplyDeltaTaskInfo)
- RequestDownloadTicketForPrepurchasedContents for DLC content access
Fix compilation error in GetDownloadedSystemDataPath by using ctx.WriteBuffer
instead of unsupported rb.PushString.
These changes prevent games from crashing due to missing NIM service functions and
allow proper handling of system updates, network installations, and DLC content.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Specifically:
- Add 11 missing methods to IGeneralService including network profile, scan, and WoWL functionality
- Implement 14 missing methods for IRequest class
- Complete implementation of IScanRequest class with all 5 required methods
- Update copyright notices to include citron Emulator Project
These additions should prevent games from crashing when accessing previously unimplemented network interface functions.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Changes:
- Remove special case for KeplerCompute inline methods that used unsafe reads in high
accuracy mode
- Add special case to use safe reads for KeplerCompute inline methods even in normal
accuracy mode
Signed-off-by: Zephyron <zephyron@citron-emu.org>
- Add implementations for all previously unimplemented IFriendService functions
- Create IDaemonSuspendSessionService class and implement CreateDaemonSuspendSessionService
- Restructure code to separate method declarations from implementations
- Add helper structs/payloads for various friend-related data structures
- Update function documentation and logging messages
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Updates the audio core revision number to match newer firmware requirements, allowing the emulator to properly handle audio features from more recent Switch software.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Changes the StartupWMClass from "citron" to "org.citron_emu.citron" to ensure proper icon display in GNOME and other desktop environments. Without this matching the application ID, a generic icon is displayed instead of the proper application icon.
Credit: Shikakiben (shikakiru)
Signed-off-by: Zephyron <zephyron@citron-emu.org>
- This adds implementations for ioctl command 0x13 in both Ioctl1 and Ioctl3 functions, allowing newer titles like Super Mario Party Jamboree to boot by properly handling this command with a NotImplemented response rather than failing.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
- Updates the Discord application Client ID.
- Changes the game art source from static URLs on `citron-emu.org` to dynamically fetched images from `tinfoil.media` using the game's title ID.
- Removes the `GetGameString` function, as the URL formatting logic has changed.
- Modifies `UpdateGameStatus` and `Update` to accommodate the new image fetching mechanism and use the title ID.
- Adds new members to `DiscordImpl` to store title ID and cache image URLs.
- Updates copyright information in `discord_impl.cpp` and `discord_impl.h`.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
- In `CMakeModules/DownloadExternals.cmake`:
- The `package_base_url` for bundled externals is changed from `citron-emu` to `yuzu-mirror`.
- In `CMakeLists.txt`:
- The `NASM_DOWNLOAD_URL` is updated to `yuzu-mirror`.
- The download URL for the compatibility list is changed from `api.citron-emu.org` to `api.yuzu-citron-emu.org`.
- The download URL for `clang-format` on Windows is updated to `yuzu-mirror`.
- Copyright years and project names are updated in both files.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
- Disables the `enable_telemetry` setting by default.
- Updates the `web_api_url` to "https://api.ynet-fun.xyz".
- Updates the copyright year and project name.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
- Bumps HOS version from 12.1.0 to 20.0.1.
- Updates the corresponding `VERSION_HASH`, `DISPLAY_VERSION`, and
`DISPLAY_TITLE` strings.
- Updates the copyright year and project name.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
- Add Citron logo in multiple formats:
- .bmp for legacy support
- .ico for Windows applications
- .svg for scalable graphics
Signed-off-by: Zephyron <zephyron@citron-emu.org>
- Updates the copyright year and project name in `telemetry_session.cpp`.
- Adjusts the size of the `personalization` array for telemetry ID generation to correctly accommodate the "citron Telemetry ID" string, preventing potential truncation.
Signed-off-by: Zephyron <zephyron@citron-emu.org>
Updates the URLs for the following submodules to point to the yuzu-mirror organization:
- dynarmic
- discord-rpc
- sirit
- mbedtls
- breakpad
- oaknut
Also updates the copyright year and project name in the header comment.
Signed-off-by: Zephyron <zephyron@citron-emu.org>