Qu'est-ce que le format de fichier NES ?
Les fichiers .nes stockent des ROM de jeux pour la console de jeux Nintendo Entertainment System, connue au Japon sous le nom de Famicom. Un fichier .nes est un dump des puces ROM d'une cartouche physique enveloppé dans un en-tête iNES de 16 octets - une convention introduite au milieu des années 1990. L'en-tête s'ouvre avec la signature magique de 4 octets 4E 45 53 1A (« NES » + 0x1A) et enregistre les tailles PRG-ROM et CHR-ROM ainsi qu'un numéro de « mapper » qui indique à l'émulateur comment se comportait le matériel de commutation de banque de la cartouche. Les fichiers .nes peuvent être ouverts à l'aide d'outils d'émulation dédiés disponibles pour les ordinateurs et les appareils mobiles. Les jeux Famicom Disk System utilisent le format distinct .fds plutôt que .nes.
En Pologne, les clones de la console NES étaient largement connus sous le nom de « Pegasus ». La plupart des jeux « Pegasus » étaient distribués sous forme de fichiers ROM .nes, généralement modifiés avec des options de triche ajoutées.
La NES était une console 8 bits, l'émulation de son matériel est donc simple sur n'importe quel ordinateur ou appareil mobile moderne. Des communautés de fans ont produit des traductions de nombreuses images ROM dans diverses langues. La plupart des titres de jeux NES commerciaux restent sous droit d'auteur, donc la distribution ou le téléchargement d'images ROM sans l'autorisation du détenteur des droits n'est pas légal dans la plupart des juridictions.
Sécurité et sûreté
RISQUE : MEDIUMLes données ROM sont du code de jeu inerte qui ne s'exécute qu'à l'intérieur d'un émulateur, mais deux préoccupations réelles s'appliquent. Juridique : le téléchargement de ROM de jeux que vous ne possédez pas est une violation du droit d'auteur dans la plupart des pays - la voie légale est de dumper les cartouches que vous possédez ou de jouer à des homebrews/freewares. Sécurité des sources : les « sites de ROM » sont truffés de publicités, de faux boutons de téléchargement et de logiciels malveillants, utilisez donc un émulateur récent et fiable (Mesen, FCEUX, RetroArch) et évitez les portails de téléchargement suspects. Les émulateurs anciens ou obscurs peuvent également présenter des bogues d'analyse avec des ROM malformées.
Détails du format
en brefProgrammes qui ouvrent les fichiers NES
Détails techniques
spécifications approfondies| Signature de fichier (octets magiques) | `4E 45 53 1A` à l'offset 0 - ASCII « NES » suivi de l'octet EOF MS-DOS (0x1A) |
| Format d'en-tête | En-tête iNES de 16 octets ; NES 2.0 est une extension rétrocompatible détectée lorsque `(byte7 & 0x0C) == 0x08` |
| Encodage | Binaire (données brutes de banque ROM) |
| Ordre des octets | Little-endian, correspondant à l'architecture du processeur MOS 6502 de la NES |
| Champ de taille PRG-ROM | L'octet 4 de l'en-tête compte les banques de 16 Ko (iNES) ; NES 2.0 étend cela à un champ de 12 bits pour des tailles plus grandes |
| Champ de taille CHR-ROM | L'octet 5 de l'en-tête compte les banques de 8 Ko ; une valeur de 0 signifie que la cartouche utilise de la CHR-RAM au lieu de la ROM |
| Numéro de mapper | 8 bits dans iNES (quartets hauts des octets 6-7) ; étendu à 12 bits dans NES 2.0 pour prendre en charge plus de 256 mappers |
| Bloc Trainer | Bloc optionnel de 512 octets entre l'en-tête et la PRG-ROM ; présent lorsque le bit 2 de l'octet 6 de l'en-tête est défini |
| Taille de fichier typique | 16 Ko - 512 Ko pour les cartouches commerciales plus un en-tête de 16 octets ; NES 2.0 prend en charge jusqu'à environ 8 Mo |
| Type MIME | `application/x-nes-rom` |
| Compression | Aucune - banques ROM brutes stockées sans compression ; les fichiers sont couramment distribués dans des archives ZIP |
| Gestion des données de sauvegarde | Sauvegardes par pile stockées séparément sous forme de `.sav` ou `.srm` par les émulateurs ; non intégrées dans le `.nes` |
| Identification de l'intégrité de la ROM | Pas de somme de contrôle intégrée ; vérifiée en externe via CRC32 ou SHA-1 par rapport aux bases de données No-Intro / Redump |
| Conteneurs alternatifs | UNIF (`.unf`) pour les mappers complexes ou non documentés ; des dumps bruts sans en-tête existent également mais sont rares |
| Matériel associé | Nintendo Entertainment System (Famicom 1983 / NES 1985) et clones sous licence tels que Pegasus (Pologne) |
| Champs étendus NES 2.0 | Ajoute l'index du sous-mapper, le type de console (NES/Vs./PlayChoice), la région de timing CPU/PPU et des champs de taille de RAM supplémentaire |
| Publié | iNES header convention early-to-mid 1990s (Marat Fayzullin's iNES emulator); NES launched 1983/1985 |
| Dernière version | NES 2.0 header (backward-compatible extension of iNES, finalized in the 2010s) |
| Spécification | www.nesdev.org |
Conversions NES
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers NES.