Game ROm..damaged ? 27C040 - Page 1
Forum section: electronics / projects

author: powerchisper
author_rank: Contributor
timestamp: February 19, 2019, 09:41:57 am
content: Hello friends:You may have read in the other posts that I'm in a pinball repair.As I suspect the game ROM could be damaged, I took it to my friend to see if he could read it with his Willem programmer.He read the chip, but we dont't know how to interpret the results. It came as a "hex" file ( that is what we think it is ).There are lots and lots of numbers and letters arranged by offset, etc, but we see lots and lots of "BF" and "FF", large blocks in between.Maybe someone can give me a hint ? May this be corrupt parts of the ROM or is it normal ?I downloaded a supposedly working file from the net and it ¡s similar, but we get all FF instead of BF.Thanks in advance and greetings from Spain.

author: dmills
author_rank: Super Contributor
timestamp: February 19, 2019, 10:31:20 am
content: Unused space in eproms defaults to FF (1111 1111 binary), BF would be 1011 1111 so it may be your ROM has bit 6 failed. Slightly odd, age related bit rot generally turns a zero into a one.Grab a new chip, burn that eprom image you got of the net and see if it works?Regards, Dan.

author: powerchisper
author_rank: Contributor
timestamp: February 19, 2019, 11:13:35 am
content: Thank you so much !! I'll tell my friend to erase it and record the downloaded code ( fingers crossed that the chip is not physically damaged ).I have noticed that the little window on top of the IC has a 1mm exposed area, as the sticker that covers it is not very well aligned....coluld that be a serious problem ?The board also had battery leakage, and seems that it has been stored for years in a wet environment.The reason I suspected it could be bad is because the 5V Led on the board was fried.

author: NivagSwerdna
author_rank: Super Contributor
timestamp: February 19, 2019, 11:19:44 am
content: Firstly check you have the right image to burn into the chip!Then UV Erase to all FFs and then burn again.Old ROMs do lose their values and should be erased and re-programmed. I currently have some I need to sort out that read different values at some locations on subsequent reads... really needs to be reprogrammed.Completely cover the quartz window will something opaque after erasing.Keep a copy of the image in a safe place.(Of course if you have damaged the chip... you will need to buy a replacement)

author: digsys
author_rank: Unknown
timestamp: February 19, 2019, 11:43:14 am
content: Those EPROMS were pretty tough. Even with no window protection, you'd need a LOT of background UV to scramble it. The amount would fry your body first :-)I kinda doubt it is "faulty". Big blocks of BFh are TOO precise, NOT what I'd expect from background UV damage. It was "possibly" a default table / data areapreset, or the nerd who wrote it got lazy :-)EVEN IF the BFss were supposed to be FFhs, it is an ERASED or UNUSED part of the memory map anyway, so who cares.Give it a go and report back.

author: DDunfield
author_rank: Regular Contributor
timestamp: February 19, 2019, 12:09:49 pm
content: Clean the pins (especially the one corresponding to data bit 6). Read it a number of times, removing it and re-inserting it between reads - make sure the reads always return the same data. You could have a bit of corrosion on a pin making a faulty connection. Once you get consistent data, from several reads save a copy of the file so you can "put it back" if you need to after trying the new image.Dave

author: powerchisper
author_rank: Contributor
timestamp: February 21, 2019, 09:44:41 am
content: Hello again !!Tried to dead again and still the same, we guess the chip is bad as you get the same results when writing the "right" code.Now, i want to buy a new 27c040 but I have a doubt....I can order 27C040 with various suffixes such as "-10"...-12"..."-15"....an i am not sure if they are compatible, as I think those numbers are related to the data speed.Any hint on this ?Thank you very much !

author: nick_d
author_rank: Regular Contributor
timestamp: February 21, 2019, 10:12:32 am
content: You will have to check the datasheets for what the -10, -20 etc mean. Unfortunately those older (non flash) chips are quite slow and you often see anomalies like -70 means 70ns access time whereas -10 means 100ns access time.You need one as good as what was there before, so possibly -10 could be replaced with -70 if that means going from 100ns to 70ns, but if it means 10ns to 70ns then not (this interpretation is unlikely with UV eraseable chips but the Flash versions are typically much faster). You can also replace the UV eraseable chip with a Flash version.Another way to do it, which takes a fair bit more expertise, is to figure out what the 27C040 connects to, for instance a Z80 CPU or similar, see what that is clocked at (say 3.58 MHz Z80, you will know this because there's a 3.58 MHz crystal right next to it), and figure out the access time from the relevant data sheets. This can be helpful if the manufacturer used a faster than necessary chip, which is often the case if the faster chip was cheaper at the time of ordering. You do have to be careful of address decode delays.cheers, Nickedit: fix -100 suffix to -10

author: NivagSwerdna
author_rank: Super Contributor
timestamp: February 21, 2019, 10:46:03 am
content: Quote from: powerchisper on February 21, 2019, 09:44:41 amAssuming vintage then aim for either identical or any suffix less than -120; or work it out from the spec of the one you are holding in your hand. Refer to the datasheet for access times. Modern equivalents are likely to be much faster than the one you have and are probably compatible.

author: powerchisper
author_rank: Contributor
timestamp: February 23, 2019, 07:51:05 am
content: Well, Im in the mud agaiin.The schematics for the pcb says 27C040, but the chip was a 27C1001 when we took off the label.I'm checking the datasheets and I see the pins are not exactly the same, but that's the chip that came from the factory, dated 1996.Are these 32-pin eeproms compatible ?Thanks a lot.

author: nick_d
author_rank: Regular Contributor
timestamp: February 23, 2019, 08:09:00 am
content: The authoritative source is check the datasheet.The quick way is Google 27c040 vs 27c1001.By doing that I found that 27c0x0 is compatible with 27cx001.27c040 = 27c4001 = 512 kbyte.27c010 = 27c1001 = 128 kbyte.I believe smaller chip will ignore the top 2 address lines so 4 copies of it will appear in the larger chip's address space.Apparently the game wasn't large enough to fill up the ROM so they used a smaller and cheaper ROM than what the motherboard could have taken.Also check filesize of the image you have, if it's 512kbyte check if the last 3/4 is 00 or FF or copies of the first 1/4.cheers, Nick