Page 1 of 2

29F800 For Zelda cart... FAIL ;C

Posted: Wed Oct 16, 2013 5:55 am
by bytestorm
Hi!
I got a japanese zelda that I would like to change to USA ver.
I desoldered the original prom, and started to make wires to my M29F800 adapterboard.

BUT when I get to the last adress.. I realize that its not availible :C so stupid to not check enough before I bought them!

Is it even possible to solve?

The japanese zelda has a 32 pin mask rom, and the M29F800 is 44pin.

Please see the attached picture.

Did I mess up?

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Wed Oct 16, 2013 8:39 am
by mikejmoffitt
It does look like indeed A19 is not present, so I am not sure how this could possibly address 8 full megabits. This 29F800 looks to be 8Mbit in 8-bit mode and 4Mbit in 16-bit mode (forgive me if I am reading this datasheetincorrectly). If you have two of these you could either have some selection logic based on the missing A19 to switch between the two 16-bit mode ROMs, or have two 8-bit mode ones handling the upper and lower 8 bits each.

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Wed Oct 16, 2013 9:10 am
by getafixx
Actually that chip will work fine. You just need to set it into 8-bit mode by tying the /BYTE pin to Ground. After that, Q15/A-1 becomes A0 on the cart, and A0 on the 29F800 becomes A1 on the cart and so on. After BYTE is tied to ground you ignore all data pins except for Q0-Q7, the others are left floating, which makes Q15 your lowest address line (in this case A0, as I mentioned). This makes A18 on the chip actually A19, which gives you the full 8Mbit of space to use.

Hope that helps.

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Wed Oct 16, 2013 9:05 pm
by mikejmoffitt
Whoops, I just realized that indeed he only needs an 8-bit ROM in the first place.

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Wed Oct 16, 2013 11:58 pm
by bytestorm
getafixx wrote:Actually that chip will work fine. You just need to set it into 8-bit mode by tying the /BYTE pin to Ground. After that, Q15/A-1 becomes A0 on the cart, and A0 on the 29F800 becomes A1 on the cart and so on. After BYTE is tied to ground you ignore all data pins except for Q0-Q7, the others are left floating, which makes Q15 your lowest address line (in this case A0, as I mentioned). This makes A18 on the chip actually A19, which gives you the full 8Mbit of space to use.

Hope that helps.
Hmm I realize that I am not that into how the eeproms/eproms works.. could you shed some light over these questions perhaps?

What actually differs from:
A0~A18 Address Input AND Q0~Q14 Data Input/Output??

"After BYTE is tied to ground you ignore all data pins except for Q0-Q7"
soo that means that Ill only use Data Input/Output Q0-Q7, but they will become A0-A7??

Byte mode is 8-bit, and Word mode is 16-bit?

The original maskrom has both Adress pins and Data pins, how do they actually work together? what is doing what?

Unused pins, if any, tie them high or low? Floating? If i get outputs and inputs that are unused for example.

I hope that you or someone would please explain these questions for me so i can understand how it works a little better.. i usually only used guides online for making convertions and such. but to understand how the eprom/eeprom works a bit more would be really fun, and helpful!!

Thanks for your time and answers so far!! (thanks to all who replied ofc :)

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Thu Oct 17, 2013 10:31 am
by getafixx
A0~A18 Address Input AND Q0~Q14 Data Input/Output??
Yes A0-A18 are the address lines, and Q0-Q15 on your chip are the data lines. Your data sheet just has them starting with Q instead of D like on the SNES cart. But you only use Q0-Q7, leave the other Q pins unconnected except for Q15/A-1---That one gets wired to A0 on your SNES cart.

soo that means that Ill only use Data Input/Output Q0-Q7, but they will become A0-A7??
No.....Q0-Q7 is the same as D0-D7 on your snes cart, just starts with a different letter.

Byte mode is 8-bit, and Word mode is 16-bit?
In a nut shell, yes.

