MSX Village forum

La Place des Développeurs [RESOLU] VDP(27) le Scrolling hardware Horizontal Comment alimenter de nouveaux décors VDP (27)?

igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 17/09/2014 à 20h18

Reprise du message précédent

GDX :
T'inquiètes pas Metalion, il en faut plus pour décourager igal. :lol




voici l'idée tordue qui a germée dans ma tête :fou





Les directions ci dessous "devraient" fonctionner au vu de mes testes précédents.

Haut => Répertoire contenant les bribes HAUT

Bas => Répertoire contenant les Bribes BAS

Diagonal Droit/Haut => Répertoire contenant les Bribes Haut

Diagonal Gauche/Haut => Répertoire contenant les Bribes Haut

Diagonal Droite/Bas => Répertoire contenant les Bribes Bas

Diagonal Gauche/Bas => Répertoire contenant les Bribes Bas



Les directions ci dessous doivent être testés:

Droite => Répertoire contenant les Bribes Droites

Gauche => Répertoire contenant les Bribes Gauches



Bon c'est juste une idée, mais on est positif lol


Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
GDX Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 17/01/2011 à 08h52

Messages: 3004

Le 18/09/2014 à 00h26
On ne sais jamais jusqu'où vont tes bidouilles mais ça a au moins le mérite de nous apprendre des choses sur le MSX à chaque fois. :)
   
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 18/09/2014 à 16h56
(GDX) à propos d’événements inattendus:
En SCREEN 12, la commande => VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255 ne génère pas de barre verticale sur la gauche de l'écran comme sur les autre modes graphiques ;)

Un rien m'amuse lol

http://youtu.be/LOeAI1qhtYM

voici le listing pas optimisé du tout je sais :lol

