I've been thinking a bit more about the AGI.pdf, mainly because I've been studying it a bit as part of writing the C# AGI interpreter. One thing that is quite obvious, but I don't think we've pointed out yet, is that it is missing quite a few of the AGI commands. I guess we've all assumed it was written at a time when those commands didn't exist, and I think that is probably quite likely. Something I've noticed this evening though is that the final AGI command covered in the AGI.pdf document doesn't exist any more. The name is max.drawn. The command is described in the document, and the AGI saved game format has a field for storing the max drawn value, but it would seem we no longer have a way of setting it. The AGI.pdf document states that the default value is 15, and sure enough in the saved game files I've been studying, the value of the field is 15. So I guess in the interpreter code, that field is still set to the default of 15.
The only reference I can find to MAXDRAWN in the fragments of AGI interpreter source code that we have are from the memory map of the section of memory that is saved as part of the AGI saved game file. It isn't mentioned anywhere else in the fragments that we have. Obviously there must have been more references to it since the inclusion in the memory map means that there was a variable with this name. The references must be in one of the parts we don't have the source for.
As far as I can tell, for those commands that it does include, the AGI.pdf document lists the AGI commands in their correct AGI v2 and AGI v3 order. As has already been discussed previously, AGI v1 had a lot of the same commands but they appeared in a different order (i.e. they had different byte/op code numbers). What this seems to suggest to me is that perhaps the AGI.pdf document represents AGI v2 in its very earliest form. I say this because according to the AGI specs, version 2.089 had 155 commands. The AGI.pdf document does not list this many. It stops at max.drawn, which I assume would have been at number 143 (since script.size appeared immediately before it and is at number 142). For most AGI v2 and v3 games that we're familiar with, command 143 is set.game.id. This does not appear in the AGI.pdf document. One possible conclusion about why it only has 143 commands is that AGI.pdf represents a time prior to version 2.089. Perhaps it represents the 2.001 that DDP apparently used. And if that is the case, does that version of DDP use the max.drawn command? If not then what games did use it?
Edit : I had one further thought about this. HWM's interpreter list says that the 2.001 version of Donald Duck's Playground had an OBJECT file that didn't have the header, which I take to mean the first three bytes. If this is the case then it would not have contained the "number of animated objects" value that is the third byte in the OBJECT file. Perhaps that was what max.drawn was originally intended to be used to set. I wonder this because from having taken a look across a few of the standard AGI v2 games (KQ1/2/3, SQ1/2, and PQ1), the "num of animated objects" value in the OBJECT file ranges between 16 and 20, which is very similar to the default value stated for max drawn.