mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2026-04-20 07:42:05 +00:00
## Touchscreen Fix - Added `GetScreenPositionNullable` for touch coordinate validation - Returns `null` when touch is outside the rendered screen area - Files: src/Ryujinx.Input/IMouse.cs, src/Ryujinx.Input/HLE/TouchScreenManager.cs ## LibraryAppletMyPage (User Page) - Added Actions → Tools → User Page menu item - Launches the MyPage system applet (program ID 0x0100000000001013) - Files: src/Ryujinx/UI/Views/Main/MainMenuBarView.axaml, MainMenuBarView.axaml.cs ## HLE Services Implementation ### HID System Server - 850: SetTouchScreenDefaultConfiguration - 851: GetTouchScreenDefaultConfiguration - 1200: AcquireConnectionTriggerTimeoutEvent - 1201: SendConnectionTrigger - 1202: AcquireDeviceRegisteredEventForControllerSupport - 1203: GetAllowedBluetoothLinksCount ### acc:aa (IBaasAccessTokenAccessor) - 0: EnsureCacheAsync - 1: LoadCache - 2: GetDeviceAccountId - 50: RegisterNotificationTokenAsync - 51: UnregisterNotificationTokenAsync ### nim (IShopServiceAsync) - Commands 0-5: Cancel, GetSize, Read, GetErrorCode, Request, Prepare ### LDN Monitor Service (NEW) - IMonitorServiceCreator: Added CreateMonitorService (command 0) - IMonitorService: GetStateForMonitor, GetNetworkInfoForMonitor, GetIpv4AddressForMonitor, GetDisconnectReasonForMonitor, GetSecurityParameterForMonitor, GetNetworkConfigForMonitor, AttachStateChangeEvent, InitializeMonitor, FinalizeMonitor ## Applet Infrastructure - ILibraryAppletSelfAccessor: Rewrite to support MiiEdit, MyPage applets - AppletStateMgr: Complete rewrite with proper state machine and focus handling - ICommonStateGetter: Updated ReceiveMessage and RequestToAcquireSleepLock
24 lines
813 B
Python
24 lines
813 B
Python
import argparse
|
|
from io import BytesIO
|
|
import tarfile
|
|
|
|
parser = argparse.ArgumentParser(
|
|
description="Add the main binary to a tar and force it to be executable"
|
|
)
|
|
parser.add_argument("input_tar_file", help="input tar file")
|
|
parser.add_argument("main_binary_path", help="Main executable path")
|
|
parser.add_argument("main_binary_tar_path", help="Main executable tar path")
|
|
|
|
args = parser.parse_args()
|
|
input_tar_file = args.input_tar_file
|
|
main_binary_path = args.main_binary_path
|
|
main_binary_tar_path = args.main_binary_tar_path
|
|
|
|
with open(main_binary_path, "rb") as f:
|
|
with tarfile.open(input_tar_file, "a") as tar:
|
|
data = f.read()
|
|
tar_info = tarfile.TarInfo(main_binary_tar_path)
|
|
tar_info.mode = 0o755
|
|
tar_info.size = len(data)
|
|
|
|
tar.addfile(tar_info, BytesIO(data))
|