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

Refactor RAD v2 Opal OPL3 FM Emulator #490

Merged
merged 2 commits into from
May 13, 2024

Conversation

a740g
Copy link
Contributor

@a740g a740g commented May 9, 2024

This PR refactors the RAD v2 Opal OPL3 FM emulator by splitting it into separate .h and .cpp files. The goal is to enable easy future reuse.

Currently, the emulator is utilized for playing RAD v1 and v2 files. However, it is versatile enough to serve as a basic MIDI back-end.

By using it as a MIDI back-end, one potential benefit will be the reduced executable size, achieved by avoiding the inclusion of the 1 MB soundfont payload in the final executable. We can also simplify the makefile logic by eliminating the conditional soundfont and player code inclusion.

@a740g a740g added the enhancement New feature or request label May 9, 2024
@a740g a740g self-assigned this May 9, 2024
@a740g a740g merged commit 1ddc40c into QB64-Phoenix-Edition:main May 13, 2024
4 checks passed
@a740g a740g deleted the rad-opal-refactor branch May 13, 2024 00:49
@grymmjack
Copy link
Contributor

grymmjack commented May 17, 2024

How would we use this FM for MIDI ? Do we have GM spec sounds? Like E-Piano or such?

@a740g
Copy link
Contributor Author

a740g commented May 17, 2024

How would we use this FM for MIDI ? Do we have GM spec sounds? Like E-Piano or such?

Something like https://github.com/devinacker/ymfmidi. I already got something working using Nuked-OPL3 and ymfm. So, reworking that for Opal should be trivial. For MIDI patches we can use https://github.com/sneakernets/DMXOPL. My idea is to use a generic integrated default patch and then let users load custom patches or a soundfont (if they want to use the soundfont based player).

@grymmjack
Copy link
Contributor

Oh! I remember us discussing DMXOPL before now that you mention it having looked at the site and jogging my memory. I think I found a VST to use these patches? Man it wasn't that long ago, but my memory ...

@a740g sweet! I'd love to see/play/test things if you want a tester/nerd friend on any of this music stuff.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants