Problème avec CRT avec RGB-Pi
-
J'avoue que faire un tuto pour les hdmi timing n'est pas du même niveau beaucoup plus de détail et d'explications necessaires. Perso je calcule pas grand chose, j'ai essayé de passer par des hdmi timing pour mon crt et je n'ai abouti à rien
-
@idarius parce qu'il n'en existe pas, de méthode facile ... Ironic a bcp cherché, moi aussi, et à part pomper des trucs existants ou des modelines de X11, on galère. Je ne sais pas si @ironic a joué les apprentis sorciers sur des timings exotiques en sacrifiant une TV sur l'autel du pixel perfect ou s'il a fait hdmi_timings 2e langue, mais ... sujet très compliqué oui
-
J'ai effectivement sacrifié un TV dans mes expériences d'apprenti sorcier
Durant mes essais, elle sifflait, criait, hurlait, m'affichait un tas de forme de synchro...J'ai pas pompé de trucs existants dans la mesure ou il n'y avait presque rien et les modelines X11 sont pour la plus part du temps pour des moniteurs.
Tout en assimilant un tas d'informations d'un peu partout, j'ai appris/compris de plus en plus de choses et ma TV m'a dit merci. Elle est toujours en vie et je l'utilise tous les jours. J'ai même l'impression qu'elle est rodée et encaisse plus facilement les fréquences farfelues.
C'est une petite TV qui a un mode 16/9 en appuyant sur un bouton (comme beaucoup de tv pas trop vielle je pense).
Dans le service menu, je peux faire des reglage pour le 50Hz et le 60Hz mais aussi pour le 4/3 et le 16/9.
J'ai donc réglé tout ça pour pouvoir choisir 4 modes de fonctionnement (fullscreen sans overscan).- 50Hz (4/3) : 288 lignes
- 50Hz (16/9) : 256 lignes
- 60Hz (4/3) : 240 lignes
- 60Hz (16/9) : 224 lignes
Je vais peut être même pousser le vis à piloter la broche 8 de la péritel en fonction de la fréquence affichée.
(5v a 8v sur cette broche pour le 16/9).
Ça permettra de basculer automatiquement en 4/3/,16/9 en fonction de la fréquence utilisée.RGB-Pi étant destiné a afficher les jeux, non pas pixel perfect mais line perfect (pour le pixel perfect, on est actuellement limité par le pixel clock, je le rappel), on ne peut pas afficher les jeux verticaux dans de bonnes conditions. J'ai donc séparé les jeux verticaux des jeux honrizontaux et créé 4 themes ES.
(MAME yoko, MAME tate, FBA yoko, FBA tate). YOKO : Honrizontal, TATE : Vertical
Les jeux tate tournent automatiquement de 90° (bon, pas la TV, faut la tourner).Les jeux d'arcade lancent également, automatiquement, la bonne résolution/fréquence.
Par exemple, si je lance Montal Kombat, j'ouvre une résolution de 1920x254x53.2Hz
(hdmi_timings 1920 1 100 320 260 254 1 1 3 36 0 0 0 53.20 0 40670000 1)
L’émulation est parfaite. (Parfait, c'est la PCB originale mais on s'en approche).RGB-Pi va pas gérer une quantité astronomique de résolution, il y aura du 50Hz et du 60Hz.
C'est beaucoup de travail (et d'adaptation en fonction des TV/CRT) mais je pense que si l'on souhaite respecter le line/pixel perfect, c'est aussi très important de respecter le framerate. -
Sous ES, en éditant le config.txt,
hdmi_timings 480 1 14 45 56 300 1 10 5 5 0 0 0 60 0 9600000 1
en remplaçant 300 par 270, c'est la résolution qui m'a l'air la plus adapté (bien que j'ai encore de l'overscan à gauche et à droite, mais plus en haut et en bas, c'est une petite victoire !).
Tant que je reste dans le 480, la TV a l'air d'accepter plus ou moins bien.
Dès que je touche au 480, j'ai l'écran qui se brouille par endroit (je ne connais pas le terme pour ce phénomène), ou l'image se met à sauter.Aussi, les modifications de l'hdmi_timings SNES que je fais dans recalbox.conf n'ont aucun effet.
Je pense qu'un autre fichier avec une autre résolution à la priorité mais je ne sais pas lequel (je ne sais pas comment connaître le fichier responsable).Il y a vraiment que les émulateurs SNES et PSX (l'ES aussi bien sûr) que j'aimerais régler, le reste ne m'intéresse pas vraiment.
J'essayerais avec le thème Recalbox-multi.
Voici des photos de l'overscan sur ES avec le timing cité plus haut.
Merci beaucoup pour vos explications mais je suis assez noob dans ce domaine et je ne pensais pas que ça serait aussi compliqué (même si je comprends un peu plus à chaque fois).
Donc, désolé si je ne saisis pas tout, mais j'apprécie grandement votre aide. -
hdmi_timings 480 1 14 45 56 300 1 10 5 5 0 0 0 60 0 9600000 1
Ce HDMI_Timings est "incorrect". Néanmoins, les TV 50Hz/60Hz acceptent une large plage de fréquence. Il est a 55,36Hz/16.134kHzTu peux essayer ça :
hdmi_timings 480 1 24 45 70 270 1 10 10 8 0 0 0 50 0 9600000 1Si tu veux décaler l'écran a droite, augmente le 5eme paramètre (le back porch soit 70). Mets 75 ou 80.
hdmi_timings 480 1 24 45 75 270 1 10 10 8 0 0 0 50 0 9600000 1Tu auras un plus grand overscan a droite alors augment le 3eme paramètre (le front porch soit 24). Genre 28 ou 32. Pour réduire la surface d'affichage.
hdmi_timings 480 1 24 45 75 270 1 10 10 8 0 0 0 50 0 9600000 1
Tu peux aussi augmenter le vsync pour réduire la surface d'affichage, le 4eme paramètre.Je rentre pas trop dans les explications, je veux pas vous donner les outils pour détruire vos TV. Pas de parano, les TV encaissent les desynchro un moment, ca va pas exploser
Si t'as une desynchro, reboot rapidement le RPi en ayant préalablement remodifier le HDMI_Timings. Met de coté chaque Timings qui fonctionne, au cas ou.
-
@ironic +100000 merci de ces explications... tu serais partant pour écrire un howto à la manière de https://github.com/recalbox/recalbox-os/wiki/Connectez-votre-recalbox-ecran-crt-avec-HDMI-(FR)
ou du moins le corriger et l'augmenter avec tes compétences... moi j'utilise ce que tu a fournis, mais je ne maitrise pas toutes les subtilités des hdmi_timings ;)... tes explications sont en or
-
Je ferais bien un petit tuto mais je ne maitrise pas tout et surtout, des gars bossent sur l’éventualité de débloquer le pixel rate inférieur a 38.4Mhz.
Si c'est faisable, on utilisera les vrais timings des consoles et, je pense que ça conviendra au plus grand nombre.
Je donnerais quand même quelques explications prochainement. -
@ironic Il y a http://sommerp.net/doku.php?id=raspberry_pi_arcade qui permet un bon début quand même
-
Oui ca peut aider.
Pas mal de timings qui viennent de chez moi
Ya de quoi faire... -
Merci pour tout ces liens !
Je comprends un peu mieux le système de porch et compagnie.
Les modifications que je fais pour le timing de la SNES dans le fichier recalbox.conf ne semblent pas pris en compte.
C'est bien dans ce fichier qu'il faut effectuer les modifications ?Dois-je mettre quelque chose dans le fichier snes.cfg dans /recalbox/share/system/configs/retroarch ?
-
@ironic vi j'ai vu qu'il avait repris ted timings (mais il y a 2 mois ils n'y etaient pas), et ca m'a amené à l'issue github pour débloquer les pixel.clocks
-
@Lotageek faut recalbox 4.1 pour ça, Selena n l'endroit où tu edites
-
C'est dommage que le post du pixel clock avance pas, je cherche pas trop dans cette direction car le 1920 remplace pas mal de resolution honrizontales.
Il y a quelques temps, j'ai contacté Gert, la personne à l'origine du Gert VGA666, il n'a pas pu m'aider/renseigné car il ne connait pas trop les CRT. Cool de sa part d'avoir répondu quand même.Si un jour le pixel clock est débloqué, ça va nous obliger a trouver tous les timings de toutes les consoles/arcade. Ça va être un boulot considérable mais intéressant
-
@ironic d'ici là le firmware qui pond du 240p composite sera stabilisé et tout le monde va se rabattre dessus hahaha Parce que facile, quasi rien en configuration et ... 240p, quand même ! Me demande même si ca ne passerait pas sur du 15kHz çà ...
-
Composite vs RGB, mon choix est fait.
Apres, si on veut etre fidele aux consoles qui ont une sortie composite, c'est vrai qu'il vaut mieux utiliser le composite.
Perso, suis pro arcade, je joue pas trop aux consoles mais au moins y en aura pour tous les gouts.Rapide et facile (composite) ou plus complexe mais plus propre (RGB).
Le principal c'est que de plus ne plus de possibilités s'offrent a nous