Oops!
All the above is just my opinion of the situation. So feel free to take it as such.
A good job I put that caveat in!
That "AP20" identifier kept bugging me. So I had a look at AMOSPro - the program that launches the whole thing. And, sure enough, it's referenced there too. A quick look (no, I haven't got time to do a full disassemble) showed that it seems to set a flag (in the AMOS data area?) and switches a pointer (to a different lookup table?).
So I disassembled enough of AMOSPro_Music.Lib to compare it to the |Music.s source supplied with AMOS Pro. Sure enough, the first
Rjsr macro I came across has an entirely different index number into the offsets table! A bit further into the code and where |Music.s references calls to
Rbsr L_Amiga.Lib (the workaround to make the Amiga.Lib calls relocatable) they have been completely replaced with straight
Rjsr macros with index numbers. This fits the AMOS Pro V2.0 pattern in its version of AMOSPro.Lib.
Conclusions? I hesitate to make any after the previous post!
My favourite quote from 2011 was "2011 was the year that opinion replaced fact." by someone whose name I forget, but I think it was a political commentator.
Anyway, I'll stick my neck out and suppose that AMOSPro.Lib also contains a re-mapping table somewhere that it switches to when a non-V2.0 AMOS Library (one with out the "AP20" identifier) is loaded. There's a suspiciously long table of offsets or vectors (?) straight after the table of instruction-names+parameters+index-numbers that you'd find in any AMOS library. Up to that point, everything that |Music.s shows for the format of a library holds true (with a very few slightly different extras in the tables - well, it
is the core library!). Maybe that's used for the remapping?
Anyway, that is as much as I can do for now as I really must get on with the AMOS Basic Command Ref docs. But it's certainly worth putting on the list "to be investigated - later". The implication is that there is a completely different set of includes files needed to write extensions that take full advantage of the Pro V2.0 capabilities. Though you can still use the supplied ones for most purposes.
Anyone else got the time to have a look?
And the original includes set for AMOS Pro V2.0 must have been around in the 1990s. Anyone ever seen or heard of them?
It would be a real nightmare to have to build them up from scratch - even assuming that the AMOS data area couldn't have changed much...