The header of 16 bytes long starts by the string NES, plus $1A. We're using all the time the term "iNES" for such header. After the discussion (with no answer) about "who's the creator of the header", I though it's better to avoid such term for a single reason: there's no "iNES" header. As you say "iNES", you are referring to the emulator created by Marat. With all my respect, of course.
Subject: NES 2.0 header implementationZepper wrote:
There's no "iNES 2.0".
Use "NES 2.0" instead.
iNES header has come to refer to the file format with NES\x1A at the beginning, etc. The iNES 2.0 header format is an extension of this. The origin of the name is purely historical at this point (and predicted the iFad by many years!).
Yup. By the way, I removed all the "iNES" references in my emulator and docs. It resembles Apple...
I know I won't change anyone's mind on the matter but I prefer to use iNES since it is less ambiguous than just NES 1.0/2.0. And there are other header formats out there, I know the iNES is the most (if not only) used one these days but saying "NES header format" sounds like it is official, something that's present on physical ROM cartridges, or an unique/absolute/ultimate format.
I've tried to be fairly consistent in how I refer to things:
"iNES format": Original header
"NES 2.0": Extended header proposed in by kevtris in 2006
On the other hand,
the iNES official site describes it as "the .NES cartridge file format". But in a way, the format has become official. See licensed GBA emulations of classic NES games by Atlus and Jaleco, and see Virtual Console.
Sometimes I refer to something by its file extension, since that is known even more widely than its name, as everyone sees it constantly, it's what the programs know it by, and it's generally unambiguous.
blargg wrote:
Sometimes I refer to something by its file extension, since that is known even more widely than its name, as everyone sees it constantly, it's what the programs know it by, and it's generally unambiguous.
Generally. Eventually you'll hit cases like .bin that can mean Atari 2600 or Genesis games or (in the early days) Game Boy Advance games, or .gba that can mean Game Boy Advance games or GrabIt (Usenet binary downloader) batch files, or .spc that can mean SPC700 save states or Authenticode software publisher certificates, or .wad that can mean
Doom asset files or Wii channel packages, or .deb files that can mean FCEUX debugger states or Debian packages, or .iso files that don't indicate which platform they're for...
Or do I spend too much time hanging out on disambiguation pages?
Good, tepples. From Marat's page:
Quote:
What is iNES?
iNES is a program that emulates Nintendo Entertainment System (NES) and Famicom videogame consoles on your computer. It plays NES games on PCs, PocketPCs, Macs, Unix boxes, etc. The idea to write a NES emulator originated from Alex Krasivsky who found some Famicom programming information on the Net and wrote the initial code. At some point, Alex lost interest in the project, while I eventually rewrote the code, made it closely mimic the quirks of the original hardware, and expanded it to support many different cartridge types and hardware add-ons. At the time of iNES release in 1996, there was only one other NES emulator, Pasofami, written by a Japanese author and really difficult to use. iNES became the first NES emulator usable by a non-expert, and also the first emulator to use the .NES cartridge file format.
See what I mean?
iNES is an emulator and "the iNES format" is a format for storing the ROMs so that they can be read by this emulator (and almost any other emulator released after it by the way).
I really don't see the problem there is no possible ambiguity, especially considering the iNES emulator is totally forgotten and nobody uses it anymore.
NES refers to the console, and NES 2.0 can refer to the USA Toploader model. It sounds MUCH MUCH more abmigious.
As for the "iFad", well I never noticed it until right now, and it sucks, but iNES was there long before the iPod (which I think was the first iFad product) so that's Apple fault for copying iNES
Bregalad wrote:
NES refers to the console, and NES 2.0 can refer to the USA Toploader model.
The most unambiguous name for the 72-pin toploader is its model number: "NES-101". I've seen "NES 2" used occasionally in print, but never with the ".0" suffix.
rainwarrior wrote:
I like to write iNES 2.
This. But Chuck Norris is already using iNES 3.0. Sorry, wrong thread!
Well, I have to agree about the "NES format" as something "official from the NES carts", but we need to change a few things. Looks like the emulator "iNES" is the "father" of the header and all the mappers. The own iNES website says ".NES format" (notice the dot before the NES string).
@Wednesday: post CN "jokes"
here, please. That's an order from him
!
History is irrelevant when the question is what the format is called now. It's called iNES or .nes in the realm of file extensions. It's what people know it by, and thus what it means. If the issue is giving credit, then the appropriate thing to do is put the information out there, perhaps on Wikipedia (with citations), not to try to rename iNES.
I apologize for the language, but seriously, what the fuck ?
Two individuals (Zepper + Tepples) randomly decided that all references to "iNES" should be changed into "NES" on both the forum and the wiki, and for no other apparent reason, other than "it creates confusion" and "it sounds like iFad" (of which I have already debated in my previous post).
The iNES format has been known, used and named as such for at least 15 years now. Why does two individuals want to change that in just a day ? I makes no fucking sense at all. Well you guys do what you want with your lives, but I'll remain calling it "iNES" and "iNES 2.0", no matter how you guys like or don't like it. And please don't edit my post to change it
Those methods are reminiscent to how communism viciously infiltrated eastern Europe in the 40s.
EDIT : I just noted how Nestopia calls them "Standard iNES" and "Extended iNES" respectively. I really like this appellation, as it perfectively shows the purpose. The standard iNES itself is just a chain of backward compatibility issues (originally supported 15 mappers, was extended to support up to 255, and yet later extended to support a "PAL only" flag), and then extended iNES came out and tries to fix all the compatibility problems with standard iNES. I really like it, it makes total sense, and I'll stick to this appellation.
@Bregalad
In my opinion, we need good sense. There's no much to justify from me, as I'm not a villain for being against the iNES term. Another recap: well, "iNES" is an emulator. blargg said that history is irrelevant, but perhaps not much. The "iNES header" and "iNES mapper" terms came from the iNES emulator, perhaps by its (name?) popularity (???) or the only emulator at 199x that used the .NES standard format. We had other formats, do you remember? Pasofami is one example in mind, the separated .chr and .prg (and .hdr?) files for loading, or .PAS files. So, "iNES" was the reference for mappers and the header, plus Marat's NES hardware document x Yoshi's one.
If you want to avoid confusion, you must acknowledge the most common names for things. To do otherwise makes this information harder to search for, and harder to understand. You may wish for etymological purity, but it is no good to try to force it at this expense.
I don't think it would hurt normal users, or even the community at all. We use iNES because everyone keeps using the iNES terminology, which is "wrong" from another view point. iNES is an emulator.
I remember of my own emu in early times. It was from "xNES", but a few people was saying that the "x" would be a standard for linux/unix, and a name change would be good. So, that's RockNES today.
First of all, yes I know there is other formats (did I ever say the opposite !?) and yes I know iNES was an emulator (I only know it since like 1 week, never heard of it before, but now I know).
I don't see how in any ways the fact that iNES was an emulator prevents the headers and format to be called "iNES" as well. In fact there is nothing preventing that, this has been the case for about 15 years, and all of suddenly you want to enfore it to be named "NES" instead of "iNES" by modifying other people's posts and the wiki.
But I'll tell you NES is a console, so you can't use this name either. You'll have to come up with a brand new name, such as qwio£w$iwi§en, which has probably never been ever used by anyone before.
Now seriously, what about "iNES" itself is being disambiguated by the context, when it make sense it's the emulator it's the emulator and when it make sene it's the header/format then it's the header/format.
If it's like : "I tried iNES on my recent PC but I couldn't run it even with DosBox", do you think I am talking about the emulator or the header/format !?
We have years of precedent of calling the header iNES, and this term appears in countless documents, emulators, past forum conversations, and elsewhere. New users regularly read these things and adopt the term as they see it used. To break from common practice on the wiki and nowhere else obfuscates the wiki. It doesn't matter if you think it's "wrong", it's just the term that is used. This is communication, not a history lesson.
The use of iNES to refer to the emulator is obscure (with apologies to Marat, but it's true).
Incidentally, the wiki is a good place to put the history lesson as well. It is the perfect place to put notes explaining the history and etymology of terms used. It is, however, a very wrong place to rename things and start enforcing new terminology for purely ideological reasons.
I'll leave most references to "iNES format" (including page titles) on the wiki, as iNES was the first widely used emulator to use that format and to popularize it over the Pasofami split-ROM paradigm. It's just "iNES 2.0" for the extension described by kevtris that's not correct.
Bregalad wrote:
I apologize for the language, but seriously, what the fuck ?
[...]
The iNES format has been known, used and named as such for at least 15 years now. Why does two individuals want to change that in just a day ? I makes no fucking sense at all. Well you guys do what you want with your lives, but I'll remain calling it "iNES" and "iNES 2.0", no matter how you guys like or don't like it.
QFT. This whole thread is preposterous to me and I can't really take it seriously.
"iNES 3.0 doesn't support iNES 2.0." Contradiction in terms?
"iNES 3.0 doesn't support NES 2.0"
"The iNES 3.0 emulator doesn't support the iNES 2.0 file format."
"iNES 3.0 supports iNES files (but not iNES 2.0 files)."
Or just call the new file format something different, like iNES 2, Extended iNES, etc.
Very well, I don't want to be a villain after all. I propose the following:
1. create a wiki page about iNES for disambiguation (emulator X .NES header);
2. make a standard for new .NES headers: if iNES is so traditional, now *I* see non-sense in calling "NES 2.0" or "NES x.0" for good;
3. I'm no more using the iNES term in my emulator and all related things, but just .NES format, since we have NO second format for it.
Sorry for the trouble.
Bregalad wrote:
First of all, yes I know there is other formats (did I ever say the opposite !?) and yes I know iNES was an emulator (I only know it since like 1 week, never heard of it before, but now I know).
Good, good.
Quote:
I don't see how in any ways the fact that iNES was an emulator prevents the headers and format to be called "iNES" as well. (...)
But I'll tell you NES is a console, so you can't use this name either.
I'm using ".NES format" (notice the dot), so it's a reference to the
file extension, not to the console.
Peace.
There's no need to make iNES a disambiguation page. The current iNES page has as much information as it needs to about the emulator itself. I think the lead should prioritize the iNES format description and not muddle things by talking about the emulator in the first sentence, but the amount of content about the iNES emulator on the page is fine.
Emulators don't typically have a page on the NESDev wiki anyway. There's no dedicated page for more popular emulators like Nestopia or FCEUX. What would you even say about iNES that is relevant to NES development anyway?
OK, I fixed the iNES page. The lede reads better to me, and more of the information about the iNES emulator is moved to its section on the page. I added a section about the name of the file format. I also moved the information about the popularity of the format to the lede, keeping the file format section focused entirely on the format of the file.
As explained in the section about naming, we have three different things:
* .nes files, which could be in iNES or NES 2.0 file format
* The iNES file format, which most .nes files are in
* The NES 2.0 file format, which emulators are adding support for.
Thus, calling something the ".nes file format" is ambiguous, as a .nes file can be in either of the two formats. Once NES 2.0 becomes more common, to a layperson the ".nes file format" will be NES 2.0. Currently ".nes file format" probably means the iNES file format to most people. Thus it's best to think of ".nes file format" as something constantly shifting, representing whatever the most commonly-used files in the .nes format are in.
Consider an emulator listing compatibility:
"Supports .nes and NES 2.0 files." Huh, what's the extension of NES 2.0 files? I've only ever seen .nes files.
"Supports .nes and NES 2.0 .nes files." Uhhh, aren't those the same things?
"Supports .nes files in the .nes file format and the NES 2.0 file format." Wait, how can a .nes file NOT be in the .nes format?
Even putting the above technical issues aside, Marat may have referred to it as the .nes file format (and specified the layout), but it was the emulation community that ultimately got to decide what to name it. It came up with iNES, and many people call it this. That Marat called it a .nes file is irrelevant, because he doesn't define what is correct or incorrect; the common usage does. People who don't know the name of the format call it a .nes file, but this isn't a name so much as a description because they don't know a proper name. It's certainly important to explain the file extension used so someone who doesn't know the name can find information about. In effect, iNES file format became the more formal name, and .nes file format became the informal name. They coexist and the existence of one doesn't make the other invalid or incorrect.
This makes total sense, thank you very much Blargg.
Now that I think about it there is multiple versions of the iNES format itself (prior to NES 2.0).
The first version (the one which is used by the "DiskDude!" dumps) allows only mappers 0-15.
Then they added mappers 16-255 support, and after that they added the NTSC/PAL bits and SRAM enable that almost no dump honours. I'm not 100% sure it went like that but it seems to be the case.
Hmm... I guess you got the idea.