Woz Monitor ported
Posted: 12 Jun 2018, 18:09
I've ported the Apple-1 built-in monitor program: WozMon.gcl
The original is 254 bytes, my version is $254 bytes . About half of that is for terminal output (character printing). The Apple-1 had dedicated hardware for that...
This is an extension of the earlier Terminal.gcl program that just echoed typed characters to the screen. Now you can inspect memory locations, write to them and execute code. Original WozMon tutorials should be valid as I tried to deviate as little as possible from the original: the differences are essentially cosmetic or slightly improved usability. You will need such tutorial to understand what is going on, because the command interface is VERY TERSE. I could't figure it out by myself in the Apple-1 emulators. Once you "get" it, it is pretty easy.
I'm not aware of an emulator that can simulate an ASCII keyboard yet, so try it on hardware.
Update: I have integrated it also as the terminal application in the Arduino interface sketch. With that a hooked-up keyboard can inject WozMon at a single keystroke. The sketch is renamed as "BabelFish" because that better conveys what it does: translating all kinds of signals. And "LoaderTest" was a boring name to begin with...
The original is 254 bytes, my version is $254 bytes . About half of that is for terminal output (character printing). The Apple-1 had dedicated hardware for that...
This is an extension of the earlier Terminal.gcl program that just echoed typed characters to the screen. Now you can inspect memory locations, write to them and execute code. Original WozMon tutorials should be valid as I tried to deviate as little as possible from the original: the differences are essentially cosmetic or slightly improved usability. You will need such tutorial to understand what is going on, because the command interface is VERY TERSE. I could't figure it out by myself in the Apple-1 emulators. Once you "get" it, it is pretty easy.
I'm not aware of an emulator that can simulate an ASCII keyboard yet, so try it on hardware.
Update: I have integrated it also as the terminal application in the Arduino interface sketch. With that a hooked-up keyboard can inject WozMon at a single keystroke. The sketch is renamed as "BabelFish" because that better conveys what it does: translating all kinds of signals. And "LoaderTest" was a boring name to begin with...