GreemDev / Ryujinx

Experimental Switch emulator written in C#
MIT License
5.39k stars 432 forks source link

[Feature Request] Missing Windows Arm64 build #136

Open salsamexico opened 4 weeks ago

salsamexico commented 4 weeks ago

Overview

Windows arm64 build missing

Smaller details

With new snapdragon x pcs available, it would be good to also have an arm64 release build like Linux and Mac do for Windows.

Nature of request

Testing functionality in additional platforms

Why would this feature be useful?

To provide a native build of ryujinx that doesn't have to perform an additional layer of emulation.

extherian commented 4 weeks ago

It's possible to compile it for ARM64, the problem is that Windows ARM devices tend to have absolutely awful graphics drivers, including ones missing support for the likes of OpenGL entirely. Personally I wouldn't count on this request being granted, but Ryujinx is easy to compile compared to other projects, so perhaps you could ask how to compile it for Windows ARM in our discord server.

Otozinclus commented 4 weeks ago

Windows ARM already works very well when self compiled, there is actually very little to add. You just have to deal with all kinds of Adreno driver issues and a weak GPU overall

You can self compile by downloading the Source code, going to [DownloadedZipLocation]/src/Ryujinx folder in the command prompt and executing the command "dotnet publish -c Release -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o bin". This will create a bin folder in which you somewhere find a Ryujinx.exe. You can move that anywhere now.

The issue is that FFmpeg has no official Windows Arm release and therefore does not get build, as it should, which results in many games crashing that actually run fine otherwise. To fix that you have to add a precompiled version of FFmpeg to the same folder your .exe is in

I also opened a PR with FFmpeg included already, you can just download the source code of that one and do the compile step from above

You can also get a precompiled version from my own website, if you want to, though self compiling it like above will give you the same: http://mikahintz.de/fileDownload.php

xrishox commented 2 days ago

@Otozinclus does the snapdragon x elite suffer from driver and performance issues too or is it just the older arm laptops? I think I remember reading that when it comes to linux and macos arm it doesn't need to convert between cpu architectures since the switch is arm which is way more performant. is this also the case with the windows arm version?