Rémi Bernon (@rbernon) commented about dlls/dmusic/instrument.c:
continue;conn->usDestination = gen_to_conn_dst[mod->dest_gen];if (gen_to_conn_src[mod->dest_gen] == CONN_SRC_NONE){conn->usSource = mod_src_to_conn_src(mod->src_mod);conn->usControl = mod_src_to_conn_src(mod->amount_src_mod);src_transform = mod_src_to_conn_transform(mod->src_mod);ctrl_transform = mod_src_to_conn_transform(mod->amount_src_mod);}else{conn->usSource = gen_to_conn_src[mod->dest_gen];conn->usControl = mod_src_to_conn_src(mod->src_mod);src_transform = CONN_TRN_NONE;ctrl_transform = mod_src_to_conn_transform(mod->src_mod);
Should we really have usSource == usDestination and usControl set to the SF2 source? I'm pretty outdated on SF2 but it would feel more natural for connections to follow `<src> -> <dst>` or `<src> mod <ctrl> -> <dst>` patterns, rather than a seemingly recursive `<dst> mod <ctrl> -> <dst>`?