[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Double low/hi Res
sledbett@nyx.cs.du.edu (Shawn Ledbetter) writes:
>I've read somewhere about the Apple ][e/][c/][gs that it can handle
>double lo-res/hi-res. Does anyone know the poke values or any other
>information I need. Thanks in advance.
double lo-res:
$C05E (49246) ; double-res
$C056 (49238) ; lo-res
$C052 (49234) ; full-screen
$C050 (49232) ; graphics on
double hi-res:
$C05E (49246) ; double-res
$C057 (49239) ; hi-res
$C052 (49234) ; full-screen
$C050 (49232) ; graphics on
Now, depending on whether you have the 80-column firmware enabled or
not, you may need to hit some more soft switches.
If you are going to do all the work yourself (ideally in assembly
language for speed), and you are starting with the machine in
40-column mode with the 80-column firmware disabled, then do this:
sta $c001 ; poke 49153,0 ; ; turns on 80STORE switch
sta $c00d ; poke 49165,0 ; turns on 80 column video mode
If the 80-column firmware is already on and you're in 80-column mode,
you don't need to do this since the firmware already did it. Keep in
mind that if you do this yourself you will confuse the firmware if you
try to print or input characters through it.
To access the graphics (either double-lo or double-hi), the pixels are
accessed starting in the AUX memory bank (bank 1 on IIgs) and then in
the MAIN bank (bank 0 on IIgs). They alternate for every double-lores
pixel and every seven double-hires pixels. To access the AUX memory,
you hit $C055 (49237) (PAGE2) and then read or write the location. To
access the MAIN memory, hit $C054 (49236) (PAGE1) and read/write.
If you can get a IIe Technical Reference Manual, a IIc Tech Ref, or a
IIgs Hardware ref, it will clearly show how video display memory is
laid out, and will clarify all the details here. The best way to
learn is to experiment on your own. Disassembling the video firmware
always helps as well. Disassembling the lo-res graphics routines
(start at $F800 in the monitor ROM) and the Applesoft hi-res routines
($F3xx to $F7xx) will also tell you a lot.
Have fun.
--
Jerry Penner jpenne@ee.ualberta.ca Try a 1-line .sig today.