Bienvenue sur la page officielle de JadeNES. Je me présente, je suis MrOlaf44. JadeNES est un projet rédigé en Visual Basic .NET 2022 ayant pour objectif d'émuler la console Nintendo® NES. En effet, fasciné par le domaine de l'émulation, je rêve de créer mon propre émulateur depuis 2006, année à partir de laquelle j'ai découvert le domaine de l'émulation des consoles, et de la programmation.
Bien que cela ne soit pas le projet le plus facile, j'ai décidé de partir depuis zéro. Après des années de recherche, d'accumulation de connaissances, de tentatives de créer un émulateur, et de peaufinage dans la maîtrise des outils de développement, j'ai en 2014 repris un projet existant nommé Mercury Project v0.02, optimisé son code, mis à jour le rendu, et publié sous le nom de Mercury Revival v0.03, avec l'aimable participation d'Emu-France pour répertorier cet émulateur sur leur site (j'avais déclaré que c'était fait en 2016, mais en vrai, c'est en 2014, je rectifie).
En Février 2022, dans un accès de courage, j'ai décidé de créer un projet d'émulateur NES cette fois-ci fonctionnel. Pas juste un frontend, ni un émulateur qui ne tourne pas du tout. Il aurait pu avoir comme nom celui de mes anciens projets: SystemNES, EmilioNES, 3xNES ou ShaïNESs, mais finalement je l'ai appelé JadeNES. Et ce projet fonctionne, car il peut déjà émuler quelques démonstrations de jeux, ou des écrans titres.
JadeNES supporte le mapper #0, ainsi que le VROM. Le CPU est quasiment complet, ainsi que le PPU, qui a été corrigé une nouvelle fois dans la v0.7. Le logiciel supporte aussi la Manette #1 de la NES, bien que cela soit implémenté un peu à la va-vite. En revanche, l'émulateur ne supporte pas le MMC (mappers supérieurs à #0), le APU (audio), ainsi que d'autres fonctionnalités diverses de la NES. Mais ne vous inquiétez pas, je travaillerai à les implémenter aussitôt que l'essentiel sera fini. Le moteur de rendu des tiles/sprites est basé sur celui de Mercury Project, j'essaierai de créer mon propre moteur en faisant du nouveau code.
Etant donné que c'est ma première tentative publiée, ne vous attendez donc pas à ce que l'émulateur fasse tourner tout le catalogue de jeux de la NES. En d'autres termes, je vous remercie d'avance de ne pas faire de remarques désobligeantes à ce sujet. Je suis seul à coder ce projet, même si certains m'ont apporté de l'aide. D'ailleurs je vais les citer de ce pas. Entre autres, je remercie l'équipe du forum de NESDev, qui a répondu à mes nombreuses questions, l'ami Ronan, mon grand-frère, et tous les codeurs qui ont fourni leur code source au grand public comme BasicNES, Mercury Project, EmilNES, Pretendo, etc.
La nouvelle version 0.7 contient un gestionnaire de palettes, un meilleur rendu des graphismes, et d'autres options diverses qui palient les lacunes des anciennes versions de mon émulateur.
Vous pouvez télécharger les versions voulues en cliquant sur le lien ci-dessous :
Télécharger JadeNES 0.7 Alpha (23/01/2023)
Télécharger JadeNES 0.6 Alpha (23/12/2022)
Télécharger JadeNES 0.5 Alpha (31/10/2022)
Le fichier ZIP dans sa dernière version contient les fichiers suivants :
- JadeNES.exe: L'émulateur en lui-même. Cliquez dessus pour le lancer.
- LisezMoi.txt: Fichier à lire avant de lancer l'émulateur. Il raconte un peu son histoire, et combien le logiciel est livré sous la licence freeware sans garantie.
- NESEMU.DLL: Fichier DLL compilé par Visual Basic, et nécessaire au fonctionnement de l'émulateur. Ne pas égarer ce fichier, il est indispensable.
- SNOW.NES: Démonstration de ROM NES sous licence freeware, sur le thème de la neige. Les auteurs de cette ROM sont crédités dans le jeu lui-même durant l'émulation.
- j_recent.ini: Ce fichier apparaît au lancement, il contient juste la liste des ROMs récentes ouvertes par l'utilisateur. Effaçable sans risque.
- j_default.pal: Fichier binaire contenant la dernière palette extraite par l'émulateur. Ce fichier apparaîtra lorsqu'un jeu sera lancé.
Je remercie tous ceux qui ont soutenu le projet, ou qui ont rendu visite à cette page.
À la prochaine !