• Please review our updated Terms and Rules here

Cbm 2001 Pet strange boot

Read the manual?

The 16-bit checksum is a fundamental issue when it comes to EPROM programming. It can tell EPROM contents apart (as to what they contain), it can identify different revisions of the firmware, and it can detect if they become corrupt.

This concept is used within the PETTESTER (or I should say the accompanying documentation) to identify different versions of the Commodore PET BASIC ROMs and whether they are corrupt or not.

Dave
 
Apologies. Our posts crossed. Looks like a Checksum-32 000039DB. That matches what I would expect so hopefully we are on the same page.

So Configuration CHARLIE uses rom 000039DB in UD9.

Can you take another screenshot... is it always the same?
 
So this is CHARLIE config with magicrom on ud9 socket:
 

Attachments

  • Schermata 2022-05-14 alle 15.56.46.jpg
    Schermata 2022-05-14 alle 15.56.46.jpg
    72.6 KB · Views: 5
OK so what should have happened is "XYZZY" should be displayed in the top left hand corner and then it is read back and displayed in HEX down and to the right.

Can you take a photo of your character generator ROM and for good measure checksum it to prove it is good, please? Replace once done! Re-run the CHARLIE test and check nothing has changed.
 
OK so what should have happened is "XYZZY" should be displayed in the top left hand corner and then it is read back and displayed in HEX down and to the right.

Can you take a photo of your character generator ROM and for good measure checksum it to prove it is good, please? Replace once done! Re-run the CHARLIE test and check nothing has changed.
ok nothing has changed!
 
Once you have done the above.... we move on to Configuration DAVE which is the same as Configuration CHARLIE but with the 6522 VIA replaced at C5... please post a photo of the result

So Configuration DAVE is

UD9 contains Rom 000039DB in UD9 other ROMs (except CHARGEN) empty, with VIA installed

Checksum-32: 00017B67 is correct for characters-2.901447-10.bin. Whoot!
 
Last edited:
Ok this is DAVE config:
 

Attachments

  • Schermata 2022-05-14 alle 16.25.21.jpg
    Schermata 2022-05-14 alle 16.25.21.jpg
    158.7 KB · Views: 7
So, what’s wrong then...

Clue: The PETSCII codes for the letters ‘X’ and ‘Y’ are different, but they yield the same hex. result of 58 when read back...

Dave
 
Ok this is DAVE config:
Interesting... so what it is meant to do is write XYZZY and then display 58 59 5B 5B 59 and we see 58 58 5B 5B 58 comparing the binary we conclude.. we lose the least significant bit is always being read as zero even when it should be set in the case of the Y character aka 59 aka 0101 1001 being read as 0101 1000. You've got (at least) one bit going missing on the way back!
 
Last edited:
It can’t be bad video RAM because (a) the initial PETTESTER character screen is correct and (b) the letters XYZZY display correctly.

Nivag, I suspect you may also have a bug in your own code for displaying the hexadecimal letters A through F?

Dave
 
Back
Top