Re: A89: LCD memory manipulation (in asm)


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

Re: A89: LCD memory manipulation (in asm)




Thank you for the information!  Was this in a documentation that I missed
somewhere?

I had originally planned to use the extra memory around the visible LCD as a
buffer, in order to make easy smooth scrolling, but now I can't figure out
how to scroll left/right using lsl and lsr...  are there other commands that
let the end bit be carried over into the next byte?

-Miles Raymond      EML: m_rayman@bigfoot.com
AIM: kilier2        ICQ: 13217756       IRC: Killer2
WWW: http://www.bigfoot.com/~m_rayman

----- Original Message -----
From: "Johan Eilert" <johei804@student.liu.se>
To: <assembly-89@lists.ticalc.org>
Sent: Friday, January 19, 2001 7:26 AM
Subject: Re: A89: LCD memory manipulation (in asm)

> On Thu, Jan 18, 2001, Miles Raymond wrote:
>
> > Yes, I know that I can probably do everything a lot easier in C, but
don't
> > ask me why I'm still sticking w/ asm...
>
> Because GCC generates such *bloated* code!
>
> > The default memory width is set to 240bits (30bytes), the size of the
> > TI-92(+) LCD, and I'd like to know how to change it to 192bits
(24bytes)...
>
> move.w #$3480,$600012 ; 192x128
> or
> move.w #$349C,$600012 ; 192x100
>
> The first byte (N=$34) is the width, (64-N)*16 pixels.  The second byte
> (M=$80 or $9C) is the height, 256-M lines.
>
> > Then I believe to shift the actual start of the LCD by (16,16), I can
just
> > add 16*192+16 to set the screen and it's respective memory up like:
>
> HW1:  You can't do that and still use $004C00 for the upper left corner.
> This is the best you can get:
>
> move.w #$09B8,$600010 ; visible area start at $004DC0=$09B8*8
> ; the full 192x132 buffer starts at $004C3E and
> ; the visible 160(192)x100 buffer starts at $004DC0
>
> HW2:  The frame buffer address (the upper left corner of the visible part
of
> the screen) is fixed to $004C00 for all practical purposes.  One solution
> is to locate the 192x132 buffer at $004A7E.  The supervisor stack lives
> here, but it might work anyway.  :)
>
> --
> Johan Eilert




Follow-Ups: References: