Solved advance mame 4.1
-
@ acris je viens de tester , n'as tu pas fais une erreur avec /.advance ? chez moi je sais creer /advance pas .advance
pas contre les scores ne se sauvegardent pas même avec cette manip
pour les savestates il faut bien le clavier par contre même quant on lui met un cheffre il ecrit que les savestates ne sont pas officiellement supportée -
@alfacentory
si tu ne vois pas /recalbox/share/system/.advance
c'est que tu n'as pas bien configuré winscp pour afficher les dossiers cachés car c'est un dossier caché.
Merci pour les tests sur les saves statesSave State
une demande a été fait ici : https://sourceforge.net/p/advancemame/discussion/313511/thread/c20cd176/
-
@acris désolé j'étais passé par le samba , je n'avais pas capté , je resteste demain
-
Voilà mon fichier .dat. C'est celui qui est inclus dans le Advancemame, une fois compilé. Ce n'est pas le même et il est au format unix.
https://mega.nz/#!WMAnmQRA!2rcVZ5Hv7US3wu97e-PiGclGO6Ux7BQykh0ZSTF4hmQ
-
@alfacentory , j'ai réussi à les faire fonctionner les hiscores avec les indications données.
-
@acris de quel manière ? avec le .advance ? désolé j'avais carrément oublié de retester
-
@acris @alfacentory pas sur que ~/.advance existe par defaut
-
@Substring il crée l'arborescence de ~/..advance au 1er lancement d'un jeu.
-
Est-ce-que chez vous, Bad Dudes vs Dragonninja rame si vous désactivez l'option SMP ?
(C'est aussi le cas sur pas mal de jeux...)Le SMP (Symmetric Multi-Processing) permet d'avoir "plus de pèche" pour émuler les jeux mais ajoute un assez gros lag input. Je crois qu'il est activé par défaut.
Je l'ai désactivé pour tous les jeux et quand je vois un jeux qui rame, je l'active.
Sans le SMP, le lag input est, sur pas mal de jeu, "presque" imperceptible.Sinon, Advmame doit apporter la possibilité de créer à la volée les résolutions des jeux pour les CRT 15Khz.
Mais comment fait-il avec les jeux de plus de 256 lignes ?
Bon c'est impossible, ou alors, soit il passe en 625 lignes et jusque 288p
Ou, il divise la résolution verticale par 2.Personnellement, j'ai supprimé tout (les roms) ce qui utilise une résolution supérieur à 256p.
-
Tu utilises quoi comme manettes, tu est branché direct via le gpio.
Dernièrement il y a eu soit disant pour le rpi une optimisation du driver manette (moins de charge CPU et réduction de l'éventuel input lag).
Tu as testé l'utilitaire "advcfg" pour les réglages vidéo.
Et tient en parlant rom est ce que truxton2 fonctionne chez toi. Moi j'ai un retours menu à chaque fois. -
@ironic Quelques pistes pour advmame :
- tu edites
~/configs/advancemame/advmame.rc.origin
et tu passesdevice_video
àauto
- tu lances
TERM=xterm advcfg -rc ~/configs/advancemame/advmame.rc.origin
pour configurer ton écran - tu peux éventuellement lancer TERM=xterm advv -rc ~/configs/advancemame/advmame.rc.origin pour fignoler chaque résolution
Pour le SMP, voir sur le site de l'amulateur, il l'a déjà évoqué je crois. C'est du multithread, ni plus ni moins. L'avantage avec advmame c'est que la config par rom se fait dans le fichier de config
- tu edites
-
Pour la manette, j'utilise une iBUFFALO en USB (snes).
L'input lag le plus grand vient de l’émulation (de l’émulateur), que ce soit en USB (avec une manette pas trop pourrie) ou par GPIO, la latence est quasiment nulle.
truxton2 se lance mais écran noir.
On peut ouvrir le menu de advmame donc il n'est pas planté.
Après avoir quitté advmame, il nous dis que le CRC du fichier tp024_1.bin (qui est le programme du jeu) n'est pas le bon.
Il attend le CRC eb26f0e5 alors que la roms que l'on trouve partout a le CRC f5cfe6ee.
Je ne trouve pas cette rom...Je n'utilises pas advcfg car j'utilise mon script de génération de résolution avec une base de donnée de tous les jeux de advmame (issue du listxml de advmame).
Le python c'est pas mal
Aparté sur le python, je vois que le module pygame est installé, on peut le charger mais est-il pleinement fonctionnel ?
Les quelques exemples que je trouve sur le net ne fonctionnent pas, ou alors on peut pas utiliser pygame sans X ?Ça fonctionne du feu de dieu et ça permet d'adapter les résolutions aux éventuellement probleme de cadrage en fonction des TV.
Je sais bien @Substring que t'es pas pour les bases de donnés de jeux, c'est pour ça que j'en parle pas trop.
Mais sur mes 4 TV, le résultat est différent en générant une résolution identique.
Bandes noires à gauches ou à droite, trop d'overscan horizontal, pas centré horizontalement ou verticalement.
(Bien-sur, ça ne s'adresse qu'a ceux qui utilisent des CRT...)device_video
est bien surauto
. Idem surfb
.
sdl
ne fonctionne pas. (peut être du à mon intégration sauvage de advmame...).Je me demandais simplement si en mono thread, baddudes ramait car il tourne très bien sous mame078 et fba.
-
@ironic
la rom qu'il te manque est disponible, tu n'as pas checké ton romset avec clrmameproIl attend le CRC eb26f0e5 alors que la roms que l'on trouve partout a le CRC f5cfe6ee
-
@ironic said in advance mame 4.1:
baddudes
C'est vraiment significatif le ralentissement avec baddudes, je viens de tester vite fait avec l'option SMP désactivé, (il est effectivement activé par défaut sur la version rpi), mais ça semble bien tourner.
Pour truxton2 je m'en doutais, mais merci pour la précision. Après remplacement du mauvais fichier .bin ça fonctionne convenablement. D'ailleurs la rom du set mame2010 est bonne.
-
Merci @acris
Effectivement, avec la bonne rom, Truxton 2 fonctionne parfaitement.
J'utilise pas tellement clrmamepro pour son interface assez lourde, mais faut dire qu'il fait du bon boulot.Il y a beaucoup de jeux pour lesquels on peut désactiver le SMP et ainsi diminuer l'input lag,
-
@ironic moi je te propose un truc au lieu de t'enteter avec ton script, ta bdd et tout le toutim.
Fais ce que je t'ai proposé. La calibration de CHAQUE mode video prend une eternité. Mais comme tu sais quelles resolutions valent le coup d'etre reglees, prends des resolutions bateaux communes, regle bien ton ecran pour ces quelques resolutions (oui, ca peut etre long) et laisse advmame. Sinon pourquoi j'ia mis advance mame a ton avis ? C'est justement poru profiter de ses capacités, pas pour réinventer la roue
Il n'y a pas X sur Recalbox voyons, tu devrais le savoir depuis le temps
J'ai (enfin) acquis une TV cathodique. Comme je sais que advancemame génère les bonnes résolutions avec les bonnes fréquences, ni une ni deux me suis fié à un de tes cas de tests pourris : R-Type. Donc là si je te sors une photo, tu verras de suite les défauts (mal centré, de l'overscan etc ...) mais une fois que j'aurai réglé la résolution, rtype sera en full screen et en 55 Hz sans poudre de perlimpimpin ou calculs alambiqués. je pense vraiment que ca vaut le coup d'essayer un chouia (meme si oui, tu peux le dire, c'est TRES laborieux de regler son ecran pour chaque resolution, surtout que l'écran d'aide n'est pas le moins explicite du monde)
-
Merci pour ta sollicitude mais je ne m’entête pas, je "m'amuse".
Et en plus j'apprends, me suis lancé dans le Python ya quelques jours...D'ailleurs, tout est fini pour Advmame, tout est opérationnel. Un seul paramètre à passer au script, le nom du jeu.
Advmame utilise également une (sa) base de donnée, j'utilise la même (listxml) mais avec plus de paramètres.
Je fais exactement ce que Advmame fait pour créer une résolution mais en un peu plus complexe et paramétrable.
Cela fonctionne également parfaitement pour Mame078 et Fba.Je comprends parfaitement que Recalbox ne puisse pas proposer la perfection automatique car il est destiné à tous les utilisateurs, même les moins expérimentés. Du plug'n play,
Je ne propose pas ma solution pour une intégration dans Recalbox.
Néanmoins, si une solution permet d'avoir une meilleur gestion des résolutions d'arcades, ça peut être intéressant.
J'en parle juste pour ceux qui voudrais essayer (utilisateurs expérimentés only) et donc ne pas faire de rétention d'informations.Oui je sais, ya pas de X sous Recalbox, je me demande simplement pourquoi je ne peux pas utiliser le module pygame bien qui soit installé sous Recalbox.
*ni une ni deux me suis fié à un de tes cas de tests pourris : R-Type
Lol, c'est dur ca -
@ironic je crois que le seul moment ou pygame est utilisé c'est pour la barre de progression d'un update je crois
Pour le cas de test r-type : c'est juste parce qu'il a une resolution et une frequence particulières, d'où le pk de mon test avec.
La question que je me pose, c'est : faut-il d'avord regler l'overscan dans le config.txt et ensuiteenvoyer la purée derrière ou ... 2h que je joue avec la tv, ca me vient à l'esprit.
Pour le côté power user, c'est qqc que j'ajoute au fur et a mesure dans recalbox, tout le monde n'a pas besoin que d'une solution plug'n'play.
Ca serait chouette de partager ton travail, pour plrs raisons :
- parce que ca n'interesse pas que recalbox (je pense que quand retropie va trouver ca ils vont se jeter dessus aussi)
- parce que je peux en faire une intégration dans recalbox
- parce que ca fait qq mois qu'on est bcp à bosser dessus, chacun à sa facon, ca serait un peu l'aboutissement de tout ca
-
Bon, j'ai été un peu long mais faut le temps pour se familiariser avec le Python.
@Substring
Si tu retrouves le script dont tu passes, fais moi signe, je voudrais faire une interface graphique en python pour créer/regler les HDMI_Timings. (Si j'ai le temps ou pas le choix, je ferais ca en C/SDL).
Le config.txt doit pas mentionner d'overscan, voici le mien (Attention c'est pour l'overlay de RGB-Pi):
hdmi_timings=460 1 22 51 80 282 1 6 6 19 0 0 0 51 0 9600000 1
gpu_mem_256=128
gpu_mem_512=256
gpu_mem_1024=512
avoid_safe_mode=1
kernel=zImage
dtoverlay=pi3-disable-bt-overlay
dtparam=audio=on
dtoverlay=pwm-2chan,pin=18,func=2,pin2=19,func2=2
dtoverlay=rgb-pi
enable_dpi_lcd=1
display_default_lcd=1
dpi_output_format=6
dpi_group=2
dpi_mode=87
Voila comment je procède pour Advmame (fonctionne également pour mame078 et fba).
J'ai créé une base de données à partir du fichier listxml de Advmame.
Dans cette base de données, il y a tous les jeux supportés par Advmame (enfin pas tous, que les 15Khz).
- Les résolutions verticales, les fréquences, les orientation.
- Il y a également la position et la taille de l’écran (de la résolution ouverte) horizontalement et la position verticale.
(Ça permet de "calibrer' au mieux chaque jeux et je vous prie de croire que c'est utile) - Le multi-thread est désactivé par défaut et peux être réactive individuellement (SMP_YES).
(Il y a plus de jeux qui n'en n'ont pas besoin et ça permet de diminuer l'input lag). - Puis il y a la fréquence horizontale et les porchs/syncro.
(Inutile d'y toucher saut éventuellement pour certains moniteur récalcitrants).
J'ai créé un script en Python qui cherche le jeu dans la basse de donnée et exploite les paramètres. Si le jeux n'y est pas, c'est retour sous ES
(On peut eventuellement lancer une rsolution stadard mais je ne l'ai pas prevu pour le moment).- Le script créé et lance un HDMI-Timings en fonction des données du jeux, lance le jeu et quand on quitte le je, restaure les HDMI_Timings d'ES.
- Le fichier
advmame.rc
et copier (avant le lancement du jeu) dans /tmp, modifié pour configurer l'orientation du jeu.
display_rol no - misc_smp no
Le script est ici.
Il faut l'utiliser comme ceci (Bon, il faut surement un peut adapter les chemins des fichiers dans le script)
emulator_launcher.py /recalbox/share/roms/advmame/aburner2.zip /recalbox/share/advmame_games.txt advmame
De cette facon, Tous les jeux 15Khz d'Advmame se lance avec la bonne résolution, la bonne fréquence et la bonne orientation.
Les réglages ont été fait sur une TV Trinitron 36cm et correspondent a6, -25, 5
dans la base de donnée.
Sur une autre TV Trinitron de 36cm, je dois metre0, -25, 5
Je suis pas sur que tout cela soit utile a beaucoup de monde mais dans la mesure ou cela fonctionne également pour mame, fba et les consoles, ça mérite d’être étudier.
- La partie la plus intéressante du script est forcement le générateur de HDMI_Timings.
Personnellement, je vais continuer dans cette voie car ça fonctionne du feu de dieu (Testé sur 7 TV CRT).
Et petit question pour la fin aux membres de Recalbox.
Est-ce que ça ne vous dérange pas qu'on ouvre un sujet exclusivement consacré a RGB-Pi ? (Qui je le rappelle est Recalbox a 99.99%). Ça permettra de dégrossir la future intégration du CRT dans Recalbox.Bon, comme je me suis lancé dans Python, vais surement réintégrer configgen dans mes bidouilles
-
@ironic Là ca appelel à 10000 questions, bon courage
- ton hdmi_timings du config.txt, il n'est que pour ES si je devine bien ?
- le triplet
6 -25 5
tu le règles à partir de quoi ? - pk réinventer ce que advmame fait déjà ?
- comment tu gères les jeux à plus de 224/240 lignes (genre rtype) ? Me souviens avoir lu que les tv entrelacent au-delà de 288 lignes (c'est de toi en plus)
- Pourquoi diable ne pas laisser advmame faire son taf tout seul ? Genre advcfg -> on configure le type de TV -> on ajuste l'écran -> en avant Guingamp !
- tu gères comment les moniteurs TRES capricieux genre PVM ?
- ca marche avec imame4all ? hahaha je rigole
- avec tout ca, il faut tjrs un retroarch.cfg par jeu pour caler le viewport ou non ?
Pas utile à bcp de monde tu dis ? Mec, tu aurais été à la HFS ce weekend ... Autant l'an dernier ils nous ont regardé avec une drôle de tête (LCD, pas pixel perfect, lag input etc ...), autant depuis qu'on dit qu'on bosse sur du 15k, ils commencent à être prêts à délaisser leurs PC pour un pi (véridique) (c'est même la conclusion de Metheore lors de l'intervention de Recalbox à la HFS 3, visible sur twitch, lien dans le fofo)
Pour RGB-Pi ... Là je suis bcp plus réticent:
- nous ne sommes pas le support de rgb-pi, bien que tu sembles très en contact avec aTg
- pas véritablement de raison de privilégier rgb-pi plus qu'une autre solution genre HDMI2VGA. Je pense notamment à ceux qui disposent d'un moniteur PVM et qui sont sur BNC, et qui n'ont donc aucune raison de s'attarder sur rgb-pi
- il profite très largement de notre travail sans y contribuer d'une quelconque façon
- Je n'ai pas vu une seule fois les sources de rgb-pi OS, alors que la license GPL de Recalbox le lui impose. Au passage, c'est assez scandaleux d'oser renommer Recalbox à cette fin.
- C'est qqu qui très clairement fait de l'argent sur le travail de Recalbox et de sa communauté. Sans Recalbox, il n'aurait pas d'avenir. Inversement, le CRT peut tout à fait fonctionner sans lui
Je ne te cache pas qu'on en a discuté ce weekend et qu'on est très mitigé sur la bonne réciprocité du travail de l'un envers l'autre. Je constate qu'on bosse pour lui, mais dans l'autre sens ...
Par contre, j'admire le travail que tu as fourni, très sincèrement ... En 6 mois tu as abattu un travail énorme et peux te targuer d'avoir a peu près tout défriché niveau arcade ... Franchement je suis impressionné ! Tout mon humble respect !
On a eu énormément de discussions ces 4 derniers jours sur le CRT entre nous ou avec d'autres, pour arriver à la triste conclusion que c'est juste impossible sans DB. Même pour te dire, j'ai commencé à plancher avec un dev retroarch sur le sujet pour voir comment se simplifier la tâche ... mais clairement, c'est l'enfer.
Maintenant, si je comprends bien, tu veux faire un mini "advcfg" histoire de caler les 3 chiffres magiques, c'est bien ca ?
Et dire que les consoles ca va etre le même enfer, voire pire avec celles qui changent de resolution en cours