gtaylormb / opl3_fpga

Reverse engineered SystemVerilog RTL version of the Yamaha OPL3 (YMF262) FM Synthesizer
GNU Lesser General Public License v3.0
362 stars 42 forks source link

[feature request] Better dual-OPL2 compatibility mode #6

Open sdsnatcher opened 8 years ago

sdsnatcher commented 8 years ago

One of the major incompatibility problems between the OPL3 and the dual-OPL2 from SoundBlaster Pro software was that the second set of channels of the OPL3 didn't feature the rhythm mode and the timers.

It would nice to implement support for two rhythm modes and the two missing timers in this OPL3 core, improving compatibility with dual-OPL2 software.

gtaylormb commented 8 years ago

This is pretty easy to do. The code for the operators in bank 0 that are dual-use for rhythm mode could also be carried over to bank 1. The register map would also have to be updated and corresponding signals added. The timers are a cinch. From a software standpoint does it even make sense to have two sets of timers though? Are they often used in dual-OPL2 software?

sdsnatcher commented 8 years ago

That's a really good question, but I don't know the answer for sure. There are a plethora of PC software for the SB-Pro out there and I have no idea how many of them use the 2nd set of timers. I just know that they were available in the SB-Pro.

Maybe just let out the timers for now then. Two sets of rhythm mode are fun enough. :)