pouët.net

C64 Kernal check routine ?

category: code [glöplog]
 
Hi,

I have a C64C with, I believe, a faulty Kernal+Basic chip but no spare to check.
Does C64 Uber Coder here have a little routine I can use to check the Kernal is ok? I suspect the CHROUT routine to be the issue.

Thanks !
you could try this in basic

5 v = 0
10 for i = 0 to 8191
20 v = v + peek(40960+i)
30 next i
40 print v
run

this does a simple checksum from $a000 to $bfff basic area...

and change 20 to:

20 v = v + peek(57344+i)

to check $e000 $ffff ... and run

this takes a while (even with warp in vice)...

well i'm no basic expert hope that helps ;)
added on the 2017-08-25 16:21:08 by ultra ultra
ah ok you want to check the routine itself...misread... anyway
maybe you can check the rom content to see of the rom is ok
added on the 2017-08-25 16:23:50 by ultra ultra
what are the symptoms? its more likely RAM or PLA is at fault - ROMs rarely die, and if they do you will usually get completely failure
added on the 2017-08-25 17:42:13 by groepaz groepaz
a picture is better than words...

http://shazz.untergrund.net/c64/C64C/CA1644140_CM250469/IMG_1183.JPG
looks more like a VICII or rom font bug. try poke 53272,20 you should see garbage, check if 200 lines resolution is back if so its the font rom. that instructions sets the character set to the start of the ram instead of the rom.
added on the 2017-08-25 21:16:44 by Oswald Oswald
my bet is on a short (or misbehaving bus drivers) between A0 and A1 at the databus of the chargen rom. try another :)

that said, can you load and run stuff and it basically works except gfx glitches? in that case REALLY check the chargen ROM :=)
added on the 2017-08-26 17:39:55 by groepaz groepaz
@Oswald : I guess I did something wrong, this poke 53272,20 does nothing. Then how to check if the 200 lines resolution is back ?

@groepaz : try another ? another CHAR ROM ? Need to desolder it first...

I tried something, the U5 CHAR ROM A0 (pin 8) is connected to the U8 PLA A0 (pin 51) if I'm not wrong (but... I may...)
So on an other C64C, I found continuity between U5/pin8 with U8/pin46 (I expected pin51 but...).
And I did not find this continuity on the faulty board. Could it mean something ?
@groepaz: yes all the software I tried work, but when there are using the CHAR ROM font, same kind of display (only for the font, gfx is ok)
little mistake, I found continuity with the 14th pin of the top right so it is pin51.So A0 are not linked between CHAR and PLA. What could be the cause ?
Broken track on the PCB, or "dried" solder joint on one of the chips (the solder is there, but isn't making electrical contact anymore), sound like they could be the problem.
my mistake, poke53272,20 selects one of the default fonts, try poke 53272,0. but if gfx is fine with non rom font, then its definitly a bus wire broken as you already found out.
added on the 2017-08-27 13:41:27 by Oswald Oswald

login