Code TEXT :
10 'SAVE"VPLAY10.asc",A
20 'GENERATEUR DE BRIBES DVDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000IMAGES [11X(4X256)]+[(53X(4X256)]
30 VDP(10)=0: SCREEN 12:X=100:Y=100
40 CALL CHDIR ("00-01")
50 BLOAD"00.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
55 '
60 VDP(24)=VDP(24)+2AND255:BLOAD"01.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
65 ' 
70 VDP(24)=VDP(24)+2AND255:BLOAD"02.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
75 ' 
80 VDP(24)=VDP(24)+2AND255:BLOAD"03.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
85 ' 
90 VDP(24)=VDP(24)+2AND255:BLOAD"04.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
95 ' 
100 VDP(24)=VDP(24)+2AND255:BLOAD"05.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
105 ' 
110 VDP(24)=VDP(24)+2AND255:BLOAD"06.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
115 ' 
120 VDP(24)=VDP(24)+2AND255:BLOAD"07.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
125 ' 
130 VDP(24)=VDP(24)+2AND255:BLOAD"08.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
135 ' 
140 VDP(24)=VDP(24)+2AND255:BLOAD"09.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
145 ' 
150 VDP(24)=VDP(24)+2AND255:BLOAD"10.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
155 '  
160 VDP(24)=VDP(24)+2AND255:BLOAD"11.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
165 ' 
170 VDP(24)=VDP(24)+2AND255:BLOAD"12.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
175 ' 
180 VDP(24)=VDP(24)+2AND255:BLOAD"13.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
185 ' 
190 VDP(24)=VDP(24)+2AND255:BLOAD"14.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
195 ' 
200 VDP(24)=VDP(24)+2AND255:BLOAD"15.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
205 ' 
210 VDP(24)=VDP(24)+2AND255:BLOAD"16.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
215 ' 
220 VDP(24)=VDP(24)+2AND255:BLOAD"17.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
225 ' 
230 VDP(24)=VDP(24)+2AND255:BLOAD"18.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
235 ' 
240 VDP(24)=VDP(24)+2AND255:BLOAD"19.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
245 ' 
250 VDP(24)=VDP(24)+2AND255:BLOAD"20.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
255 ' 
260 VDP(24)=VDP(24)+2AND255:BLOAD"21.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
265 ' 
270 VDP(24)=VDP(24)+2AND255:BLOAD"22.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
275 ' 
280 VDP(24)=VDP(24)+2AND255:BLOAD"23.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
285 ' 
290 VDP(24)=VDP(24)+2AND255:BLOAD"24.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
295 ' 
300 VDP(24)=VDP(24)+2AND255:BLOAD"25.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
305 ' 
310 VDP(24)=VDP(24)+2AND255:BLOAD"26.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
315 ' 
320 VDP(24)=VDP(24)+2AND255:BLOAD"27.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
325 ' 
330 VDP(24)=VDP(24)+2AND255:BLOAD"28.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
335 ' 
340 VDP(24)=VDP(24)+2AND255:BLOAD"29.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
345 ' 
350 VDP(24)=VDP(24)+2AND255:BLOAD"30.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
355 ' 
360 VDP(24)=VDP(24)+2AND255:BLOAD"31.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
365 ' 
370 VDP(24)=VDP(24)+2AND255:BLOAD"32.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
375 ' 
380 VDP(24)=VDP(24)+2AND255:BLOAD"33.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
385 ' 
390 VDP(24)=VDP(24)+2AND255:BLOAD"34.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
395 ' 
400 VDP(24)=VDP(24)+2AND255:BLOAD"35.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
405 ' 
410 VDP(24)=VDP(24)+2AND255:BLOAD"36.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
415 ' 
420 VDP(24)=VDP(24)+2AND255:BLOAD"37.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
425 ' 
430 VDP(24)=VDP(24)+2AND255:BLOAD"38.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
435 ' 
440 VDP(24)=VDP(24)+2AND255:BLOAD"39.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
445 ' 
450 VDP(24)=VDP(24)+2AND255:BLOAD"40.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
455 ' 
460 VDP(24)=VDP(24)+2AND255:BLOAD"41.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
465 ' 
470 VDP(24)=VDP(24)+2AND255:BLOAD"42.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
475 ' 
480 VDP(24)=VDP(24)+2AND255:BLOAD"43.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
485 ' 
490 VDP(24)=VDP(24)+2AND255:BLOAD"44.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
495 ' 
500 VDP(24)=VDP(24)+2AND255:BLOAD"45.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
505 ' 
510 VDP(24)=VDP(24)+2AND255:BLOAD"46.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
515 ' 
520 VDP(24)=VDP(24)+2AND255:BLOAD"47.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
525 ' 
530 VDP(24)=VDP(24)+2AND255:BLOAD"48.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
535 ' 
540 VDP(24)=VDP(24)+2AND255:BLOAD"49.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
545 ' 
550 VDP(24)=VDP(24)+2AND255:BLOAD"50.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
555 ' 
560 VDP(24)=VDP(24)+2AND255:BLOAD"51.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
565 ' 
570 VDP(24)=VDP(24)+2AND255:BLOAD"52.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
575 ' 
580 VDP(24)=VDP(24)+2AND255:BLOAD"53.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
585 ' 
590 VDP(24)=VDP(24)+2AND255:BLOAD"54.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
595 ' 
600 VDP(24)=VDP(24)+2AND255:BLOAD"55.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
605 ' 
610 VDP(24)=VDP(24)+2AND255:BLOAD"56.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
615 ' 
620 VDP(24)=VDP(24)+2AND255:BLOAD"57.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
625 ' 
630 VDP(24)=VDP(24)+2AND255:BLOAD"58.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
635 ' 
640 VDP(24)=VDP(24)+2AND255:BLOAD"59.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
645 ' 
650 VDP(24)=VDP(24)+2AND255:BLOAD"60.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
655 ' 
660 VDP(24)=VDP(24)+2AND255:BLOAD"61.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
665 ' 
670 VDP(24)=VDP(24)+2AND255:BLOAD"62.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
675 ' 
680 VDP(24)=VDP(24)+2AND255:BLOAD"63.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
685 '
690 CALL CHDIR (".."): CALL CHDIR ("02-03")
695 '
700 VDP(24)=VDP(24)+2AND255:BLOAD"00.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
705 ' 
710 VDP(24)=VDP(24)+2AND255:BLOAD"01.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
715 ' 
720 VDP(24)=VDP(24)+2AND255:BLOAD"02.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
725 ' 
730 VDP(24)=VDP(24)+2AND255:BLOAD"03.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
735 ' 
740 VDP(24)=VDP(24)+2AND255:BLOAD"04.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
745 ' 
750 VDP(24)=VDP(24)+2AND255:BLOAD"05.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
755 ' 
760 VDP(24)=VDP(24)+2AND255:BLOAD"06.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
765 ' 
770 VDP(24)=VDP(24)+2AND255:BLOAD"07.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
775 ' 
780 VDP(24)=VDP(24)+2AND255:BLOAD"08.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
785 ' 
790 VDP(24)=VDP(24)+2AND255:BLOAD"09.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
795 ' 
800 VDP(24)=VDP(24)+2AND255:BLOAD"10.scc",S,0-11264:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
805 ' 
810 VDP(24)=VDP(24)+2AND255:BLOAD"11.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
815 ' 
820 VDP(24)=VDP(24)+2AND255:BLOAD"12.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
825 ' 
830 VDP(24)=VDP(24)+2AND255:BLOAD"13.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
835 ' 
840 VDP(24)=VDP(24)+2AND255:BLOAD"14.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
845 ' 
850 VDP(24)=VDP(24)+2AND255:BLOAD"15.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
855 ' 
860 VDP(24)=VDP(24)+2AND255:BLOAD"16.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
865 ' 
870 VDP(24)=VDP(24)+2AND255:BLOAD"17.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
875 ' 
880 VDP(24)=VDP(24)+2AND255:BLOAD"18.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
885 ' 
890 VDP(24)=VDP(24)+2AND255:BLOAD"19.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
895 ' 
900 VDP(24)=VDP(24)+2AND255:BLOAD"20.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
905 ' 
910 VDP(24)=VDP(24)+2AND255:BLOAD"21.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
915 ' 
920 VDP(24)=VDP(24)+2AND255:BLOAD"22.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
925 ' 
930 VDP(24)=VDP(24)+2AND255:BLOAD"23.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
935 ' 
940 VDP(24)=VDP(24)+2AND255:BLOAD"24.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
945 ' 
950 VDP(24)=VDP(24)+2AND255:BLOAD"25.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
955 ' 
960 VDP(24)=VDP(24)+2AND255:BLOAD"26.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
965 ' 
970 VDP(24)=VDP(24)+2AND255:BLOAD"27.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
975 ' 
980 VDP(24)=VDP(24)+2AND255:BLOAD"28.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
985 ' 
990 VDP(24)=VDP(24)+2AND255:BLOAD"29.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
995 ' 
1000 VDP(24)=VDP(24)+2AND255:BLOAD"30.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1005 ' 
1010 VDP(24)=VDP(24)+2AND255:BLOAD"31.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1015 ' 
1020 VDP(24)=VDP(24)+2AND255:BLOAD"32.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1025 ' 
1030 VDP(24)=VDP(24)+2AND255:BLOAD"33.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1035 ' 
1040 VDP(24)=VDP(24)+2AND255:BLOAD"34.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1045 ' 
1050 VDP(24)=VDP(24)+2AND255:BLOAD"35.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1055 ' 
1060 VDP(24)=VDP(24)+2AND255:BLOAD"36.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1065 ' 
1070 VDP(24)=VDP(24)+2AND255:BLOAD"37.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1075 ' 
1080 VDP(24)=VDP(24)+2AND255:BLOAD"38.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1085 ' 
1090 VDP(24)=VDP(24)+2AND255:BLOAD"39.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1095 ' 
1100 VDP(24)=VDP(24)+2AND255:BLOAD"40.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1105 ' 
1110 VDP(24)=VDP(24)+2AND255:BLOAD"41.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1115 ' 
1120 VDP(24)=VDP(24)+2AND255:BLOAD"42.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1125 ' 
1130 VDP(24)=VDP(24)+2AND255:BLOAD"43.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1135 ' 
1140 VDP(24)=VDP(24)+2AND255:BLOAD"44.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1145 ' 
1150 VDP(24)=VDP(24)+2AND255:BLOAD"45.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1155 ' 
1160 VDP(24)=VDP(24)+2AND255:BLOAD"46.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1165 ' 
1170 VDP(24)=VDP(24)+2AND255:BLOAD"47.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1175 ' 
1180 VDP(24)=VDP(24)+2AND255:BLOAD"48.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1185 ' 
1190 VDP(24)=VDP(24)+2AND255:BLOAD"49.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1195 ' 
1200 VDP(24)=VDP(24)+2AND255:BLOAD"50.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1205 ' 
1210 VDP(24)=VDP(24)+2AND255:BLOAD"51.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1215 ' 
1220 VDP(24)=VDP(24)+2AND255:BLOAD"52.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1225 ' 
1230 VDP(24)=VDP(24)+2AND255:BLOAD"53.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1235 ' 
1240 VDP(24)=VDP(24)+2AND255:BLOAD"54.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1245 ' 
1250 VDP(24)=VDP(24)+2AND255:BLOAD"55.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1255 ' 
1260 VDP(24)=VDP(24)+2AND255:BLOAD"56.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1265 ' 
1270 VDP(24)=VDP(24)+2AND255:BLOAD"57.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1275 ' 
1280 VDP(24)=VDP(24)+2AND255:BLOAD"58.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1285 ' 
1290 VDP(24)=VDP(24)+2AND255:BLOAD"59.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1295 ' 
1300 VDP(24)=VDP(24)+2AND255:BLOAD"60.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1305 ' 
1310 VDP(24)=VDP(24)+2AND255:BLOAD"61.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1315 ' 
1320 VDP(24)=VDP(24)+2AND255:BLOAD"62.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1325 ' 
1330 VDP(24)=VDP(24)+2AND255:BLOAD"63.scc",S:VDP(24)=VDP(24)+2AND255:VDP(27)=(N+7)8: VDP(28)=-N AND 7:N=N+1AND255:GOSUB 10000
1335 '
1340 VDP(24)=VDP(24)+2AND255:CALL CHDIR(".."):GOTO40
10000 S=STICK(0):ONS+1GOSUB10100,10200,10300,10400,10500,10600,10700,10800,10900:RETURN
10100 'STATIQUE
10110 Y=Y+4:PUTSPRITE0,(X,Y),7,0:RETURN
10200 'HAUT
10210 Y=Y-4:PUTSPRITE0,(X,Y),7,0:RETURN
10300 'DIAGO HAUT DROITE
10310 RETURN
10400 'DROITE
10410 X=X+4:Y=Y+4:PUTSPRITE0,(X,Y),7,0:RETURN
10500 'DIAGO DROITE BAS
10510 RETURN
10600 'BAS
10610 Y=Y+8:PUTSPRITE0,(X,Y),7,0:RETURN
10700 'DIAGO BAS GAUCHE
10710 RETURN
10800 'GAUCHE
10810 X=X-4:Y=Y+4:PUTSPRITE0,(X,Y),7,0:RETURN
10900 'DIAGO HAUT GAUCHE
10910 RETURN



Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
ericb59 Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++ Groupe : Shoutbox

Inscrit le : 17/04/2012 à 10h25

Messages: 5485

Le 18/09/2014 à 20h45
je serais toi je ferai le test sur une disquette, puis avec DSK2ROM je la transformerai en Rom pour voir ce que ça donne au niveau rapidité...


banniere-ericb59e
Site web    
Fabf Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 24/08/2010 à 20h55

Messages: 4833

Le 18/09/2014 à 20h49
igal :


Les directions ci dessous doivent être testés:

Droite => Répertoire contenant les Bribes Droites

Gauche => Répertoire contenant les Bribes Gauches





Les déplacement latéraux ne fonctionneront pas car dans ce cas la VRAM n'est pas linéaire.

En plus il n'y a pas de zone non affichée pour faire tampon.



Désolé :oups
z80 Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 17/05/2013 à 22h52

Messages: 956

Le 18/09/2014 à 21h23
Au risque d'en énerver certains.... :D
Depuis hier je sort un signal VGA avec un simple CPLD MAX7128S! Et je ne suis même pas à 50% d'utilisation .
Premiers pas vers mon propre VDP....
Je vais passer au FPGA bientôt quand j'aurais reçu la carte d'évaluation... Edité par z80 Le 18/09/2014 à 21h27


TurboR GT (1Mo), CANON V20! ( en kit, modif 2+ en cours) :top
Pas encore retrouvés: V9990, Grafx9000, SUNRISE IDE 2x CF, SUNRISE MOONSOUND, FM PAC, MUSIC MODULE, NMS8280, SD SNATCHER,... :\'(
   
TurboSEB Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++ Groupe : Shoutbox

Inscrit le : 08/08/2010 à 20h57

Messages: 5794

Le 18/09/2014 à 21h47
Igal, respire un grand coup, ca va aller va, ca va aller ^^:lol

Un VDP nouveau, ca risque d'en titiller certains, en effect ^^

C'est vrai que Igal avec sa petite graine de F... , il va bientot nous pondre un truc la,j'en suis sure , et c'est vrai que ses recherches nous aprennent beaucoup ^^ Edité par TurboSEB Le 18/09/2014 à 22h03



MSX 1&2 + Moniteurs+divers (environ 0.70Tonnes)
   
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 19/09/2014 à 14h38
@Eric: Pour le moment, je veux voir jusqu'ou on peut pousser ;)

Y a quelques posts tu parlais d'une méthode pour charger les fichiers avec une lise de noms sous forme de DATA préétablis.

Peux tu me donner un bout de code stp :D

Sachant que les fichiers sont TOUJOURS => 00.SCC à 63.SCC
Seuls les Répertoires sont changés pour lire la suite du Scroll.

Merci de votre aide Edité par igal Le 19/09/2014 à 14h38


Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
ericb59 Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++ Groupe : Shoutbox

Inscrit le : 17/04/2012 à 10h25

