Max,
I don't recall it being a specific requirement until the GM2 spec. came out, which dates it to about 1999.
In that spec, (now at version 1.2 (2007) ) on page 5, where it defines the Program Change message, it states:
"3.2 Program Change Message
[required]
Default Value: 1 (00H)"
See "General_MIDI_Level_2_07-2-6_1.2a.pdf"
So, any device that came out before GM or GM2 would probably not default to this value.
I suspect that applies to the MT32, that was very early as I recall.
Any MIDI sound card or module that displays GM or GM2 should conform to the standard though.
Very early devices, pre GM1, didn't even follow the instrument mapping now commonplace.
So a Program Change of 00H wouldn't neccesarily invoke Piano.
I don't think my TX81z did, nor do many early synthesizers.
I vaguely recall having to alter the Program Changes for various early internal PC cards to get the sound you wanted up until GM1 came out and sound cards started to conform to it. So, for me, from the mid eighties to the late nineties.
Take a look at the 'voice' assignments for a DX-7 MkI or MkII.
My ancient AN1x doesn't follow the rules either. Nor does my VL70m and several others.
JohnG.