LMMS / lmms

Cross-platform music production software
https://lmms.io
GNU General Public License v2.0
8.09k stars 1.01k forks source link

Bugs when turning the "FM" button in "OpulenZ" on or off while playing notes. #3754

Open Sawuare opened 7 years ago

Sawuare commented 7 years ago

Windows 10 Pro, 64-bit OS, x64-based processor with LMMS 1.2.0-rc.3

Bug 1: Turning the "FM" button in "OpulenZ" off while playing notes causes distortion that fades out with time. Images: The oscilloscope before turning the button off: image The oscilloscope after turning the button off. It's supposed to look like the first image in the second images below, but it doesn't: image Project file: Bug 1.zip

Bug 2: Turning the "FM" button in "OpulenZ" on while playing notes doesn't modulate "OP2" by "OP1" that way it's supposed to. Images:

The oscilloscope before turning the button on: image The oscilloscope after turning the button on. It's supposed to look like the first image in the first images above, but it doesn't: image Project file: Bug 2.zip

Both of the bugs will go away when playing a new note or looping the same note. Both of the bugs were first produced with a custom preset then re-produced with the default "OpulenZ" preset in an empty project.

softrabbit commented 7 years ago

First off, the way something is "supposed to" behave is in this case largely defined by how an actual OPL2 chip would behave in the same circumstances. This instrument is based on emulation code, after all, and those who dabble in that area take things seriously enough to decapsulate chips and analyzing them under microscopes to get every 1 and 0 right.

That being said, it could be that the chip (emulation) might behave better if only the changed values are updated, instead of just writing everything each time something changes, as is done now. I'll look into it.