Kagamiin / ESFMu

Emulation core for the "ESFM" enhanced OPL3 clone, based on Nuke.YKT's Nuked OPL3 and reverse-engineering efforts from the community
GNU Lesser General Public License v2.1
23 stars 1 forks source link

Output precision difference in synthesis math #8

Open Kagamiin opened 11 months ago

Kagamiin commented 11 months ago

Description

A specific configuration of operators produces a different sound in ESFMu compared to real hardware.

In such configuration, OP1 is set to the lowest TL and all other operators are set to zero pitch, maximum TL and modulation input levels in order to amplify the tiny signal coming out of OP1.

Lowering the modulation input level of OP2 in ESFMu by any amount (except for setting it to zero) produces similar output to real hardware, indicating a difference in output precision.

Test configuration

Test scenarios

Module

esfm-pulselesspulse.fur.zip

Real hardware capture (dead truth)

Captured by @djtuBIG-MaliceX (thanks!).

https://github.com/Kagamiin/ESFMu/assets/102362203/1efac088-1bbf-4e7d-bbbd-caf52d88f1d7

Emulator capture (evidence)

https://github.com/Kagamiin/ESFMu/assets/102362203/e9f7b709-e83c-45a5-8ef8-6f070d58dd95