• Please review our updated Terms and Rules here

Reading U47 in SuperPET

billdeg

Technician
Joined
Nov 18, 2003
Messages
3,885
Location
Landenberg, PA USA
According to Zimmer's site, the following is true of the ROM in position U47

970018-12 2764 EPROM Waterloo A000-BFFF

I tried to read mine, came up all FFFFFFF's.

Chip works fine. Curious if I am missing something. Is this a 2764A? Anyone have a ROM they can read in their ePROM device to confirm my finding? I want to make a replacement ROM, and I was hoping to simply make a copy of a working one.

Nothing with Commodore is easy, but sheesh.

Bill
 
According to Zimmer's site, the following is true of the ROM in position U47

970018-12 2764 EPROM Waterloo A000-BFFF

I tried to read mine, came up all FFFFFFF's.

Chip works fine. Curious if I am missing something. Is this a 2764A?

From a quick look at the Super PET combo board schematic, the 8K byte ROM looks like a 24 pin package. The Intel 2764 is a 28 pin package. I hope you did not try to read directly without some kind of adapter?
 
I read in my eprom reader. with pin 1 in correct space. I have no 2764 to compare so I just took Zimmers word for it without checking. No harm done chip still boots spet after failed attempt to read as a 2764...so now ....?? Not sure yet.
 
Bill,

I think the EPROM in question (thanks Commodore...) is a 2364 in a 24 pin package. Some of the pins on the 28 pin 2764 are either not used or used for other purposes. I think (although I am not 100% sure) that the 2364 may be a mask programmed device as opposed to programmable (hence not needing the 'programming' pins - with a result that the package can be smaller (less pins) = cheaper).

If you look here "http://sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?t=1959" and scroll to the bottom - you should find a schematic for an adapter to read the 2364 in a conventional EPROM programmer. You will have to make the 'inverse' adapter up to be able to use a 2764 in its place on the SP9000 though. I think I have seen a number of posts on this topic - and I think someone may have some units pre-build for sale on e-bay if you are lucky.

Dave
 
I have no 2764 to compare so I just took Zimmers word for it without checking. No harm done chip still boots spet after failed attempt to read as a 2764...so now ....?? Not sure yet.

Bill,
You have a SuperPET! Use it. Run a Sum Check program on the ROM in your SuperPet using Waterloo BASIC and prove to yourself that the posted binary files are correct by comparing Sum Check numbers. I think there are freeware Windows software that will calculate sum checks on binary files. And MikeS has a one line BASIC program for calculating the sum check on ROMs in the PET.
-Dave
 
I found a version of the Modulo 256 sum check. This will work for an 8K ROM starting at $A000 (40960).

10 for i = 40960 to i + 8191
20 s = s+ peek (i)
30 next i
40 print "Sum Check = " s - int(s/256) * 256

This uses an floating point algorithm trick useful with small amounts of ROM.

Convert the Decimal number to Hexadecimal and compare to number calculated for the file.
 
What's the question? U47 (970018-12) is a standard 2364 ROM as used in PCs and numerous other vintage systems; to read and program a copy/replacement the equivalent EPROM is a 68764/68766, or make/buy an adapter available from several sources and use a 2764(A). Checksum is 255 (917503).

What's so "Nothing with Commodore is easy, but sheesh." about that?

Sheesh!
 
Last edited:
What's the question?

Mike,
I'm guessing Bill just wants to dup his own ROM rather than use/trust the posted file. This will be easy if his programmer knows about the 68764. That sound like an obsolete Motorola part. I found some on ebay for about $15 ea.

So the modulo 256 sum check of this ROM is 255 ($FF)? That is bad luck. Same as blank. No wonder you provided the total sum.
-Dave
 
Mike,
I'm guessing Bill just wants to dup his own ROM rather than use/trust the posted file. This will be easy if his programmer knows about the 68764. That sound like an obsolete Motorola part. I found some on ebay for about $15 ea.
I never said they were cheap or common ;-) but definitely neater, and easier if your programmer knows about them; adapters on the other hand are cheap and common.

