Checked fw 1.2 - looks like FM64 is restoring the last state on boot correctly. Didn't have an issue with 1.1 though
A little bit on that Legato mode pain - more on why is it like that and how to tackle it, rather than how it should normally work (I already told numerous time KORG's MIDI implemintation is crap, right?)
- NTS-1 was released as a monophoic synth of a single oscillator. Π aving prologue dev kit as an initial prototype, so no one at that moment ΡΡΡΠ΅ thought about the any polyphonic mode.
- NTS-1 fw 1.2 introduced the Legato mode global parameter.
Legato=On was similar to the original mode, close to how prologue/mxd works - NoteOn/NoteOff calbacks is not a MIDI event calbacks, those are at least behind the voice allocation mechanism of the polyphonic logues.
The new Legato=Off does not retrigger the internal EG and allows multiple NoteOn callbacks with no NoteOff in between, to imlement some kind of polyphonic. Unfortunately NoteOffs was not adjusted and it was called only once on the last note released. There is still an old feature request opened issue:
https://github.com/korginc/logue-sdk/issues/26.
- NTS-1 mkii pre fw 1.2 was behaving the same way as NTS-1 fw 1.2
- NTS-1 mkii fw 1.2 now fixes the issue with the lack of the NoteOff calbacks in Legato=Off mode, though it does the same for the Legato=On mode. It should not be like that, but the workaround is just as simple as responding to the NoteOff for the NoteOn that has been registered before and ignore any unaligned NoteOffs. That will work for both legato modes, though in Legato=On you will never get two NoteOn calbacks with no NoteOff in between.
Once again, don't treat calbacks as direct MIDI event because they don't, even if SDK2.0 made it looks more like. If Legato=On NoteOff count will be aligned with the NoteOns AND the same will be implemented for NTS-1 fw, that will be fair ennough, as that is the way as old big logues work. While the Legato=Off mode is for pure-digital synths only. Implementing mkii that way still give changes for the new SDK2.0 hybrid logues.