La Place des Développeurs [EN COURS] VDP(24) et décors destructibles. Interagir sur un décor scrollé.
Salut à tous.
Pour aller plus loin dans les possibilités offertes par l'utilisation de VDP(24), j'ai entrepris de modifier les décors selon l'action du HERO ou de son TIR
Voici le principe sous forme d'un schéma:

L'idée est la suivante:
1) Un décors principal appelé MASTER est Scrolé par Bribes de 2 Pixels.
2) 16 décors BETA supplémentaires sont crées tels que [BETA 0] à [BETA F].
3) Chaque Décors BETA contient la Mappe identique que MASTER mais avec TOUS les ennemis contenus dans une colonne de 16 Pixels détruits!
4) La POSITION X (horizontale) du HERO détermine quelle MAPPE BETA afficher sous condition de TIR => IF STRIG (0) THEN CALL CHDIR ("BETA XYZ"): GOSUB => BRIBES
5) La POSITION Y (verticale) du HERO (ou du TIR) détermine quelle BRIBES BETA afficher.
voici un exemple simple:
Mappe Master:

sur cette MAP,les ennemis "Immobiles" sont intacts.
Mappe Beta:

Voici une première ébauche du programme.
On peut voir dans le déroulement du programme que lorsque la commande IF STRIG (0) est activé, on est renvoyé dans les sous programme suivants:
Le sous programme ci dessous permet d'aiguiller vers le répertoire contenant la MAPPE ou les Graphismes sont détruits sur une seule colonne sur toute la mappe.
Nb: La mappe MASTER étant découpée zones horizontales large de 16 Pixels, il faut donc 16 mappes différentes
2010 'BETA MAPPE Longitude "X" '(Sélécteur de Colonnes)
2020 CALL CHDIR ("..")
2020 IF X>239THEN CALL CHDIR ("B-F"): GOTO 3000
2030 IF X>223THEN CALL CHDIR ("B-E"): GOTO 3000
2040 IF X>207THEN CALL CHDIR ("B-D"): GOTO 3000
2030 IF X>191THEN CALL CHDIR ("B-C"): GOTO 3000
2040 IF X>175THEN CALL CHDIR ("B-B"): GOTO 3000
2050 IF X>159THEN CALL CHDIR ("B-A"): GOTO 3000
2060 IF X>143THEN CALL CHDIR ("B-9"): GOTO 3000
2070 IF X>127THEN CALL CHDIR ("B-8"): GOTO 3000
2080 IF X>111THEN CALL CHDIR ("B-7"): GOTO 3000
2090 IF X>95THEN CALL CHDIR ("B-6"): GOTO 3000
2100 IF X>79THEN CALL CHDIR ("B-5"): GOTO 3000
2110 IF X>63THEN CALL CHDIR ("B-4"): GOTO 3000
2120 IF X>47THEN CALL CHDIR ("B-3"): GOTO 3000
2130 IF X>31THEN CALL CHDIR ("B-2"): GOTO 3000
2140 IF X>15THEN CALL CHDIR ("B-1"): GOTO 3000
2150 IF X>-1THEN CALL CHDIR ("B-0"): GOTO 3000
Il m'a semblé plus judicieux de procéder à rebours
Le sous programme suivant permet d'aiguiller vers le répertoire contenant les Bribes devant être affichées à une latitude déterminée par la valeur Y
3000 '
3010 'BETA MAPPE Latitude "Y" (Selecteur de bribes)
3020 IF Y>239THEN CALL CHDIR ("7"): GOTO 4316
3030 IF Y>223THEN CALL CHDIR ("7"): GOTO 4301
3040 IF Y>207THEN CALL CHDIR ("6"): GOTO 4316
3030 IF Y>191THEN CALL CHDIR ("6"): GOTO 4301
3040 IF Y>175THEN CALL CHDIR ("5"): GOTO 4316
3050 IF Y>159THEN CALL CHDIR ("5"): GOTO 4301
3060 IF Y>143THEN CALL CHDIR ("4"): GOTO 4316
3070 IF Y>127THEN CALL CHDIR ("4"): GOTO 4301
3080 IF Y>111THEN CALL CHDIR ("3"): GOTO 4316
3090 IF Y>95THEN CALL CHDIR ("3"): GOTO 4301
3100 IF Y>79THEN CALL CHDIR ("2"):GOTO 4316
3110 IF Y>63THEN CALL CHDIR ("2"):GOTO 4301
3120 IF Y>47THEN CALL CHDIR ("1"):GOTO 4272
3130 IF Y>31THEN CALL CHDIR ("1"):GOTO 4254
3140 IF Y>15THEN CALL CHDIR ("0"):GOTO 4238
3150 IF Y>-1THEN CALL CHDIR ("0"):GOTO 4220
La aussi, il me parait plus logique de procéder à rebours
Maintenant que la Longitude et Latitude est correctement retranscrite, il ne reste plus qu'a faire se succéder les Bribes.
J'ai pensé que 8 bribes de 2 Pixels de Hauts devraient convenir. (on verra bien).
4000 ' BRIBES BETA (Lecteur de Bribes par groupe de 8)
4220 '
4222 BLOAD"0",S,0-11264
4224 BLOAD"1",S,0-11264
4226 BLOAD"2",S,0-11264
4228 BLOAD"3",S,0-11264
4230 BLOAD"4",S,0-11264
4232 BLOAD"5",S,0-11264
4234 BLOAD"6",S,0-11264
4236 BLOAD"7",S,0-11264:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4238 BLOAD"8",S,0-11264
4240 BLOAD"9",S,0-11264
4242 BLOAD"A",S,0-11264
4244 BLOAD"B",S,0-11264
4246 BLOAD"C",S,0-11264
4248 BLOAD"D",S,0-11264
4250 BLOAD"E",S,0-11264
4252 BLOAD"F",S,0-11264:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4254 BLOAD"0",S,0-11264
4258 BLOAD"1",S,0-11264
4260 BLOAD"2",S,0-11264
4262 BLOAD"3",S,0-11264
4264 BLOAD"4",S,0-11264
4266 BLOAD"5",S,0-11264
4268 BLOAD"6",S
4270 BLOAD"7",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4272 BLOAD"8",S
4274 BLOAD"9",S
4276 BLOAD"A",S
4278 BLOAD"B",S
4280 BLOAD"C",S
4282 BLOAD"D",S
4284 BLOAD"E",S
4286 BLOAD"F",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4301 BLOAD"0",S
4302 BLOAD"1",S
4304 BLOAD"2",S
4306 BLOAD"3",S
4308 BLOAD"4",S
4310 BLOAD"5",S
4312 BLOAD"6",S
4314 BLOAD"7",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4316 BLOAD"8",S
4318 BLOAD"9",S
4320 BLOAD"A",S
4322 BLOAD"B",S
4324 BLOAD"C",S
4326 BLOAD"D",S
4328 BLOAD"E",S
4330 BLOAD"F",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4332 '
Pour que le moulin tourne normalement, il faut séparer 3 possibilité quant à la possibilité de rencontrer des Bribes [Toutes Particulières] [Mi particulières, mi normales] [Toutes Normales]
Chaque groupe est donc constitué de 8 Bribes de 2 Pixels de Haut pour un total de 16 Pixels de Haut pour "COUVRIR" l'ancien graphisme MASTER par le Graphisme BETA.
Voici la dernière étape avant de reprendre un processus "initial".
5000 ' Retour au Réperoire Initial
5210 IF PB=15THEN CALL CHDIR ("M-F"):GOTO 6000
5060 IF P=0THEN CALL CHDIR ("M-0"):GOTO 6000
5070 IF P=1THEN CALL CHDIR ("M-1"):GOTO 6000
5080 IF P=2THEN CALL CHDIR ("M-2"):GOTO 6000
5090 IF P=3THEN CALL CHDIR ("M-3"):GOTO 6000
5100 IF P=4THEN CALL CHDIR ("M-4"):GOTO 6000
5110 IF P=5THEN CALL CHDIR ("M-5"):GOTO 6000
5120 IF P=6THEN CALL CHDIR ("M-6"):GOTO 6000
5130 IF P=7THEN CALL CHDIR ("M-7"):GOTO 6000
5140 IF P=8THEN CALL CHDIR ("M-8"):GOTO 6000
5150 IF P=9THEN CALL CHDIR ("M-9"):GOTO 6000
5160 IF P=10THEN CALL CHDIR ("M-A"):GOTO 6000
5170 IF P=11THEN CALL CHDIR ("M-B"):GOTO 6000
5180 IF P=12THEN CALL CHDIR ("M-C"):GOTO 6000
5190 IF P=13THEN CALL CHDIR ("M-D"):GOTO 6000
5200 IF P=14THEN CALL CHDIR ("M-E"):GOTO 6000
5210 'IF P=15THEN CALL CHDIR ("M-F"):GOTO 6000
6000 ' Retour au répertoire Initial
6300 IF RB=7THEN CALL CHDIR ("7"):GOTO 1515
6220 IF R=0THEN CALL CHDIR ("0"):GOTO 1515
6254 IF R=1THEN CALL CHDIR ("1"):GOTO 1515
6288 IF R=2THEN CALL CHDIR ("2"):GOTO 1515
6290 IF R=3THEN CALL CHDIR ("3"):GOTO 1515
6291 IF R=4THEN CALL CHDIR ("4"):GOTO 1515
6292 IF R=5THEN CALL CHDIR ("5"):GOTO 1515
6293 IF R=6THEN CALL CHDIR ("6"):GOTO 1515
6294 'IF R=7THEN CALL CHDIR ("7"):GOTO 1515
Ce sous programme permet de retourner vers le répertoire dans lequel se déroulait précédemment le programme principal.
J'ai pas encore tester, mais on doit pas être très loin de ce que je cherche à faire.
J'suis en r'tard avec mes poireaux moa
Edité par
igal
Le 24/10/2014 à 15h10
Pour aller plus loin dans les possibilités offertes par l'utilisation de VDP(24), j'ai entrepris de modifier les décors selon l'action du HERO ou de son TIR
Voici le principe sous forme d'un schéma:

L'idée est la suivante:
1) Un décors principal appelé MASTER est Scrolé par Bribes de 2 Pixels.
2) 16 décors BETA supplémentaires sont crées tels que [BETA 0] à [BETA F].
3) Chaque Décors BETA contient la Mappe identique que MASTER mais avec TOUS les ennemis contenus dans une colonne de 16 Pixels détruits!
4) La POSITION X (horizontale) du HERO détermine quelle MAPPE BETA afficher sous condition de TIR => IF STRIG (0) THEN CALL CHDIR ("BETA XYZ"): GOSUB => BRIBES
5) La POSITION Y (verticale) du HERO (ou du TIR) détermine quelle BRIBES BETA afficher.
voici un exemple simple:
Mappe Master:

sur cette MAP,les ennemis "Immobiles" sont intacts.
Mappe Beta:

Voici une première ébauche du programme.
Code TEXT :
10 'SAVE"RPLAY15.asc",A
20 'Version 001
30 'PLAYER DE BRIBES HORIZONTAL [22X(2X256)]+[(106X(4X256)]
40 VDP(10)=0:SCREEN 10:SET PAGE 0,1:VDP(12)=&B001000000:VDP(6)=&B00111111:VDP(7)=&B00000000:CALL CHDIR ("M-0")
50 N=2:P=0:R=0:X=100:Y=100
60 IF P=0THEN CALL CHDIR (".."):CALL CHDIR ("M-0"):PB=0:GOSUB 220
70 IF P=1THEN CALL CHDIR (".."):CALL CHDIR ("M-1"):GOTO220
80 IF P=2THEN CALL CHDIR (".."):CALL CHDIR ("M-2"):GOTO220
90 IF P=3THEN CALL CHDIR (".."):CALL CHDIR ("M-3"):GOTO220
100 IF P=4THEN CALL CHDIR (".."):CALL CHDIR ("M-4"):GOTO220
110 IF P=5THEN CALL CHDIR (".."):CALL CHDIR ("M-5"):GOTO220
120 IF P=6THEN CALL CHDIR (".."):CALL CHDIR ("M-6"):GOTO220
130 IF P=7THEN CALL CHDIR (".."):CALL CHDIR ("M-7"):GOTO220
140 IF P=8THEN CALL CHDIR (".."):CALL CHDIR ("M-8"):GOTO220
150 IF P=9THEN CALL CHDIR (".."):CALL CHDIR ("M-9"):GOTO220
160 IF P=10THEN CALL CHDIR (".."):CALL CHDIR ("M-A"):GOTO220
170 IF P=11THEN CALL CHDIR (".."):CALL CHDIR ("M-B"):GOTO220
180 IF P=12THEN CALL CHDIR (".."):CALL CHDIR ("M-C"):GOTO220
190 IF P=13THEN CALL CHDIR (".."):CALL CHDIR ("M-D"):GOTO220
200 IF P=14THEN CALL CHDIR (".."):CALL CHDIR ("M-E"):GOTO220
210 IF P=15THEN CALL CHDIR (".."):CALL CHDIR ("M-F"):P=0:PB=15:GOTO220
220 CALL CHDIR ("0"):RB = 0
222 BLOAD"0",S,0-11264:GOSUB 1510
224 BLOAD"1",S,0-11264:GOSUB 1510
226 BLOAD"2",S,0-11264:GOSUB 1510
228 BLOAD"3",S,0-11264:GOSUB 1510
230 BLOAD"4",S,0-11264:GOSUB 1510
232 BLOAD"5",S,0-11264:GOSUB 1510
234 BLOAD"6",S,0-11264:GOSUB 1510
236 BLOAD"7",S,0-11264:GOSUB 1510
238 BLOAD"8",S,0-11264:GOSUB 1510
240 BLOAD"9",S,0-11264:GOSUB 1510
242 BLOAD"A",S,0-11264:GOSUB 1510
244 BLOAD"B",S,0-11264:GOSUB 1510
246 BLOAD"C",S,0-11264:GOSUB 1510
248 BLOAD"D",S,0-11264:GOSUB 1510
250 BLOAD"E",S,0-11264:GOSUB 1510
252 BLOAD"F",S,0-11264:GOSUB 1510
254 R=R+1:CALL CHDIR (".."):CALL CHDIR ("1")
256 BLOAD"0",S,0-11264:GOSUB 1510
258 BLOAD"1",S,0-11264:GOSUB 1510
260 BLOAD"2",S,0-11264:GOSUB 1510
262 BLOAD"3",S,0-11264:GOSUB 1510
264 BLOAD"4",S,0-11264:GOSUB 1510
266 BLOAD"5",S,0-11264:GOSUB 1510
268 BLOAD"6",S:GOSUB 1510
270 BLOAD"7",S:GOSUB 1510
272 BLOAD"8",S:GOSUB 1510
274 BLOAD"9",S:GOSUB 1510
276 BLOAD"A",S:GOSUB 1510
278 BLOAD"B",S:GOSUB 1510
280 BLOAD"C",S:GOSUB 1510
282 BLOAD"D",S:GOSUB 1510
284 BLOAD"E",S:GOSUB 1510
286 BLOAD"F",S:GOSUB 1510
288 R=R+1:CALL CHDIR (".."):CALL CHDIR ("2"):GOTO 300
290 IF R=3THEN CALL CHDIR ("3"):GOTO 300
291 IF R=4THEN CALL CHDIR ("4"):GOTO 300
292 IF R=5THEN CALL CHDIR ("5"):GOTO 300
293 IF R=6THEN CALL CHDIR ("6"):GOTO 300
294 IF R=7THEN CALL CHDIR ("7"): RB=7: GOTO 300
300 IF R=8THEN R=0 : P=P+1 : GOTO 60
301 BLOAD"0",S:GOSUB 1510
302 BLOAD"1",S:GOSUB 1510
304 BLOAD"2",S:GOSUB 1510
306 BLOAD"3",S:GOSUB 1510
308 BLOAD"4",S:GOSUB 1510
310 BLOAD"5",S:GOSUB 1510
312 BLOAD"6",S:GOSUB 1510
314 BLOAD"7",S:GOSUB 1510
316 BLOAD"8",S:GOSUB 1510
318 BLOAD"9",S:GOSUB 1510
320 BLOAD"A",S:GOSUB 1510
322 BLOAD"B",S:GOSUB 1510
324 BLOAD"C",S:GOSUB 1510
326 BLOAD"D",S:GOSUB 1510
328 BLOAD"E",S:GOSUB 1510
330 BLOAD"F",S:GOSUB 1510
332 R=R+1:CALL CHDIR (".."):GOTO 290
1500 '
1510 Y=Y+2AND255:COPY(0,0)-(3,3),0TO(X,Y),0:VDP(24)=VDP(24)+252and255:N=N+2AND255:IFSTRIG(0)THENGOSUB2000
1515 S=STICK(0):ONS+1 GOSUB 1530,1560,1590,1620,1650,1690,1720,1750,1780:RETURN
1520 '
1530 'STATIQUE
1540 RETURN
1550 '
1560 'HAUT
1570 Y=Y-2AND255:RETURN
1580 '
1590 'DIAGO HAUT DROITE
1600 X=X+2AND255:Y=Y-2AND255:RETURN
1610 '
1620 'DROITE
1630 X=X+2AND255:RETURN
1640 '
1650 'DROITE BAS
1660 X=X+2AND255:Y=Y+2AND255:RETURN
1670 '
1680 '
1690 'BAS
1700 Y=Y+2AND255:RETURN
1710 '
1720 'DIAGO BAS GAUCHE
1730 X=X-4AND255:Y=Y+2AND255:RETURN
1740 '
1750 'GAUCHE
1760 X=X-4AND255:RETURN
1770 '
1780 'DIAGO HAUT GAUCHE
1790 X=X-4:Y=Y-2:RETURN
2000 '
2010 'BETA MAPPE Longitude "X" '(Sélécteur de Colonnes)
2020 CALL CHDIR (".."):CALL CHDIR ("..")
2020 IF X>239THEN CALL CHDIR ("B-F"): GOTO 3000
2030 IF X>223THEN CALL CHDIR ("B-E"): GOTO 3000
2040 IF X>207THEN CALL CHDIR ("B-D"): GOTO 3000
2030 IF X>191THEN CALL CHDIR ("B-C"): GOTO 3000
2040 IF X>175THEN CALL CHDIR ("B-B"): GOTO 3000
2050 IF X>159THEN CALL CHDIR ("B-A"): GOTO 3000
2060 IF X>143THEN CALL CHDIR ("B-9"): GOTO 3000
2070 IF X>127THEN CALL CHDIR ("B-8"): GOTO 3000
2080 IF X>111THEN CALL CHDIR ("B-7"): GOTO 3000
2090 IF X>95THEN CALL CHDIR ("B-6"): GOTO 3000
2100 IF X>79THEN CALL CHDIR ("B-5"): GOTO 3000
2110 IF X>63THEN CALL CHDIR ("B-4"): GOTO 3000
2120 IF X>47THEN CALL CHDIR ("B-3"): GOTO 3000
2130 IF X>31THEN CALL CHDIR ("B-2"): GOTO 3000
2140 IF X>15THEN CALL CHDIR ("B-1"): GOTO 3000
2150 IF X>-1THEN CALL CHDIR ("B-0"): GOTO 3000
3000 '
3010 'BETA MAPPE Latitude "Y" (Selecteur de bribes)
3020 IF Y>239THEN CALL CHDIR ("7"): GOTO 4316
3030 IF Y>223THEN CALL CHDIR ("7"): GOTO 4301
3040 IF Y>207THEN CALL CHDIR ("6"): GOTO 4316
3030 IF Y>191THEN CALL CHDIR ("6"): GOTO 4301
3040 IF Y>175THEN CALL CHDIR ("5"): GOTO 4316
3050 IF Y>159THEN CALL CHDIR ("5"): GOTO 4301
3060 IF Y>143THEN CALL CHDIR ("4"): GOTO 4316
3070 IF Y>127THEN CALL CHDIR ("4"): GOTO 4301
3080 IF Y>111THEN CALL CHDIR ("3"): GOTO 4316
3090 IF Y>95THEN CALL CHDIR ("3"): GOTO 4301
3100 IF Y>79THEN CALL CHDIR ("2"):GOTO 4316
3110 IF Y>63THEN CALL CHDIR ("2"):GOTO 4301
3120 IF Y>47THEN CALL CHDIR ("1"):GOTO 4272
3130 IF Y>31THEN CALL CHDIR ("1"):GOTO 4254
3140 IF Y>15THEN CALL CHDIR ("0"):GOTO 4238
3150 IF Y>-1THEN CALL CHDIR ("0"):GOTO 4220
4000 ' BRIBES BETA (Lecteur de Bribes par groupe de 8)
4220 '
4222 BLOAD"0",S,0-11264
4224 BLOAD"1",S,0-11264
4226 BLOAD"2",S,0-11264
4228 BLOAD"3",S,0-11264
4230 BLOAD"4",S,0-11264
4232 BLOAD"5",S,0-11264
4234 BLOAD"6",S,0-11264
4236 BLOAD"7",S,0-11264:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4238 BLOAD"8",S,0-11264
4240 BLOAD"9",S,0-11264
4242 BLOAD"A",S,0-11264
4244 BLOAD"B",S,0-11264
4246 BLOAD"C",S,0-11264
4248 BLOAD"D",S,0-11264
4250 BLOAD"E",S,0-11264
4252 BLOAD"F",S,0-11264:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4254 BLOAD"0",S,0-11264
4258 BLOAD"1",S,0-11264
4260 BLOAD"2",S,0-11264
4262 BLOAD"3",S,0-11264
4264 BLOAD"4",S,0-11264
4266 BLOAD"5",S,0-11264
4268 BLOAD"6",S
4270 BLOAD"7",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4272 BLOAD"8",S
4274 BLOAD"9",S
4276 BLOAD"A",S
4278 BLOAD"B",S
4280 BLOAD"C",S
4282 BLOAD"D",S
4284 BLOAD"E",S
4286 BLOAD"F",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4301 BLOAD"0",S
4302 BLOAD"1",S
4304 BLOAD"2",S
4306 BLOAD"3",S
4308 BLOAD"4",S
4310 BLOAD"5",S
4312 BLOAD"6",S
4314 BLOAD"7",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4316 BLOAD"8",S
4318 BLOAD"9",S
4320 BLOAD"A",S
4322 BLOAD"B",S
4324 BLOAD"C",S
4326 BLOAD"D",S
4328 BLOAD"E",S
4330 BLOAD"F",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4332 '
5000 ' Retour au Réperoire Initial
5210 IF PB=15THEN CALL CHDIR ("M-F"):GOTO 6000
5060 IF P=0THEN CALL CHDIR ("M-0"):GOTO 6000
5070 IF P=1THEN CALL CHDIR ("M-1"):GOTO 6000
5080 IF P=2THEN CALL CHDIR ("M-2"):GOTO 6000
5090 IF P=3THEN CALL CHDIR ("M-3"):GOTO 6000
5100 IF P=4THEN CALL CHDIR ("M-4"):GOTO 6000
5110 IF P=5THEN CALL CHDIR ("M-5"):GOTO 6000
5120 IF P=6THEN CALL CHDIR ("M-6"):GOTO 6000
5130 IF P=7THEN CALL CHDIR ("M-7"):GOTO 6000
5140 IF P=8THEN CALL CHDIR ("M-8"):GOTO 6000
5150 IF P=9THEN CALL CHDIR ("M-9"):GOTO 6000
5160 IF P=10THEN CALL CHDIR ("M-A"):GOTO 6000
5170 IF P=11THEN CALL CHDIR ("M-B"):GOTO 6000
5180 IF P=12THEN CALL CHDIR ("M-C"):GOTO 6000
5190 IF P=13THEN CALL CHDIR ("M-D"):GOTO 6000
5200 IF P=14THEN CALL CHDIR ("M-E"):GOTO 6000
5210 'IF P=15THEN CALL CHDIR ("M-F"):GOTO 6000
6000 ' Retour au répertoire Initial
6300 IF RB=7THEN CALL CHDIR ("7"):GOTO 1515
6220 IF R=0THEN CALL CHDIR ("0"):GOTO 1515
6254 IF R=1THEN CALL CHDIR ("1"):GOTO 1515
6288 IF R=2THEN CALL CHDIR ("2"):GOTO 1515
6290 IF R=3THEN CALL CHDIR ("3"):GOTO 1515
6291 IF R=4THEN CALL CHDIR ("4"):GOTO 1515
6292 IF R=5THEN CALL CHDIR ("5"):GOTO 1515
6293 IF R=6THEN CALL CHDIR ("6"):GOTO 1515
6294 'IF R=7THEN CALL CHDIR ("7"):GOTO 1515
On peut voir dans le déroulement du programme que lorsque la commande IF STRIG (0) est activé, on est renvoyé dans les sous programme suivants:
Le sous programme ci dessous permet d'aiguiller vers le répertoire contenant la MAPPE ou les Graphismes sont détruits sur une seule colonne sur toute la mappe.
Nb: La mappe MASTER étant découpée zones horizontales large de 16 Pixels, il faut donc 16 mappes différentes
2010 'BETA MAPPE Longitude "X" '(Sélécteur de Colonnes)
2020 CALL CHDIR ("..")
2020 IF X>239THEN CALL CHDIR ("B-F"): GOTO 3000
2030 IF X>223THEN CALL CHDIR ("B-E"): GOTO 3000
2040 IF X>207THEN CALL CHDIR ("B-D"): GOTO 3000
2030 IF X>191THEN CALL CHDIR ("B-C"): GOTO 3000
2040 IF X>175THEN CALL CHDIR ("B-B"): GOTO 3000
2050 IF X>159THEN CALL CHDIR ("B-A"): GOTO 3000
2060 IF X>143THEN CALL CHDIR ("B-9"): GOTO 3000
2070 IF X>127THEN CALL CHDIR ("B-8"): GOTO 3000
2080 IF X>111THEN CALL CHDIR ("B-7"): GOTO 3000
2090 IF X>95THEN CALL CHDIR ("B-6"): GOTO 3000
2100 IF X>79THEN CALL CHDIR ("B-5"): GOTO 3000
2110 IF X>63THEN CALL CHDIR ("B-4"): GOTO 3000
2120 IF X>47THEN CALL CHDIR ("B-3"): GOTO 3000
2130 IF X>31THEN CALL CHDIR ("B-2"): GOTO 3000
2140 IF X>15THEN CALL CHDIR ("B-1"): GOTO 3000
2150 IF X>-1THEN CALL CHDIR ("B-0"): GOTO 3000
Il m'a semblé plus judicieux de procéder à rebours
Le sous programme suivant permet d'aiguiller vers le répertoire contenant les Bribes devant être affichées à une latitude déterminée par la valeur Y
3000 '
3010 'BETA MAPPE Latitude "Y" (Selecteur de bribes)
3020 IF Y>239THEN CALL CHDIR ("7"): GOTO 4316
3030 IF Y>223THEN CALL CHDIR ("7"): GOTO 4301
3040 IF Y>207THEN CALL CHDIR ("6"): GOTO 4316
3030 IF Y>191THEN CALL CHDIR ("6"): GOTO 4301
3040 IF Y>175THEN CALL CHDIR ("5"): GOTO 4316
3050 IF Y>159THEN CALL CHDIR ("5"): GOTO 4301
3060 IF Y>143THEN CALL CHDIR ("4"): GOTO 4316
3070 IF Y>127THEN CALL CHDIR ("4"): GOTO 4301
3080 IF Y>111THEN CALL CHDIR ("3"): GOTO 4316
3090 IF Y>95THEN CALL CHDIR ("3"): GOTO 4301
3100 IF Y>79THEN CALL CHDIR ("2"):GOTO 4316
3110 IF Y>63THEN CALL CHDIR ("2"):GOTO 4301
3120 IF Y>47THEN CALL CHDIR ("1"):GOTO 4272
3130 IF Y>31THEN CALL CHDIR ("1"):GOTO 4254
3140 IF Y>15THEN CALL CHDIR ("0"):GOTO 4238
3150 IF Y>-1THEN CALL CHDIR ("0"):GOTO 4220
La aussi, il me parait plus logique de procéder à rebours
Maintenant que la Longitude et Latitude est correctement retranscrite, il ne reste plus qu'a faire se succéder les Bribes.
J'ai pensé que 8 bribes de 2 Pixels de Hauts devraient convenir. (on verra bien).
4000 ' BRIBES BETA (Lecteur de Bribes par groupe de 8)
4220 '
4222 BLOAD"0",S,0-11264
4224 BLOAD"1",S,0-11264
4226 BLOAD"2",S,0-11264
4228 BLOAD"3",S,0-11264
4230 BLOAD"4",S,0-11264
4232 BLOAD"5",S,0-11264
4234 BLOAD"6",S,0-11264
4236 BLOAD"7",S,0-11264:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4238 BLOAD"8",S,0-11264
4240 BLOAD"9",S,0-11264
4242 BLOAD"A",S,0-11264
4244 BLOAD"B",S,0-11264
4246 BLOAD"C",S,0-11264
4248 BLOAD"D",S,0-11264
4250 BLOAD"E",S,0-11264
4252 BLOAD"F",S,0-11264:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4254 BLOAD"0",S,0-11264
4258 BLOAD"1",S,0-11264
4260 BLOAD"2",S,0-11264
4262 BLOAD"3",S,0-11264
4264 BLOAD"4",S,0-11264
4266 BLOAD"5",S,0-11264
4268 BLOAD"6",S
4270 BLOAD"7",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4272 BLOAD"8",S
4274 BLOAD"9",S
4276 BLOAD"A",S
4278 BLOAD"B",S
4280 BLOAD"C",S
4282 BLOAD"D",S
4284 BLOAD"E",S
4286 BLOAD"F",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4301 BLOAD"0",S
4302 BLOAD"1",S
4304 BLOAD"2",S
4306 BLOAD"3",S
4308 BLOAD"4",S
4310 BLOAD"5",S
4312 BLOAD"6",S
4314 BLOAD"7",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4316 BLOAD"8",S
4318 BLOAD"9",S
4320 BLOAD"A",S
4322 BLOAD"B",S
4324 BLOAD"C",S
4326 BLOAD"D",S
4328 BLOAD"E",S
4330 BLOAD"F",S:CALL CHDIR (".."):CALL CHDIR (".."):GOTO 5000
4332 '
Pour que le moulin tourne normalement, il faut séparer 3 possibilité quant à la possibilité de rencontrer des Bribes [Toutes Particulières] [Mi particulières, mi normales] [Toutes Normales]
Chaque groupe est donc constitué de 8 Bribes de 2 Pixels de Haut pour un total de 16 Pixels de Haut pour "COUVRIR" l'ancien graphisme MASTER par le Graphisme BETA.
Voici la dernière étape avant de reprendre un processus "initial".
5000 ' Retour au Réperoire Initial
5210 IF PB=15THEN CALL CHDIR ("M-F"):GOTO 6000
5060 IF P=0THEN CALL CHDIR ("M-0"):GOTO 6000
5070 IF P=1THEN CALL CHDIR ("M-1"):GOTO 6000
5080 IF P=2THEN CALL CHDIR ("M-2"):GOTO 6000
5090 IF P=3THEN CALL CHDIR ("M-3"):GOTO 6000
5100 IF P=4THEN CALL CHDIR ("M-4"):GOTO 6000
5110 IF P=5THEN CALL CHDIR ("M-5"):GOTO 6000
5120 IF P=6THEN CALL CHDIR ("M-6"):GOTO 6000
5130 IF P=7THEN CALL CHDIR ("M-7"):GOTO 6000
5140 IF P=8THEN CALL CHDIR ("M-8"):GOTO 6000
5150 IF P=9THEN CALL CHDIR ("M-9"):GOTO 6000
5160 IF P=10THEN CALL CHDIR ("M-A"):GOTO 6000
5170 IF P=11THEN CALL CHDIR ("M-B"):GOTO 6000
5180 IF P=12THEN CALL CHDIR ("M-C"):GOTO 6000
5190 IF P=13THEN CALL CHDIR ("M-D"):GOTO 6000
5200 IF P=14THEN CALL CHDIR ("M-E"):GOTO 6000
5210 'IF P=15THEN CALL CHDIR ("M-F"):GOTO 6000
6000 ' Retour au répertoire Initial
6300 IF RB=7THEN CALL CHDIR ("7"):GOTO 1515
6220 IF R=0THEN CALL CHDIR ("0"):GOTO 1515
6254 IF R=1THEN CALL CHDIR ("1"):GOTO 1515
6288 IF R=2THEN CALL CHDIR ("2"):GOTO 1515
6290 IF R=3THEN CALL CHDIR ("3"):GOTO 1515
6291 IF R=4THEN CALL CHDIR ("4"):GOTO 1515
6292 IF R=5THEN CALL CHDIR ("5"):GOTO 1515
6293 IF R=6THEN CALL CHDIR ("6"):GOTO 1515
6294 'IF R=7THEN CALL CHDIR ("7"):GOTO 1515
Ce sous programme permet de retourner vers le répertoire dans lequel se déroulait précédemment le programme principal.
J'ai pas encore tester, mais on doit pas être très loin de ce que je cherche à faire.
J'suis en r'tard avec mes poireaux moa

