Si vous avez lu le topic introduction au cartmodding vous avez déjà compris le principe de base: remplacer le programme qui se trouve actuellement sur une cartouche (pcb) par un autre.
Dans ce topic je vais vous donner les grandes lignes directrices afin de réaliser un cartmod, celles qui sont communes à tous les cartmods.
Celles-ci ne vous dispenseront pas d'effectuer des recherches par vous mêmes mais vous faciliteront un peu la tache.
Première étape: le choix du cartmod à réaliserLe cartmod que vous désirez réaliser va en effet conditionner le jeu "parent" (c'est à dire celui à sacrifier) car toutes les pcbs ne conviennent pas, cela serait trop simple.
Deuxième étape: choix du PCB.Il faut donc correctement sélectionner son PCB.
Commençons par le cas le plus simple avec un cartmod megadrive: ici 2 choix possibles
- les jeux avec sauvegarde
- les jeux sans sauvegarde
Un site comme Guardiana vous aidera à identifier le bon PCB à utiliser.
Compliquons un peu avec la super nes.
Il existe plusieurs types de PCB. Lo rom, Hi rom, avec 1 ou 2 emplacements de mémoires (maskrom) et différentes taille de sauvegarde (sram), le tout pouvant être combiné : Hirom, 2 maskroms, 64kbits sram par exemple.
Vous l'aurez compris un grand nombre de possibilités.
Il vous faudra dans un premier temps identifier le type de PCB nécessaire pour votre cartmod. Pour cela ouvrez la rom sous l'émulateur snes9x par exemple et faites
Fichier --> informations sur la rom ce qui vous donnera toutes les informations nécessaires.
Pour identifier un jeu donneur compatible, vous pouvez par exemple vous référer aux différents topics de mes réalisations ou encore consulter ce lien ou encore celui-ci
Le cas de la NES est assez similaires à celui de la super nes, je vous invite à consulter mon tuto sur le mod de earthbound zeropour connaitre la marche à suivre.
Troisième étape : dessouder l'ancienne maskromPour cela j'utilise de la tresse à dessouder, pas chère et relativement aisée à manipuler.
Quatrième étape: Programmer son eprom.Les eproms utilisées sont différentes en fonction du cartmod à réaliser, je ne liste ici que les principales et ne tiens pas compte de certains cas particuliers.
Megadrive: 27C322 (4megas)
SNES: 27C801 (1mega) , 27C160 (2 megas)
NES: 27C1001 (128 kbits) , 27C2001 (256 kbits)
certains jeux demanderont plusieurs eproms pour pouvoir être modés, il vous sera alors nécessaire de "splitter" (séparer) votre rom en plusieurs fichiers. Chacun des fichiers obtenus devra alors être graver sur une eprom différente. Un logiciel comme
snesROMUtil vous permetra d'effectuer facilement cette opération.
pour la programmation en elle même, je vois invite à consulter la doc de votre programmeur, la configuration de ce dernier pouvant varier d'un modèle à l'autre.
Petite remarque concernant la snes et les eproms 27C801 (et seulement celles ci), vous avez la possibilité d'effectuer ce qu'on appelle un swapbin sur votre rom avant de la programmer. Cela aura pour conséquence de vous faciliter un peu la tache au moment de la soudure avec 3 fils à rediriger au lieu de 5. (je passe sur les détails techniques, si cela vous intéresse n'hésitez pas à demander). Un logiciel comme
snesROMUtil vous permetra d'effectuer facilement cette manipulation
Cinquième étape: la soudurePartie la plus délicate, je vais commencer par le concept général qui une fois maitrisé permet de réaliser la plupart des cartmods.
Il faut savoir que les eproms que l'on programme ne sont pas la réplique exacte des maskroms originalement présentes sur les PCBs. Ca serait trop facile.
Il faut ainsi rediriger certaines pattes de l'eprom vers la bonne position sur le PCB, c'est ce qui explique ces fils que vous avez pu voir sur les cartmods.
En fonction des eproms utilisées et du cartmod réalisé, le nombre de redirection varient donc de 3 à plusieurs dizaines.
Pour savoir comment les redirections vont s'effectuer il est nécessaire de comparer le pinout (la configuration en quelque sorte) de notre eprom au pinout de notre PCB.
Je vais prendre un exemple assez simple, celui d'une eprom 27C801 (snes) pour le jeu Nightmare Busters.
En comparant les 2 pinouts, à gauche celui de l'eprom et à droite celui du PCB, on constate que 5 pattes de l'eprom ne correspondent pas au trous du PCB: A16, A17, A18, A19 et /OE.
Il va donc falloir falloir rediriger ces pattes au moyen de fil comme ci dessous.
Voici pour le concept général, une fois bien maitrisé, il vous suffira de récupérer les pinouts de l'eprom et des PCBs utilisés pour pouvoir déterminer les redirections à effectuer. Assez simple non?
Google et le site Romlab devrait vous permettre de récupérer facilement les pinouts.
Quelques indications supplémentaires concernant la mégadrive
Les eproms que l'on utilise communément sont les 27C322, avec une redirection de 3 fils. C'est toujours le même schéma c'est pour cela que je conseille dé débuter par le cartmod megadrive plus simple.
pin (patte/connecteur) n°A18 de l'eprom sur le pin n° B7 du connecteur cartouche
pin (patte/connecteur) n°A19 de l'eprom sur le pin n° B8 du connecteur cartouche
pin (patte/connecteur) n° A20de l'eprom sur le pin n° B9 du connecteur cartouche ou à la pin 5 du composant 74HC00 pour un jeu avec SRAM
En espérant que cela vous sera utile
Ce topic a pour but de vous aider à assimiler le concept du cartmod et la méthode à employer. Il y a bien sur des cas particuliers, des subtilités sur lesquelles je ne me suis pas attardées, n'hésitez donc pas à poser des questions mais surtout à vous documenter par vous-mêmes c'est comme cela que l'on apprend le mieux.