Interesting so I guess this routine is tracking the position as row,col in h,l
The logic to convert h,l to an address to peek is at $4512 based on this . -- John. On Wed, Jan 28, 2026, 8:15 AM Kenneth Pettit <[email protected]> wrote: > On 1/28/26 2:20 AM, Joshua O'Keefe wrote: > > > > On Jan 27, 2026, at 7:31 PM, B 9 <[email protected]> <[email protected]> > wrote: > > > A while ago, I saw a fabulous disassembly of the Model-T ROMs, with > conditional parts for each of the different family members. > > > You're probably thinking of > https://github.com/z88dk/techdocs/blob/master/targets/m100/m100.asm > > > And from my Model 100 disassembly from VirtualT: > > ; ====================================================== > ; Redraw SCREEN from LCD RAM > ; ====================================================== > 4601H (CDH) CALL 73C5H ; Turn off background task, blink & > reinitialize cursor blink time > 4604H (2EH) MVI L,01H ; Prepare to point to LCD RAM (1,1) > 4606H (26H) MVI H,01H ; " > 4608H (CDH) CALL 4512H ; Get character at (H,L) from LCD RAM) > 460BH (CDH) CALL 4566H ; Call Level 6 Character Draw routine > 460EH (24H) INR H ; Increment column > 460FH (7CH) MOV A,H ; Prepare to test for column 40 > 4610H (FEH) CPI 29H ; Test if beyond column 40 > 4612H (C2H) JNZ 4608H ; Jump if more columns on this line > 4615H (2CH) INR L ; Increment line > 4616H (7DH) MOV A,L ; Prepare to test if last line refreshed > 4617H (FEH) CPI 09H ; Test if beyond line 8 > 4619H (C2H) JNZ 4606H ; Jump back to refresh next line if not on > line 9 > 461CH (C3H) JMP 433BH ; Get Cursor ROW,COL in DE and start cursor > blinking if cursor on >