Edité par
igal
Le 24/10/2014 à 15h10
Tu dois pouvoir remplacer :
5210 IF PB=15THEN CALL CHDIR ("M-F"):GOTO 6000
5060 IF P=0THEN CALL CHDIR ("M-0"):GOTO 6000
5070 IF P=1THEN CALL CHDIR ("M-1"):GOTO 6000
5080 IF P=2THEN CALL CHDIR ("M-2"):GOTO 6000
5090 IF P=3THEN CALL CHDIR ("M-3"):GOTO 6000
5100 IF P=4THEN CALL CHDIR ("M-4"):GOTO 6000
5110 IF P=5THEN CALL CHDIR ("M-5"):GOTO 6000
5120 IF P=6THEN CALL CHDIR ("M-6"):GOTO 6000
5130 IF P=7THEN CALL CHDIR ("M-7"):GOTO 6000
5140 IF P=8THEN CALL CHDIR ("M-8"):GOTO 6000
5150 IF P=9THEN CALL CHDIR ("M-9"):GOTO 6000
5160 IF P=10THEN CALL CHDIR ("M-A"):GOTO 6000
5170 IF P=11THEN CALL CHDIR ("M-B"):GOTO 6000
5180 IF P=12THEN CALL CHDIR ("M-C"):GOTO 6000
5190 IF P=13THEN CALL CHDIR ("M-D"):GOTO 6000
5200 IF P=14THEN CALL CHDIR ("M-E"):GOTO 6000
5210 'IF P=15THEN CALL CHDIR ("M-F"):GOTO 6000
par :
5060 CALL CHDIR ("M-"+hex$(P)):GOTO 6000
Cela doit permettre en une ligne d'éviter les 15 conditions
5210 IF PB=15THEN CALL CHDIR ("M-F"):GOTO 6000
5060 IF P=0THEN CALL CHDIR ("M-0"):GOTO 6000
5070 IF P=1THEN CALL CHDIR ("M-1"):GOTO 6000
5080 IF P=2THEN CALL CHDIR ("M-2"):GOTO 6000
5090 IF P=3THEN CALL CHDIR ("M-3"):GOTO 6000
5100 IF P=4THEN CALL CHDIR ("M-4"):GOTO 6000
5110 IF P=5THEN CALL CHDIR ("M-5"):GOTO 6000
5120 IF P=6THEN CALL CHDIR ("M-6"):GOTO 6000
5130 IF P=7THEN CALL CHDIR ("M-7"):GOTO 6000
5140 IF P=8THEN CALL CHDIR ("M-8"):GOTO 6000
5150 IF P=9THEN CALL CHDIR ("M-9"):GOTO 6000
5160 IF P=10THEN CALL CHDIR ("M-A"):GOTO 6000
5170 IF P=11THEN CALL CHDIR ("M-B"):GOTO 6000
5180 IF P=12THEN CALL CHDIR ("M-C"):GOTO 6000
5190 IF P=13THEN CALL CHDIR ("M-D"):GOTO 6000
5200 IF P=14THEN CALL CHDIR ("M-E"):GOTO 6000
5210 'IF P=15THEN CALL CHDIR ("M-F"):GOTO 6000
par :
5060 CALL CHDIR ("M-"+hex$(P)):GOTO 6000
Cela doit permettre en une ligne d'éviter les 15 conditions
Merci Fabf. Je garde ça sous le coude.
Pour le moment, je vais déjà essayé de mouliner ça voir combien de Bugs ont tapé l'incruste
Voici une nouvelle version du schéma de fonctionnement:

