BizHawk icon indicating copy to clipboard operation
BizHawk copied to clipboard

Multi-target .NET Framework 4.8 and .NET 8

Open Morilli opened this issue 1 year ago • 3 comments

This is a proof-of-concept PR multi-targeting both .NET Framework and .NET 8. .NET 5+ has lots of performance improvements that could immediately benefit us (e.g. #3675). .NET 5+ does not support WinForms under linux, which means that the .NET Framework version can be used under linux and windows, while the .NET 5+ build is windows-only.

This is still very much at POC level as there will most likely be unexpected issues like differing APIs, dialogs being visually broken etc. Also, no script and command is currently aware of the output folder change: output/[everything] -> output/net4.8/[everything_net4.8]+output/net8.0-windows/[everything_net8.0].

Known issues:

  • [ ] On net8.0-windows, some waterbox cores (just bsnes?) hardcrash on the first frameadvance. No amount of debug compilation has helped so far, but compiling the waterboxhost with dirty detection disabled fixes this. I'm afraid this may be #3615 all over again.

Morilli avatar Aug 17 '23 21:08 Morilli

https://github.com/TASEmulators/BizHawk/blob/c79e17cb3c452ac1d82cf6a8adccb27c8ccaed23/src/BizHawk.Bizware.Graphics.Controls/BizHawk.Bizware.Graphics.Controls.csproj#L3 Should be multi-targeted too.

CasualPokePlayer avatar Aug 19 '23 05:08 CasualPokePlayer

https://github.com/TASEmulators/BizHawk/blob/11bd5dac572b96c35bbe704635cbba4d83863e90/src/BizHawk.Client.EmuHawk/app.config#L4 Does this need changing at all here?

CasualPokePlayer avatar Aug 23 '23 02:08 CasualPokePlayer

No, it's been unused since at least https://github.com/TASEmulators/BizHawk/commit/e435fb807b99cfc9327c01cbfe628d0e4eb4ee21.

YoshiRulz avatar Aug 23 '23 02:08 YoshiRulz