how do you know if a rom has CHR RAM?
In the iNES header, there is a number equaling the amount of 8kb CHRROM banks in it.
If that number is zero, there is no CHROM so there is CHRAM.
Games that have both of them are very rare and particular cases tough (TQROM board, I think).
ok, another dumb question, how to you look in the iNES header? sorry im not very saavy with technical jargon. thanks
Bregalad wrote:
In the iNES header, there is a number equaling the amount of 8kb CHRROM banks in it.
If that number is zero, there is no CHROM so there is CHRAM.
Games that have both of them are very rare and particular cases tough (TQROM board, I think).
The "header" of a file is simply the data at the beginning that is usually used to further identify the contents of the file. To look at the iNES header, you can use a "hex" editor, an editing program that displays the bytes of a file in hexadecimal (base 16) and allows editing. You'll also need to find a description of the iNES header format, the way that those bytes are interpreted.
so which hex editor do you recommend, i have thingy32, but have no clue how it works. is the iNES header the top line on the table?
blargg wrote:
The "header" of a file is simply the data at the beginning that is usually used to further identify the contents of the file. To look at the iNES header, you can use a "hex" editor, an editing program that displays the bytes of a file in hexadecimal (base 16) and allows editing. You'll also need to find a description of the iNES header format, the way that those bytes are interpreted.
You can use any hex editor, the fiveth byte shows the amount of 8kb CHR page, so if a game uses CHRAM, it is zero.
You can also use VirtuaNES, Nintendulator, Nestopia, Nesticle, etc... all have header viewers, and indicates if the card has CHROM or CHRAM.
Bregalad wrote:
You can use any hex editor, the fiveth byte shows the amount of 8kb CHR page, so if a game uses CHRAM, it is zero.
I assume you mean the 6th byte (at
offset 0x00000005).
i just check zelda and FF2 and the 5th byte was 00, so i assume it is the 5th. is this correct?
Offset 5 is the 6th byte, not the 5th. Offsets are 0 based.
You wouldn't call the
first byte in the file the 0th byte... you'd call it the first... even though it's offset 0.
Code:
4E 45 53 1A 08 00 12 00 00 00 00 00 00 00 00 00
| | | | | |
| | | | | 6th byte (offset 5) -- CHR
| | | | |
| | | | 5th byte (offset 4) -- PRG
| | | |
| | | 4th byte (offset 3)
| | |
| | 3rd byte (offset 2)
| |
| 2nd byte (offset 1)
|
1st byte (offset 0)