Listening to our DX7 voices against dexed, the definitive DX7 emulation, the differences are very audible. Even with patch 128 (BRASS 1), I can hear pitch mod under dexed but the default pitch mod in our rendition is 0.00029, which is imperceptible. Listening to just ops 1 and 2, I think a value closer to 0.008 (i.e., 28x larger) is perceptually close.
The PMD (pitch mod depth) value in the DX7 Sysex streams is in the range 0..99. It's further scaled by Pitch Mod Sensitivity which seems to be limited to 0..7 judging by the dexed interface, although it seems to occupy a whole byte in the byte stream. I think our code (fm.py) does use Pitch Mod Sensitivity at all.
The envelopes don't sound right, either. I know I spent a while on this, but I think it needs more.
Listening to our DX7 voices against dexed, the definitive DX7 emulation, the differences are very audible. Even with patch 128 (BRASS 1), I can hear pitch mod under dexed but the default pitch mod in our rendition is 0.00029, which is imperceptible. Listening to just ops 1 and 2, I think a value closer to 0.008 (i.e., 28x larger) is perceptually close.
The PMD (pitch mod depth) value in the DX7 Sysex streams is in the range 0..99. It's further scaled by Pitch Mod Sensitivity which seems to be limited to 0..7 judging by the dexed interface, although it seems to occupy a whole byte in the byte stream. I think our code (
fm.py) does use Pitch Mod Sensitivity at all.The envelopes don't sound right, either. I know I spent a while on this, but I think it needs more.