まこと の ブログ

MaKoTo no burogu — Journal de bord…

Aller au contenu | Aller au menu | Aller à la recherche

Makoto no Akedo V2

Il m'aura fallu quelques jours… oui… pour faire une mise à jour du LiveCD/USB de mon système Arcade ! ^^
Pour rappel, une distribution GNU/Linux qui tienne sur une ISO, permettant d'installer la borne sans connexion internet, et de la tester en live

Mais aussi en nouveautés :

- Une installation automatisée.
- Un écran d'accueil custom.
- Le mode persistant pour la session Live, permettant de garder sur la clef toutes les roms stockées et autres config de joystick effectuées.



Le LiveCD/USB Makoto no Akedo :

Elle est en 64bits,
compatible avec les roms version 0.161, (patché hiscore, nonag, gameinfo)
et utilisable uniquement sur un écran LCD 4/3.

Vous trouverez les jeux dans un torrent contenant l'intégralité des roms compatibles avec cette version, disponible sur archive.org.

  • Pour la déployer sur une cléUSB : (remplacer sdX par votre clé)
dd if=live-image-amd64.hybrid.iso of=/dev/sdX bs=4M; sync

Depuis Windows c'est possible avec Rufus.

  • Pour profiter du mode persistent, c'est un peu plus complexe :

Suite au déploiement, il faut en effet créer une partition sur l'espace restant de clefUSB, nommée persistence, et créer un fichier persistence.conf à la racine de celle-ci.
Ce fichier doit simplement contenir :

/home

Ceci afin d'indiquer à la session live de stoker les fichiers du /home sur cette partition.
Le premier démarrage sera un peu plus long, car le contenu du /home y sera donc copié.

Pour simplifier la tâche, j'ai écris un script pour automatiser la copie de l'iso et la gestion de la partition persistence.
Il faudra déposer CreationCleUsbArcade.sh à coté du fichier MakotoNoAkedo64bitsV2.iso, l'exécuter depuis un terminal et suivre les instructions. (À vos risques et péril, en cas d'erreurs due au script)

sudo ./CreationCleUsbArcade.sh



La session LIVE :

  • Pour l'utiliser c'est très simple, on valide sur Système Arcade Live Session, on patiente, X démarre et AdvanceMenu se lance alors.

splash01.png

  • Pour utiliser des manettes ou joysticks USB, il faudra les avoir branchés au démarrage, ou tout du moins avant que le menu ne soit démarré.
  • J'ai laissé deux jeux pour tester, un vertical (TATE) et un horizontal (YOKO).

MakotoNoAkedoLive04.png
MakotoNoAkedoLive05.png MakotoNoAkedoLive06.png Il est possible d'en ajouter en connectant sur l'ordi une autre cléUSB qui contient un dossier RomTATE et un dossier RomYOKO contenant les roms à rajouter, puis d'utiliser le menu Command pour lancer le transfert.

  • À tout moment il est possible de passer l'écran en TATE via le menu Command.

On prendra évidemment soin de tourner l'écran de 90°, et notez bien qu'en TATE n'apparaissent que les jeux verticaux dans le menu !
On repasse en YOKO, de la même manière.
MakotoNoAkedoLive07.png MakotoNoAkedoLive08.png MakotoNoAkedoLive09.png

  • Pour configurer les manettes, ça se passe dans les options de mame, comme on a l'habitude.
  • Pour ajouter des imagettes correspondants au jeux, il faudra télécharger un pack de snap et de titles et les déposer dans les dossiers /home/arcade/.advance/snap et /home/arcade/.advance/titles. (peut se faire directement sur la clefUSB depuis un ordi sous GNU/Linux, sinon en ligne de commande pour le système installé, ou encore à l'aide d'une session live Ubuntu pour les plus réfractaires)
  • Pour éteindre, un appuis bref sur le bouton power de l'ordi et le système s'arrête.

Pour les droits root de la session live, tout se fait avec sudo et le

- Mot de passe utilisateur : arcade



L'installation sur disque dur :

  • Sélectionner Installer sur le disque, puis confirmer :

