All we needed for translating Zog's maps was a key, which took the form of a text file like so:
0,0,Sky .. 0,4400,Hillside ;; 0,6080,White M ww 0,8640,Wood M XR 20,14880,Geom Red XG 20,15040,Geom Grn XB 20,15200,Geom Blue XZ 20,14720,Geom Grey [R 20,17920,Sold Red [G .......
We wrote a BASIC program that slurped in the key, then read in a level map and translated each two-character symbol into the corresponding numbers for the "block type" and "block picture" portions of a level map. Just a few loops and some "POKE" statements to get the values into memory, and we were done.
Of course these days a workflow like this is crazy. Instead we would create a web page, hosted on a remote server with a database attached, that would send a large chunk of javascript code to a browser in Zog's machine, where he would make all his edits and then press a "Save" button. Later on we would connect to the same website and fetch the edited map from the database, through an entirely different mechanism.
Which is a different kind of crazy, if you think about it. (This is more-or-less what I did, in 2024.)