YOUR OWN CHARACTER SET
First you have to tell that characters should be fetch from RAM. This
is done by clearing the second bit of the TED register number 65298 ($FF12):
poke 65298, peek (65298) and 251
Then you must select a "memory page" where your character set is stored.
Each page is 1024 bytes long, so on the C16 there are 16 possible locations:
Page 0: character set starts at memory address 0
Page 1: character set starts at memory address 1024
Page 2: character set starts at memory address 2048
...
Page 14: character set starts at memory address 14336
Page 15: character set starts at memory address 15360
(On the Plus4 there are more pages, probably 64)
Bits 2-7 of the TED register number 65299 ($FF13) determine, which page
should be used. To select a page do as follows:
poke 65299, (peek (65299) and 3) or (page * 4)
Another way of doing the same thing is to take the first byte in the address (as
long as one of the pages are used). For example, page 15's address is 15360. The
hex number for this is $3c00. So you can just poke 65299, dec(“3c”).
When using Basic one should protect the character set so, that Basic's program
text does not overwrite your character data. This can be done by setting the
upper limit for the Basic text, i.e. the highest address Basic is allowed to
use. To do that, use memory addresses 55 ($37) and 56 ($38). 55 is the lower
half of the 16 bit address and 56 is the upper half. Read more on page 9:
"Limiting the basic memory".
To switch back to ROM character set, just set the 2nd bit of the 65298 and set
the page back to page 52:
poke 65298, peek (65298) or 4 : poke 65299,208
ESCAPE CODES
Cancel quote and insert mode ESC O
Cancel started Esc code ESC X
Erase to end of current line ESC Q
Erase to start of current line ESC P
Move to start of current line ESC J
Move to end of current line ESC K
Enable auto-insert mode ESC A
Disable auto insert mode ESC C
Delete current line ESC D
Insert line ESC I
Enable scrolling ESC L
Disable scrolling ESC M
Scroll up ESC V
Scroll down ESC W
Set bottom of screen window ESC B
Set top of screen window ESC T
Set window to full screen minus 1 and clear ESC R
Set window to full screen and clear screen ESC N
Example: Press Esc followed by A for auto insert mode, or PRINT CHR$(27);"W" to
scroll the screen down from basic.
MORE SPECIAL KEYS
Pause output CTRL S (any key to resume)
Slow down output Commodore
Set window to full screen Home twice
6
Comentarios a estos manuales