Messages: 5485

Le 19/09/2014 à 14h46


Pour moi la méthode la plus simple (et basique :lol ) serait


10 restore 100
20 nb=10
30 for i=1 to nb
40 read f$:bload f$,s
50 next i
100 data "00.sc","01.sc",02.sc","03.sc"
110 data "04.sc","05.sc", ......... etc .. etc


ajoute ta ligne de scroll dans la boucle ainsi que les paramètres pour le Bload


banniere-ericb59e
Site web    
Metalion Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 23/12/2009 à 15h32

Messages: 1487

Le 19/09/2014 à 15h11
igal :
@Eric: Pour le moment, je veux voir jusqu'ou on peut pousser ;)



Y a quelques posts tu parlais d'une méthode pour charger les fichiers avec une lise de noms sous forme de DATA préétablis.



Peux tu me donner un bout de code stp :D



Sachant que les fichiers sont TOUJOURS => 00.SCC à 63.SCC

Seuls les Répertoires sont changés pour lire la suite du Scroll.



Merci de votre aide




Igal ...



Deux personnes (dont moi-même) t'ont écrit des programmes avec des chargements de fichiers automatisés (et qui marchent). Il est relativement simple de les adapter à ton besoin actuel ...



Tu demandes de l'aide mais j'ai l'impression que tu ne regardes pas ce qu'on t'envoie ... :(


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)
   
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 19/09/2014 à 15h44
Effectivement, j'ai pas fouillé.

Je vais voir aussi ta méthode :)


Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 19/09/2014 à 18h11
@Metalion: Avec la version SCROLL4 j'ai un files not found... Avec la version SCROLL8 y a des incohérences dans le défilement au bout d'un moment.

J'ai essayé de modifier la version SCROLL4 mais ca marche que sur un court moment.

Estce que chez toi ca marche impeccable? (peut être parceqeu je passe par le DOS ?!?!?)


http://youtu.be/CVeI__FqhIE

:p

EDIT: Actuellement, mes Sprites subissent le SCROLL généré par cette formule:

