Re: A89: TI-89 LCD Driver


[Prev][Next][Index][Thread]

Re: A89: TI-89 LCD Driver




On Wed, Nov 08, 2000, Jeff Flanigan wrote:
> 
> I have a few questions about the LCD driver for the
> 89.  Maybe some of you know the answers or maybe I
> will just have to try some tests.
> 
> I assume that the driver doesn't use built-in graphics
> RAM, because if it did then grayscale wouldn't work. 

HW2 does use builtin RAM.  Every write to $4C00..$5BFF is captured by the
display controller and the value is stored in the display memory as well as
written to RAM.  It seems like the address range is fixed and cannot be
changed, but I haven't given up yet.


> Therefore, it must use the RAM that it is assigned to
> draw its image from, and not mask over it.  Does it
> use bus mastering to read the RAM, or what?

HW1: Some kind of bus mastering/DMA.  The display controller lives in the
same chip as the CPU, so the actual protocol used between them is unknown
(and irrelevant).

HW2: The display controller lives outside the CPU and TI didn't implement
bus mastering.


> How much
> time does an entire read take?

I hope this answers your question:

The display controller is fetching one byte at a time (I think), and a fetch
takes 4 clock cycles (assuming no waitstates).  There are 240*128/8=3840
bytes fetched during each frame and the HW1 frame rate is about 85-95 Hz =>
=> 332kbyte/second => 1.3M clock cycles/second.  Timing experiments show
that the CPU runs about 10% slower when the display controller is enabled.


> Can the address it draws its image from be in the
> flash ROM area?

Yes and no.  It is possible to trick the display controller into believing
that the screen is infinite tall.  So, it can, with a little work, read from
any memory range, but no "random access."  The start address is limited to
$000000..$07FFF8, in steps of 8 bytes.


> Do its reads to the RAM or ROM go
> through the U8 chip that controlls flash protection? 

HW1: Yes, since it lives inside the CPU.
HW2: It does not read.


> Is this why the TI-OS disables LCD update when
> unprotecting the ROM?

Right.


> Maybe the LCD reads can be used
> to unprotect the ROM on any current or future AMS. 

If it worked, it'd work on HW1 only -- the HW1 protection can be disabled
VERY easily by other means in all current and probably all future AMS
versions.


> Just some food for thought.  :)

Always welcome!  :)

--
Johan  "Knowledge is an illusion without answers."



References: