For the most part, the MIDI Data Format and MIDI Data Table in the Montage Data List has not been fully updated when new features are added each firmware release. One example for version 2.0 is "montage_en_dl_f0.pdf" page 184: the table which lists MSB/LSB+Pgm No. for each bank. This table is identical to the previous version. There are now more than 16 * 128 = 2,048 Preset Performances - which means the MSB/LSB had to gain slots to fit the new content. I've seen a post from BM which goes into some cursory detail - but the docs need to stay current and match the firmware. Incomplete docs lead to poor support - and sometimes the docs can be wrong if not updated (not finding BM's post at the moment - so not sure if the MSB/LSB had to "shift around" for many of the banks or if the choice was to preserve the current User and Library MSB/LSB and "tack on" after the previous mapping the extra slots (causing non-contiguous ranges). Yamaha isn't a fan of non-contiguous so I'm thinking the entire memory map got swizzled - which may match part of the reason why Song & Perf isn't working from previous backup save files. That and an oversight not to do a conversion on the MSB/LSB saved in the song's "tag" for the Performance location.
According to this post: https://www.yamahasynth.com/forum/montage-does-not-listen-to-midi-program-changes-anymore-after-update-to-os-v2-0
What was previously the first "page" of the User bank, "User 1" MSB/LSB = 63/80, is now MSB/LSB = 63/32. The details are a bit suspect because if the user area moved - I'm not sure why the program number would change considering the user area didn't grow that I'm aware of. Note: program number detail which is alluded to is in the linked message. Documentation would help nail this down.
I did find the mapping documented here:
But the manuals need to stay current - there are other items which are not updated from previous and current firmware changes as well.