Mame et des jeux Cave, avec GNU/Linux

Quel émulateur pour quel jeu, astuces de config...
Nouvelles releases, updates d'émulateurs. Le forum général sur l'émulation.
Répondre
Avatar de l’utilisateur
MaKoTo
No-bullet mode
Messages : 29
Inscription : 29 mars 2014, 18:20
Contact :

Image

Récemment j'ai effectué une mise à jour du Software de ma borne.
Et finalement du Hardware aussi…
Dans le but de pouvoir jouer les excellents jeux Cave.

C'est en cherchant après les roms manquantes que je me suis rendu compte que :
1 - La version d'AdvanceMame que j'utilisais jusqu'ici n'en supporte que quelques un (Donpachi, Dodonpachi, ESP Rade, Guwange…).
2 - La version de Mame dispo dans les dépôts Debian (0.145) en supporte un peu plus (ESP Galuda, Dodonpachi Dai Ou Jou).
3 - Les roms des jeux édités après l'an 2002 ne sont pas supporté par Mame.

La commande :

Code : Tout sélectionner

mame -listfull
donne la liste des roms qui fonctionnent avec la version dont on dispose.

:| Pourtant je lis un peu partout que l'émulation de ces jeux fonctionnent, et de découvrir que Cave a contacté le projet mame aux alentour de 2011 pour demander le retrait de ces jeux les plus récents, ceux-ci continuant d'être exploités sur diverses consoles.

C'est ainsi que les sources mamedev ont été purgées du driver SH3, celui-là même qui permettait l'émulation de jeux comme Ketsui, ESP Galuda2 et Mushihimesama.

Cependant les gens ayant téléchargés le binaire 0.143u9 (28 Jun 2011) à l'époque disposent d'un émulateur capable de faire tourner ces jeux, et c'est un peu difficile à dégoter.

En fouillant le net j'ai fini par retrouver les sources de mame0.143u9 sur un vieux dépôt ppa Ubuntu, restait donc à le compiler pour l'essayer.

Compilation de mame0.143u9 :

Quelques trucs issus de mon expérience, à savoir avant de se lancer :
:arrow: L'opération se déroule sans problème depuis Ubuntu 12.04, mais il faut savoir qu'avec une distribution plus récente, la compilation risque fortement de se planter, de même qu'avec Debian Wheezy 7, la distribution que j'utilise désormais sur ma borne.
En effet, il faut utiliser le compilateur gcc 4.6 et nous sommes depuis passé depuis à gcc 4.7.
:arrow: À savoir aussi qu'un binaire compilé sur un Ubuntu fonctionnera sur un autre Ubuntu, même plus récent (pour le peu que les librairies requises soit installées, sinon elle seront réclamées par mame, restera à trouver les bon paquets), mais que ce même binaire ne fonctionnera pas sous Debian.
:arrow: De plus, pour obtenir un mame 64 bits, il faut simplement le compiler sur un Ubuntu ou un Debian 64bits.
:arrow: Enfin, il faut au moins 2 Go de ram disponibles, sinon l'opération plantera lors de la compilation de quelques fichiers particulièrement lourds.

Prêt ?

Vérifier la version de gcc disponible :

Code : Tout sélectionner

gcc -v
s'il indique gcc version 4.6.x, passer à la suite (Installation des prérequis), sinon il faut le désinstaller et mettre gcc 4.7 (testé sur Debian 7 avec succès) comme ceci :

Code : Tout sélectionner

apt-get remove gcc
apt-get install gcc-4.6 g++-4.6
ln -s /usr/bin/gcc-4.6 /usr/bin/gcc
ln -s /usr/bin/g++-4.6 /usr/bin/g++
Installation des prérequis :

Code : Tout sélectionner

apt-get install build-essential libgtk2.0-dev libgnome2-dev libsdl1.2-dev libsdl-ttf2.0-dev libqt4-dev
Compilation :
Après avoir décompressé les sources, aller dans le dossier attenant au fichier makefile, le rendre exécutable :

Code : Tout sélectionner

chmode +x makefile
Puis lancer la commande :

Code : Tout sélectionner

make
Patienter…
Lorsque l'opération est terminée, le fichier binaire mame est disponible à côté du makefile.
On pourra le déplacer comme bon nous semble et le lancer comme ceci :

Code : Tout sélectionner

./mame
Banzai !

Compilation de mame0.148 :

Pour diverses raisons on pourrait avoir besoin d'une version plus récente de mame qui puisse supporter les jeux CAVE-SH3.

