NES roms on custom SNES cart

Place to talk about all that new hardware and decaying software you have.

Moderator: General Mods

Post Reply
declan
Lurker
Posts: 194
Joined: Thu Jan 03, 2008 12:45 am
Location: Austalia

NES roms on custom SNES cart

Post by declan »

Hi everyone
i'm new to this site and am looking foward to working with all of you
Any way, lately i've working on a project, to build a HiRom SNES flash cart
(even though i was going to use EPROMS, not Flash chips :wink:) i had been making headway on the PCB dezign but in the end, gave up on the plan due to a shortage of nesseray componants, (eg, the MAD-1 address decoder, which i have been unsucessful in finding a chip with the same capabilities that also suports SRAM). then i got the idea of building a SNES cart that will play NES roms, ('cause i don't own a NES). now i'll tell you every thing i know on the subject. as i understand it NES carts have to chips similar to the MAD-1 for address decoding (i think....?) called mappers, right? i've also heard that, like the Nintendo Wii being sort of an extension of GameCube arcitechtuer (hence GC games are playable on the Wii), the SNES is also sort of and extension of NES arcitecture (correct me if i'm wrong), i also know that adapters are available to allow you to use NES games on a SNES, though i don't really know anything about these adapters. Now for some questions. the mappers are used in NES carts because of the limitations of the CPU and PPU (both 8-bit processors as i understand it) being unable to address the whole rom, now the SNES CPU is a 16-bit processor i would think is capable of addressing the entire rom image without the aid of a mapper (NES roms only beeing a fraction of the size of some SNES roms) right? another question, NES roms are addressed on two separate busses, one for PRG rom data and one for the CHR rom data. Now the SNES cart conector is an 8-bit bus, is it not? and the NES cart connector is 16-bit data bus by the look of it, so would the be an easy way of connectting 16 bits of data to an 8-bit snes data bus? or perhaps could both the CHR rom and PRG rom be put on the same EPROM/Flash so only 8 bits of data is present? Any of your thought would be much appreciated. oh just in case your wondering, i'll be using a CIC from anther SNES cart (i have loads of boring SNES games i don't care to loose)
Best regards
Declan
whicker
Trooper
Posts: 479
Joined: Sat Nov 27, 2004 4:33 am

Post by whicker »

declan,

I applaud your efforts. But all of your assumptions are wrong.

The only way there are NES adapters for the NES, is that they work somewhat like the Super Game Boy. Meaning, there's a whole system inside the cartridge, but instead of having direct video output, there's a program that runs inside the SNES that copies out the screen data to its own video memory to display on the TV.

Analog audio is just passed through on one of the extended side pins and mixed after the SNES's own audio output, but before the amplifier and lowpass filter. At least, that's how I remember it.
PHoNyMiKe
Retrosexual
Posts: 1011
Joined: Wed Jul 28, 2004 2:09 am
Location: Rapture

Post by PHoNyMiKe »

the snes main cpu is backwards compatible to the nes. the snes cpu can run nes code. however all the other hardware is totally different. the graphics processor, sound, dma, all of it. to get an nes rom onto the snes, you need to hack it all up. there are a few nes games available that have been hacked to run on the snes. they have no sound, and are only mapper 0 or 1.

flash cart to play snes games on a snes, sure you can make it. flash cart to play nes games on the snes, good luck.
[url=http://www.alexchiu.com/affiliates/clickthru.cgi?id=phonymike]ultimate immortality[/url]
[url=http://www.sloganizer.net/en/][img]http://www.sloganizer.net/en/image,zsnes,white,purple.png[/img][/url]
declan
Lurker
Posts: 194
Joined: Thu Jan 03, 2008 12:45 am
Location: Austalia

Post by declan »

So it sounds like more of a software project than an electronics project?
The only way there are NES adapters for the NES, is that they work somewhat like the Super Game Boy. Meaning, there's a whole system inside the cartridge, but instead of having direct video output, there's a program that runs inside the SNES that copies out the screen data to its own video memory to display on the TV.

Analog audio is just passed through on one of the extended side pins and mixed after the SNES's own audio output, but before the amplifier and lowpass filter. At least, that's how I remember it.


But wait!
how easy would it be to construct one of those systems you mentioned whicker? and if the snes main CPU can run nes code than perhaps i could just do as whicker sugested and send the audio out through one of the 16 extra pins either side of the conector, maybe?
Gil_Hamilton
Buzzkill Gil
Posts: 4295
Joined: Wed Jan 12, 2005 7:14 pm

Post by Gil_Hamilton »

phOnYmIkE wrote:the snes main cpu is backwards compatible to the nes. the snes cpu can run nes code. however all the other hardware is totally different. the graphics processor, sound, dma, all of it. to get an nes rom onto the snes, you need to hack it all up. there are a few nes games available that have been hacked to run on the snes. they have no sound, and are only mapper 0 or 1.

flash cart to play snes games on a snes, sure you can make it. flash cart to play nes games on the snes, good luck.
Actually, if I recall, most of the hardware is strikingly similar, just mapped to different memory addresses. Sound is the big killer.
After that, it becomes "hey, how do we get this to work when there's no bankswitching hardware on SNES carts or in SNES emulators?"

I assume the MMC1 and MAD1 work similarly, hence why mapper 1 games were "ported."



I'd bet the hacked games just change memory addresses and disable sound code.





I'm pretty sure they were originally shooting for a back-compatible SNES, and abandoned the goal fairly late in the design process.
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Translation: Don't bother.

whicker makes references to the Super Game Boy, which means it requires more hardware to effectively run the Game Boy games and make it SNES friendly. This isn't a "custom controller" type job.. it is more of a "build a freaking system within a system". This is simply not in your league.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
declan
Lurker
Posts: 194
Joined: Thu Jan 03, 2008 12:45 am
Location: Austalia

Post by declan »

Thank you all for your help
I had no idea it would be such a tricky project.
Any way, maybe when i'm older and i've taught myself properly hack roms i'm give it another go.
Thanks again guys.
Best regards
Declan
Gil_Hamilton
Buzzkill Gil
Posts: 4295
Joined: Wed Jan 12, 2005 7:14 pm

Post by Gil_Hamilton »

declan wrote:Thank you all for your help
I had no idea it would be such a tricky project.
Any way, maybe when i'm older and i've taught myself properly hack roms i'm give it another go.
Thanks again guys.
Best regards
Declan
You don't get it.

No SNES cart or emulator features the NES mappers, so you have to recode the game to eliminate their dependence on the mapper they originally used. Essentially, you have to code most of a new game.
And you still don't have sound.

Mapperless games are easily adaptable. Most of them have already been done.The same apparently holds true for MMC1.
But you still don't have sound.

Possibly some MMC3 titles are readily portable, if Mario AllStars and Ninja Gaiden Trilogy are an indicator(both games use reworked NES code with an SNES sound engine tacked on), though NGTrilogy shows that directly porting the code won't generate the appropriate effects in a lot of instances(and that Tecmo needed a beta tester badly).

But most games simply are not portable without a complete reworking of the game.
And you still don't have sound.




In short:
It's not a tricky project, it's an impossible one.
You'll never achieve what you're trying for.
Give up now.
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

Maybe you could simulate the sound with samples...
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
Gil_Hamilton
Buzzkill Gil
Posts: 4295
Joined: Wed Jan 12, 2005 7:14 pm

Post by Gil_Hamilton »

creaothceann wrote:Maybe you could simulate the sound with samples...
Or upload an app to turn the SPC700 module into a waveform generator.
Either way, you have to totally rework the sound side.
Post Reply