CPC Rulez
https://cpcrulez.fr/forum/

STARION 3D SCROLLING [DAVID WEBB]
https://cpcrulez.fr/forum/viewtopic.php?f=4&t=4270
Page 1 sur 1

Auteur :  hERMOL [ 18 Juil 2010, 11:02 ]
Sujet du message :  STARION 3D SCROLLING [DAVID WEBB]

une petite trouvaille ... un effet scrolling 3D a l'ancienne comme on en fait plus ...

Image


pour gagner quelques cycles (technique "loop unroll" ) on peu toujours remplacer la boucle (en ligne LOC_AC45 ) ,

Code :
loc_AC45:

macro clean_win
            ld      b,c
            ld      sp,hl
            ds      32,&D5      ; push de*32
            db      &10,&DE             ;djnz    loc_AC47
            ld      a,&0F8     
            add     a,h
            ld      h,a
endm             

            clean_win
            clean_win
            clean_win
            clean_win

            clean_win
            clean_win
            clean_win
            clean_win

Auteur :  BDCIron [ 18 Juil 2010, 20:40 ]
Sujet du message :  Re: STARION 3D SCROLLING [DAVID WEBB]

Heu ca ce lance comment ce machin ? Ca vient d'ou ?

Auteur :  Megachur [ 20 Juil 2010, 06:15 ]
Sujet du message :  Re: STARION 3D SCROLLING [DAVID WEBB]

Encore un effort pour enlever une boucle au détriment de la mémoire ;-) : Tjs plus vite (10628 nops -> 10302 nops)

Code :
clean_win:  ld      e,backg_pen
;            ld      c,&A

            ld       a,(byte_A+1)
            add      a,&3B                      ; base ecran a effacer 7B00/FB00


            ld h,a
            ld l,&40

            ld      (word_8060),sp
            ld      d,e

loc_AC45:

macro clean_win
;            ld      b,c
            ld      sp,hl
;            ds      32,&D5      ; push de*32
            ds      32*&0a,&D5      ; push de*32
;            db      &10,&DE             ;djnz    loc_AC47
            ld      a,&0F8     
            add     a,h
            ld      h,a
endm             

            clean_win
            clean_win
            clean_win
            clean_win

            clean_win
            clean_win
            clean_win
            ld      sp,hl
            ds      32*&0a,&D5      ; push de*32

Auteur :  BDCIron [ 21 Juil 2010, 13:12 ]
Sujet du message :  Re: STARION 3D SCROLLING [DAVID WEBB]

Ca ne me dit toujours pas comment ca ce lance...

Auteur :  norecess [ 21 Juil 2010, 14:36 ]
Sujet du message :  Re: STARION 3D SCROLLING [DAVID WEBB]

Je n'ai pas pris connaissance de l'algo en tant que tel, mais j'aime ça Megachur te voir raisonner autour de ça (comment optimiser).

Auteur :  Megachur [ 21 Juil 2010, 20:44 ]
Sujet du message :  Re: STARION 3D SCROLLING [DAVID WEBB]

BDCIron a écrit :
Ca ne me dit toujours pas comment ca ce lance...

Laisse tomber !!! C'est bien trop compliqué et en plus faut utiliser un émulateur genre winape pour que ça marche... ;-)

Auteur :  Megachur [ 21 Juil 2010, 20:46 ]
Sujet du message :  Re: STARION 3D SCROLLING [DAVID WEBB]

norecess a écrit :
Je n'ai pas pris connaissance de l'algo en tant que tel, mais j'aime ça Megachur te voir raisonner autour de ça (comment optimiser).

si tu as besoin d'aide n'hésite pas... si le boulot ne me pompe pas toute mon énergie, j'aurai peut-être un idée pour te faire gagner des nops quelque part ;-)

Auteur :  norecess [ 21 Juil 2010, 20:50 ]
Sujet du message :  Re: STARION 3D SCROLLING [DAVID WEBB]

Bah en fait, c'est plus un constat général, une préférence personnelle : ça parle pas assez de programmation sur les forums, ça préfère parler d'utopique portage de Monkey Island sur CPC, bref! :P

Auteur :  hERMOL [ 23 Juil 2010, 12:13 ]
Sujet du message :  Re: STARION 3D SCROLLING [DAVID WEBB]

maj du source : avec l'optimisation de megachur + un effet rotation de la fonte

:pir8:

Page 1 sur 1 Le fuseau horaire est UTC+1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/