If you take a look at that full spec. document you will find a section that's called GM 1 developer guidelines.
There it defines what should happen for the GM reset and also defines that it includes the requirements for Reset All Controllers.
You should remember that the MIDI spec has changed quite a bit over the years, and with it some of the names of things.
I had to buy a hard copy (not cheap) of the main spec and GM2 some years before it became available as a pdf (15 years ago?). It did include GM1 though.
I've never come acroos, or used, GM system off, so I'm not quite sure what it's supposed to achieve.
Note, with GM on, that you're supposed to leave time for a hardware synth to activate it.
The MMA suggest 100ms is an average.
Most Yamaha authored files put the GM reset at 1:1:0 and the XG reset at 1:1:240 (at 480 TPQN, 120bpm).
You sent me the Intro to Roundabout but the file contains no rests.
Rests are, however displayed but not contained in the file.
I'm guessing that some code, when a rest is inserted into the staff view, moves the end of track marker down past the end of the last rest.
Here's a revamped version of OneNote where I've edited the EoT marker for the track to 005:1:000.
OneNoteEOT5.MID (70 B)
See what that does.
There are also MMA documents called RP's and CA's that should be read which clarify various things.
And I've got, I think, three copies of the XG spec in various guises, changed over the years. (I bought a Yamaha daughter board (DB50-XG) for my original SOundBlaster 16 so many years back I can't remember. Then an SW1000-XG, then the three synth daughter boards for that (DX, AN, VL), then an MU128, then an MU1000 and added a Roland SC8850 to that. My brain reels when I try to recall.
I've still got the MU1000 with its synths and the 8850.
But I remember finding out was acquiring and reading specs from here and there over many years.
Not that dissimilar to my main job in data communications getting stuff from the CCITT in Europe and the IEEE and ... I've forgotten.
And then there was TCP/IP for the Internet and CSMA/CD for Ethernet and so on.
Sorry, I'm a bit distracted at the moment.
Trying to get my mind around replacing components on an amplifier board for my REL Storm III sub-woofer. Not sure if it's the caps or the switch that've gone noisy.
JohnG.