MSX Village forum

La Place des Développeurs [Réglé] (Démo) Intro de Terminator en screen 5,7 et 8 Remake de l'intro de la version Atari ST et Amiga

Fabf Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 24/08/2010 à 20h55

Messages: 4833

Le 02/02/2013 à 23h10

Reprise du message précédent

Vraiment bien :love :top
Tu vas finir par devenir le Monsieur démo du village :D
Corrige ce bug et c'est parfait
MSXlegend Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 18/06/2010 à 22h42

Messages: 5784

Le 03/02/2013 à 00h27
Fabf :
Vraiment bien :love :top

Tu vas finir par devenir le Monsieur démo du village :D

Corrige ce bug et c'est parfait




Merci, ça ne fait que 2 mois que je bosse dessus ;) il ne me faudrait plus que 4 à 6 mois pour trouver comment corriger ce bug :sick Edité par MSXlegend Le 03/02/2013 à 00h30


Createur du KCX Bluetooth emitter au format cartouche compatible stereo moonsound
TurboSEB Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++ Groupe : Shoutbox

Inscrit le : 08/08/2010 à 20h57

Messages: 5791

Le 03/02/2013 à 07h08
:top x1000 (c'est un resumé de ce que je pensse^^)
Y'a de la passion et de l'experience la dessous :glass Mais qui osera affronté MSXLegend au prochain concours de Demo : :hum :D
les versions Atari/Amiga font pal figure a coté ^^ Edité par TurboSEB Le 03/02/2013 à 07h15



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

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 03/10/2009 à 08h06

Messages: 1702

Le 03/02/2013 à 08h27
c'est vraiment top j'adore :love :love :love :top

ta bien bosser :top


MSX 8235 , MSX 8245 , MSX 8250 , MSX 8280

   
MSXlegend Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 18/06/2010 à 22h42

Messages: 5784

Le 03/02/2013 à 10h09
Voici le listing

Citation :


10 'BLOAD"gbas07.ldr",R

20 'CMD:CMD LOAD("t2rythm.bgm")

30 VDP(10)=0

40 COLOR ,0,0

50 WIDTH 80

60 SCREEN 5

70 SET PAGE 0,1:BLOAD"debut.sc5",S:COLOR=RESTORE:SET PAGE 0,0

80 FOR X=0 TO 254 STEP 2:COPY(X,0)-(X,211),1 TO (X,0),0:COPY(255-X,0)-(255-X,211),1 TO (255-X,0):NEXTX

90 FOR I=1 TO4500:NEXT I

100 FOR X=0 TO 254 STEP 2:LINE(X,0)-(X,211),0:LINE(255-X,0)-(255-X,211),0:NEXTX

110 '

120 SCREEN 5

130 ON STOP GOSUB1200:STOP ON

140 SET PAGE 0

150 COPY(0,0)-(255,127) TO (0,128):' effacement sprites page 0

160 SET PAGE 0,1:BLOAD"1.sc5",S

170 SET PAGE 0,2:BLOAD"2.sc5",S

180 SET PAGE 0,3:BLOAD"3.sc5",S:COLOR=RESTORE

190 SET PAGE 3,0:COPY (0,0)-(255,211),3 TO (0,0),0:SET PAGE 0

200 COPY (0,167)-(255,211),2 TO (0,212),0

210 '

220 X=USR0(0):'play

230 FOR Y=255 TO 44 STEP-1

240 VDP(24)=Y

250 COPY (0,Y-44)-(255,Y-44),2 TO (0,Y-1),0

260 FOR I=1 TO 5:NEXTI

270 NEXT Y

280 '

290 FOR Y=43 TO 0 STEP-1

300 VDP(24)=Y

310 COPY (0,Y+168)-(255,Y+168),1 TO (0,Y-1),0

320 FOR I=1 TO 5:NEXTI

330 NEXT Y

340 '

350 COPY(0,124)-(255,168),1 TO (0,212),0

360 '

370 FOR Y=255 TO 88 STEP-1

380 VDP(24)=Y

390 COPY (0,Y-88)-(255,Y-88),1 TO (0,Y-1),0

400 FOR I=1 TO 5:NEXTI

410 NEXT Y

420 FOR BC=1 TO 5

430 FOR C=5 TO 1 STEP-1:COLOR =(15,C,0,0):FOR I=1 TO 10:NEXT I,C

440 FOR C=1 TO 5:COLOR =(15,C,0,0):FOR I=1 TO 10:NEXT I,C

450 NEXT BC

460 FOR I=1 TO 1000:NEXT I

470 'titre

480 COLOR ,0,0:SCREEN 8

490 ON STOP GOSUB1200:STOP ON

500 SET PAGE0:COPY(0,0)-(255,127) TO (0,128):' efface la zone de sprite

510 SET PAGE 0,1:BLOAD"titre.sc8",S:SET PAGE 0,0

520 FOR Y=0 TO105:COPY(0,Y)-(255,Y),1 TO (0,Y),0:COPY(0,211-Y)-(255,211-Y),1 TO (0,211-Y),0

530 NEXT Y:COPY(0,0)-(255,211),1 TO (0,0),0

540 'FOR X=0 TO 254 STEP 2:COPY(X,0)-(X,211),1 TO (X,0),0:COPY(255-X,0)-(255-X,211),1 TO (255-X,0),0:NEXTX

550 FOR I=1 TO 1000:NEXT I

560 ' fond+anim

570 SET PAGE 0,1:BLOAD"anim.sc8",S:SET PAGE 0,0

580 FOR TP=1 TO 1500:NEXTTP:FOR Y=0 TO 255:FOR T=1 TO 2:NEXTT:VDP(24)=Y:COPY(0,Y)-(255,Y),1 TO (0,Y-1),0:NEXT Y

590 FOR I=1 TO 1000:NEXT I

600 'cycle animation

610 SET PAGE 0,1

620 'CMD PLAY

630 'anim1

640 BLOAD"anim1.mv8",S:GOSUB 910

650 'anim2

660 BLOAD"anim2.mv8",S:GOSUB 970

670 'anim3

680 BLOAD"anim3.mv8",S:GOSUB 1030

690 'anim4

700 BLOAD"anim4.mv8",S:GOSUB 1160

710 'anim5

720 BLOAD"anim5.mv8",S:GOSUB 1110

730 'anim6

740 BLOAD"anim6.mv8",S:GOSUB 1160

750 'anim7

760 BLOAD"anim7.mv8",S:GOSUB 1110

770 'anim8

780 BLOAD"anim8.mv8",S:GOSUB 1160

790 'the machine

800 FOR TP=1 TO 300:NEXT TP

810 SET PAGE 0,1:BLOAD"arnold.sc8",S

820 SET PAGE 0,0

830 'CALL TURBO ON

840 FOR Y=0 TO 105:COPY(0,105-Y)-(255,105-Y),1 TO (0,105-Y),0:COPY(0,106+Y)-(255,105+Y),1 TO (0,106+Y),0:NEXTY

850 FOR I=1 TO 4000:NEXT I: X=USR1(0):'STOP:GOTO 7000

860 SCREEN 5:SET PAGE 0,1:BLOAD"score.sc5",S:COLOR=RESTORE:SET PAGE 1,1:FOR I=1 TO 3000:NEXTI

870 FOR C=5 TO 1 STEP-2:COLOR=(1,0,1-(1/C),7-(7/C)):COLOR=(2,7-(7/C),7-(7/C),7-(7/C)):COLOR=(4,0,0,5-(5/C)):COLOR=(5,0,2-(2/C),7-(7/C)):COLOR=(6,0,0,3-(3/C)):COLOR=(7,0,4-(4/C),7-(7/C)):COLOR=(8,3-(3/C),6-(6/C),7-(7/C))

880 COLOR=(9,2-(2/C),4-(4/C),7-(7/C)):COLOR=(10,2-(2/C),5-(5/C),7-(7/C)):COLOR=(11,2-(2/C),3-(3/C),7-(7/C)):COLOR=(12,0,6-(6/C),7-(7/C)):COLOR=(13,2-(2/C),2-(2/C),7-(7/C)):COLOR=(14,2-(2/C),1-(1/C),7-(7/C)):COLOR=(15,4-(4/C),7-(7/C),7-(7/C)):NEXT C

890 GOTO 60

900 'subroutine 1.mv8

910 COPY(0,0)-(84,51),1 TO (150,30),0:FOR I=1 TO 200:NEXT I

920 FOR Y=0 TO 104 STEP 52:FOR X=0 TO 170 STEP 85:COPY(X,Y)-(X+84,Y+51),1 TO (150,30),0:FOR I=1 TO 40:NEXT I,X,Y

930 FOR Y=0 TO 154 STEP 52:FOR X=0 TO 170 STEP 85:COPY(X,Y)-(X+84,Y+51),1 TO (150,30),0:FOR I=1 TO 40:NEXT I,X,Y

940 FOR TP=1 TO 300:NEXTTP

950 RETURN

960 'subroutine 2.mv8

970 COPY(0,0)-(84,51),1 TO (150,105),0:FOR I=1 TO 200:NEXT I

980 FOR Y=0 TO 104 STEP 52:FOR X=0 TO 170 STEP 85:COPY(X,Y)-(X+84,Y+51),1 TO (150,105),0:FOR I=1 TO 40:NEXT I,X,Y

990 FOR Y=0 TO 156 STEP 52:FOR X=0 TO 170 STEP 85:COPY(X,Y)-(X+84,Y+51),1 TO (150,105),0:FOR I=1 TO 40:NEXT I,X,Y

1000 FOR TP=1 TO 300:NEXTTP

1010 RETURN

1020 'subroutine 3.mv8 'bras

1030 COPY(0,0)-(84,51),1 TO (150,30),0:FOR I=1 TO 200:NEXT I

1040 FOR Y=0 TO 156 STEP 52:FOR X=0 TO 170 STEP 85:COPY(X,Y)-(X+84,Y+51),1 TO (150,30),0:FOR I=1 TO 40:NEXT I,X,Y

1050 FOR Y=156 TO 0 STEP-52:FOR X=170 TO 0 STEP-85:COPY(X,Y)-(X+84,Y+51),1 TO (150,30),0:FOR I=1 TO 40:NEXT I,X,Y

1060 FOR Y=0 TO 156 STEP 52:FOR X=0 TO 170 STEP 85:COPY(X,Y)-(X+84,Y+51),1 TO (150,30),0:FOR I=1 TO 40:NEXT I,X,Y

1070 FOR TP=1 TO 300:NEXTTP

1080 RETURN

1090 '----------------------------------------------------

1100 'subroutine impair

1110 COPY(0,0)-(84,51),1 TO (150,30),0:FOR I=1 TO 200:NEXT I

1120 FOR Y=0 TO 156 STEP 52:FOR X=0 TO 170 STEP 85:COPY(X,Y)-(X+84,Y+51),1 TO (150,30),0:FOR I=1 TO 40:NEXT I,X,Y

1130 FOR TP=1 TO 300:NEXTTP

1140 RETURN

1150 'subroutine pair

1160 COPY(0,0)-(84,51),1 TO (150,105),0:FOR I=1 TO 200:NEXT I

1170 FOR Y=0 TO 156 STEP 52:FOR X=0 TO 170 STEP 85:COPY(X,Y)-(X+84,Y+51),1 TO (150,105),0:FOR I=1 TO 40:NEXT I,X,Y

1180 FOR TP=1 TO 300:NEXTTP

1190 RETURN

1200 X=USR1(0):STOP

Edité par MSXlegend Le 03/02/2013 à 10h13


Createur du KCX Bluetooth emitter au format cartouche compatible stereo moonsound
TurboSEB Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++ Groupe : Shoutbox

Inscrit le : 08/08/2010 à 20h57

Messages: 5791

Le 03/02/2013 à 11h24
Bon une piste a etudié pour stocker en RAM avec l'instruction COPY , mais je ne suis pas sure car je pensse que cela se limite a la VRAM ^^
Rappel sur la commande COPY : scan0025.pdf
D'apres cette doc Sony , extremement bien faite , comme toutes les docs Sony :glass , ont peu copier des données par coordonnée d'adresse , genre :
COPY (&Hx,&Hxxxx) TO (&Hy,&Hyyyy) 'coordonnées memoire , x=VRAM et y=RAM -> Est-ce possible avec adresses VRAM et RAM ?

autre piste , d'apres ce meme manuel , ont peut definir des ecrans Graphique : ''GRP:'' ou Texte : ''CRT:'' un peu comme des disquettes ^^ Quelqu'un a deja fait ?
Edité par TurboSEB Le 03/02/2013 à 11h29



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

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 18/06/2010 à 22h42

Messages: 5784

Le 03/02/2013 à 11h57
Je vais etudier ça. MEM c'est pour call memini, peux de place et tres lent. Dans la vram c'st possible, mais dans la RAM ??? a verifier. merci pour les pistes Turboseb ;) Edité par MSXlegend Le 03/02/2013 à 11h58


