- Fix double/missing font scale in menus when resizing fullscreen or windowed.
- SetWindowFontScale is now called inside the submenu, preventing scale, multiplication caused by applying it too early.
- Allow using custom config par app for backend render.
- set variable ready using for custom driver name too.
Co-authored-by: Macdu <Macdu@users.noreply.github.com>
- Adjusted window sizes for about and welcome dialogs.
- Fixed main window and language list on initial setup screen to keep centered.
- Fix aspect ratio for all.
- Move Update(Orientation/Rotation) to refresh_motion to update once per refresh instead of per sensor event.
- Fix elapsed time using sensor timestamps (ns -> us), with fallback when timestamp is 0.
- Add support for device motion (accelerometer and gyroscope) and handle all native device rotations.
- Windows: Convert icon0.png to .ico, store in cache/icons, and create .lnk shortcut.
- macOS: Create a desktop app bundle with launcher script and icon.
- Linux: Copy icon0.png to cache/icons and create .desktop shortcut on desktop.
- Android: Call Java createShortcut() via JNI.
lang: Add 'Create Shortcut' in en/fr.
Co-authored-by: Seungyun Lee <khora.lee.0@gmail.com>
Co-authored-by: Macdu <Macdu@users.noreply.github.com>
The number of loaded modules already exceeds Tracy's limit.
Any subsequent call to a Tracy-instrumented module function
results in an out-of-bounds crash.
- Switch all assets (avatars, lang) to use read_data
for universal multi-OS handling.
- Fix default icon path check to properly handle assets on all platforms.
Co-authored-by: Zangetsu38 <dante38@free.fr>
- Implement get peer address for both socket.
- refactor, improve and rename variable of get socket address.
- convert PosixSocket to P2PSocket when is created by one P2PSocket.
- Handle SCE_NET_MSG_WAITALL correctly: only enable for stream sockets.
- Wrap if statement in macro with do-while loop to avoid dangling 'else'.
- Make `LOG_ONCE` atomic to avoid race conditions.
- Reorder statements within `LOG_ONCE` to avoid low-probability race condition without degrading performance.
modules/SceNet: Fix and implement several functions.
- Implement abort() and shutdown().
- Fix all error returns by using user error codes instead of kernel error codes.
- Store errno in TLS and introduce macro for returning errors.
- Fix accept() to emplace the new socket correctly and return proper errors.
- Add lock guard in SocketClose to protect socket removal.
- Refactor SceNetEpollControl with store socket as weak_ptr on add to avoid dangling references and clean up unnecessary code in del and mod operations.
- Correctly handle SO_ONESBCAST option support to send on original broadcast address in sceNetSendto.
modules/SceNetCtl: Improve and implement some functions.
- Implement AdhocGetInAddr.
- Implement GetPeerList with peer exchange thread created during Init.
- Add support for returning real IP and NetMask in InetGetInfo.
- Detect and update IP and broadcast addresses upon network interface change when restarting adhoc mode.
- Fix handle adhoc callback.
net/p2psocket: Add required functions for P2P support.
- Reuse Posix functions where possible, using convertP2PToPosix and convertPosixToP2P to correctly handle port/vport.
net/posixsocket: Some fixes, refactorings, and implementations.
- Add support for flags.
- Handle SCE_NET_MSG_DONTWAIT in (recv/send)_packet on Windows with using select() func.
- Fix handling of SCE_NET_SO_ONESBCAST to support proper broadcast address translation on send.
- Fix setsockopt for SO_(RCV/SND)TIMEO on Windows/Linux.
net/epoll: Avoid calling select() when no sockets are monitored.
- Add error translation for select().
- Refactor wait to use weak pointers with a lambda, ensuring sockets are valid for select and not deleted before EpollControl DEL calls.
modules/SceCommonDialog: Launch adhoc peer thread during NetCheckDialogInit in adhoc mode
- Set dialog status to RUNNING during adhoc connection initialization
Co-authored-by: bookmist <roshst@yandex.ru>
Co-authored-by: EXtremeExploit <pedro.montes.alcalde@gmail.com>
Co-authored-by: Narr the Reg <5944268+german77@users.noreply.github.com>
util/net utils: Add fonctions to get ip and network card name.
- Add func for init netAddr and boracastAddr.
Co-authored-by: EXtremeExploit <pedro.montes.alcalde@gmail.com>
- Clamp slot_list_size in Continue to not exceed the value set by Init, preventing vector overflow crash.
- Clamp slot_list_size in Init to SLOTLIST_MAXSIZE (256) to respect SDK maximum.
- Avoid slot list update when slotListSize is zero, certain games use Continue solely for display mode transitions.
- When `iconPath` is empty string, `vfs::read_file` will try to open dictory `ux0` as a binary file to read, which have no effect on Windows but crash on *nix (Linux/Android/...).
- `std::ifstream` can open a directory as file on *nix (but can not on Windows), and after that `std::ifstream::tellg()` return the max value that the return type can represent (strangely not fail), which leads to throwing an exception when buffer is being resized.
- Remove all Unicorn references from language files and project as it’s deprecated and unused.
- Update SPIRV-Cross to vulkan-sdk-1.4.321.
- Update YAML to latest master.
- Fix CMake minimum version requirement errors by ensuring minimum version 3.5.