This is following up on my memory mapped display question in which John Hogerhuis had pointed me to the cache in RAM of the data sent to the LCD controller chips. I want to figure out exactly how the characters sent to the LCD are stored in RAM so I can both read it as a map and write to it and trigger a machine language routine to copy it quickly to the LCD.
I'm pretty sure that this can be done. For example, the LCOPY (PRTLCD) routine sends the screen to the printer by reading the LCD buffer, so it should be possible to PEEK at it. Unfortunately, PEEKing it naively, shows that the first line in the buffer is not the first line of text on the screen. Instead, it appears to be a ring buffer. Also, POKEing to the buffer does not change the display, but it should be possible to quickly update the LCD from a buffer as that's what the Alternate Screen routines for TELCOM seem to do. On the other hand, I've read through a lot of documentation, from Programming Tips <https://archive.org/details/ProgrammingTipsPeeksAndPokesForTheTandyPortableComputers> to Hidden Powers <https://archive.org/details/HiddenPowersOfTheTrs80Model100>, from Inside the Model <http://www.club100.org/ftp/m100-oppedahl-2.pdf>100 <http://www.club100.org/ftp/m100-oppedahl-2.pdf> to Radio-Shack ROM Functions, <https://archive.org/details/Model100RomFunctions> even the M100SIG <https://github.com/LivingM100SIG/Living_M100SIG/blob/main/M100SIG/Lib-08-TECH-PROGRAMMING/08_idx.txt>, and have not found anything. A while ago, I saw a fabulous disassembly of the Model-T ROMs, with conditional parts for each of the different family members. I'm pretty sure it was part of the z88dk project, but searching for it now is turning up nothing. (Most of the search results now say, "LOGIN REQUIRED". Ugh.) Any help finding it would be greatly appreciated. Or, I'd also appreciate being told if I am fundamentally misunderstanding how these computers can be used. Thanks, —b9