:) Pour cela il existe des patch (fichier .diff) qu'on utilise pour modifier les sources d'un mame standard et le rendre compatible au jeux CAVE-SH3.

vivanno, propose un patch pour la version 0.148 de mame :

Après avoir téléchargé et décompressé les sources de mame 0.148, il suffit, toujours depuis le dossier concomitant au makefile d’exécuter les commandes suivantes :

pour tester le patch :

Code : Tout sélectionner

patch -p0 -E –binary –dry-run < fichier.diff
pour appliquer le patch :

Code : Tout sélectionner

patch -p0 -E –binary < fichier.diff
Puis de compiler mame de la même manière que précédemment.


Liste des jeux CAVE supportés :

- Donpachi (1995)
- ESP Rade (1998年4月)
- feveron (1998年10月) = Fever S.O.S. (export title)
- guwange (1999年7月)
- Progear no Arashi = Progear (export title) en YOKO (2001)
- Do Donpachi Dai Ou Jou (2002年4月)
- Do Donpachi Dai Ou Jou - Black Label (limited edition)
- ketsui - Kizuna Jigoku Tachi (2003年1月)
- espgaluda (2003年11月14日)
- mushihime sama (2004年11月)
- ibara (2005年6月24日)
- espgaluda2 (2005年11月25日)
- pinksweets (2006年4月21日)
- mushihimesama-futari (2006年10月27日)
- muchimuchi pork (2007年4月26日)
- deathsmiles( 2007年10月19日)

- Dodonpachi 2 est trop mal émulé pour être joué convenablement.

:) Tous ces jeux fonctionnent bien avec mame 0.143u9, et jusqu'à ESPGaluda un vieil ordinateur s'en sort très bien ! (Pentium4@2.4GHz, 512Gio de ram, video ATI Radeon 9200 Pro (RV 280)).
:? Par contre tous les jeux sortis après 2003 rament comme c'est pas permis avec 50-60% de performance au lieu des 99-100% habituel.
:arrow: Après quelques tests de performances sur diverses machines, c'est dans un Intel Core2Duo @2,66Ghz que j'ai trouvé la puissance nécessaire pour faire tourner à 97-99% les jeux les plus gourmand tel que ESPGaluda2 ou Mushihime-Sama Futari.
Une carte vidéo Ati FireGLV3350 est suffisante, de toute manière les capacités du processeur graphique ne sont pas exploitée par mame dans cette configuration avec les pilotes libre radeon.
:arrow: Avec l'OS 64bits on gagne près de 10% de performance.

On peut lancer directement un jeu comme ceci :

Code : Tout sélectionner

./mame espgaluda2 -mt
:arrow: l'option -mt, pour activer le multi-thread et gagner jusqu'à 10% de performance supplémentaire.
http://makotoworkshop.org/

Message tapé en bépo sur un clavier orthogonal TypeMatrix
Sous GNU/Linux Ubuntu
Avatar de l’utilisateur
-S.L-
Counter Stop
Messages : 5720
Inscription : 17 mai 2012, 04:05
Localisation : Lisbonne

Sinon tu peux acheter les vrais jeux qui marchent eux a 100% :mrgreen:
ça passe ou ça casse

Image
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Il manque pas mal de titres, la liste des Cave s'est étendue depuis la version 0.152 et l'émulation a bénéficié d'optimisations.

Bref, une grosse prise de tête pour arriver à faire fonctionner une version obsolète, voilà pourquoi je ne me fatigue plus avec Linux depuis longtemps déjà...
Avatar de l’utilisateur
MaKoTo
No-bullet mode
Messages : 29
Inscription : 29 mars 2014, 18:20
Contact :

Inténessant ça, j'y jetterais un oeil à l'occasion !
http://makotoworkshop.org/

Message tapé en bépo sur un clavier orthogonal TypeMatrix
Sous GNU/Linux Ubuntu
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Bah ça reste très lent à moins d'avoir un processeur vraiment puissant, et même si ce n'est tout de même pas très bien émulé (vitesse incorrecte, bugs, input lag).
Avatar de l’utilisateur
MaKoTo
No-bullet mode
Messages : 29
Inscription : 29 mars 2014, 18:20
Contact :

J'ai testé la version 0.152 depuis les sources officielles, mais pas de jeux Cave disponible dépassant l'année 2002.
Si la liste des Cave s'est étendue depuis la version 0.152, il reste donc nécessaire de la patcher pour les débloquer.
http://makotoworkshop.org/

Message tapé en bépo sur un clavier orthogonal TypeMatrix
Sous GNU/Linux Ubuntu
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Ah non en fait il y a une grande hypocrisie de Mamedev à ce niveau là, parce que les drivers sont bien présents mais les roms ne sont pas disponibles dans les sets officiels.

Tu devrais essayer un build comme UME où toutes les roms jouables à ce jour sont listées.
Au passage la 0.153 vient de sortir et les Cave sont bien toujours là.
http://mamedev.emulab.it/haze/
(C'est tout frais vu que Haze n'a pas encore fait de commentaires)
Si tu n'aimes pas l'interface je te suggère d'utiliser un frontend classique typique comme
http://www.emucr.com/2014/01/mgui-v1581.html

Par contre je ne peux pas te dire où trouver les roms (et attention il faut les bonnes, ce qui n'est pas évident!). :P
Dernière modification par UltramanU le 09 avr. 2014, 17:50, modifié 2 fois.
Avatar de l’utilisateur
MaKoTo
No-bullet mode
Messages : 29
Inscription : 29 mars 2014, 18:20
Contact :

Oké
Merci pour les infos !
http://makotoworkshop.org/

Message tapé en bépo sur un clavier orthogonal TypeMatrix
Sous GNU/Linux Ubuntu
Avatar de l’utilisateur
MaKoTo
No-bullet mode
Messages : 29
Inscription : 29 mars 2014, 18:20
Contact :

Compilé UME 0153 sur Ubuntu 64 bits, ça tourne bien, effectivement, les Cave sont supportés directement et quelques nouveau jeux sont dispo.
Par contre j'ai mushisama qui rame alors qu'il tourne bien avec mame0148 patché SH3.
Je vais tester UME 0152 pour voir…
http://makotoworkshop.org/

Message tapé en bépo sur un clavier orthogonal TypeMatrix
Sous GNU/Linux Ubuntu
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

0.152 ne sera pas forcément plus rapide.
Enfin de toute façon sous Linux c'est un peu différent d'après ce que j'ai pu comprendre; de manière générale Mame est plus lent que sous Windows, mais je ne sais pas si les changements ont le même effet sous cet OS.
Côté Windows les Cave sont devenus plus rapides et moins buggués à partir de la 0.150 ou 0.151, mais à partir de là je pense qu'ils vont progressivement redevenir plus lourds/lents.
Mais on parle de quelques 5% ou 6% de plus ou de moins à chaque nouveau build.

Côté jeux à ne pas rater on peut nommer Guwange Special, DFK 1.5, DOJ Black, DeathSmiles MBL, Futari Black, Ibara Kuro...
Peu importe le build l'ensemble est lourd, la vitesse et les ralentissements ne sont pas corrects, les 'Yagawa' sont les plus lents, le son crache et n'est pas parfaitement synchro, et il y a beaucoup d'input lag.
Bref c'est pas encore ça, mais ça s'améliorera au fil des ans...

PS: Tu es peut-être déjà au courant mais il y a une fonction 'blitter delay' à activer par l'OSD en cours de jeu. On a accès à un slider qu'il faut régler sur environ 63% ou 65%, pour certains jeux c'est bénéfique aux ralentissements qui redeviennent plus proches du réel, mais ça reste assez fumeux...
Avatar de l’utilisateur
MaKoTo
No-bullet mode
Messages : 29
Inscription : 29 mars 2014, 18:20
Contact :

Oui, après quelques tests, j'ai l'impression que pour optimiser l'émulation, il faudrait déterminer la bonne version de mame (ou de ume) pour chaque jeu.
Avec AdvanceMenu il est facile de switcher d'émulateur à volonté.

J'ai pu rajouter DFK 1.5 et DeathSmiles MBL, les autres étaient déjà jouables avec mame0148.
Certains passages des jeux sont effectivement bien lent, mais pour le reste c'est toujours pratique pour s'entraîner avant d'aller éprouver ses nerfs en salle.
C'est d'ailleurs à ces occasions que j'ai pu constater les différences entre les vrais ralentissements dû à la PCB (qu'on retrouve émulé) et les faux dû à l'émulation.

Je n'avais pas vu l'option 'blitter delay', je regarderais ce que ça donne.
Merci pour ton retour d'expérience qui m'est bien utile :)
http://makotoworkshop.org/

Message tapé en bépo sur un clavier orthogonal TypeMatrix
Sous GNU/Linux Ubuntu
Répondre