Createur du KCX Bluetooth emitter au format cartouche compatible stereo moonsound
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10328

Le 03/02/2013 à 12h53
le seul bug que j"ai vu est au niveau du scrolling , on voit apparaitre un tas de sprites parasites sur les 2 derniéres corps et tête

il y a un truc pour masquer les sprites en les positionnant tous a une coordonnée en dehors de l'écran mais il faut que je révise ;)

la musique est top avec les images et sur megasci ça s'enchaine a merveille


pour le bug taper une ligne 155 VDP(9)=VDP(9)+2 'masque les sprites

pour les remettre VDP(9)=VDP(9)-2


:noel
Site web    
MSXlegend Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 18/06/2010 à 22h42

Messages: 5784

Le 03/02/2013 à 14h22
Fabf :
Vraiment bien :love :top

Tu vas finir par devenir le Monsieur démo du village :D

Corrige ce bug et c'est parfait




Grace à Jipé, le bug est resolu :top :top :top

Maintenant c'est presque parfait

Me reste 2 ou 3 chose a travailler et a intégrer le player de Metalgear qui est top aussi :top



Je me rappele avoir deja vu cette instruction VDP(9) dans une demo sans jamais comprendre a quoi elle sert.

Voila je me remet vite au travail en cherchant un moyen de charger les anim dans la RAM, car j'ai une mega demos avec ma GFX9000 qui m'attend et là ce n'est pas gagné :gne Edité par MSXlegend Le 03/02/2013 à 14h27


Createur du KCX Bluetooth emitter au format cartouche compatible stereo moonsound
igal Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 29/07/2010 à 17h19

Messages: 5492

Le 03/02/2013 à 14h58
En tout cas, c'est vraiment réussi.

Bravo :top

(Jipe a des lapin comme ça....Il t'en sort de derrière les fagots :lol )

Je me demande si comme les Samples, les musique OPL peuvent êtres lues en multitache?

Ca éviterait les ralentissement de la mélodie pour ceux qu'on pas de moyens SCSI :p Edité par igal Le 03/02/2013 à 15h01


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

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 18/06/2010 à 22h42

Messages: 5784

Le 03/02/2013 à 19h02
TurboSEB :
Rappel sur la commande COPY : scan0025.pdf





La fonction COPY du pdf, c'est pour copier dans les variables tableau. C'est la methode que j'ai utilisé pour sauvegarder mon pere noel qui se scrash dans le mur (demo de noel 2012) :)



Concernant la ram, j'ai une piste mais je doit etudier tout ça dans le calme. J'ouvrirais un topic a ce sujet. Par contre, j'ai 8 images de 54Ko a charger pour les anim. Donc il faudra une RAM de 512ko minimum pour que la demo fonctionne correctement. Si j'y parviens, je rejouterais un sous programme pour detecter la RAM. I y aura 2 version (128ko et 512ko) ;)


Createur du KCX Bluetooth emitter au format cartouche compatible stereo moonsound
MSXlegend Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 18/06/2010 à 22h42

Messages: 5784

Le 03/02/2013 à 23h56
Voici la version finale sans BUG !!!

J'ai remplacé la ligne "VDP(9)=vdp(9)+2" par "VDP(9)=10". J'ai ensuite rétabli les sprites par "VDP(9)=8" (par defaut)

Intro T2JD Final V1.1

A installer dans un repertoire du disque dur ! Il faut executer "loader.bas"

Mission accompli :tchin Edité par MSXlegend Le 05/02/2013 à 12h26


Createur du KCX Bluetooth emitter au format cartouche compatible stereo moonsound
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10328

Le 04/02/2013 à 13h45
il faut éviter de forcer directement la valeur du VDP , tous les MSX n'ont pas les mêmes valeurs dans le registre

voir page 138 de pratique du MSX2 registre 8 bit SPD

quand on décompose ta valeur de 10 = 8 + 2 donc VR = 1 vram 64k et SPD = 1 sprites éteint

pour info les registres du VDP sont décalés de +1 quand on les utilise en basic donc VDP(9) = registre 8


:noel
Site web    
Metalion Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 23/12/2009 à 15h32

Messages: 1486

Le 04/02/2013 à 14h21
MSXlegend :
Par contre, j'ai 8 images de 54Ko a charger pour les anim. Donc il faudra une RAM de 512ko minimum pour que la demo fonctionne correctement.


Pas forcément ... Tu peux utiliser une compression logicielle type "zip".

Tu charges les images compressées dans la RAM et tu les décompresses au fur et à mesure de tes besoins.



Sinon, un grand bravo pour ta démo :top



PS : Concernant le bug avec les sprites, le problème de base vient du fait que tu copies certainement une partie de l'image dans la VRAM là où sont stockés les sprites. La manip de Jipé corrige le symptôme mais pas la cause : il suffit de déplacer la table des sprites avec l'instruction BASE.


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

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 18/06/2010 à 22h42

Messages: 5784

Le 04/02/2013 à 14h48
***effacé par erreur****

edit: "y a t il une methode pour charger les images dans la RAM?" Edité par MSXlegend Le 05/02/2013 à 00h10


Createur du KCX Bluetooth emitter au format cartouche compatible stereo moonsound
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10328

Le 04/02/2013 à 14h54
regarde le format MIF qui peux se recharger a partir du basic


:noel
Site web    
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie