Yeah, it is definitely on my todo list. You might be one of the first to notice when I begin working on that, as I think I would be starting by making changes to the AGI Library first, then submit a PR to you to get it merged into the master of the library in your repo. Not sure at the moment when I'll be taking a look at that. I'm still a bit distracted with a few mysteries in relation to the original AGI interpreter source code.
My mind is more in research mode rather than coding mode at the moment. I'm thinking about writing a follow up article to the Space Quest II Master Disk article, but I doubt it would be as popular, as I'm thinking of something a bit more technical. Recently I've been compiling some files in the original AGI source using the Mark Williams C compiler, which appears to be what they used for compiling, and then linking them with PLINK86, which appears to be what they used for linking.
I don't think I'm using the same versions as they used, as the version spread for those tools, as far as availability online is concerned, is very limited. I've found several fragments of OBJ module files on the KQ3 v2.14 720K disk 1 that suggest Sierra used version 2.3.8 of the Mark Williams C compiler. I can't find any trace of that on the Internet, but I have found a v3 and a v4 version. The v3 version doesn't compile to the standard OBJ module format though, but the v4 one does. So that's the one I'm experimenting with at the moment. That version was apparently released in 1987, in fact prior to the assumed date of the AGI source on the SQ2 disk, so it feels somewhat appropriate to use that version, even if Sierra may have been using an older version of the compiler.
PLINK86 is what provides the overlay mechanism that AGI uses. The memory map file hidden on the SQ2 disk is an output file from the PLINK86 tool. When the MAP option is used with that tool, it produces a file of that format, and the one on the SQ2 disk is essentially complete. It is missing the first 4-5 pages, but I was able to recreate most of that, since the missing bit was mostly an alphabetic list of symbols with their addresses. That same information is in the Modules section but arranged in a different way, i.e. within each module. So I used that to recreate the missing bits from pages 1-5. The only bit that is missing now is the top 10 lines. I'm playing around with PLINK86 with some test modules to see what would normally be in those 10 lines, the idea being that maybe I can guestimate what the AGI memory MAP file had in it for those lines. Long story short, the memory map file is essentially complete. I'm planning to add it to the agi repo on github once I think I have it as close to what it originally was as possible.
It would be an interesting exercise to see if these two tools, i.e. MWC and PLINK86, can be used to compile the complete AGI.EXE from the original source, with the missing 20% of the code perhaps borrowed from NAGI and the various disassemblies that we have. I reassessed the amount of original AGI source code that we have, stating now in the github repo README that it is 80%. My original estimate was based on the number of files, which is still calculated to be about 75%, with the inclusion of the extra source files from the KQ3 disk, but if we look instead at the actual amount of code across all modules, then it works out to be 82%. I rounded that down to 80% in the readme, as I didn't want to be too exact, as it probably depends a little on what exactly you count.