Game Link progress update. I decided to use "Might and Magic II" as the first supported game. The main reason for this is that it runs in 640kb of RAM which, given that I had no idea where within that space the position of the player would be, seemed like a manageable challenge. The second reason is it was actually the first game I made a map for while making Grid Cartographer 1.0
I've worked with the source code for dosbox before, creating a
custom version with a bunch of fixes including partially repairing Wizardry 6's audio. Given that I had this familiarity I decided that my approach would be to work on this custom version again and extend it further with support for Game Link. This means that when I'm done you'll have to use this dosbox instead of the one you're currently using, and it'll only work on Windows (note: Game Link itself will be cross platform, I'm just talking about custom dosbox atm). But as it's a GPL project I'll be releasing full source code of my changes and so hopefully someone will step up and make a Mac or Linux version too.
Anyway, so my hunt for the needle in the haystack began. Inspired by the ZSNES cheat search engine I hacked together a crude equivalent. This engine allowed me to capture the emulated memory, move one step, then compare. Do this enough times, building up an 'ignore list' and you begin to whittle away the unrelated locations until you get a much shorter list. Eventually I was left with just a few values from the million I started with and from there I could check them by eye and it became very easy to spot which one matched the co-ordinates given on the map screen.
From there I quickly hacked together a 'transmitter' for this data based on the console application in my last image. And this happened:
Just to be absolutely clear :
I drew the map myself - only the avatar position and facing is transmitted !
Next step it to clean up the code I added to dosbox so it can be used for other games (it's hard coded for M&M2 at the moment). Also I haven't got it tracking what floor you're on and it goes a bit haywire in the overworld map.