Maybe someone will have some insight on some of these address lines or something, because this is another situation I cant figure out.
I was making an Super Mario unlimited with an SFROM board. Ive done one before and its a straight drop in for a 010 and 256 chip. Anyway, it didnt work, i popped it out and the trace to A15 and PRG /CE ripped off. Great. I wired them up to the MMC1 in the right spots and the game turns out perfectly, no problems, except no sound? Any insight where the problem is here? I figured if it was the A15 line, the game wouldn't even load.
My guess is that an address line from the mapper to the ROM is the problem. The game could be changing banks to play the music, it's getting the wrong bank, and somehow it's not crashing. Weird problem.
Is it possible that it could also be a bad chip? I had used this chip before and the legs might not be all sturdy in the body of the chip.
It's very weird that only the sound is affected by whatever is causing the problem, since there's nothing directly related to sound in the cartridge's hardware. It must be a big coincidence that the specific program bank that contains sound code/data is failing to load. Maybe if you play the game further more code/data will fail to load?
Ill give it a shot. I think that maybe some solder is bridging some pins or something on the MMC1 I cant see or something.
I did play for a little less than 5 mins the first time to see if the sound popped up but didnt. Nothing else was bugging. No sound, music, effects or anything. But I CAN hear a buzzing from the speakers so some audio has to be emitting.
Ok I im up to 2-2 and only noticed a few other things that must be related. 1st, when I die or fall off a cliff, sometimes instead of the screen being locked, it continues to scroll to the right as if mario was still moving at the speed he was when he fell. 2nd, after I rescued Yoshi, instead of stopping at the egg and reading text, it continued to scroll with mario walking past it for a few seconds and then stopped. Thirdly, when I get close to the exit (A star block you must hit to 'end' the level, similar to the flag in the original), marios time and score move at warp speed as they would if they were to tally the end results and if I dont hit it time will run out and ill die. All these problems must somehow be connected.
Is this hack verified to work on hardware? Have you tried it on several emulators to look for any inconsistencies?
Just trying to get this out of the way before you start trying to fix what isn't broken.
guitarzombie wrote:
I was making an Super Mario unlimited with an SFROM board. Ive done one before and its a straight drop in for a 010 and 256 chip.
I took a look and somethings gotta give. So I disconnected the wire I have for A15 to the MMC1, and guess what. Same thing. So its A15 not getting to the MMC1, even tho 1) i connected it and 2) verified it with a multimeter.
What im gonna do now is remove the mmc1 and lift the pins I need so they're not even attached to the board and solder directly to them floating. If that doesnt work well then im SOL cuz i wont be able to connect them.
Did some pin routing, looks like on the MMC1 the A15 AND A16 werent connected... yada yada yada nothing worked and pin 24 on the chip got knocked off. Well that was a waste and ill never figure it out. But I think theres actually a difference in SFROMs. SFROM (SFEROMs) are drop ins to 010s (or just a jedec style) where as SFROM (SFDROMS) might follow the mask rom pinout. So yeah... ill rip this board apart and take more of a look another time. Now I need another bases loaded.
On the very small boards, SEROM and SHROM, PRG A15 and up aren't connected to anything.
But if you're starting with an SFROM donor that can't have been it.
SFROM just has the PRG up to 256k, and 64k for the CHR.
So after I trashed this board I have another SFROM (SFDROM) board.
This one uses the bases loaded revision 1 for the PRG.
Theres 3 types:
SFEXPROM thats LD-0 with the weird chip in it.
SFROM thats LD-1 (Mask rom layout) and,
SF1ROM thats LD-2 (Jedec pinout).
Now that I figured it out again, I fucked up. The SF1ROM has a Jedec standard pinout, and SFROM (SFDROM) is mask rom.
Damn it haha. I guess I fucked up and didnt realize it. I even tested it to double check. I just went with my memory and got it confused. Great. So what I ended up doing was just wiring things wrong. The first time I did it I just dropped the 010 in and thats why it wasn't working, it wasnt reading A16.