Current implementation works only with midi devs and doe not work with synth that have `synth_type = MOD_MIDIPORT`, these devices got `dest->caps.wTechnology = MOD_MIDIPORT` as midi ports and handled as midi devices by `midi_out_port_data()`, `midi_out_long_data()` but these functions does not make difference between synth and midi and try to calculate `dev` from wine `dev_id`. \ So for synth devices it fail to send data or send data with invalid `dev`.
I have 1 synth and 1 midi device. \ Synth will have `dev_id` = 0 and midi `dev_id` = 1. \ But they both have `dev` = 0.
Both device will use `midi_out_port_data()` \ `int dev = dev_id - num_synths;` \ For synth: dev = 0 - 1 => -1 - will fail on check on next line: `if (dev < 0)`. \ For midi: dev = 1 - 1 => 0 - and it work.
`midi_out_long_data()` have no check: `SEQ_MIDIOUT(dev_id - num_synths, 0xF0);` and send data to `dev` = 255.