Thanks, Ken! I can make a list of what I've noticed missing and include some 
programs to exercise the features.

Where should I file the bug report? 

--b9


On February 26, 2026 5:00:23 AM PST, Kenneth Pettit <[email protected]> wrote:
>Hi b9,
>
>No, I'm sure when I added T200 emulation mode, I only implemented the subset 
>of commands from the HD61830 controller chip that were actually being used by 
>the ROM.  Those other features would need to be added specifically (i.e. any 
>addiitonal I/O ports added (there probably aren't any) and then code to detect 
>and implement the command sequences.
>
>Would also need code to test those additions.
>
>Ken
>
>On 2/25/26 8:59 PM, B 9 wrote:
>> 
>> I just found out that James Yi at one point documented some of the things he 
>> figured out about the HD61830 LCD Controller in the file LCDIO.200 
>> <https://github.com/LivingM100SIG/Living_M100SIG/blob/main/M100SIG/Lib-10-TANDY200/LCDIO.200>.
>>  Is Virtual T supposed to be able to do things like:
>> 
>>   * Change how many pixels wide each character is.
>>   * Change font to double-height or half-height.
>>   * Adjust the screen darkness programmatically.
>>   * Position any arbitrary byte in the LCD’s 8K of RAM as the top-left
>>     character on screen.
>> 
>> Thanks,
>> 
>> —b9
>> 
>> On Tue, Feb 24, 2026 at 7:54 AM B 9 [email protected] 
>> <https://mailto:[email protected]> wrote:
>> 
>>     On Sat, 21 Feb 2026 at 10:46, B9 <[email protected]> wrote:
>> 
>>         (Note: I may ALSO be confused about how the Hitachi LCD works!)
>> 
>> 
>>     On February 21, 2026 11:08:41 AM PST, Peter Vollan
>>     <[email protected]> wrote:
>> 
>>         If you think there is a processor chip built into the LCD,
>>         then, yes, you are.
>> 
>>     Thanks for the clarification, Peter! You are correct, the HD61830B
>>     <https://www.displayfuture.com/Display/datasheet/controller/hd61830b.pdf>
>>     LCD controller is not a programmable processor. Still, it is a
>>     pretty nifty chip with a rich instruction set
>>     
>> <https://www.delta-components.de/products/infos/lcd-graphic/HD61830/8.htm>.
>>     It can access up to 64K of RAM, generate characters (from internal
>>     or external ROM) for a super-fast text-only mode, scroll the
>>     entire screen horizontally or vertically at the pixel level, and
>>     set dots using xor
>>     
>> <https://www.chiark.greenend.org.uk/~sgtatham/quasiblog/xor/https://www.chiark.greenend.org.uk/~sgtatham/quasiblog/xor/>
>>     for Qix lines.¹
>> 
>>     If I understood Ken correctly, Virtual-T does implement the LCD
>>     controller chip at a low-level, so now I am wondering why these
>>     programs by James Yi — which access the HD61830 chip using OUT 254
>>     and OUT 255 — don't work:
>> 
>>      1. LCDTXT.200
>>         
>> <http://LCDhttps://github.com/LivingM100SIG/Living_M100SIG/blob/main/M100SIG/Lib-10-TANDY200/LCDTXT.200TXT.200>:
>>   Demo
>>         of Tandy 200's "text" mode
>> 
>>           Uses the text mode of the 200's LCD driver chip to display
>>         its internal
>>           character set.  T200 normally runs in graphics mode all the
>>         time.  When you
>>           run LCDTXT.CO <http://LCDTXT.CO>, created by this Basic
>>         loader, it displays the character set.
>>           Then press SHIFT to display a text file in memory.  Then
>>         release SHIFT to
>>           display them alternately - that shows how fast the whole
>>         screen can be
>>           updated. Finally press SHIFT again to exit.
>> 
>>      2. EFFECT.LCD
>>         
>> <https://github.com/LivingM100SIG/Living_M100SIG/blob/main/M100SIG/Lib-10-TANDY200/EFFECT.LCD>:
>>         Display double-height characters and scroll left.
>> 
>>           By using out 255 and out 254, James Yi found some
>>          interesting screen effects.
>>           Program includes two examples. By assigning #0-16 to out 255
>>         and  #0-127 to out 254,
>>           LCD can be controlled. It might or might not work on M100.
>> 
>>      3. SCROLL.200
>>         
>> <https://github.com/LivingM100SIG/Living_M100SIG/blob/main/M100SIG/Lib-10-TANDY200/SCROLL.200>:
>>         This program uses OUT to achieve a smoothly scrolling effect.
>> 
>>     Do these work for other folks under Virtual-T? Is my version too
>>     old? Did I compile it incorrectly?
>> 
>>     Thanks,
>> 
>>     —b9
>> 
>>     Footnote 1: Actually, I didn't see XOR mentioned in the
>>     documentation, but that seems to be what Google Translate says for
>>     this blog post
>>     
>> <https://pocketgriffon-hatenablog-com.translate.goog/entry/2021/07/08/081305?_x_tr_sl=ja&_x_tr_tl=en&_x_tr_hl=en&_x_tr_pto=wapp>
>>     from "Pocket Griffon".
>> 

Reply via email to