Open jonshipman opened 3 years ago
We won't be replacing WinForms when moving to .NET 5. If we do ever switch to another UI framework, it will probably be MAUI, which I assume will have ARM support.
edit 2021-07-16: WinForms in .NET 5 can now run natively in Windows on ARM.
see also #1415
Waterbox core support for Arm is theoretically possible, but a big ask of its own. Are we tracking that here too?
Looking through BizHawk source, it should be theoretically possible as well. First I'm reading about MAUI though, that sounds like a more plausible refactor path, as UWP would require a compete rewrite (as far as the WinForms components) in terms of needing to start a new VS project and copy code over.
bump for a more simple approach, you can try box64. It essentially emulates x86_64 architecture on arm. I don't think anyone tested bizhawk yet with it.
I tested this in box64. What hasher function is being used here?
What are you referring to? I don't see any mention of a hash function in box64's docs.
I'm referring to this. https://github.com/ptitSeb/box64/issues/506 It's on the bottom of the page.
Oh, the libbizhash
error you posted in https://github.com/TASEmulators/BizHawk/issues/1430#issuecomment-1416395915. CPP already told you:
[...] even managed cores may use unmanaged x86-64 code (mostly blip_buf for audio resampling), and loading a rom means going through hashers which means loading in a x86-64 library, which will not work.
It's meant to fall back to an managed implementation if the CPU it's running on doesn't support accelerated instructions, but of course the detection code is also x86 so it can't run. You could build it for ARM, properly or with stubs, or have EmuHawk catch the lib load error and treat it as though the unmanaged call returned false.
Does anyone know how we can use mkbundle to run bizhawk? With this, we can run bizhawk without mono installed.
RTFM.
Please only use this thread to discuss Windows AArch64 support, which with .NET Framework 4.8.1 may end up being quite simple. (future humans: go to https:/<!---->/github.com/dotnet/core<!---->/issues/7709 for docs.) For Linux, I won't be supporting anything other than Mono for the time being, but if anyone is having trouble with Mono on AArch64 then I'll help where I can.
Looking over the project, a successful transition from .Net Standard 2.0 and Framework 4.8 into .Net Core 5.0 and dropping WinForms in favor of UWP would allow successful porting into WoA.