I think the ‘Basic GM’ set of waveforms are pretty different. Maybe later I can put up samples to show differences between the sound of S-YXG50, S-XYG2006SE, and HALion Sonic. To my ears they ‘all three’ sound pretty different from each other. Waveforms are different. Effects are different.
S-YXG are software XG players that Yamaha did a long time ago. I think they cherry picked waveforms from various tone generators that existed back in the 90s to build these?
S-YXG is long discontinued, but it’s possible to find official copies still for sell on Ebay. It’s also possible to find different ‘unofficial’ kits on the web that attempt to emulate the official Yamaha versions. Entire web sites exist that are dedicated to understanding and building XG compliant MIDI files, and they often have links to different XG emulators out there.
As for the actual hardware tone modules, there were/are many models from different manufactures (in addition to Yamaha) that understand XG banks and events. Some were baked into computer sound cards and quite popular for gaming systems.
Many digital pianos/keyboards, samplers, and synths have XG modes. They all sound a bit different…
HALion/Sonic does not support XG or GS ‘bank change’ calls, nor does it accept the Yamaha XG/Roland GS/GM2 ‘SYSEX’ events for ‘setting up’ effects.
XG in particular could use quite a lot of sysex events to fine tune all sorts of things about a sound in real time. To get similar effects with HALion/Sonic, you’d ‘learn’ regular MIDI CC events in the UI and automate things that way. Alternatively, in a fully VST compliant DAW, it’s possible to bind and automate a lot of controls directly via VST automation lanes (several things are standard for most instruments, but creators can reveal way more when designing sounds for the player with full HALion).
You can customize the default GM program/instrument table, but there is only a single bank of 128 programs.
A quick walkthrough to make Sonic GM compliant works like this: Go to the OPTIONS tab of a Sonic instance and set Program Changes to GM Mode.
Now Sonic is a GM 1 compliant MIDI player. Drum kits are locked into channel 10 as per GM1 standards (possible to change which kit is used in an instance as described below).
To change the sound a program change (PC) event will call up in Sonic you’d first turn off GM Mode, then browse to the preset in the Sonic Media Bay, give it the program number you like in the GM Sound field, and rate it with stars. Turn GM Mode back on.
Out of programs with the same PC event assigned, the one with the ‘most stars’ in its rating gets picked. If multiple programs have the same GM Sound assigned and Rating, I believe the first one registered in the database gets picked.
If you don’t see fields for GM Sound in your media bay, you can add them here.
You might need to scroll way to the right to find the GM Sound column…
One can change the order of the columns by dragging them from the column title field. The width of columns can also be changed by dragging things around up here.
So now I have things arranged so it’s easier to see what’s going on with PC assignments…
So, if I wanted to change the default grand piano sound (PC 1) to an Eagle Grand, I’d find it in Media Bay, assign it to PC1, and rate it five stars.
As for setting up reverbs and other effects on the 4 AUX busses. That’s more of a GM2 thing. Sonic doesn’t accept those sysex commands to set up GM2 reverb and chorus, but in GM mode it does have a default hall reverb and gentle width chorus working. You can easily tweak them to taste manually.
Since I’m about to play a rock SMF, I’ll use a preset to establish a small studio reverb so it’s not so ‘boomy’.
In Sonic CC91-CC94 still controls the ‘send amount’ as per GM 1 and 2 specifications. If you need to ‘automate’ these controls it’s also possible to ‘learn’ a CC for them through the Sonic UI.
For big brother HALion 7…bank changes are still not supported, but you can easily create and modify a ‘program table’ that responds to PC events 0-127.
It ships with a GM Multi-Program that gets you started with a GM1 compliant Program Table, and defaults to the same effects setup as Sonic (Hall Reverb on Aux1-CC91 send, Chorus on Aux3-CC93 send).
With both Sonic and HALion, you can modify and save different Multi Program configurations for different styles of SMF files.