PDA

View Full Version : |\|3z R0/\/\z



MottZilla
09-01-2002, 12:17 AM
I'm bored and thought I'd post something about them since i'm sure many of your use NES roms. Did you know that NES rom files are actually 3 diffrent things? It seems alot of people thing a NES rom is the exact same as what would be on "a" rom chip in the cartridge.

NES Carts actually consist of the CHR and PRG rom chips, and possibly a memory mapper chip. The CHR rom stands for Character ROM which is the game's graphics, and the PRG ROM is the program code, level data, sounds, basically everything except graphics.

A "NES ROM" you use in most emulators, if it's a single file, it's a iNES rom, as I assume the iNES emulator defined the current standard. An iNES rom is in order, a 16 byte header, starting with the letters NES leaving the other 13 bytes for their purposes, such as telling the emulator which memory mapper the game uses and other things for the emulator to run the game correctly.

Anyways, after the header is the CHR rom, I believe, and then the PRG rom.

So I've successfully killed some time. Maybe some of you didn't know this. I just felt like posting this after seeing kamakazi cow's closed topic about NES roms.

slothman
09-01-2002, 01:48 AM
I assumed it was something like that. I took a few carts apart in my time and usually saw 2 chips. I want to look at the genie but that doesn't come apart as easily.

vegeta1215
09-01-2002, 02:02 AM
Very interesting. Thanks Mott

MottZilla
09-02-2002, 03:35 PM
Ya, if you look at the chips too, they will have printed on them PRG or CHR and probably a short code name for the game that it is.

Also, did you know some people will abuse the header of the iNES roms when they image them. Imaging them is when you add the header, then chr, then prg, i.e. making the rom. I think it's a program that does it though. A well known thing to find is "!DISKDUDE!" or something. Also sometimes people put something at the end of the rom saying like, "Imaged by: blahlblah"

Emulators use the header though to know how much data to load so when the rom is loaded these end messages don't affect the game. Though the crap in headers can make an emulator not play a game if it handles the header wrong due to the crap in it.

Anyways, just interesting things to know.

vegeta1215
09-02-2002, 03:38 PM
Yeah, I think alot of people mess with header info for roms, often causing bad checksums (despite the game running fine). I know the place I get my ROMs from puts their website adress as the header of their ROMs.

MottZilla
09-03-2002, 01:10 AM
NES headers are 16 bytes, 3 bytes first being NES. I don't think you could fit a web address in it... Also, certain bytes have to do with how many pages the PRG has and such, which wrong numbers would crash the game I believe. That or it would use more ram than it should. Anyways, it's annoying. However it's not too hard to clean out your roms.

vegeta1215
09-03-2002, 01:12 AM
Oops, sorry. I meant SNES ROMs. The idea is the same though.

MottZilla
09-03-2002, 01:16 AM
Do you mean intros on the roms? So when the game executes there is some crap? Those are abit tricky to remove but they certainly should be.

vegeta1215
09-03-2002, 01:21 AM
Nah, I just mean the text that loads at the bottom of ZSNES. The part that says checksum pass/fail, and usually some kind of name. The place I get ROMs from put a short form on it's url in there (which I think is part of the header)

mrz84
09-03-2002, 03:06 PM
*reads the thread* this is confusing yet interesting at he same time. weird. http://invis.free.anonymizer.com/http://www.angelfire.com/anime2/myanimepage/mini_ami.gif