noshutdown wrote:all right man, since it come with 240 sound presets(instruments), just not in the order of GENERAL MIDI, can i just rearrange the order of presets to play in GM mode?
I don't think it is feasible, because the FB-01 differs more from the GM standard than the MT-32. And even the MT-32 isn't exactly perfect for GM playback either. You're much better off with a fully GM-compliant sound module if you're after GM compatibility.
One of the most obvious problems is the lack of polyphony, which is the maximum amount of notes that can be played simultaneously. On the FB-01 the maximum polyphony is always 8. Furthermore, the polyphony is not dynamically allocated between MIDI channels, i.e. you have to specify the maximum polyphony per MIDI channel beforehand. The GM standard on the other hand specifies "24 fully dynamically allocated voices". The MT-32 does not fully comply with this requirement, as its polyphony varies between 8 and 32, depending on the complexity of the instruments. The MT-32 has 32 partials available and each instrument is composed of 1 to 4 partials, hence the varying polyphony. This means that in GM compatibility mode the MT-32 might occasionally cut off notes, but at least it can dynamically allocate the polyphony, so it's manageable. With the permanent maximum polyphony of 8 for the FB-01 and its static polyphony allocation however, this note cut-off problem would be much more apparent.
Furthermore, unlike the MT-32, the FB-01 does not have a drum kit. This means that it will always play the same instrument for every key on a MIDI keyboard, rather than a different instrument for each key. Obviously not something you want to have when playing back a drum track. 😉
And finally, the FB-01 only responds to "program change" messages in the range of 0 to 47, while the 128 instruments of the GM standard are accessed in the range of 0 to 127. This is due to the way in which the sound banks in the ROM and RAM of the FB-01 are organized. Every bank contains 48 instruments and there are 5 ROM banks (5*48 = 240 instruments) and 2 RAM banks (2*48 = 96 instruments), so 336 instruments in total. While you can change the instrument within a specific sound bank using a simple "program change", the only way to switch the currently used sound bank is to send a "system exclusive message". But as these messages are special for each sound module, a GM soundtrack will not contain these messages for the FB-01.
Converting a GM MIDI file for playback on the FB-01 would require significant changes to the MIDI file itself. You would have to insert system exclusive messages to allocate the maximum polyphony per channel, in order to minimize the note cut-off. You also need to simulate a drum kit by sending a program change before a note is played, so that it changes to the right instrument. And you'd have to map the GM standard program change with range 0-127 to the scheme with sound banks and program changes with range 0-47 for the FB-01.
Hope that made any sense to you. 😜