The original maskrom has both Adress pins and Data pins, how do they actually work together? what is doing what?
I might not be completely accurate, but basically Address lines hold the information, and Data lines fetch the information when its required.

Unused pins, if any, tie them high or low? Floating? If i get outputs and inputs that are unused for example.
In the case with your chip you should only have Q8-14 left unconnected, and those you leave that way. All the other pins should be connected to where they need to go.

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Thu Oct 17, 2013 11:47 am
by tepples
Address lines tell the chip which byte to fetch, and the byte comes out on data lines.

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Thu Oct 17, 2013 11:49 am
by getafixx
Ok, so I was not accurate there :P

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Thu Oct 17, 2013 11:00 pm
by infiniteneslives
You can think of it like a mail person would. The address lines are used to find the right mailbox, and the data lines are like your arm/fingers used reach in and out of the mailbox. You could consider the control lines like the door to the mailbox maybe. The actual data would be item stored inside the mailbox.

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Sun Oct 20, 2013 11:58 pm
by bytestorm
Thanks alot for the nice explanations all!! Really nice! :)

Finished all this weekend but cart doesnt work.
I realised that pin:

1 - /Ready,Busy
43 - /WE
44 - /Reset

isnt connected to anything.

Where should I connect these 3 last ones?

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Mon Oct 21, 2013 11:50 am
by qwertymodo
bytestorm wrote:Thanks alot for the nice explanations all!! Really nice! :)

Finished all this weekend but cart doesnt work.
I realised that pin:

1 - /Ready,Busy
43 - /WE
44 - /Reset

isnt connected to anything.

Where should I connect these 3 last ones?
/Ready,Busy - Leave disconnected, it's an indicator output used during programming, you don't need it once the chip is burned
/WE - Connect to Vcc through a pull-up resistor*
/Reset - Connect to Vcc through a pull-up resistor*

*Pin 26 on the cart edge (/RST) is already connected to Vcc through a pull-up resistor inside the console, so you can just connect both of these signals directly to that signal if you want.

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Mon Oct 21, 2013 12:55 pm
by bytestorm
qwertymodo wrote:
bytestorm wrote:Thanks alot for the nice explanations all!! Really nice! :)

Finished all this weekend but cart doesnt work.
I realised that pin:

1 - /Ready,Busy
43 - /WE
44 - /Reset

isnt connected to anything.

Where should I connect these 3 last ones?
/Ready,Busy - Leave disconnected, it's an indicator output used during programming, you don't need it once the chip is burned
/WE - Connect to Vcc through a pull-up resistor*
/Reset - Connect to Vcc through a pull-up resistor*

*Pin 26 on the cart edge (/RST) is already connected to Vcc through a pull-up resistor inside the console, so you can just connect both of these signals directly to that signal if you want.

niiiice!!! thanks! will test tomorrow and post!

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Tue Jan 28, 2014 3:07 am
by bytestorm
"tomorrow" was far away :/..

Soldered the last points and tested it.. just a black screen.. nothing at all.

Any one experienced this?

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Tue Jan 28, 2014 7:34 am
by Markfrizb
WHY did you use such a big chip (44 pins)? Why not use a regular 27c080 32 pin EPROM? With the byte swap utility is easily available and easy to use...and doing that means you only have to swap 2pins of the EPROM and solder in place. When you get above 8mbits, then you have other issues.

The above post instructions are correct but also a lot more work - unnecessarily.

Edit: http://www.romhacking.net/utilities/593/

Re: 29F800 For Zelda cart... FAIL ;C

Posted: Tue Jan 28, 2014 12:49 pm
by qwertymodo
Markfrizb wrote:WHY did you use such a big chip (44 pins)? Why not use a regular 27c080 32 pin EPROM?
Maybe because the M29F800 is still in production, and depending on where you're sourcing your EPROMs, the M29F800 might be cheaper, even when you factor in the adapter board.