Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!watmath!clyde!burl!hou3c!hocda!houxm!ihnp4!inuxc!pur-ee!uiucdcs!miller
From: miller@uiucdcs.UUCP (miller )
Newsgroups: net.micro.cbm
Subject: cbm ascii to screen codes - (nf)
Message-ID: <5703@uiucdcs.UUCP>
Date: Fri, 17-Feb-84 03:27:28 EST
Article-I.D.: uiucdcs.5703
Posted: Fri Feb 17 03:27:28 1984
Date-Received: Mon, 20-Feb-84 06:53:25 EST
Lines: 27

#N:uiucdcs:36100045:000:1276
uiucdcs!miller    Feb 16 23:42:00 1984


     First some background:

     1) Most people know that there is a well defined character set called
ascii.
     2) Less people know that the Commodore character set which they call
ascii is not ascii at all.  In fact, it is their own invention as far as I can
determine.  Anyone who has played with terminal software knows there are
similarities between the two, but they are *not* the same.
     3) Even fewer people know that the codes you store into screen memory for
use by the VIC chip are not ascii, nor even Commodore's ascii.  Instead, they
are so-called screen codes.  The VIC chip looks at that value and uses it as an
index into the character ROM to find the pattern for the character shape.

     Now, besides the fact that I can find little reason for 2, and even less
reason for changing the order for 3, I have a question.  I'm looking for the
section of code in the c64 kernal which converts between codes 2 and 3.  Yes, I
know there are tables for both in the back of the Programmer's Reference Guide.
I don't want to know the values, I'm looking for the address of the conversion
algorithm (I want to patch it).  I've traced through part, but not all, of the
kernal and I haven't found it yet.  Can anyone help out on this?

A. Ray Miller
Univ Illinois