Re: [cc65] c64 kernal 02 vs. 03

From: Spiro Trikaliotis <>
Date: 2009-09-26 10:33:56

* On Fri, Sep 25, 2009 at 07:49:22PM +0200 Thomas Giesel wrote:

> > yes, old kernals fill the colorram with the value taken from $d021,
> > new kernals fill it with the value from $0286.
> > 
> There's even more, see
> "$E57C-$E599: (compute screen address)" looks suspicious. Yesterday I
> found out that putchar overwrites I/O memory beyond the color RAM.
> Possibly it's used out of screen bounds accidently, I'm still searching
> for the issue. And this wouldn't explain why it doesn't work with 02.

That correction fixes the problem with the -02 KERNAL where the C64
executes LOAD + RUN after you entered 80 characters into the last row,
then press BACKSPACE. As said, LOAD and RUN is executed, and you cannot
enter any keys anymore. Even RUN/STOP + restore does not work. That's
because the COLOR RAM pointer points into the $DC00 area in this special

From my (still incomplete) analysis, I think this fix is only needed if
you output the backspace. Feel free to proove me wrong. ;)

Regarding the color ram initialisation: The -01 KERNAL used hard-coded
white ($01), the -02 KERNAL used the background color (according to some
web pages, because early VIC-II had a problem with flickering, which was
circumvented with this change), and the -03 KERNAL used the foreground
color. IMHO, it is not a bug of the -02 KERNAL, but YMMV.


Spiro R. Trikaliotis                               
To unsubscribe from the list send mail to with
the string "unsubscribe cc65" in the body(!) of the mail.
Received on Sat, 26 Sep 2009 10:33:56 +0200

This archive was generated by hypermail 2.1.8 : 2009-09-26 10:34:18 CEST