• Please review our updated Terms and Rules here

Commodore PET 2001-8 Question

Nivag,

If you have all of the rom images to hand (including ROM-4) any chance of you calculating the 2K 16-bit checksums (without the 'wonky carry algorithm') sometime and I will put your table into my V5 manual now. That will be an incentive to modify my V5 source code 😀!

Dave
 
rom-1-c000.901439-01.bin 0xe85f
rom-1-c800.901439-05.bin 0xe4fe
rom-1-d000.901439-02.bin 0x31fc
rom-1-d800.901439-06.bin 0x1e49
rom-1-e000.901439-03.bin 0xca92
rom-1-f000.901439-04.bin 0xf21c
rom-1-f800.901439-07.bin 0x1a88
rom-2-c000.901439-09.bin 0xe7cb
rom-3-c000.901439-13.bin 0xa347
rom-3-c800.901439-14.bin 0x94f1
rom-3-d000.901439-15.bin 0xa7f1
rom-3-d800.901439-16.bin 0xa879
rom-3-e000.901439-17.bin 0xfdbf
rom-3-f000.901439-18.bin 0x2263
rom-3-f800.901439-19.bin 0x5a35

sum = 0
for i in range(0, len(data)):
x = data
sum = sum + x
sum = sum % 65536


I think that's what is known in the trade as "Checksum-16"

Those are the 2K series I think...

basic-2-c000.901465-01.bin 0x3838
basic-2-d000.901465-02.bin 0x506a
basic-4-b000.901465-19.bin 0x4c5e
basic-4-b000.901465-23.bin 0x4168
basic-4-c000.901465-20.bin 0x5960
basic-4-d000.901465-21.bin 0xa425
kernal-2.901465-03.bin 0x7c98
kernal-4.901465-22.bin 0xcf19


Those are 4K images I have to hand

PS
They add up so...
rom-1-d000.901439-02.bin 0x31fc
rom-1-d800.901439-06.bin 0x1e49

as a 4K would be 31FC+1E49=5045 which agrees with the v04 manual

CCC9 would come from rom-1-c800.901439-05.bin 0xe4fe and rom-2-c000.901439-09.bin 0xe7cb which is actually Basic 1r or BASIC 2 depending on which terminology you go for.

rom-1-c000.901439-01.bin 0xe85f + rom-1-c800.901439-05.bin 0xe4fe = CD5D.... that's the very original Basic 1.
 
Last edited:
Nivag,

I would have expected two (2) checksum-16 numbers for each 4K ROM - the lower 2K and the upper 2K.

Dave
 
Nivag,

I would have expected two (2) checksum-16 numbers for each 4K ROM - the lower 2K and the upper 2K.

Dave
OK...
lo 2K hi 2K 4K
basic-2-c000.901465-01.bin 0xa347 0x94f1 0x3838
basic-2-d000.901465-02.bin 0xa7f1 0xa879 0x506a
basic-4-b000.901465-19.bin 0x9f95 0xacc9 0x4c5e
basic-4-b000.901465-23.bin 0xa005 0xa163 0x4168
basic-4-c000.901465-20.bin 0x9e94 0xbacc 0x5960
basic-4-d000.901465-21.bin 0xb0e7 0xf33e 0xa425
kernal-2.901465-03.bin 0x2263 0x5a35 0x7c98
kernal-4.901465-22.bin 0x205f 0xaeba 0xcf19
 
Ok, so to continue with our testing...

Remove the c000 ROM from socket H1 carefully and set it aside.

Remove the f800 ROM from socket H7 and put it into socket H1.

Run the VOSSI tester and let us know what the checksum is as indicated in socket H1. It should be $a6 (according to Nivag's code above).

Dave
 
Spot on, so that ROM is fine.

Remove the ROM from H1 and put it back into H7 (where it came from).

Can I suggest another quick check of the suspected duff ROM in H1 again to see if it really is duff?

Dave
 
It is giving us $12 now, which is the correct checksum!

There must have been a bad contact last time somewhere!

Good job we tried it again!

Can you now remove the ROM from H1 and return it to its rightfull place in H4.

Return the original ROM (that you put safely to one side) back into H1.

Recheck with VOSSI to make sure all of the ROM are indicating OK once again and that the correct ROM '-' numbers are back in their rightfull locations (according to your original list).

Dave
 
Why is there a '?' mark by the 13 I wonder?

That checksum 'looks' wrong - but I am out for a walk at the moment so it is difficult to tell on a phone...

Yep, looking at a previous post the checksum is different. You haven't taken that ROM out have you?

I am beginning to think that either the ROM pins are dirty, or you are having poor contact between the ROM pins and the IC sockets.

Dave
 
Last edited:
I used DeOxit on the socket and cleaned the legs on the ROM
 

Attachments

  • petscreen36.jpg
    petscreen36.jpg
    1.9 MB · Views: 3
Back to health again!

Let me get back from my walk and we will see if we can get this sucker working properly!

Dave
 
All you have to do is to set ROM Enable F from ON to OFF.

We now know the ROMs are not terminal (they give us the correct checksum) so it is a matter of making sure that all the ROM pins make good contact with their corresponding IC sockets.

Dave
 
FYI the B0 jumper on the RAMulator is set to on. Not sure if it should be.

I will clean the sockets and legs.
 
It doesn't matter if all of the ROM enable links are OFF.

The four "Bank" links select one of sixteen different ROM images stored on the ROMulan board.

The selected ROM image (or part of it) is only mapped into the PET memory map based upon the ROM Enable links. If these are all OFF then it doesn't matter which of the sixteen ROM images are selected.

Dave
 
Back
Top