Login
Search for:


Previous | Next

From: Crown (all posts)
Date: 2001-01-25
Subject: RE: Merry Xmas!
On the C64 you can set a zero page variable as well, and Kernal $ffd2 will comply and will do screen writes to the new screen area, this is not true on the Plus4 as I remember....

Tibor

-----Original Message-----
From: owner-plus4@c64.rulez.org [mailto:owner-plus4@c64.rulez.org]On Behalf Of contab@scortegagna.com Sent: Thursday, January 25, 2001 16:34 PM To: plus4@c64.rulez.org Subject: RE: Merry Xmas!

> P> C64 basic programs normally start at $0801, because the character
> P> mode screen is at $0400-$07e7 (the color memory is at $d800-dbe7).
> P> PLUS/4's screen is at $0c00-$0fe7, the color memory is at
> P> $0800-$0be7, so the BASIC code is stored from $1001.
>
> Can't the screen and start of basic be moved, like on the C64?
>

Yes you can, but *near* like the C64.
The main difference is: you can't separate the character table from the attribute (color+luminance) table. Together they are $800 bytes long.
You can remap them anywhere in memory, specifying the new address in one of TED' registers. You can specify only bits 11...15, then you have to specify as new address by $800 step: $1000, $1800, $2000 and so on.

To remap BASIC start, put new addresses into $2B and following bytes.

Third important warning: byte preceding start of Basic *must* be set to $00,
if not BASIC interpreter start, goes into error (SYNTAX).

Greetz

S\_/S of [FIRE]

Copyright © Plus/4 World Team, 2001-2024