mai 1, 2011 2

Redonnez vie aux vieilles consoles : ressources pour développer en 8bits, 16bits …

By in Jeux-vidéos, Programmation

Le plaisir du retro gaming, ce n’est pas que la joie de découvrir ou de redécouvrir des classiques, des bijoux oubliés, perdus par le temps, mais aussi des plateformes, un hardware, appliquant des concept de développement archaïques, originaux, différents, accessibles (ou pas ;) )

Et, comme toutes ces plateformes sont depuis longtemps abandonnées par leurs fabricants, producteurs et éditeurs, qu’elles ne rapportent plus d’argent aux maisons mères éditrices de ces consoles d’un autre âge, les outils de création, soit les SDK sont tombés dans le domaine public, soit des alternatives sont créées par des petits génies/malins/passionnés afin que leurs ludothèques favorites continuent de s’enrichir.

Et si, par curiosité, ou en tant que développeur, vous choisissiez votre console fétiche pour lui faire don de quelques heures de travail, pour donner une seconde jeunesse à votre NES, Super NES, Megadrive ? Saviez-vous que cela se faisait déjà ? Et que tous les outils et les informations nécessaires sont disponibles sur le web ?

Pour preuve, le trailer d’un Sturmwind, un shmup à venir sur … Dreamcast :D

Image de prévisualisation YouTube

Ou encore plus fort, Pier Solar sur Megadrive et Mega-CD !

Image de prévisualisation YouTube

Outils et ressources pour développer sur NES/Famicom

La plupart de compileurs NES sont basés sur de l’Assembleur.

Vous pouvez donc commencer par lire et vous exercer avec ce tuto complet sur l’assembleur.

Si vous n’êtes pas familier avec les concepts de BIT, Byte, ROM, RAM, VBLANK … etc… etc…  vous devriez commencer par consulter les différentes définitions et explications présentes sur cette page.

Les outils pour developper vos propres jeux NES :

Les compileurs/assembleurs:

Graphismes/sprites:

Audio:

Le coeur de la NES : le 6502

Comprendre le concept de sprite et de sprite memory :

La Picture Processing Unit:

Si l’envie vous prend de tester votre production sur le hardware original, le projet Munchausen Nintendo NES Flash Cartridge peut etre un excellent moyen, sans vous ruiner dans du materiel de flashage et des cartouches et puces vierges.

Autre projet pour le chargement et la lecture de roms, la cartouche NES Powerpack.

Image de prévisualisation YouTube

Avantage : elle est en vente libre, contrairement au projet Munchausen, encore en phase de beta testing. Inconvénient : son prix… 135$

  • Enfin, un site IN-CON-TOUR-NABLE, autant pour les ressources mises à disposition que pour le forum, pour tout comprendre du fonctionnement de la NES (hardware comme software) : http://nesdev.parodius.com/

Outils et ressources pour développer sur Super Nintendo/Famicom

La grande soeur de la NES dispose d’une architecture plus riche, plus complète, et, d’après mes recherches, la documentation technique à son sujet m’a semblé plus rare.

Néamoins, s’il ne devait y avoir qu’un site pour décortiquer les entrailles de la Super Nintendo, ce serait certainement  SNES Developement.

En plus de dispenser toutes les informations nécessaires pour comprendre le hardware de la console, vous trouverez des exemples concrets ( la gestion de la SRAM dans Secret of Evermore …), ainsi que d’excellents tutoriaux.

De la documentation offline ?

  • snesbase. Cette archive contient tout ce qu’il convient de savoir et comprendre concernant le hardware de la console, mais également des bonus comme un “How to” sur l’émulation, des démos en .asm. Bref, indispensable.

Si vous cherchez un assembleur/compileur :

  • WLA DX semble tout indiqué; cross-platform, il permet de compiler pour les CPU de la NES à la SNES, en passant par la pc-engine …

Mais, s’il s’agit de mettre la main sur le sdk et la documentation officielle Nintendo, une seule adresse: http://www.underground-gamer.com. Si toutefois ca ne vous intéresse pas de vous créer un compte (mais bon sang que ce serait dommage, si vous voulez connaitre le paradis du rétrogaming…) sur underground-gamer.com, voici les fichiers contenus dans le torrent.

La Dreamcast, et autres ressources utiles.

Plus récentes que les deux plateformes précédentes, le Dreamcast est néanmoins le terrain de jeu de nombreux amateurs de homebrew pour une très bonne raison: le développement passe par un os non propriétaire SEGA, un certain Windows CE…

Toutefois, le dev nécessite aussi une machine dédiée. Du coup, vos chances de pouvoir développer sur Dreamcast sont réduites. Si vous avez la chance et les moyens de vous payer un tel objet, la dreamcast est certainement à l’heure actuelle la console rétro la plus porteuse, offrant finalement un marché plus porteur vu son jeune age (pour rappel, elle est sortie en 1998 au Japon), et un support facile à produire et distribuer (le CD-ROM).

Si toutefois l’envie vous prenait d’utiliser le fameux GD-ROM (un hybride entre CD et DVD d’une capacité d’1,2Go), sachez qu’il devient difficile a trouver, de même que les graveurs dédiés…

Pour vous renseigner dans le développement sur d’autres support, ou par curiosité, voici une série de liens qui m’ont semblé très intéressants, bien que parfois très peu techniques:

http://fr.wikipedia.org/wiki/Retrogaming : comprendre le rétrogaming, c’est très intéressant. Comprendre ce qui motive les passionnés, leur attachement à une pensée particulière, c’est peut etre un bon début pour développer dans la plus pure tradition 80′s / 90′s.

http://fr.wikipedia.org/wiki/Histoire_des_consoles_de_jeux_vid%C3%A9o : l’histoire du jeu vidéo plus globalement, c’est un autre bon moyen de comprendre pourquoi et comment ont évolué les supports, le hardware.

http://nesdev.parodius.com/ déjà cité dans cet article, un point de passage o-bli-ga-toire pour comprendre la NES de fond en comble.

http://www.assemblergames.com/forums/index.php presque 10000 membres sur ce forum de passionnés, avec une très belle section consacrée à la programmation, tous supports confondus.

http://en.wikibooks.org/wiki/Category:Console_game_programming des infos sur le hardware/software des poids lourds du marché. Pas toujours très exhaustif, je vous invite à consulter la section SNES, la plus fournie.

http://gendev.spritesmind.net/forum/ 100% SEGA, ce forum est un incontournable. De même d’ailleurs que http://info.sonicretro.org/SCHG:Sonic_Community_Hacking_Guide qui vous guide dans les méandres du hack de roms Sonic, certainement la meilleur manière de comprendre ce qui se passe sous le capot.

Alors, vous vous lancez ? Vous avez déjà codé du homebrew sur un support de plus de 10ans ?

Tags: , , ,

2 Responses to “Redonnez vie aux vieilles consoles : ressources pour développer en 8bits, 16bits …”

  1. laroka dit :

    bonjour ,

    en surfant sur le net , je suis tombé sur ton blog qui est tres intéressant .
    je suis en possession de plusieurs kit de développement pour dreamcast (avec graveur et gd-rom) , ps2 et ps1.

    alors voila , qui ne tente rien a rien je recherche de gens intéressé , contacté moi si si vous êtes a la recherche de quelque chose ou si vous connaitriez des gens intéressé

    merci et désole du dérangement

  2. clashnco dit :

    bonjour,

    je serais intéressé, je suis dev junior

Leave a Reply