splash02.png
splash03.png
Et donc l'installation se fait toute seule en écrasant tout le disque dur de l'ordi.
À la fin on est invité à retirer la clefUSB et presser une touche pour redémarrer l'ordi.

- Mot de passe root : arcade
- Nom d'utilisateur : arcade
- Mot de passe utilisateur : arcade

  • Si vous souhaitez utiliser le réseau, ne serait-ce que pour installer des logiciels supplémentaires :

Un bug (ou une erreur de ma part) dans Live Build fait que la configuration réseau n'est pas prise en compte… Pour y remédier, lancer les trois commandes suivantes :

echo "deb http://ftp.fr.debian.org/debian/ stretch main contrib non-free" >> /etc/apt/sources.list
echo "auto eno1" >> /etc/network/interfaces
echo "iface eno1 inet dhcp" >> /etc/network/interfaces
service networking restart
  • Encore une chose, il se peut qu'avec une machine moderne, la carte son par défaut soit HDMI et que vous préféreriez utiliser des enceintes ou un casque en direct depuis la prise Jack.

Sauf que du coup le son sort par le HDMI… Pour sortir sur le Jack, il faut sélectionner la carte son !
Via sudo ou en root, la commande aplay -l permet de lister en détail les périphériques audio :

**** Liste des Périphériques Matériels PLAYBACK ****
carte 0: HDMI [HDA Intel HDMI], périphérique 3: HDMI 0 [HDMI 0]
  Sous-périphériques: 0/1
  Sous-périphérique #0: subdevice #0
carte 0: HDMI [HDA Intel HDMI], périphérique 7: HDMI 1 [HDMI 1]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
carte 0: HDMI [HDA Intel HDMI], périphérique 8: HDMI 2 [HDMI 2]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
carte 1: PCH [HDA Intel PCH], périphérique 0: ALC3239 Analog [ALC3239 Analog]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0

Il s'agit donc de la carte 1 et du sous-périphérique 0, qu'il faut spécifier en créant

  • Le fichier ''/home/arcade/.asoundrc" :
pcm.!default {
  type hw
  card 1
  device 0
}

Puis de relancer X avec les commandes killall Xorg (en sudo ou root) puis startx (ou redémarrer).

  • Pour régler le niveau sonore, utiliser la commande alsamixer, et pour sauvegarder les modifications, alsactl store 0 (en sudo ou root).


Notes de version :

  • Mis à part AdvanceMenu v3.7 pas de mise à jour software pour cette version, car ça ne fonctionne pas…!

J'ai tenté de faire fonctionner le Mame disponible depuis les dépôts, et aussi de compiler la version actuelle (0.197), mais rien n'y fait, comme évoqué la dernière fois les joysticks ne fonctionnent pas… La faute à SDL2 encore ?

Pas si sûr pour le coup, car au bout de nombreuses heures d'investigations, il s'avère que ces deux Mame là fonctionnent très bien dans un environnement de bureau (Xubuntu18.04, Ubuntu16.04).
Par contre les sticks USB et le clavier ne répondent pas du tout lorsque qu'on les exécutes depuis un tty via startx… seule la souris fonctionne.
C'est con, c'est exactement comme ça qu'est exploité Mame dans notre image ISO.

Têtu et tenace que je suis, j'ai fini par me résoudre à lâcher l'affaire, pour limiter les pertes de temps irrécupérables, et tout de même synthétiser le travail accomplis avec une iso fonctionnelle malgré tout.
À noter aussi que même si les dernières version de mame supportent de base les jeux Cave, les Highscores, et le no nag screen, il reste l'encart game info qui s'affiche au début de chaque jeux.
Il existe un patch nommé : suppression fournit par les amis du forum.arcadecontrols.com censé vire le game info, et même si le patch s'applique sur les sources de mame sans broncher, ça ne fonctionne pas.
Voilà voila… si quelqu'un à une solution à apporter, j'en serais heureux, car j'en ai soupé ^^;

Les améliorations pour une future version :

- Une version 32 bits de l'image iso.
- Une version pour écran cathodique.

Ajouter un commentaire

Les commentaires peuvent être formatés en utilisant une syntaxe wiki simplifiée.

Fil des commentaires de ce billet