Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modern C# - .NET 6 #103

Draft
wants to merge 34 commits into
base: master
Choose a base branch
from
Draft

Modern C# - .NET 6 #103

wants to merge 34 commits into from

Conversation

Kermalis
Copy link
Owner

@Kermalis Kermalis commented Sep 5, 2022

Pretty busy and this took a lot out of me. So this may linger here for a while, especially since .NET 7 is right around the corner.

Done:

  • Updated DLS2, SoundFont2, and EndianBinaryIO to .NET 6 also
  • Sanford.Multimedia.Midi is no more. Added a MIDI implementation to the project which we can change to suit our needs
  • It builds and things actually work
  • Swapped off "commonfiledialog" and "commonfolderdialog" for the winforms ones, but it doesn't change anything

To do:

  • Program icon is not embedded in the .exe
  • Finish splitting the UI from the core project
  • Finish formatting/clean upgrade. This includes renaming engine files
  • Test MIDI package
  • Test MIDI matching with MP2K
  • Players should use ILoadedSong and set it to null if the song is empty/no events. Only MP2K does this right now
  • Try to stop using EndianBinaryIO with the GBA engines since it's not necessary
  • UI colors are wrong. I think I mistook HSL for HSV, or the HSL code I'm using is wrong (like some github issues I found might suggest)
  • Try to use span and nullable in more places. Remove warnings
  • Remove MemoryMarshal usage. It won't work if the system endianness doesn't match the game's

Not going to do:

  • Split SDAT channel into Channel/ExChannel again. It is a bit of work and unrelated to this port so it will have to wait.
  • The program is remaining Windows-only until this is all working. After that, we can try to get a UI using OpenGL or something. But I'm a bit busy for all that, so join the discord if you want to help

Still way more to do, and crashes to fix etc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant