tildearrow / furnace

a multi-system chiptune tracker compatible with DefleMask modules
GNU General Public License v2.0
2.6k stars 208 forks source link

OPLL Drums Triggering Without Note #436

Closed Toonlink8101 closed 1 year ago

Toonlink8101 commented 2 years ago

When using the 18xx effect with OPLL, drums that aren't being triggered are sounding. See attachment for an example: effect 18xx is broken.zip

Toonlink8101 commented 2 years ago

For the record, I'm currently using this build of Furnace.

freq-mod commented 2 years ago

@Toonlink8101 OPL drum mode has been reworked a bit, so that drums have their own separate instrument type. Please try now.

Toonlink8101 commented 2 years ago

So, it seems the issue has been partially fixed.

With dedicated drum channels, (drum channel on) the drum triggering issue is not present. However, regular instruments can no longer be played (I'm not sure if that was possible before).

Without dedicated drum channels, the drums seem to work initially, but there are some issues that arise, especially when mixing drums with regular instruments. I will link an example module below, but put simply, drums are still triggering without being told to. More specifically, regular instruments seem to be triggering drums when they shouldn't be able to.

Additionally, it seems that there are some irregularities with the volume of notes played before a drum is triggered. Muted instruments are initialized, and held notes are not reinitialized. This may or may not be related to #429, which is also still present.

Drum mode bug testing.zip

tildearrow commented 1 year ago

Without dedicated drum channels, the drums seem to work initially, but there are some issues that arise, especially when mixing drums with regular instruments. I will link an example module below, but put simply, drums are still triggering without being told to. More specifically, regular instruments seem to be triggering drums when they shouldn't be able to.

No further support whatsoever is going to be added for DefleMask's way of doing drums.

Toonlink8101 commented 1 year ago

No further support whatsoever is going to be added for DefleMask's way of doing drums.

That is understandable. In fact, I think that's for the best. Regardless, Furnace still has bugs with its implementation of the drum channel toggle.

I have collected some of these issues in this single file for demonstration: Drum mode is still super broken.zip

Please note the following:

If any of this needs a new issue, I'd be happy to make it.

Due to these many bugs, I personally find Furnace's OPLL support to be practically unusable unless Drum mode is permanently kept on.

tildearrow commented 1 year ago

I see what is going on. It appears that toggling drums mode via effect will not restore the state prior to the change...

tildearrow commented 1 year ago

It appears I may have hit some possible hardware limitations but not sure.

tildearrow commented 1 year ago

effect 18xx is broken now passes. Drum mode is still super broken now passes.

Marking as fixed.

Toonlink8101 commented 1 year ago

@tildearrow It seems to be much better than it was, but I'm still getting an odd sound with this other file I didn't submit before: Drum mode switching is broken.zip

This seems to only occur when switching from drum instruments to regular instruments when "YM2413 (OPLL)" is selected. The issue does not seem to be present with the "YM2413 (drum mode)" option.

From what I can tell, this might be some kind of weird patch-switching artifact. Is this a hardware exploit or is this still broken?

Here's a newer file that better showcases the issue: now only drum instruments are broken.zip

tildearrow commented 1 year ago

It seems to be much better than it was, but I'm still getting an odd sound with this other file I didn't submit before: Drum mode switching is broken.zip

No further support for DefleJank. Sorry. Won't fix. Use drums mode chip.

Closing as both fixed and won't fix.