Votre opinion m'intéresse
Pour le moment, je vais déjà essayé de mouliner ça voir combien de Bugs ont tapé l'incruste
Voici une nouvelle version du schéma de fonctionnement:

Votre opinion m'intéresse
Oui Jipe. Vais faire ca demain
Pour se faire une idée du procédé, voici 3 images d'une Mappe.
La plus à gauche es vierge, celle du milieu contient les ennemis et celle de droite affiche des explosions.



Pour faciliter l'insertion des explosions, j'ai scindé la mappe en 16 colonnes de sorte à ne pas placer une explosion à cheval sur deux colonnes.
Pour se faire une idée du procédé, voici 3 images d'une Mappe.
La plus à gauche es vierge, celle du milieu contient les ennemis et celle de droite affiche des explosions.



Pour faciliter l'insertion des explosions, j'ai scindé la mappe en 16 colonnes de sorte à ne pas placer une explosion à cheval sur deux colonnes.
ah super ca me donner envie de faire un RAIDEN !!!
a quand la version sur MSX !!!
a quand la version sur MSX !!!
TURBO-R FS-A1ST 512/128ko MSX2+ NMS 8250 F4 /Fix Audio /Ram 1/4Mb VDP9958 VRAM 192ko 2FDD SANYO WAVY PHC35J MSX2 NMS 8280 Ram 4Mb VDP9938 VRAM 192ko 2FDD NMS 8250 128/128ko 2FDD VG8235/39 128/128ko 1FDD SONY HB-F700D MSX1 MC810 32/16k VG 8020 64k HB75F 64k HX-22 64k RS232/ CX5M 32k HB501F EXT : My Exp 4X/[b] MegaFlashSCC 512ko/BERT R2/BEER CF/SUNRISE 2CF/FUNRICE V2.01/MAXIOL/MEGASCSI HDD-CD/SDMSX 1SD/FMPAC SRAM/NMS1205+1160/RS 232 Harukaze/GR8NET/DOS2/ HOMER V2 RAM512ko/Floppy Pack/MAXduino/ROM1664/FM Pak /GR8NET /AMIGA/ PC/ RaspB Pi(B) / ARDUINO
Damnation!
Me suis loupé dans l'ordre de la création de la Mappe et donc de défilement des Bribes!
Me reste plus qu'à recréer toute les bribes en commençant par découper la mappe en commençant par le haut et non par le bas
@Gradius: Tu as trouvé ma taverne.
J'ai essayé de récupérer les animation des GIF en faisant [Click droit/ Enregistrer sous] mais au final, j'ai seulement une image même en ouvrant avec Paint.Net.
Je voulais ajouter un Boss animé en fin de Mape
Me suis loupé dans l'ordre de la création de la Mappe et donc de défilement des Bribes!
Me reste plus qu'à recréer toute les bribes en commençant par découper la mappe en commençant par le haut et non par le bas
@Gradius: Tu as trouvé ma taverne.
J'ai essayé de récupérer les animation des GIF en faisant [Click droit/ Enregistrer sous] mais au final, j'ai seulement une image même en ouvrant avec Paint.Net.
Je voulais ajouter un Boss animé en fin de Mape
@sven: j'ai toujours été frustré de ne pouvoir créer un scroll en Basic.
En toute modestie, avec l'aide du village, j'ai pu trouver le moyen extrêmement simple de créer un scroll vertical sur la base de L'incrementation de vdp (24).
La seconde difficulté étant que le scroll conséquent à vdp (24) déplace la zone habituellement cachée des spirites.
Ce problème est triple mais pour faire simple, les trois probes sont résolus par
1) vdp (9)=vdp (9) or 2 pour désactiver l'affichage des spirites en attendant de déplacer la zone sur la seconde page disponible en SCREEN 12
2) bload"image.scc", 0-44, S qui permet d'afficher des images facilement au delà de la zone comprise allant de 0 à 211.
3) le générateur de bribes qui sont rien d'autres que de petites images contenant la coordonnée d'affichage de la dite image.
Voilà dans les grandes lignes ce qu'il faut retenir sur le scroll "selon vdp (24)"
Pour ce qui est du vdp (27) c'est encore plus compliqué puisqu'en plus des 3 paramètres précédents, il faut faire glisser horizontalement une addition de décors se faisant verticalement
La encore avec l'aide des villageois, j'ai trouvé la solution en appliquant cette idée.
Une copie verticale de bribes horizontales doit alimenter le scroll à mesure que vdp(27) s'incremente mais comment faire ?
Il suffit d'alterner une séquence d'affichage verticale avec une séquence de création horizontale.
Pour cela, la première chose visible avec cette technique est le contenu "neant" de la vram qui est remplacé à crescendo (en escalier) par le contenu alimenté de la vram par les bribes horizontales créés dans la seconde page du screen 12.
Pour un résulta cohérent, il est indispensable d'avoir une progression horizontale qui soit égale à la création verticale.
concrètement, la page cachée créée doit faire 256X256 (mais c'est faux) et la page affichée doit faire 256X256 et la c'est vrai
Sachant que l'affichage sur la page visible se fait par défilement horizontal par crans de 2 pixels, il faut donc que les bribes qui s'affichent sur la page cachée fassent aussi 2 pixels mais cette fois de hauteur.
de la sorte, on a bien une lecture en escalier traçant une diagonale depuis les coordonnées 0/0-44 jusqu'à 256/212.
On a donc bien une diagonale de 256/256.
Le dernier problème à résoudre avec le scroll horizontal avec cette technique est le suivant:
Puisque le contenu de la page cachée est affichée sur la page visible mais en que le contenu visible est la conséquence d'une progression diagonale, la première moitié de l'image cachée est visible avec une image de retard.
Ce problème se résout par le remplacement de la partie inférieur gauche de la diagonale de limage B par la partie inférieur gauche de la diagonale de l'image A.
Partant de ce principe:
Bas Gauche de C contient bas Gauche de B.
D de C.
E de D etc etc...
A ce sujet, la toute première image affichée par ce scroll ne pouvant être que vierge, il suffit de pré charger une image contenant le bas Gauche coherent de la première image pour que le scroll commence par une image entière et cohérente.
Autrement dit il suffit d'un bload " première image. Sca", S avant de commencer un scroll horizontal.
On peut aussi boucler les image sans fin simplement en faisant en sorte que la dernière image du scroll coïncide avec la première image du scroll.
Voilà dans les grandes lignes
Beaucoup d'autres choses sont possible comme la modification de la palette graphique sans sortir de la boucle principale du scroll.
Avant tout il faut savoir .........
En toute modestie, avec l'aide du village, j'ai pu trouver le moyen extrêmement simple de créer un scroll vertical sur la base de L'incrementation de vdp (24).
La seconde difficulté étant que le scroll conséquent à vdp (24) déplace la zone habituellement cachée des spirites.
Ce problème est triple mais pour faire simple, les trois probes sont résolus par
1) vdp (9)=vdp (9) or 2 pour désactiver l'affichage des spirites en attendant de déplacer la zone sur la seconde page disponible en SCREEN 12
2) bload"image.scc", 0-44, S qui permet d'afficher des images facilement au delà de la zone comprise allant de 0 à 211.
3) le générateur de bribes qui sont rien d'autres que de petites images contenant la coordonnée d'affichage de la dite image.
Voilà dans les grandes lignes ce qu'il faut retenir sur le scroll "selon vdp (24)"
Pour ce qui est du vdp (27) c'est encore plus compliqué puisqu'en plus des 3 paramètres précédents, il faut faire glisser horizontalement une addition de décors se faisant verticalement
La encore avec l'aide des villageois, j'ai trouvé la solution en appliquant cette idée.
Une copie verticale de bribes horizontales doit alimenter le scroll à mesure que vdp(27) s'incremente mais comment faire ?
Il suffit d'alterner une séquence d'affichage verticale avec une séquence de création horizontale.
Pour cela, la première chose visible avec cette technique est le contenu "neant" de la vram qui est remplacé à crescendo (en escalier) par le contenu alimenté de la vram par les bribes horizontales créés dans la seconde page du screen 12.
Pour un résulta cohérent, il est indispensable d'avoir une progression horizontale qui soit égale à la création verticale.
concrètement, la page cachée créée doit faire 256X256 (mais c'est faux) et la page affichée doit faire 256X256 et la c'est vrai

Sachant que l'affichage sur la page visible se fait par défilement horizontal par crans de 2 pixels, il faut donc que les bribes qui s'affichent sur la page cachée fassent aussi 2 pixels mais cette fois de hauteur.
de la sorte, on a bien une lecture en escalier traçant une diagonale depuis les coordonnées 0/0-44 jusqu'à 256/212.
On a donc bien une diagonale de 256/256.
Le dernier problème à résoudre avec le scroll horizontal avec cette technique est le suivant:
Puisque le contenu de la page cachée est affichée sur la page visible mais en que le contenu visible est la conséquence d'une progression diagonale, la première moitié de l'image cachée est visible avec une image de retard.
Ce problème se résout par le remplacement de la partie inférieur gauche de la diagonale de limage B par la partie inférieur gauche de la diagonale de l'image A.
Partant de ce principe:
Bas Gauche de C contient bas Gauche de B.
D de C.
E de D etc etc...
A ce sujet, la toute première image affichée par ce scroll ne pouvant être que vierge, il suffit de pré charger une image contenant le bas Gauche coherent de la première image pour que le scroll commence par une image entière et cohérente.
Autrement dit il suffit d'un bload " première image. Sca", S avant de commencer un scroll horizontal.
On peut aussi boucler les image sans fin simplement en faisant en sorte que la dernière image du scroll coïncide avec la première image du scroll.
Voilà dans les grandes lignes

Beaucoup d'autres choses sont possible comme la modification de la palette graphique sans sortir de la boucle principale du scroll.
Avant tout il faut savoir .........
A force de creuser, je viens de comprendre pourquoi il m'est impossible d'afficher des graphismes qui déroulent de [BAS en HAUT] de manière cohérente alors que l'affichage de [HAUT en BAS] se fait parfaitement.
La raison est simple puisque:
1) Les bribes ont un emplacement prédéfinies.
2) L'emplacement est indiqué par le "générateur".
3) Le générateur se contente "d'extraire" par [Copier/Coller] des lignes d'une image.
4) Le player ne fait que lire les bribes de façon succincte sans indiquer de coordonnées.
Ces opérations ne posent aucun problème pour un SCROLL allant de [HAUT vers le BAS] puisque le générateur suit ce processus.
Pour créer un SROLL allant de [BAS en HAUT], il faut "Altérer" les coordonnées "Latitudes" dans le générateur.
Concrètement, voici à quoi ressemble le générateur actuellement.
Je voudrais donc modifier tel que par exemple:
122 BLOAD"00000001.SCA",S: BSAVE"022",256*0,256*2-1,S soit sauvée avec la latitude de 211 à 212
123 BLOAD"00000001.SCA",S: BSAVE"023",256*2,256*4-1,S soit sauvée avec la latitude de 209 à 210
124 BLOAD"00000001.SCA",S: BSAVE"024",256*4,256*6-1,S soit sauvée avec la latitude de 207 à 208
etc etc...
Pouvez vous m'indiquer la commande exacte svp?
La raison est simple puisque:
1) Les bribes ont un emplacement prédéfinies.
2) L'emplacement est indiqué par le "générateur".
3) Le générateur se contente "d'extraire" par [Copier/Coller] des lignes d'une image.
4) Le player ne fait que lire les bribes de façon succincte sans indiquer de coordonnées.
Ces opérations ne posent aucun problème pour un SCROLL allant de [HAUT vers le BAS] puisque le générateur suit ce processus.
Pour créer un SROLL allant de [BAS en HAUT], il faut "Altérer" les coordonnées "Latitudes" dans le générateur.
Concrètement, voici à quoi ressemble le générateur actuellement.
Citation :
10 'SAVE"GEN00-03.asc",A
20 'generateur de bribes d'images [22x(2x256)]+[(106x(2x256)]
30 VDP(10)=0: SCREEN 10
99 CALL CHDIR ("M-00-01")
122 BLOAD"00000001.SCA",S: BSAVE"022",256*0,256*2-1,S
123 BLOAD"00000001.SCA",S: BSAVE"023",256*2,256*4-1,S
124 BLOAD"00000001.SCA",S: BSAVE"024",256*4,256*6-1,S
125 BLOAD"00000001.SCA",S: BSAVE"025",256*6,256*8-1,S
126 BLOAD"00000001.SCA",S: BSAVE"026",256*8,256*10-1,S
127 BLOAD"00000001.SCA",S: BSAVE"027",256*10,256*12-1,S
128 BLOAD"00000001.SCA",S: BSAVE"028",256*12,256*14-1,S
129 BLOAD"00000001.SCA",S: BSAVE"029",256*14,256*16-1,S
130 BLOAD"00000001.SCA",S: BSAVE"030",256*16,256*18-1,S
131 BLOAD"00000001.SCA",S: BSAVE"031",256*18,256*20-1,S
132 BLOAD"00000001.SCA",S: BSAVE"032",256*20,256*22-1,S
133 BLOAD"00000001.SCA",S: BSAVE"033",256*22,256*24-1,S
134 BLOAD"00000001.SCA",S: BSAVE"034",256*24,256*26-1,S
135 BLOAD"00000001.SCA",S: BSAVE"035",256*26,256*28-1,S
136 BLOAD"00000001.SCA",S: BSAVE"036",256*28,256*30-1,S
137 BLOAD"00000001.SCA",S: BSAVE"037",256*30,256*32-1,S
138 BLOAD"00000001.SCA",S: BSAVE"038",256*32,256*34-1,S
139 BLOAD"00000001.SCA",S: BSAVE"039",256*34,256*36-1,S
140 BLOAD"00000001.SCA",S: BSAVE"040",256*36,256*38-1,S
141 BLOAD"00000001.SCA",S: BSAVE"041",256*38,256*40-1,S
142 BLOAD"00000001.SCA",S: BSAVE"042",256*40,256*42-1,S
143 BLOAD"00000001.SCA",S: BSAVE"043",256*42,256*44-1,S
144 BLOAD"00000001.SCA",S: BSAVE"044",256*44,256*46-1,S
145 BLOAD"00000001.SCA",S: BSAVE"045",256*46,256*48-1,S
146 BLOAD"00000001.SCA",S: BSAVE"046",256*48,256*50-1,S
147 BLOAD"00000001.SCA",S: BSAVE"047",256*50,256*52-1,S
148 BLOAD"00000001.SCA",S: BSAVE"048",256*52,256*54-1,S
149 BLOAD"00000001.SCA",S: BSAVE"049",256*54,256*56-1,S
150 BLOAD"00000001.SCA",S: BSAVE"050",256*56,256*58-1,S
151 BLOAD"00000001.SCA",S: BSAVE"051",256*58,256*60-1,S
152 BLOAD"00000001.SCA",S: BSAVE"052",256*60,256*62-1,S
153 BLOAD"00000001.SCA",S: BSAVE"053",256*62,256*64-1,S
154 BLOAD"00000001.SCA",S: BSAVE"054",256*64,256*66-1,S
155 BLOAD"00000001.SCA",S: BSAVE"055",256*66,256*68-1,S
156 BLOAD"00000001.SCA",S: BSAVE"056",256*68,256*70-1,S
157 BLOAD"00000001.SCA",S: BSAVE"057",256*70,256*72-1,S
158 BLOAD"00000001.SCA",S: BSAVE"058",256*72,256*74-1,S
159 BLOAD"00000001.SCA",S: BSAVE"059",256*74,256*76-1,S
160 BLOAD"00000001.SCA",S: BSAVE"060",256*76,256*78-1,S
161 BLOAD"00000001.SCA",S: BSAVE"061",256*78,256*80-1,S
162 BLOAD"00000001.SCA",S: BSAVE"062",256*80,256*82-1,S
163 BLOAD"00000001.SCA",S: BSAVE"063",256*82,256*84-1,S
164 BLOAD"00000001.SCA",S: BSAVE"064",256*84,256*86-1,S
165 BLOAD"00000001.SCA",S: BSAVE"065",256*86,256*88-1,S
166 BLOAD"00000001.SCA",S: BSAVE"066",256*88,256*90-1,S
167 BLOAD"00000001.SCA",S: BSAVE"067",256*90,256*92-1,S
168 BLOAD"00000001.SCA",S: BSAVE"068",256*92,256*94-1,S
169 BLOAD"00000001.SCA",S: BSAVE"069",256*94,256*96-1,S
170 BLOAD"00000001.SCA",S: BSAVE"070",256*96,256*98-1,S
171 BLOAD"00000001.SCA",S: BSAVE"071",256*98,256*100-1,S
172 BLOAD"00000001.SCA",S: BSAVE"072",256*100,256*102-1,S
173 BLOAD"00000001.SCA",S: BSAVE"073",256*102,256*104-1,S
174 BLOAD"00000001.SCA",S: BSAVE"074",256*104,256*106-1,S
175 BLOAD"00000001.SCA",S: BSAVE"075",256*106,256*108-1,S
176 BLOAD"00000001.SCA",S: BSAVE"076",256*108,256*110-1,S
177 BLOAD"00000001.SCA",S: BSAVE"077",256*110,256*112-1,S
178 BLOAD"00000001.SCA",S: BSAVE"078",256*112,256*114-1,S
179 BLOAD"00000001.SCA",S: BSAVE"079",256*114,256*116-1,S
180 BLOAD"00000001.SCA",S: BSAVE"080",256*116,256*118-1,S
181 BLOAD"00000001.SCA",S: BSAVE"081",256*118,256*120-1,S
182 BLOAD"00000001.SCA",S: BSAVE"082",256*120,256*122-1,S
183 BLOAD"00000001.SCA",S: BSAVE"083",256*122,256*124-1,S
184 BLOAD"00000001.SCA",S: BSAVE"084",256*124,256*126-1,S
185 BLOAD"00000001.SCA",S: BSAVE"085",256*126,256*128-1,S
186 BLOAD"00000001.SCA",S: BSAVE"086",256*128,256*130-1,S
187 BLOAD"00000001.SCA",S: BSAVE"087",256*130,256*132-1,S
188 BLOAD"00000001.SCA",S: BSAVE"088",256*132,256*134-1,S
189 BLOAD"00000001.SCA",S: BSAVE"089",256*134,256*136-1,S
190 BLOAD"00000001.SCA",S: BSAVE"090",256*136,256*138-1,S
191 BLOAD"00000001.SCA",S: BSAVE"091",256*138,256*140-1,S
192 BLOAD"00000001.SCA",S: BSAVE"092",256*140,256*142-1,S
193 BLOAD"00000001.SCA",S: BSAVE"093",256*142,256*144-1,S
194 BLOAD"00000001.SCA",S: BSAVE"094",256*144,256*146-1,S
195 BLOAD"00000001.SCA",S: BSAVE"095",256*146,256*148-1,S
196 BLOAD"00000001.SCA",S: BSAVE"096",256*148,256*150-1,S
197 BLOAD"00000001.SCA",S: BSAVE"097",256*150,256*152-1,S
198 BLOAD"00000001.SCA",S: BSAVE"098",256*152,256*154-1,S
199 BLOAD"00000001.SCA",S: BSAVE"099",256*154,256*156-1,S
200 BLOAD"00000001.SCA",S: BSAVE"100",256*156,256*158-1,S
201 BLOAD"00000001.SCA",S: BSAVE"101",256*158,256*160-1,S
202 BLOAD"00000001.SCA",S: BSAVE"102",256*160,256*162-1,S
203 BLOAD"00000001.SCA",S: BSAVE"103",256*162,256*164-1,S
204 BLOAD"00000001.SCA",S: BSAVE"104",256*164,256*166-1,S
205 BLOAD"00000001.SCA",S: BSAVE"105",256*166,256*168-1,S
206 BLOAD"00000001.SCA",S: BSAVE"106",256*168,256*170-1,S
207 BLOAD"00000001.SCA",S: BSAVE"107",256*170,256*172-1,S
208 BLOAD"00000001.SCA",S: BSAVE"108",256*172,256*174-1,S
209 BLOAD"00000001.SCA",S: BSAVE"109",256*174,256*176-1,S
210 BLOAD"00000001.SCA",S: BSAVE"110",256*176,256*178-1,S
211 BLOAD"00000001.SCA",S: BSAVE"111",256*178,256*180-1,S
212 BLOAD"00000001.SCA",S: BSAVE"112",256*180,256*182-1,S
213 BLOAD"00000001.SCA",S: BSAVE"113",256*182,256*184-1,S
214 BLOAD"00000001.SCA",S: BSAVE"114",256*184,256*186-1,S
215 BLOAD"00000001.SCA",S: BSAVE"115",256*186,256*188-1,S
216 BLOAD"00000001.SCA",S: BSAVE"116",256*188,256*190-1,S
217 BLOAD"00000001.SCA",S: BSAVE"117",256*190,256*192-1,S
218 BLOAD"00000001.SCA",S: BSAVE"118",256*192,256*194-1,S
219 BLOAD"00000001.SCA",S: BSAVE"119",256*194,256*196-1,S
220 BLOAD"00000001.SCA",S: BSAVE"120",256*196,256*198-1,S
221 BLOAD"00000001.SCA",S: BSAVE"121",256*198,256*200-1,S
222 BLOAD"00000001.SCA",S: BSAVE"122",256*200,256*202-1,S
223 BLOAD"00000001.SCA",S: BSAVE"123",256*202,256*204-1,S
224 BLOAD"00000001.SCA",S: BSAVE"124",256*204,256*206-1,S
225 BLOAD"00000001.SCA",S: BSAVE"125",256*206,256*208-1,S
226 BLOAD"00000001.SCA",S: BSAVE"126",256*208,256*210-1,S
227 BLOAD"00000001.SCA",S: BSAVE"127",256*210,256*212-1,S
10 'SAVE"GEN00-03.asc",A
20 'generateur de bribes d'images [22x(2x256)]+[(106x(2x256)]
30 VDP(10)=0: SCREEN 10
99 CALL CHDIR ("M-00-01")
122 BLOAD"00000001.SCA",S: BSAVE"022",256*0,256*2-1,S
123 BLOAD"00000001.SCA",S: BSAVE"023",256*2,256*4-1,S
124 BLOAD"00000001.SCA",S: BSAVE"024",256*4,256*6-1,S
125 BLOAD"00000001.SCA",S: BSAVE"025",256*6,256*8-1,S
126 BLOAD"00000001.SCA",S: BSAVE"026",256*8,256*10-1,S
127 BLOAD"00000001.SCA",S: BSAVE"027",256*10,256*12-1,S
128 BLOAD"00000001.SCA",S: BSAVE"028",256*12,256*14-1,S
129 BLOAD"00000001.SCA",S: BSAVE"029",256*14,256*16-1,S
130 BLOAD"00000001.SCA",S: BSAVE"030",256*16,256*18-1,S
131 BLOAD"00000001.SCA",S: BSAVE"031",256*18,256*20-1,S
132 BLOAD"00000001.SCA",S: BSAVE"032",256*20,256*22-1,S
133 BLOAD"00000001.SCA",S: BSAVE"033",256*22,256*24-1,S
134 BLOAD"00000001.SCA",S: BSAVE"034",256*24,256*26-1,S
135 BLOAD"00000001.SCA",S: BSAVE"035",256*26,256*28-1,S
136 BLOAD"00000001.SCA",S: BSAVE"036",256*28,256*30-1,S
137 BLOAD"00000001.SCA",S: BSAVE"037",256*30,256*32-1,S
138 BLOAD"00000001.SCA",S: BSAVE"038",256*32,256*34-1,S
139 BLOAD"00000001.SCA",S: BSAVE"039",256*34,256*36-1,S
140 BLOAD"00000001.SCA",S: BSAVE"040",256*36,256*38-1,S
141 BLOAD"00000001.SCA",S: BSAVE"041",256*38,256*40-1,S
142 BLOAD"00000001.SCA",S: BSAVE"042",256*40,256*42-1,S
143 BLOAD"00000001.SCA",S: BSAVE"043",256*42,256*44-1,S
144 BLOAD"00000001.SCA",S: BSAVE"044",256*44,256*46-1,S
145 BLOAD"00000001.SCA",S: BSAVE"045",256*46,256*48-1,S
146 BLOAD"00000001.SCA",S: BSAVE"046",256*48,256*50-1,S
147 BLOAD"00000001.SCA",S: BSAVE"047",256*50,256*52-1,S
148 BLOAD"00000001.SCA",S: BSAVE"048",256*52,256*54-1,S
149 BLOAD"00000001.SCA",S: BSAVE"049",256*54,256*56-1,S
150 BLOAD"00000001.SCA",S: BSAVE"050",256*56,256*58-1,S
151 BLOAD"00000001.SCA",S: BSAVE"051",256*58,256*60-1,S
152 BLOAD"00000001.SCA",S: BSAVE"052",256*60,256*62-1,S
153 BLOAD"00000001.SCA",S: BSAVE"053",256*62,256*64-1,S
154 BLOAD"00000001.SCA",S: BSAVE"054",256*64,256*66-1,S
155 BLOAD"00000001.SCA",S: BSAVE"055",256*66,256*68-1,S
156 BLOAD"00000001.SCA",S: BSAVE"056",256*68,256*70-1,S
157 BLOAD"00000001.SCA",S: BSAVE"057",256*70,256*72-1,S
158 BLOAD"00000001.SCA",S: BSAVE"058",256*72,256*74-1,S
159 BLOAD"00000001.SCA",S: BSAVE"059",256*74,256*76-1,S
160 BLOAD"00000001.SCA",S: BSAVE"060",256*76,256*78-1,S
161 BLOAD"00000001.SCA",S: BSAVE"061",256*78,256*80-1,S
162 BLOAD"00000001.SCA",S: BSAVE"062",256*80,256*82-1,S
163 BLOAD"00000001.SCA",S: BSAVE"063",256*82,256*84-1,S
164 BLOAD"00000001.SCA",S: BSAVE"064",256*84,256*86-1,S
165 BLOAD"00000001.SCA",S: BSAVE"065",256*86,256*88-1,S
166 BLOAD"00000001.SCA",S: BSAVE"066",256*88,256*90-1,S
167 BLOAD"00000001.SCA",S: BSAVE"067",256*90,256*92-1,S
168 BLOAD"00000001.SCA",S: BSAVE"068",256*92,256*94-1,S
169 BLOAD"00000001.SCA",S: BSAVE"069",256*94,256*96-1,S
170 BLOAD"00000001.SCA",S: BSAVE"070",256*96,256*98-1,S
171 BLOAD"00000001.SCA",S: BSAVE"071",256*98,256*100-1,S
172 BLOAD"00000001.SCA",S: BSAVE"072",256*100,256*102-1,S
173 BLOAD"00000001.SCA",S: BSAVE"073",256*102,256*104-1,S
174 BLOAD"00000001.SCA",S: BSAVE"074",256*104,256*106-1,S
175 BLOAD"00000001.SCA",S: BSAVE"075",256*106,256*108-1,S
176 BLOAD"00000001.SCA",S: BSAVE"076",256*108,256*110-1,S
177 BLOAD"00000001.SCA",S: BSAVE"077",256*110,256*112-1,S
178 BLOAD"00000001.SCA",S: BSAVE"078",256*112,256*114-1,S
179 BLOAD"00000001.SCA",S: BSAVE"079",256*114,256*116-1,S
180 BLOAD"00000001.SCA",S: BSAVE"080",256*116,256*118-1,S
181 BLOAD"00000001.SCA",S: BSAVE"081",256*118,256*120-1,S
182 BLOAD"00000001.SCA",S: BSAVE"082",256*120,256*122-1,S
183 BLOAD"00000001.SCA",S: BSAVE"083",256*122,256*124-1,S
184 BLOAD"00000001.SCA",S: BSAVE"084",256*124,256*126-1,S
185 BLOAD"00000001.SCA",S: BSAVE"085",256*126,256*128-1,S
186 BLOAD"00000001.SCA",S: BSAVE"086",256*128,256*130-1,S
187 BLOAD"00000001.SCA",S: BSAVE"087",256*130,256*132-1,S
188 BLOAD"00000001.SCA",S: BSAVE"088",256*132,256*134-1,S
189 BLOAD"00000001.SCA",S: BSAVE"089",256*134,256*136-1,S
190 BLOAD"00000001.SCA",S: BSAVE"090",256*136,256*138-1,S
191 BLOAD"00000001.SCA",S: BSAVE"091",256*138,256*140-1,S
192 BLOAD"00000001.SCA",S: BSAVE"092",256*140,256*142-1,S
193 BLOAD"00000001.SCA",S: BSAVE"093",256*142,256*144-1,S
194 BLOAD"00000001.SCA",S: BSAVE"094",256*144,256*146-1,S
195 BLOAD"00000001.SCA",S: BSAVE"095",256*146,256*148-1,S
196 BLOAD"00000001.SCA",S: BSAVE"096",256*148,256*150-1,S
197 BLOAD"00000001.SCA",S: BSAVE"097",256*150,256*152-1,S
198 BLOAD"00000001.SCA",S: BSAVE"098",256*152,256*154-1,S
199 BLOAD"00000001.SCA",S: BSAVE"099",256*154,256*156-1,S
200 BLOAD"00000001.SCA",S: BSAVE"100",256*156,256*158-1,S
201 BLOAD"00000001.SCA",S: BSAVE"101",256*158,256*160-1,S
202 BLOAD"00000001.SCA",S: BSAVE"102",256*160,256*162-1,S
203 BLOAD"00000001.SCA",S: BSAVE"103",256*162,256*164-1,S
204 BLOAD"00000001.SCA",S: BSAVE"104",256*164,256*166-1,S
205 BLOAD"00000001.SCA",S: BSAVE"105",256*166,256*168-1,S
206 BLOAD"00000001.SCA",S: BSAVE"106",256*168,256*170-1,S
207 BLOAD"00000001.SCA",S: BSAVE"107",256*170,256*172-1,S
208 BLOAD"00000001.SCA",S: BSAVE"108",256*172,256*174-1,S
209 BLOAD"00000001.SCA",S: BSAVE"109",256*174,256*176-1,S
210 BLOAD"00000001.SCA",S: BSAVE"110",256*176,256*178-1,S
211 BLOAD"00000001.SCA",S: BSAVE"111",256*178,256*180-1,S
212 BLOAD"00000001.SCA",S: BSAVE"112",256*180,256*182-1,S
213 BLOAD"00000001.SCA",S: BSAVE"113",256*182,256*184-1,S
214 BLOAD"00000001.SCA",S: BSAVE"114",256*184,256*186-1,S
215 BLOAD"00000001.SCA",S: BSAVE"115",256*186,256*188-1,S
216 BLOAD"00000001.SCA",S: BSAVE"116",256*188,256*190-1,S
217 BLOAD"00000001.SCA",S: BSAVE"117",256*190,256*192-1,S
218 BLOAD"00000001.SCA",S: BSAVE"118",256*192,256*194-1,S
219 BLOAD"00000001.SCA",S: BSAVE"119",256*194,256*196-1,S
220 BLOAD"00000001.SCA",S: BSAVE"120",256*196,256*198-1,S
221 BLOAD"00000001.SCA",S: BSAVE"121",256*198,256*200-1,S
222 BLOAD"00000001.SCA",S: BSAVE"122",256*200,256*202-1,S
223 BLOAD"00000001.SCA",S: BSAVE"123",256*202,256*204-1,S
224 BLOAD"00000001.SCA",S: BSAVE"124",256*204,256*206-1,S
225 BLOAD"00000001.SCA",S: BSAVE"125",256*206,256*208-1,S
226 BLOAD"00000001.SCA",S: BSAVE"126",256*208,256*210-1,S
227 BLOAD"00000001.SCA",S: BSAVE"127",256*210,256*212-1,S
Je voudrais donc modifier tel que par exemple:
122 BLOAD"00000001.SCA",S: BSAVE"022",256*0,256*2-1,S soit sauvée avec la latitude de 211 à 212
123 BLOAD"00000001.SCA",S: BSAVE"023",256*2,256*4-1,S soit sauvée avec la latitude de 209 à 210
124 BLOAD"00000001.SCA",S: BSAVE"024",256*4,256*6-1,S soit sauvée avec la latitude de 207 à 208
etc etc...
Pouvez vous m'indiquer la commande exacte svp?
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie
















