[Tuto] Convert CPS-1 : Faire un Senjo no Okami 2 (Mercs jap) pour B-board 91634B-2 (B-board SF2CE)

Voir le sujet précédent Voir le sujet suivant Aller en bas

[Tuto] Convert CPS-1 : Faire un Senjo no Okami 2 (Mercs jap) pour B-board 91634B-2 (B-board SF2CE)

Message  Willax le Dim 10 Mai 2015, 21:22

Hello all,


A l'instar du topic pour se confectionner un GnG ver Release pas à pas par Bonky et un Mega Twins par moi-même sur une 634B-2 (B-board jap de SF2CE), je vous propose cette fois-ci de réaliser une convert de Senjo no Okami 2 (Mercs jap).


Prérequis :
- un prog d'eproms +40 pins DiL ;
- des eproms : dix 27c4096 (ou 27c4002) pour le main code et les Gfx, une 27c512 et deux 27c010 pour la partie sonore ;
- un GAL 16v8d ;
- le soft cps1pal de l'ami neocps1 pour générer un PLD : http://arcade-area.lebonforum.com/t815-outil-de-generation-automatise-de-pals-video-pour-cps-1 ;
- un éditeur hex, genre Winhex ;
- un soft pour la compilation du PLD en JEDEC, genre WinCupl ;
- et enfin, le set de roms du jeu Mercs (World) ainsi que celui de Senjo no Okami 2 ;
- Lunar IPS Patcher ou équivalent (facultatif).


1/ Décompressez le set de roms du jeu Mercs (World), identifiez les 4 roms Gfx de 512 Ko (so2-6m, so2-8m, so2-2m et so2-4m) et burnez-les sur des 27c4096 (ou 4002), puis placez respectivement sur la B-board l'eprom qui contient la rom so2-6m sur le socket 1 en 3A, celle avec la rom so2-8m sur le socket 2 en 4A, celle avec la rom so2-2m sur le socket 3 en 5A et enfin, celle avec la rom so2-4m sur le socket 4 en 6A.
Vous noterez qu'on obtient exactement les mêmes roms de 512 Ko pour la ver jap (Senjo no Okami 2) après les avoir unifiées 2 à 2, donc inutile de perdre du temps à le faire.

Toujours dans le set de Mercs World, identifiez les 8 roms Gfx de 128 Ko (so2_24.7d, so2_14.7c, so2_26.9d, so2_16.9c, so2_20.3d, so2_10.3c, so2_22.5d et so2_12.5c), elles sont identiques dans la ver jap, mais avec des noms différents... ensuite, il va falloir faire des blocs de 256 Ko (concaténer) avec 2 fois la même rom.
Prenez la 1ère rom : so2_24.7d, et collez-lui à la suite la même rom (so2_24.7d) pour obtenir le 1er bloc de 256 Ko que vous appellerez bloc1.bin (soit par copié/collé à la suite via l'éditeur hex ou via un batch : document texte avec l'extension .bat sur lequel on double-clique ; voir la commande ci-dessous)
Code:
copy/b so2_24.7d + so2_24.7d bloc1.bin
;
- renouvelez l'opération avec la 2nde rom : so2_14.7c, collez-lui à la suite la même rom (so2_14.7c) pour obtenir le 2nd bloc de 256 Ko que vous appellerez bloc2.bin ;
- collez le fichier bloc2.bin à la suite du 1er bloc (bloc1.bin) pour obtenir un fichier de 512 Ko que vous appellerez rom5.bin ;
- renouvelez l'opération avec la 3ème rom : so2_26.9d, collez-lui à la suite la même rom (so2_26.9d) pour obtenir le 3ème bloc de 256 Ko que vous appellerez bloc3.bin ;
- renouvelez l'opération avec la 4ème rom : so2_16.9c, collez-lui à la suite la même rom (so2_16.9c) pour obtenir le 4ème bloc de 256 Ko que vous appellerez bloc4.bin ;
- collez le fichier bloc4.bin à la suite du 3ème bloc (bloc3.bin) pour obtenir un fichier de 512 Ko que vous appellerez rom6.bin ;
- renouvelez l'opération avec la 5ème rom : so2_20.3d, collez-lui à la suite la même rom (so2_20.3d) pour obtenir le 5ème bloc de 256 Ko que vous appellerez bloc5.bin ;
- renouvelez l'opération avec la 6ème rom : so2_10.3c, collez-lui à la suite la même rom (so2_10.3c) pour obtenir le 6ème bloc de 256 Ko que vous appellerez bloc6.bin ;
- collez le fichier bloc6.bin à la suite du 5ème bloc (bloc5.bin) pour obtenir un fichier de 512 Ko que vous appellerez rom7.bin ;
- renouvelez l'opération avec la 7ème rom : so2_22.5d, collez-lui à la suite la même rom (so2_22.5d) pour obtenir le 7ème bloc de 256 Ko que vous appellerez bloc7.bin ;
- renouvelez l'opération avec la 8ème rom : so2_12.5c, collez-lui à la suite la même rom (so2_12.5c) pour obtenir le 8ème bloc de 256 Ko que vous appellerez bloc8.bin ;
- et enfin, collez le fichier bloc8.bin à la suite du 7ème bloc (bloc7.bin) pour obtenir un fichier de 512 Ko que vous appellerez rom8.bin... vous devriez obtenir les roms suivantes :
rom5.bin CRC32 : 2A1F56ED ;
rom6.bin CRC32 : 5002F09E ;
rom7.bin CRC32 : 1BB93A19 ;
rom8.bin CRC32 : 7512F4A3.

Si les roms sont correctes, vous pouvez les burner sur des 27c4096 (ou 4002) et les placer respectivement sur la B-board (l'eprom qui contient le fichier rom5.bin sur le socket 5 en 7A, l'eprom qui contient le fichier rom6.bin sur le socket 6 en 8A, l'eprom qui contient le fichier rom7.bin sur le socket 7 en 9A, et enfin, l'eprom qui contient le fichier rom8.bin sur le socket 8 en 10A).


2/ Identifiez les roms de la partie sonore so2_09.12b (CPU audio) et les 2 samples so2_18.11c et so2_19.12c, puis burnez la rom 09 sur une 27c512, les 2 samples sur deux 27c010 et placez respectivement sur la B-board la 27c512 sur le socket 9 en 12A, l'eprom qui contient la rom 18 sur le socket 18 en 11C, et enfin l'eprom avec la rom 19 sur le socket 19 en 12C.
Vous noterez que Senjo no Okami 2 utilise exactement les mêmes roms, mais avec d'autres noms.


3/ Décompressez le soft de l'ami neocps1 (voir son topic [lien posté plus haut] pour plus d'infos), et créez un nouveau document texte dans lequel vous copierez/collerez la structure suivante, puis vous renommerez l'extension .txt en .xml :

Code:
<?xml version="1.0" encoding="Windows-1252"?>
<CPSPAL NAME="SO63B" DEVICE="g16v8">
  <BANKS>
    <BANK ID="0">
      <PINS>
        <PIN ID="19"/>
        <PIN ID="18"/>
      </PINS>      
    </BANK>
    <BANK ID="1">
      <PINS>
        <PIN ID="17"/>
        <PIN ID="16"/>
      </PINS>
    </BANK>
  </BANKS>
  <MAPPING>
    <SCROLL1 START="0x0000" END="0x0bff" BANK="0"/>
    <SCROLL2 START="0x0700" END="0x38ff" BANK="0"/>
    <SCROLL3 START="0x3700" END="0x48ff" BANK="0"/>
    <SPRITES START="0x4700" END="0x78ff" BANK="0"/>
    <SPRITES START="0x8000" END="0xa8ff" BANK="1"/>
    <SCROLL2 START="0xa700" END="0xb8ff" BANK="1"/>
    <SCROLL3 START="0xb700" END="0xbfff" BANK="1"/>
  </MAPPING>
</CPSPAL>

Les plages ne sont plus exactement les mêmes que dans le détail du PAL O224B (PAL sur la B-board d'origine) dans le driver vidéo CPS-1 des sources de MAME... et, on utilise les pins 19 et 18 pour le bank 0 et les pins 17 et 16 pour le bank 1 à la place pour cette B-board.

Placez le XML créé à l'étape juste au-dessus dans le même dossier que l'exécutable du soft cps1pal de neocps1, lancez le programme (fenêtre Dos), puis entrez la ligne de commande :
Code:
cps1pal nomquevousvoulezpourleXML.XML nomquevousvoulezpourlePLD.PLD
et validez. Un PLD a été généré dans le même dossier que l'appli, ouvez-le avec un soft genre WinCupl, lancez la compilation (Run/Device Dependent Compile si c'est avec WinCupl), vous obtiendrez un fichier avec l'extension .jed (JEDEC), puis burnez-le sur un GAL 16v8 et placez-le sur la B-board en 1A sur le socket prévu à cet effet.


4/ Identifiez les 4 premières roms program de 128 Ko de Senjo no Okami 2 (so2_36.12f, so2_42.12h, so2_37.13f et so2_43.13h), lancez votre éditeur hex, genre Winhex, unifiez (allez dans Outils/Outils de Fichiers/Unifier/Octet à Octet (8bits) avec Winhex) la rom 36 avec la 42 pour obtenir un premier bloc de 256 Ko que vous nommerez en ce que vous voulez avec l'extension .bin.
Renouvelez l'opération pour unifier les fichiers avec les 2 roms restantes : la rom 37 avec la 43, puis renommez le 2nd bloc en ce que vous voulez avec l'extension .bin.
Maintenant, collez le second bloc obtenu à la suite du premier pour avoir un fichier de 512 Ko, vous pouvez le coller à la suite soit avec votre éditeur hex (vous sélectionnez tout le fichier et coupez/collez à la suite du premier bloc) ou via un batch sur lequel vous aurez juste à double-cliquer dessus :
Code:
copy/b nomdupremierbloc.bin + nomdusecondbloc.bin rom23.bin

Vous avez maintenant la rom program 23 de 512 Ko dans laquelle il faudra appliquer les patchs des adresses des registres de contrôle des layers, d'accès à la palette, les 4 priority masks, le CPSB ID et les valeurs des layers ainsi que leurs sommes pour que le jeu puisse tourner avec une C-board avec un PPU B-21 (comme sur la board d'origine de SF2CE).
La table des valeurs en fonction de la rév du PPU figure dans le driver vidéo CPS-1 dans les sources de MAME ; valeurs de base pour les jeux avec un PPU B-12 (Mercs/Senjo no Okami 2, une rév de SF2WW...) :

                       CPSB ID       ctrl     priority masks            palctrl    layer enable masks
CPS_B_12  0x20,0x0402,    0x2c,{0x2a,0x28,0x26,0x24},0x22, {0x02,0x04,0x08,0x00,0x00}

On note sur la table ci-dessus que les 3 dernières valeurs des masques d'activations des layers sont déjà les mêmes que pour un jeu avec un PPU B-21, donc il est inutile de les éditer. Ouvrez votre éditeur hex et patchez manuellement aux adresses indiquées complètement à gauche les valeurs à changer (ou sinon créez un patch, genre IPS Patch pour aller plus vite).

Valeurs à éditer sur la rom 23 de Senjo no Okami 2 :

Code:
  41F: 62 70
  51F: 6C 66
  6F7: 60 72
  6F8: 02 4E
  6F9: 40 71
  6FA: 04 4E
  6FB: 02 71
  6FC: 0C 4E
  6FD: 40 71
  6FE: 04 4E
  6FF: 02 71
  700: 66 4E
  701: 00 71
  702: FF 4E
  703: FE 71
  717: 6C 66
  947: 6C 66
  957: 6C 66
79A5D: 6C 66
79CB7: 6C 66
79CD1: 6C 66
79CEF: 6C 66
79D09: 6C 66

Après avoir appliqué les patchs, faîtes une inversion d'octets avec votre éditeur hex (Edition/Tout sélectionner puis Modifier les Données/Inversion d'octets 16 bits avec Winhex) sur la rom 23 (CRC32 de la rom à obtenir : EEE8A76E), puis burnez-la sur une 27c4096 (ou 4002) et placez-la sur la B-board sur le socket 23 en 8F.

Pour la rom 22, on note qu'en unifiant les roms program restantes de 128 ko de Senjo no Okami 2, on obtient la même rom que dans la ver World, identifiez la rom de 512 Ko so2-32m.8h, burnez-la sur une 27c4096 (ou 4002) et placez-la sur le socket 22 à moitié sous la C-board en 7F.


Voilà, c'est terminé, bon jeu !!


Dernière édition par Willax le Lun 11 Mai 2015, 20:03, édité 2 fois
avatar
Willax
Pirate
Pirate

Messages : 415
Date d'inscription : 08/02/2013

Revenir en haut Aller en bas

Re: [Tuto] Convert CPS-1 : Faire un Senjo no Okami 2 (Mercs jap) pour B-board 91634B-2 (B-board SF2CE)

Message  Bonky le Lun 11 Mai 2015, 01:15

Merci pour le tuto Smile
C'est vraiment bien expliqué Very Happy
Le changement de PPU c'est pour tout le monde maintenant  Very Happy

Je rajoute les octets à modifier pour la version USA 900608  Wink


Code:
 41F: 62 70
  51F: 6C 66
  6F7: 60 72
  6F8: 02 4E
  6F9: 40 71
  6FA: 04 4E
  6FB: 02 71
  6FC: 0C 4E
  6FD: 40 71
  6FE: 04 4E
  6FF: 02 71
  700: 66 4E
  701: 00 71
  702: FF 4E
  703: FE 71
  717: 6C 66
  947: 6C 66
  957: 6C 66
79C87: 6C 66
79EE1: 6C 66
79EFB: 6C 66
79F19: 6C 66
79F33: 6C 66


_________________
avatar
Bonky
Capcom lover ^^
Capcom lover ^^

Messages : 2776
Date d'inscription : 22/04/2012
Age : 42
Localisation : Rognac

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum