Re: [cc65] c64 kernal 02 vs. 03

From: Spiro Trikaliotis <ml-cc651trikaliotis.net>
Date: 2009-09-26 10:33:56
Hello,

* 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
> http://zimmers.net/anonftp/pub/cbm/firmware/computers/c64/revisions.txt
> 
> "$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
case.

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.

Regards,
Spiro.

-- 
Spiro R. Trikaliotis                              http://opencbm.sf.net/
http://www.trikaliotis.net/                     http://www.viceteam.org/
----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo@musoftware.de 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