G'day Someone,
I didn't have an urgent need to get the TRS-80 Load and Save working because I knew the start address of the LII BASIC program in memory, and I could use DGOS to save that out to cassette, after doing a (?)warm reset back to the monitor. BTW DGOS was an awesome Z80 monitor packed into (IIRC) just a 2K ROM (the assembly listing is on the net somewhere).
So even though I sold my AT S-100 system decades ago to fund one of the early Amiga 1000's to come into Australia (in I think 1987), for some reason I kept a folder of some of my programs and ideas and other things. So here are some.
This is the command map of Microsoft Level II TRS-80 BASIC and what I believe is probably my changes to the binary to point to DGOS keyboard input routine and also the change to move the 64x16 display memory to (?)D000 or wherever my ETI-640 screen lived. It all worked extremely well:
I recall I was able to add new BASIC commands by "throwing out" the less useful (to me) commands in this table by overwriting them and vectoring the code off from where the parser called the original code. I recall I was extremely envious of the Apple ]['s HLIN AND VLIN commands so my friend helped me write the Z80 code for them.
I also got the TRS-80 Level II BASIC low res graphics commands to work perfectly on my S-100 system because I was lucky to have the ETI-640 add-on ETI-681 Programmable Character Generator board:
https://www.worldradiohistory.com/hd2/IDX-AUSTRALIA/IDX/Archive-ETI-AU-IDX/IDX/ETI 1980-06 June-OCR-Page-0067.pdf
Here is the low-res character set, I think it lived at F800 maybe. (Apologies for the scan, we used a bonkers paper size, Foolscap, back then)
The difference though was (IIRC) the TRS-80 had an 8x15 character matrix but the PCG had an 8x16 matrix. So I made the lowest two low-res 2x3 TRS-80 pixels be 6 of the PCG's high-res pixels high, ie. 5 high, 5 high, 6 high.
Using this character set I also ported the TRS-80 flight simulator to S-100 (I don't recall where this came from or if this was a Microbee version?) and munged the keyboard call to get it to work. But, this was all 40+ years ago so my memories of what I did as a lucky schoolkid with a "home computer" is a little faded now. (BTW there was also a PCG circuit to build in one of the late 70s issues of BYTE)
But I suppose I wanted to show that Microsoft Level II BASIC can run on (some) other machines by just patching the binary.
Steve.