La Place des Développeurs Screen 3 ?
ericb59
Membre non connecté
Conseiller Municipal
Bonjour,
Comment fonctionne le screen 3 ?
10 screen 3:color 15,4,0:cls
20 for i =0to 1023
30 vpoke &h0+i,0
40 next
50 goto 50
si je lance ce programme Basic, l'écran se remplis par colonnes de 8 blocs ...
Je ne comprends pas pourquoi c'est pas linéaire.... ?
Comment fonctionne le screen 3 ?
10 screen 3:color 15,4,0:cls
20 for i =0to 1023
30 vpoke &h0+i,0
40 next
50 goto 50
si je lance ce programme Basic, l'écran se remplis par colonnes de 8 blocs ...
Je ne comprends pas pourquoi c'est pas linéaire.... ?
ericb59
Membre non connecté
Conseiller Municipal
oui j'ai remarqué que ce sont des blocs 8x4 pixels.
et que les 8 pixels en de long sont divisés en 2 bloc de 4 pixels
si je fait un VPOKE 0,&b10000111
j'obtient le premier bloc de 4x4 en rouge et le second de 4x4 en bleu
c'est pas simple !
si je fait un VPOKE 1,&b10000111
ca vas coloriser le bloc 8x4 pixels qui se trouve en dessous du premier bloc, et non pas celui qui se trouve à droite du premier bloc... !
Du coup, pour cibler une coordonnée exacte dans l'écran on fait comment ? Edité par ericb59 Le 28/10/2014 à 09h59
et que les 8 pixels en de long sont divisés en 2 bloc de 4 pixels
si je fait un VPOKE 0,&b10000111
j'obtient le premier bloc de 4x4 en rouge et le second de 4x4 en bleu
c'est pas simple !
si je fait un VPOKE 1,&b10000111
ca vas coloriser le bloc 8x4 pixels qui se trouve en dessous du premier bloc, et non pas celui qui se trouve à droite du premier bloc... !
Du coup, pour cibler une coordonnée exacte dans l'écran on fait comment ? Edité par ericb59 Le 28/10/2014 à 09h59
Voir page 186 à 188 du bouquin "Pratique du MSX2"
http://www.msxvillage.fr/download/download.php?id=3
http://www.msxvillage.fr/download/download.php?id=3
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
ericb59 :
oui j'ai remarqué que ce sont des blocs 8x4 pixels.
et que les 8 pixels en de long sont divisés en 2 bloc de 4 pixels
si je fait un VPOKE 0,&b10000111
j'obtient le premier bloc de 4x4 en rouge et le second de 4x4 en bleu
c'est pas simple !
si je fait un VPOKE 1,&b10000111
ca vas coloriser le bloc 8x4 pixels qui se trouve en dessous du premier bloc, et non pas celui qui se trouve à droite du premier bloc... !
Du coup, pour cibler une coordonnée exacte dans l'écran on fait comment ?
et que les 8 pixels en de long sont divisés en 2 bloc de 4 pixels
si je fait un VPOKE 0,&b10000111
j'obtient le premier bloc de 4x4 en rouge et le second de 4x4 en bleu
c'est pas simple !
si je fait un VPOKE 1,&b10000111
ca vas coloriser le bloc 8x4 pixels qui se trouve en dessous du premier bloc, et non pas celui qui se trouve à droite du premier bloc... !
Du coup, pour cibler une coordonnée exacte dans l'écran on fait comment ?
En basic c'est assez simple avec Pset(X,Y),couleur pour écrire et Point(X,Y) pour lire.
Le MSXien le plus à l'ouest ... ou presque
En fait le Screen 3 fonctionne comme un mode Screen 2, mais avec une resolution differente. La TNP joue un role dans l'organisation de la VRAM et il est possible de la modifier pour que l'adressage soit plus simple. Avec la TNP reorganisee il est possible d'avoir l'adressage en colonne ou les 48 premiers bytes adressent les pixels 0,0 --> 1,47 (2 pixels par bytes) les 48 suivants adressent 2,0 --> 3,47 etc....
Tres pratique comme mode pour faire du Raycasting et d'autres effets de demos en basse resolution :-)
Voici le petit programme basic que j'utilise pour reorganiser la TNP...
10 SCREEN 3
185 FOR X=0 TO 31
190 FOR Y=0 TO 5
191 FOR I=0 TO 7
200 VPOKE &H800+(Y*128)+X+(I*32),Y+(X*6)
201 NEXT I
210 NEXT Y
215 NEXT X
220 BSAVE"SCREEN3.TNP",&H800,&H800+768,S ---> Pour pouvoir re-utiliser.
Apres pour faire des vpoke c'est plus simple:
Premiere colonne:
30 VPOKE 0,&H12
40 VPOKE 1,&H12
50 VPOKE 2,&H12
60 VPOKE 3,&H12
70 VPOKE 4,&H21
80 VPOKE 5,&H21
90 VPOKE 6,&H21
100 VPOKE 7,&H21
Seconde colonne:
110 VPOKE48,&H23
120 VPOKE49,&H32
130 VPOKE50,&H23
140 VPOKE51,&H32
150 VPOKE52,&H23
160 VPOKE53,&H32
170 VPOKE54,&H23
180 VPOKE55,&H32
etc... etc... Edité par Maggoo Le 28/10/2014 à 17h37
Tres pratique comme mode pour faire du Raycasting et d'autres effets de demos en basse resolution :-)
Voici le petit programme basic que j'utilise pour reorganiser la TNP...
10 SCREEN 3
185 FOR X=0 TO 31
190 FOR Y=0 TO 5
191 FOR I=0 TO 7
200 VPOKE &H800+(Y*128)+X+(I*32),Y+(X*6)
201 NEXT I
210 NEXT Y
215 NEXT X
220 BSAVE"SCREEN3.TNP",&H800,&H800+768,S ---> Pour pouvoir re-utiliser.
Apres pour faire des vpoke c'est plus simple:
Premiere colonne:
30 VPOKE 0,&H12
40 VPOKE 1,&H12
50 VPOKE 2,&H12
60 VPOKE 3,&H12
70 VPOKE 4,&H21
80 VPOKE 5,&H21
90 VPOKE 6,&H21
100 VPOKE 7,&H21
Seconde colonne:
110 VPOKE48,&H23
120 VPOKE49,&H32
130 VPOKE50,&H23
140 VPOKE51,&H32
150 VPOKE52,&H23
160 VPOKE53,&H32
170 VPOKE54,&H23
180 VPOKE55,&H32
etc... etc... Edité par Maggoo Le 28/10/2014 à 17h37
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie