Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    Recalbox sur TV CRT en RGB

    Recalbox Général
    recalbox crt rgb
    51
    782
    705906
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ironic
      ironic last edited by

      Je créé une résolution par console a l'aide du hdmi_timings= dans le config.txt
      Ce qui m'oblige a rebooter après avoir changé de resolution.

      Voila ce que j'utilise pour le moment :
      #hdmi_timings=320 1 20 29 35 224 1 10 14 16 0 0 0 60 0 6400000 1 # 320:224 Sega Genesis (NTSC)
      #hdmi_timings=256 1 6 17 18 192 1 26 22 29 0 0 0 60 0 4800000 1 # 256:192 Sega Master System (NTSC)
      #hdmi_timings=256 1 8 17 21 224 1 7 10 24 0 0 0 60 0 4800000 1 # 256:224 NES, SNES (NTSC)
      #hdmi_timings=320 1 20 29 35 224 1 10 14 16 0 0 0 60 0 6400000 1 # 320:224 Sega Genesis (NTSC)
      #hdmi_timings=320 1 14 46 28 256 1 17 32 9 0 0 0 50 0 6400000 1 # 320:256 Amiga (PAL)

      #hdmi_timings=320 1 25 30 30 240 1 9 3 10 0 0 0 60 0 6400000 1 # En test
      #hdmi_timings=320 1 8 48 24 240 1 5 1 16 0 0 0 60 0 6400000 1 # OK mais légère déformation

      On a une approche différente, c'est vrai.
      Je me dis, le jeu fait 256x224 a 60Hz, donc j'ouvre une résolution de 256x224x60Hz
      Mais comme l'overscan bouffe pas mal l'image, je me dis.
      Il faudrait ouvrir une résolution de 280x256x60 avec un ViewPort de 256x224 pour pouvoir voir l'integralité du jeu.

      Tu utilises du 1920 en X mais je pense pas que ce soit utile (ou alors tu confirmes formellement).
      Déjà a l’époque avec mon Amiga 500, en 1280x256, je voyais que la TV était a la rue et zappait des "pixels" en X.

      Rpi2/Rpi3 - LCD/CRT- NES30 Pro-iBUFFALO

      archimage 1 Reply Last reply Reply Quote 0
      • archimage
        archimage @ironic last edited by

        @ironic Je confirme voir une différence dans la définition sur SF3 entre le 720 et le 1920, mais c'est possible que je me trompe, le temps de rebooter et de regler le viewport est suffisament long pour perdre la mémoire visuelle... Mais je constate que les contours des personnages sont moins grossiers en 1920 pourquoi je ne saurais pas te dire. Le seul effet négatif que j'ai eu c'est un sifflement plus prononcé de la télé, mais il a été résolu en rajoutant l'option margin dans hdmi_cvt. Il faut avoir une connaissance approfondie de libretro et de SF3 pour te confirmer ou pas si le core force la résolution de certains jeux. J'ai trouvé sur le net que je ne suis pas le seul à avoir remarqué ça. Sinon en dehors de cette histoire sur le 1920 je pense que ta démarche est très intéressante, je suis curieux de savoir comment on pourrait forcer une résolution différente entre chaque core sans avoir à rebooter... Aussi il faudrait savoir comment la télé traite réellement cette situation dans le cas des vraies consoles ? A-t-elle un mode particulier, prenons 240 lignes en 50 ou en 60, et que la console rentre plus ou moins dans le cadre ou produit-elle un espace différent pour chaque console ?

        1 Reply Last reply Reply Quote 0
        • archimage
          archimage last edited by archimage

          Je viens de faire une comparaison photo, le 720 est identique au 1920 c'était juste une impression... Cela veut dire que je gagnais de l'input lag inutilement.

          archimage 1 Reply Last reply Reply Quote 0
          • archimage
            archimage @archimage last edited by archimage

            Je pense que tu es sur la bonne piste, je vais tester tes timings un peu aussi.

            1 Reply Last reply Reply Quote 0
            • ironic
              ironic last edited by ironic

              Merci pour ces infos.

              Savoir comment les consoles traitent les TV, c'est ce que je cherche a comprendre car je n'arrive pas a reproduire les mêmes résolutions/aspects avec le Rpi.
              Par contre, j'avance avec les Timings, j'ai réussi a faire des trucs du genre avoir une même résolution et un vievport plus petit (je ne parle pas de Retroarch).
              Ça permet de réduire l'overscan tout en conservant la même résolution. C'est juste des pixels plus petits.

              Apparemment, on peut définir une zone dans laquelle sera définie une résolution.
              text alternatif
              Ça correspond peut être a ton "margin".

              J'avance doucement car j'ai fait péter un plomb a la TV plusieurs fois avec des Timings a la con.

              Rpi2/Rpi3 - LCD/CRT- NES30 Pro-iBUFFALO

              1 Reply Last reply Reply Quote 0
              • archimage
                archimage last edited by

                Il reste 2 hypothèses, soit c'est possible de créer autant de résolutions que de cores et les lancer au démarrage de chaque jeu, soit on doit rester à une seul résolution maxi et adapter le viewport à celle-ci, pour cela il faudrait connaitre le jeu qui a a résolution la plus élevée, je suppose que ça doit se situer entre libretrot mame et la dreamcast...

                1 Reply Last reply Reply Quote 0
                • archimage
                  archimage last edited by

                  En 640 par contre j'ai une perte importante de qualité, du tearing au scrolling horizontal et une image un peu déformée. Je remonte pour refaire des tests...

                  1 Reply Last reply Reply Quote 0
                  • archimage
                    archimage last edited by archimage

                    Bon je me suis rendu compte que je ne comparais pas bien, en utilisant les fleches de direction sur windows en zoomant il se deplace sur la même photo, alors qu'en fait j'avais deux fichiers entre lesquels je voulais alterner...

                    J'ai réalisé qu'il y avait une très subtile différence quand même sur la définition de certains éléments comme les textes

                    text alternatif

                    Encore une fois il se pourrait que ça vienne d'autre chose, mais il y a une différence perçue en vrai, quoique minime. Je trouve que c'est mieux en 1920, mais je ne saurais pas l'expliquer.

                    Difficile de prendre des photos aussi...

                    Si ça se trouve ça n'a aucun rapport avec la résolution, juste une histoire de proportions des pixels ?

                    1 Reply Last reply Reply Quote 0
                    • ironic
                      ironic last edited by

                      Je pense meme qu'il faudrait autant de résolutions que de résolutions nécessaires.
                      C'est a dire qu'une même console (et je ne parle pas d'arcade) a parfois plusieurs résolution.
                      Pour bien faire in faudrait connaitre la résolution du jeu avant de le lancer mais je ne vois pas comment faire cela automatiquement.
                      Moi je le fais sous Recalbox 3 avec mon LCD en ayant mis tous les jeux dans une liste avec leurs résolutions.
                      Ca permet de gérer l'aspect ratio également et les jeux horizontaux/verticaux.
                      Mais la n'est pas le sujet.
                      Par contre, la DreamCast, c'est du 640x480 je crois, donc impossible. Idem la Playstation.
                      Non entrelacé, ça doit être du 288p maxi je pense.

                      Je testerais quand je serais de retour les changements de résolutions a la volée.

                      Entre tes 2 versions 1920 et 720, je ne vois pas de différence. Si il y en a une, c'est minime.
                      A mon avis, la résolution max utilisable (et raisonnable) non entrelacée et de 720x288.

                      Encore pas mal d'essais nous attende...

                      Rpi2/Rpi3 - LCD/CRT- NES30 Pro-iBUFFALO

                      1 Reply Last reply Reply Quote 0
                      • Substring
                        Substring last edited by

                        Attention la dc : on n'utilise pas le core retroarch, donc ca va être une autre paire de manches pour la gérer. Idem la N64

                        Prenons le problème à l'envers : pourquoi ne pas assigner une resolution TV de 640x480 ? Là vous cherchez à faire du pixel perfect 1:1 par rapport ) l'origine. En 640x480, vousne faite que doubler la résolution verticale, je doute que ce soit une hérésie pour le rendu ?

                        Former dev - Please reply with @substring so that i am notified when you answer me
                        Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                        1 Reply Last reply Reply Quote 0
                        • archimage
                          archimage last edited by

                          Dans mon cas je suis déjà en 480i pour ES, mais c'est entrelacé donc quasi injouable dans cette résolution à moins d'utiliser des filtres d'adoucissement.

                          1 Reply Last reply Reply Quote 0
                          • Substring
                            Substring last edited by

                            quelle est la nécessité de faire tourner les émuls en 240p plutôt qu'en 480p ?

                            Former dev - Please reply with @substring so that i am notified when you answer me
                            Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                            archimage Scandy 2 Replies Last reply Reply Quote 0
                            • archimage
                              archimage @Substring last edited by

                              @subs La plupart ont été conçus en 240p avec comme intention de tirer profit du scanline naturel de la télé qui s'intercale entre les lignes, et le 480p n'est pas supporté par le CRT, il n'y a que le 480i qui passe la barre mais avec de gros scintillements et une image moins belle.

                              1 Reply Last reply Reply Quote 0
                              • Scandy
                                Scandy @Substring last edited by

                                @subs said in Recalbox sur TV CRT en RGB:

                                quelle est la nécessité de faire tourner les émuls en 240p plutôt qu'en 480p ?

                                http://scanlines.hazard-city.de/

                                Scandy 1 Reply Last reply Reply Quote 0
                                • Scandy
                                  Scandy @Scandy last edited by Scandy

                                  @ironic et @archimage ce que vous faites est extraordinaire.

                                  En résumé, je comprends que les exigences sont les suivantes:

                                  • rPi (tous les modèles?)
                                  • GPIO > SCART
                                  • installation du driver VGA666
                                  • modification du config.txt

                                  C'est vrai?
                                  J'ai un modèle Raspberry Pi B1, j'offrir à «volontaire» pour acheter un prototype GPIO > SCART pour le test! ; D

                                  1 Reply Last reply Reply Quote 0
                                  • ironic
                                    ironic last edited by ironic

                                    @subs
                                    Comme la dit @archimage , les TV CRT (pas les moniteurs CRT) ne peuvent pas dépasser une certaine résolution verticale.
                                    Pour le progressif 50Hz, c'est probablement de l'ordre de 288p.
                                    Après on passe en entrelacé, la permet de doubler le nombre le ligne mais les ligne paires sont affichées les trames (ou frames) paire et les autres lignes, les frames impaire (en gros). Ce qui rend l'écran difficile a supporter pour des jeux non prévus.
                                    La tv CRT a une résolution de soit 288p ou en doublant on obtient 2x228=576i. (PAL). Pour du NTSC c'est 240p et 480i.
                                    Attention, je parle des lignes visibles, en faite en PAL il y a 625 ligne et en NTSC 525 lignes.

                                    @Scandy
                                    Pour le moment, ce n'est pas évident de fair fonctionner le Rpi sur la TV.
                                    Si tu veux essayer, tu peux achete :
                                    Un GPIO2VGA (c'est toi qui a donné le lien, je crois. J'en ai même commandé 2 sur Pi-Supply).
                                    Et un câble VGA2SCART comme cité plus haut.

                                    Faire un GPIO2SCART me parait problématique.
                                    La connectique Péritel est énorme pour tenir sur une petite platine posée sur le Rpi.
                                    Autant utiliser que qui existe déjà.

                                    Et pour la configuration/essais, lis le forum (je pense que t'as tout suivi) mais ça reste expérimental.

                                    Pour les Rpi compatibles VGA666 :
                                    Rpi1B+ : OK
                                    Rpi2 : OK
                                    Rpi3 : Je vais tester mais je pense que oui.

                                    Attention, NOOBS/PINN non compatible.
                                    Il y a surement un petit truc a faire mais j'ai pas cherché.

                                    Sinon, je crie pas youpi mais j'arrive a changer de résolution a la volée.
                                    Lire le post jusque la fin et installer directement le 2eme firmware, le 1ere fonction pas comme on veut.
                                    https://github.com/raspberrypi/firmware/issues/637
                                    Et sa fonctionne par SSH, trop de la balle vais pouvoir optimiser mes résolutions sans rebooter a chaque fois.

                                    Par contre, il faut utiliser :
                                    vcgencmd hdmi_timings
                                    car l'autre ne fonctionne pas en dessous de 640x480
                                    vcgencmd hdmi_cvt

                                    Rpi2/Rpi3 - LCD/CRT- NES30 Pro-iBUFFALO

                                    1 Reply Last reply Reply Quote 0
                                    • archimage
                                      archimage last edited by archimage

                                      Un tuto express hdmi avec une résolution 480i pour ES et Kodi et 240p60 pour les emulateurs qui auront chacun un fichier de recalibrage du viewport custom.

                                      • Cable VGA > Scart : Acheter

                                      • Adaptateur HDMI>VGA : Acheter

                                      • Editer Config.txt :

                                      hdmi_cvt=1920 240 60 1 1 0 0
                                      hdmi_disable_edid=0xa5000080
                                      hdmi_pixel_encoding=2
                                      avoid_safe_mode=1
                                      disable_overscan=0
                                      hdmi_drive=2
                                      hdmi_group=1
                                      hdmi_mode=6
                                      hdmi_force=1

                                      • Modifier les fichiers comme subs l'a indiqué plus haut dans le topic en attendant une intégration totale dans une version ultérieure

                                      • Créer des resolutions custom qui auont le même nom que la console dans le dossier \RECALBOX\share\system\configs\retroarch\snes.cfg

                                      Par exemple dans snes.cfg :

                                      aspect_ratio_index = "22"
                                      custom_viewport_width = "1792"
                                      custom_viewport_height = "224"
                                      custom_viewport_x = "63"
                                      custom_viewport_y = "16"

                                      Ainsi chaque émulateur chargera son propre fichier de configuration au démarrage de Retroarch.

                                      • Utiliser le thème CRT pour réduire l'impact de l'overscan naturel de la télé sans activer l'overscan du PI.

                                      • Editer le fichier recalbox.conf:

                                      system.es.videomode=CEA 6 HDMI
                                      global.videomode=DMT 87 HDMI

                                      • Pas d'overscan
                                      • Pas de format automatique 4/3 ou 16/9
                                      • Pas de lissage ni de shaders

                                      Avec ça tu devrais te débrouiller pour faire fonctionner toi même assez simplement.

                                      NB : tu peux remplacer le 1920 par 720 et tu devras regler les fichier snes.cfg nes.cfg etc en conséquence...

                                      1 Reply Last reply Reply Quote 0
                                      • ironic
                                        ironic last edited by

                                        Au-moins, celui qui veut essayer le VGA2SCART ou le GPIO2SCART a tout ce qu'il faut.
                                        Je pense que ta solution est pour le moment la plus abordable, même si il y a une partie scripts.
                                        Configurer des résolution avec les Timings et une vrai torture.
                                        Heureusement que je peux changer de résolution a la volée, sinon je serais déjà fou avec mes centaines d'essais.
                                        Je cherche obstinément a avoir une résolution de 384x224x60 sans overscan, je m'arrache les cheveux 😕

                                        Je me pose beaucoup de questions malgré toutes mes lectures.
                                        Toutes le TV CRT ont un overscan, on ne peut pas y couper.
                                        Alors pourquoi sur la Snes, si j'ouvre une résolution de 256x224 sur la TV, aucune partie de l'image ne dépasse de l'écran ?

                                        Snes a gauche
                                        text alternatif

                                        Si la résolution est de 256x224, a quoi correspondent les bandes noires en haut et en bas, a des zones non balayées ?
                                        Quand une zone n'est pas balayée, on voit la différence, elle est extrêmement sombre, comme la TV éteinte, ici c'est pas le cas !
                                        Ça peut se voir si on passe en NTSC sur une TV PAL ou quand on active le mode 16/9 (si il y en a un) sur les CRT.

                                        Quand on parle de résolution de console, c'est la taille qu'occupe la surface d'affichage mais a mon avis la résolution ouverte est bien plus grande.

                                        Je lis, je lis, je lis, j’essaie, j’essaie, j’essaie et c'est de pire en pire dans ma tête 😉

                                        Rpi2/Rpi3 - LCD/CRT- NES30 Pro-iBUFFALO

                                        1 Reply Last reply Reply Quote 0
                                        • SECAM
                                          SECAM last edited by

                                          Si je peux donner un coup de main, il y a dans ce sujet un topic sur les modelines, donc une capture d'écran qui détaille les fréquences de la megadrive.
                                          http://www.neo-arcadia.com/forum/viewtopic.php?t=37718

                                          0_1472162234791_Megadrive_modeline_15khz_H40.png

                                          1 Reply Last reply Reply Quote 0
                                          • ironic
                                            ironic last edited by ironic

                                            Pouah, ce lien est tout bonnement hallucinant et ... déprimant.
                                            Merci @SECAM
                                            (A lire absolument pour ceux qui veulent en savoir un peu plus sur les difficultés de l'émulation)

                                            J'ai appris beaucoup de chose, ça a confirmé beaucoup de mes suppositions et ça a le malheur de me faire comprendre que la recherche de la perfection est (je sais, inaccessible mais déjà s'en approcher) tout bonnement ... infernale !!

                                            A mon grand malheur, je ne peux pas faire ce que je veux avec les hdmi_timings (pour le moment, j’espère).
                                            J'ai compris la conversion Modeline//Hdmi_Timings mais ça fonctionne presque jamais.
                                            La faute au Pixel Clock, je pense mais je ne suis pas sur. Je ne peut pas fixer le Pixel Clock que je veux, même en multiple de 8 ou 16.
                                            (Faut que je comprenne ou est la limite/contrainte pour avancer). Pb de TV, de driver Rpi... c'est un truc de fou.

                                            Bon, pour obtenir une émulation digne de ce nom, il faudrait un Hdmi_Timings par résolution (souvent plusieurs pas console et je ne parle pas des jeux qui changent de résolutions en cours de jeu, c'est impossible a reproduire, heureusement il y en a très très peu) et (truc de fou), un Hdmi_Timings par jeu d'arcade (ou presque).
                                            Pour finir, il faudrait peu être adapter chaque Hdmi_Timings a chaque TV CRT.
                                            L'enfer quoi.

                                            Pour infos, je donne la méthode de conversion Modelines//Hdmi-Timings.

                                            Une Modeline se présentée sous cette forme :
                                            Modeline "384x224" 7.500 384 400 435 486 224 240 243 259 -hsync -vsync
                                            text alternatif

                                            Un Hdmi_Timings, sous cette forme :
                                            hdmi_timings 384 1 16 35 51 224 1 16 3 16 0 0 0 60 0 6400000 1
                                            text alternatif

                                            text alternatif

                                            Les paramètres a récupérer de la Modeline sont :
                                            E, F, G, H, J, K, L, M

                                            Pour faire un Hdmi_Timings :
                                            S = E
                                            T = N : (C'est la synchro horizontale).
                                            U = F - E
                                            V = G - F
                                            W = H - G
                                            X = J
                                            Y = O (C'est la synchro verticale).
                                            Z = K - J
                                            AA = L - K
                                            AB = M - L
                                            AC = Décalage A synchro verticale, a laisser a 0
                                            AD = Décalage B synchro verticale, a laisser a 0
                                            AE = Pixel Rep, a laisser a 0
                                            AF = La fréquence en Hz
                                            AG = Non-entrelacé = 0
                                            AH = Pixel frenquency/Pixel Clock
                                            AI = L'aspect Ratio (1 pour le 4/3)

                                            Je pense que je vais me concentrer sur la création des quelques résolutions principales a 60Hz avec très peu d'overscan.
                                            Dans la mesure ou l'Aspect Ratio est aléatoire et corresponde a l'overscan de la TV, la fréquence utilisé ou les réglages des moniteurs d'arcade. Je pense que le meilleur Aspect Ratio c'est celui qu'on aime, qu'on trouve le mieux proportionné et qui occupe une quasis totalité de l'écran sans trop de perte du a l'overscan.

                                            Rpi2/Rpi3 - LCD/CRT- NES30 Pro-iBUFFALO

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Want to support us ?

                                            63
                                            Online

                                            99.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.1k
                                            Posts

                                            Copyright © 2021 recalbox.com