Programming the YM3526/YM3812 chip in SFX Sound Expander (SFXSE) for the Commodore 64

I'll write a few posts about my process of creating a C64 player for D00 files, the music files created by the DOS tracker tool for Adlib (YM3812 chip) called "Edlib".

Edlib was created and evolved by JCH between 1992-1994. With it you can program each of the 9 voices of the YM3812 chip in a trackerlike fashion, basically identical to the way JCH's C64 SID editor worked. 

Two main players are out there for Edlib. Edlib is the editor that relies on either player v2 or player v4 to play the edited tunes. If you download Edlib, you will see that has a folder named PLAYER where you find the two player binaries, ADL-0201 and ADL-0400, filedate 8th of June 1992 and 12th of November 1993 respectively. 

The vision I had was to convert the original x86 code to 6502 code to get the exact accurate play of the D00 files on the C64. This then, combined with SID tunes, would hopefully lead to a new world of music on the C64. The C64 had been totally missing out on Frequency Modulation (FM) - synthesis in mainstream software, even though Commodore released the SFX Sound Expander with the YM3526 (or OPL1) chip already in 1985

If you know your 8-bit era, you know there's a ton of FM-music out there, and also the Adlib-soundcards made use of the YM3812 (OPL2) chips. But Commodore? Nope. Support for the SFXSE was completely lacking. Personally, I'm a big fan of the SID chip (as you can see from my releases and from my YouTube channel Unepic Stoned High SID Collection), but I also adore FM music. So when Marv/FSH put up a SFXSE unit for sale at eBay back in April, I got interested in this thing. Reading it had a YM3526 chip, I knew I needed it. Seeing that I won the auction quite easily, the low interest was paramount to the lack of support it has had throughout it's original time period. However, my journey would only begin that day.