So the modulo 256 sum check of this ROM is 255 ($FF)? That is bad luck. Same as blank. No wonder you provided the total sum.
-Dave
Hmm, I don't think so; since you're dividing a sum of 255s by 256 I don't think the odds of the checksum being 255 are much different from any other sum, no? I never did understand the point of mod256 when you're using a high level language like BASIC.

A blank 64KB rom would be Mod 256(255*8192), right?
 
Last edited:
What's the question? U47 (970018-12) is a standard 2364 ROM as used in PCs and numerous other vintage systems; to read and program a copy/replacement the equivalent EPROM is a 68764/68766, or make/buy an adapter available from several sources and use a 2764(A). Checksum is 255 (917503).

What's so "Nothing with Commodore is easy, but sheesh." about that?

Sheesh!

I withdraw my loose sheeshing. I mean at this point, don't you trust that I can kind of work my way around a CBM machine? Per my orig question I just wanted confirmation that Zimmers was wrong, or I was missing something.
b
 
I withdraw my loose sheeshing. I mean at this point, don't you trust that I can kind of work my way around a CBM machine? Per my orig question I just wanted confirmation that Zimmers was wrong, or I was missing something.
b
Sorry, shoulda put a ;-) after the 'sheesh' but you started it ;-)

2364s are very common and used in lots of systems other than Commodore so it's not really a fair example of "Nothing with Commodore is easy"...

Since a 2764 has 28 pins and a 2364 has 24 you'd have a little trouble putting it into the socket, so there's a pretty good chance that Zimmers is wrong and U47 (and the rest) are not 2764s...

Where are those images on Zimmers?
 
Last edited:
Where are those images on Zimmers?

Mike,
Zimmers only has the 4K byte version of the binary files, but in the Readme file, it incorrectly lists the 8K parts as 2764 EPROM devices. He should have listed them as 2364 ROMs or 68764 EPROMs.

http://zimmers.net/anonftp/pub/cbm/firmware/computers/pet/SuperPET/index.html

I concatenated the two 4K files and loaded it into Hex Editor (HxD) and had it calculate the sum checks. The 16 bit sum check is $FFFF and the 8 bit sum check is $FF as you listed. Where did you find the 8 K binary files? From a real SuperPET?
-Dave
 
Last edited:
Um. Just wanted confirmation that Zimmer's is apparently wrong.

Bill,
OK, sorry, I got us off on a tangent with the sum check stuff. I thought you were trying to copy you ROM in particular rather than use a binary file from the web to make your copy because you thought the file contents may be in error. All you wanted to know was if Zimmers was in error about the 2764 type device (it is).

Is your EPROM Programmer capable of burning a 68764 EPROM? I checked and my old Data I/O can do it if needed.
-Dave
 
Mike,
Zimmers only has the 4K byte version of the binary files,
Ah, that explains the different part numbers.
... but in the Readme file, it incorrectly lists the 8K parts as 2764 EPROM devices. He should have listed them as 2364 ROMs or 68764 EPROMs.
Yeah, I got that in the first post. I just thought that since it had a different number of pins it'd be obvious that the IC in question was probably not a 2764 (or even a 2764A); C64s are full of 2364s so they're pretty common.
I concatenated the two 4K files and loaded it into Hex Editor (HxD) and had it calculate the sum checks. The 16 bit sum check is $FFFF and the 8 bit sum check is $FF as you listed. Where did you find the 8 K binary files? From a real SuperPET?
-Dave
Yup; by the tenth post I finally got off my chair to pull it out and look for myself. Had a little scare: after the first read, subsequent reads also came up all FFs; turned out to be a bad ZIF socket in the programmer. Whew!

I wonder if all the checksums are FF; might have to have a look. ROMs are often programmed with one byte that makes the checksum a specific value; e.g. the PC BIOSes all have a checksum of 0.
 
Back
Top