Page 1 of 1

Help Making Eprom Cartridge SMB2j and/or The Goonies Please?

Posted: Mon Jan 28, 2008 6:26 pm
by 82atari5200
So far I've been able to make 3 carts with no problems. I've made Gryzor/Contra. FF2e and Tetris by Tengen. Plus I've made several Atari 5200 carts so I kind of know how eproms work. But I've run into problems making The Goonies and SMB2j. On The Goonies I've downloaded several roms and none of them work. I'm using a 27c256 for the prg and a 27128a for the chr. I've used the HM03 roms and several others and the graphics are always scrambled. I've tried the H and V pads and nothing ever works. I've even tried several different cnrom boards. On the SMB2j cart the same thing happens. I'm using a 27c512 for the PRG and a 2764d for the chr. all of them are 150 ns chips. I've applied loopy's patch to the correct rom and tnines says it requires a MMC3 and am using an Image Fight donor cart. I'm about to yank my hair out over these 2 carts any help would be greatly appreciated. for the SMB2j should I try using larger chip sizes?

Posted: Mon Jan 28, 2008 8:28 pm
by loopy

Posted: Tue Jan 29, 2008 2:00 am
by Bregalad
First, if the game technically works but have scrambled graphics (or possibly no graphics) the problem is on the CHR side. If the game doesn't work at all the problem should be on the PRG side.

As for goonies, maybe the problem is bus conflicts, although my ROM of Goonies hM03 seems to avoid them. To make sure, log the code writing to $8000-$ffff in FCEUltra and check if it writes to a ROM location containing the same value (for example write $00 to a location in ROM containing a $00). If it doesn't modify the game so that it does.

H/V pads change mirroring, if they are set wrong the game will have corrupted graphics when scrolling only, but will usually work fine, unless the programmer especially puts code to check this, which isn't the case in commercial games.

Posted: Tue Jan 29, 2008 3:35 am
by Nerdy Nick
Ive made a tonne of Smb2j's with the exception of 1 not working. I ve allways used two 27c2001's with chr and prg copy and pasted a bunch of times with a hex editor. Im sure by using two differnet types of eprom your making all the wiring really confusing, try using two of the same and just double the data up

Posted: Tue Jan 29, 2008 4:43 am
by coinheaven
ive had that problem with the goonies too. i have only had one work (it might have been a different rom, i dont remember)

Posted: Tue Jan 29, 2008 9:33 am
by tepples
Bregalad wrote:First, if the game technically works but have scrambled graphics (or possibly no graphics) the problem is on the CHR side. If the game doesn't work at all the problem should be on the PRG side.
Unless there's a sprite 0 problem. I know at least SMB1 and Battletoads get screwed up if sprite 0 doesn't hit.
H/V pads change mirroring, if they are set wrong the game will have corrupted graphics when scrolling only, but will usually work fine, unless the programmer especially puts code to check this, which isn't the case in commercial games.
I know commercial games such as SMB1 and Milon's Secret Castle read back from CHR ROM. But do commercial games read back from the nametables?

Posted: Tue Jan 29, 2008 10:58 am
by Bregalad
Unless there's a sprite 0 problem. I know at least SMB1 and Battletoads get screwed up if sprite 0 doesn't hit.
Yes, but I guess the title screen will still work as usual.
I know commercial games such as SMB1 and Milon's Secret Castle read back from CHR ROM. But do commercial games read back from the nametables?
I checked this once, and I figured Hanjuku Hero did it when you open a window, probably to backup the tiles that are behind the window. I don't remember any other games which does this. Final Fantasy II also reads back from CHR RAM (which is a bit stupid) to animate water on the overworld. As a result, if you run the game with scrabled graphics on real hardware, weird thing happens to the water. Square improved it in Hanjuku Hero and Final Fantasy III by placing a RAM backup of the water tile and do everything internally before writing it at VBlank, so that they gain VBlank time.

Also, the game I'm currently programming ready back from attribute tables sometimes if I remember right, this considerabley simplified my algorithm 2 years ago when I coded the scrolling engine. When you write a metatile row and don't know the colors of the row just above or below and don't want to calculate it, that's the way to go. I wouldn't be surprised if some other commercial games does this.

Posted: Thu Jan 31, 2008 5:49 pm
by 82atari5200
Finally got The Goonies to work. I just had to double up the chr file and program it to a 27256 instead of using a 27128. I now to try it on SMB2j.