VDP(27)=(N+7)8: VDP(28)=-N AND 7

En effet.
Autant, VDP(24) (déplacement verrticale de SCREEN) n'affecte pas la position des SPIRTES.
Autant, VDP(27) (déplacement horizontal du SCREEN) déplace "parallèlement les SPRITES.

Je dois donc "contre carrer" les déplacement générer par le SCROLL Hardware => VDP(27)=(N+7)8: VDP(28)=-N AND 7

J'ai pensé à PUT SPRITE 0,( ICI, Y), machin chouette
Edité par igal Le 19/09/2014 à 18h42


Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
Metalion Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 23/12/2009 à 15h32

Messages: 1487

Le 21/09/2014 à 10h46
Igal, je ne t'ai jamais dit que la solution à ta nouvelle idée se trouvait dans mes programmes.
Je t'ai dit qu'il fallait aller regarder pour s'en inspirer et créer toi-même le programme dont tu as besoin.

Tu as "Files not found" avec SCROLL4, tout simplement parce qu'il n'était pas possible de créer le nombre de fichier suffisant pour le faire fonctionner, vu qu'on est limité à 112 fichiers sur une disquette. Et SCROLL8 fonctionnait bien chez moi, pas de problèmes.

Tu as tous les éléments dans ces programmes pour t'en inspirer et programmer le tien.


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)
   
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 21/09/2014 à 13h45
J'ai réfléchi au problème quant à la lenteur dans la recherche des fichiers et je projette de scinder la totalite des fichiers par répertoires mais aussi par sous répertoires.

De sorte à obtenir des "groupes de 16 bribes.SCC nommés en hexadécimal sur un seul caractère tels que:

0.SCC
1.SCC
2.SCC
....
D.SCC
E.SCC
F.SCC

De la sorte, chaque paires d'images hautes de [(44 + 212)] serait contenue dans 1 répertoire et 8 sous répertoires.

L'idée étant de ne plus être ralenti par le temps de recherche des fichiers.

il y aurait donc 1 répertoire et ses 8 sous répertoires pour la direction "haut.
Il y aura aussi 1 répertoire et ses 8 sous répertoires pour la direction "bas".

L'incrementation de vdp (24) ne se fera plus par:

Vdp (24)= vdp (24)+ 4
Mais par:
Vdp (24)=vdp (24)+2 répété deux fois entre chaque chargement de nouvelle bribe.

Une fois réglé, j'essaierai de voir comment déplacer la zone des Sprite et voir si il est possible d'implanter quelques ennemis au sol ou encore dans les aires.

Pour le moment, la véritable difficulté est de contrecarrer les déplacements des spirites sois l'influence de vdp (27).

(Peut être qu'en déplaçant la zone des Sprite sur une autre page ces derniers ne subirait plus ces accoups.
Je parle de la combinaison de vdp 27 et 28 qui génère un scroll pixel par pixel.


Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
GDX Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 17/01/2011 à 08h52

Messages: 3004

Le 21/09/2014 à 13h58
Ça ne règlera pas les problèmes de recherche et fragmentation de fichier sur le disque.
   
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 21/09/2014 à 14h22
Si tu regardes attentivement les enregistrements que jais fais, tu verras qu'il y a des ralentissement de façon "cyclique". Je pense que la majeur partie de la lenteur à "retrouver" le fichier à charger est en réalité causée par "translation" en binaire du nom de fichier.

1 fichier d'un caractère dont le nom est est contenu entre Zéro et F s' interprète peut sinterpreter sur 1 seul octet.
Tels que:
00000000 pour le fichier 0.SCC
ou encore:
00001111 pour le fichier F.SCC

si l'on procédé avec des fichiers nommés avec plus d'un caractères ou encore un seul caractère supérieur à F on augmenterait automatiquement le nombre d'octets nécessaires à la machine pour le localiser.

Ça reste des suppositions, mais ça tient la route je pense. Edité par igal Le 21/09/2014 à 14h26


Tiens... voila du boudin, voila du boudin, voila du boudin... :siffle
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie