Plutôt que d'utiliser de la ligne a ligne sur CRTC 2, autant utiliser la rvi, qui elle, est compatible avec ce type de CRTC, même si cela parait un peu laborieux a utiliser.
Ah bein oui, mais on fait pas tout à fait la même chôse alors Ou alors tu veux dire du 2La2L avec une RVI (voir une "RVV") pour pouvoir reseter l'offset toutes les lignes raster/écran (Je suis conscient que la discussion doit être difficile à suivre pour les non-initiés )
@fkey : ??? pourquoi de la 2 lignes ? Ce que AST dit c'est d'utiliser de la RVI en lieu et place de la ligne à ligne.
En théorie, je suis d'accord, en pratique, c'est un peu compliqué...
En effet, si il s'agit juste de vouloir avoir des écrans de 1 ligne mais sans forcément avoir besoin de beaucoup de RAM vidéo, je ne pense pas que beaucoup de codeur seraient prêt à faire ça et notamment car une RVI c'est lourd à gérer, ça prend du temps, de la ressource et en plus ça demande des synchro, prises en comptes d'offset, etc... différents selon les types de CRTC.
Le problème, c'est qu'on adapte pas une RVI comme une LAL et que cela nécessite des routines complètement différentes selon les CRTC. en exagérant à peine, je dirais que faire une demo avec RVI compatible tous CPC serait l'équivalent de faire 3 démos différentes, et de n'exécuter que celle correspondant au CRTC concerné.
Je n'ai jamais fait de RVI (juste dans ma tête) et je comprend pas trop comment je pourrais remplacer une effet LaL "classique" (mettont un plasma par exemple) en utilisant de la RVI ...
Ca je savais Mais si on se replace dans le contexte spatio-temporel du LaL qui pour moi (mais peut-être me trompe-je) est utile pour reseter la mémoire écran à chaque ligne raster, on se rendra compte que votre serviteur ne comprend toujours pas comment "reseter" l'adresse écran à chaque ligne raster "uniquement" avec de la RVI. A moins de faire 312 RVI par ligne ce qui me parait hautement improbable
Donc il faudrait utiliser "aussi" de la rupture de ce type - R4=0 <=> Rupture à chaque ligne caractère - R9=1 <=> Les lignes caractères ne durent que 2 rasters (pour rester compatible avec cet enfoiré de crtc2 à ce qui parait ) - 1 RVI par ligne pour avoir du LaL Et donc du reset de l'adresse mémoire écran à chaque ligne raster écran
Soit en français ce que j'apellais du 2La2L + RVI, mais je reconnais que l'apellation n'est pas AOC
C'est bien à ça que vous pensiez ?
Dernière édition par fkey le 07 Sep 2011, 12:22, édité 1 fois.
Je ne pense pas que ce soit possible avec l'exemple que tu cites, car, ton numéro de bloc de ligne dépends toujours bu bloc précédent. Du coup, si j'avais a le faire, je laisserai le reg 9 a 7.
Ca je savais Mais si on se replace dans le contexte spatio-temporel du LaL qui pour moi (mais peut-être me trompe-je) est utile pour reseter la mémoire écran à chaque ligne raster, on se rendra compte que votre serviteur ne comprend toujours pas comment "reseter" l'adresse écran à chaque ligne raster "uniquement" avec de la RVI. A moins de faire 312 RVI par ligne ce qui me parait hautement improbable
??? En fait je ne pense pas que tu ais une vision très précise de ce qu'est une RVI.
Une RVI, c'est juste une utilisation détournée de la rupture verticale, donc ton offset peut être redéfini plusieurs fois par ligne. après je ne sais pas au juste ce que tu entends par "faire 312 RVI".
fkey a écrit :
Donc il faudrait utiliser "aussi" de la rupture de ce type - R4=0 <=> Rupture à chaque ligne caractère - R9=1 <=> Les lignes caractères ne durent que 2 rasters (pour rester compatible avec cet enfoiré de crtc2 à ce qui parait ) - 1 RVI par ligne pour avoir du LaL Et donc du reset de l'adresse mémoire écran à chaque ligne raster écran
Soit en français ce que j'apellais du 2La2L + RVI, mais je reconnais que l'apellation n'est pas AOC
C'est bien à ça que vous pensiez ?
Non, mettre le reg9 à 1 ne te fera pas des lignes caractère de deux lignes, car en RVI tu as des ruptures verticales, c'était justement de ce principe qu'était partit overflow .
Par exemple, si tu as une ligne #c000, et tu veux que ta ligne du dessous soit #c800 (pas faisable en LAL donc) et bien, ayant (technique OVF) 7 ruptures verticales invisibles et chaque changement d'écran provoquant un incrément du compteur 9, en mettant ton reg9 à 6, au moment de faire ton écran visible, tu seras sur une ligne 1 donc #c800.
Mais le mieux étant encore de varier le nombre de ruptures verticales et de ne pas toucher le reg9 (un registre de moins à changer sur la ligne c'est toujours ça de pris).
??? En fait je ne pense pas que tu ais une vision très précise de ce qu'est une RVI.
Une RVI, c'est juste une utilisation détournée de la rupture verticale, donc ton offset peut être redéfini plusieurs fois par ligne. après je ne sais pas au juste ce que tu entends par "faire 312 RVI". Non, mettre le reg9 à 1 ne te fera pas des lignes caractère de deux lignes, car en RVI tu as des ruptures verticales, c'était justement de ce principe qu'était partit overflow .
Par exemple, si tu as une ligne #c000, et tu veux que ta ligne du dessous soit #c800 (pas faisable en LAL donc) et bien, ayant (technique OVF) 7 ruptures verticales invisibles et chaque changement d'écran provoquant un incrément du compteur 9, en mettant ton reg9 à 6, au moment de faire ton écran visible, tu seras sur une ligne 1 donc #c800.
Mais le mieux étant encore de varier le nombre de ruptures verticales et de ne pas toucher le reg9 (un registre de moins à changer sur la ligne c'est toujours ça de pris).
Merci Shap, en fait je pense avoir compris mais je crois qu'on utilise pas tout à fait le même vocabulaire/description. Je pense que le mieux c'est que je code un petit "test" et que je le soumette pour test crtc type 2 (histoire de ne pas tourner en rond )
@fkey : Si tu fais des tests sur CRTC2, n'oublie pas que r3 (bits 0 à 3) + r2 =<r0 sinon plus de synchro verticale.
J'en profite pour filer un "patch" pour la PHAT2 de No Recess qui ne fonctionne pas sur CRTC 2, au cas ou vous ne l'auriez pas testé, pour la raison indiquée ci-dessus.
Donc sous basic avant de lancer la Phat2, faites un OUT &bc00,3:out &bd00,&80+13
Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 4 invité(s)
Vous ne pouvez pas publier de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas insérer de pièces jointes dans ce forum