Expose GetInstalledFirmwareVersion

This commit is contained in:
Isaac Marovitz 2024-01-01 18:49:07 -08:00 committed by Emmanuel Hansen
parent b6b4b0cfb9
commit d0ddd7f2bc
2 changed files with 23 additions and 5 deletions

View File

@ -317,13 +317,12 @@ namespace LibRyujinx
{
Logger.Trace?.Print(LogClass.Application, "Jni Function Call");
var version = SwitchDevice?.ContentManager.GetCurrentFirmwareVersion();
var version = GetInstalledFirmwareVersion();
long stringHandle = -1;
if (version != null)
if (version != String.Empty)
{
stringHandle = storeString(version.VersionString);
stringHandle = storeString(version);
}
return stringHandle;

View File

@ -67,11 +67,30 @@ namespace LibRyujinx
return LoadApplication(path);
}
[UnmanagedCallersOnly(EntryPoint = "device_get_installed_firmware_version")]
public static IntPtr GetInstalledFirmwareVersionNative()
{
var result = GetInstalledFirmwareVersion();
return Marshal.StringToHGlobalAnsi(result);
}
public static void InstallFirmware(Stream stream, bool isXci)
{
SwitchDevice?.ContentManager.InstallFirmware(stream, isXci);
}
public static string GetInstalledFirmwareVersion()
{
var version = SwitchDevice?.ContentManager.GetCurrentFirmwareVersion();
if (version != null)
{
return version.VersionString;
}
return String.Empty;
}
public static SystemVersion? VerifyFirmware(Stream stream, bool isXci)
{
return SwitchDevice?.ContentManager?.VerifyFirmwarePackage(stream, isXci) ?? null;