30

embarrassed

(en plus il est dans le grand sud montpellierain embarrassed-
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

31

-

32

projets--;
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

33

Orion_ (./21) :
PpHd > et tu n'a jamais rien releasé ? sad


En fouillant un peu mes archives, j'ai retrouvé les routines, donc c'est cadeau : ; Affichage d'un sprite par transparence sans clipping en mode 16 bits ! ; In: ; r0 = x ; r1 = y ; r2 = Sprite ptr ; r3 = Screen Ptr EXPORT DrawSprite DrawSprite stmfd sp!,{r4,r5,r6,lr} ; Preserve registres ldrh r4,[r2],#2 ; Charge Taille Y ldrh lr,[r2],#2 ; Charge Taille X rsb r0,r0,r0,lsl #4 ; x * 15 add r0,r1,r0,lsl #4 ; x = 16 * (15 * x) + y add r3,r3,r0,lsl #1 ; r3 = Screen ptr mov r5,#240*2 ; Taille d'une colonne mov r1,#0 sub r5,r5,r4,lsl #1 ; Correction au ptr d'écran apres scan d'1 ligne LoopX mov r6,r4 ; Recharge nbr de pixel verticaux LoopY ldrh r0,[r2],#2 ; Charge pixel cmp r0,r1 ; Transparent ? strneh r0,[r3] ; Affichage add r3,r3,#2 ; Avancee ptr ecran subs r6,r6,#1 ; Boucle Y bne LoopY add r3,r3,r5 ; Increment X subs lr,lr,#1 ; Boucle X bne LoopX ldmfd sp!,{r4,r5,r6,pc} ; Pop et retour a l'appelant
et ; Affichage d'un sprite par transparence sans clipping en mode 16 bits ! ; Sprite de hauteur x16 ; In: ; r0 = x ; r1 = y ; r2 = Sprite ptr ; r3 = Screen Ptr EXPORT DrawSprite2 DrawSprite2 stmfd sp!,{r4-r12,lr} ; Preserve registres ldrh r11,[r2],#2 ; Charge Taille Y ldrh lr,[r2],#2 ; Charge Taille X rsb r0,r0,r0,lsl #4 ; x * 15 add r0,r1,r0,lsl #4 ; x = 16 * (15 * x) + y add r1,r3,r0,lsl #1 ; r3 = Screen ptr mov r0,#-1 mov r0,r0,lsl #16 mov r0,r0,lsr #16 ; r0 = $0000FFFF mov r11,r11,lsr #4 ; Nbr pixel verticaux /16 LoopX2 mov r12,r11 ; Recharge nbr de pixel verticaux / 16 LoopY2 ; Nouvelle version ldmia r2!,{r3-r10} ; Load data from sprite - 16 pixels tst r3,r0 ; Test transparent pixel r0 = 0xFFFF strneh r3,[r1,#0] movs r3,r3,lsr #16 ; Test transparent pixel r0 = 0xFFFF strneh r3,[r1,#2] tst r4,r0 ; Test transparent pixel strneh r4,[r1,#4] movs r4,r4,lsr #16 ; Test transparent pixel strneh r4,[r1,#2+4] tst r5,r0 ; Test transparent pixel strneh r5,[r1,#8] movs r5,r5,lsr #16 ; Test transparent pixel strneh r5,[r1,#2+8] tst r6,r0 ; Test transparent pixel strneh r6,[r1,#12] movs r6,r6,lsr #16 ; Test transparent pixel strneh r6,[r1,#2+12] tst r7,r0 ; Test transparent pixel strneh r7,[r1,#16] movs r7,r7,lsr #16 ; Test transparent pixel strneh r7,[r1,#2+16] tst r8,r0 ; Test transparent pixel strneh r8,[r1,#20] movs r8,r8,lsr #16 ; Test transparent pixel strneh r8,[r1,#2+20] tst r9,r0 ; Test transparent pixel strneh r9,[r1,#24] movs r9,r9,lsr #16 ; Test transparent pixel strneh r9,[r1,#2+24] tst r10,r0 ; Test transparent pixel strneh r10,[r1,#28] movs r10,r10,lsr #16 ; Test transparent pixel strneh r10,[r1,#2+28] add r1,r1,#32 subs r12,r12,#1 ; Boucle Y bne LoopY2 add r1,r1,#240*2 ; Next Colonne subs lr,lr,#1 ; Boucle X sub r1,r1,r11,lsl #5 ; Minus what we have already done bne LoopX2 ldmfd sp!,{r4-r12,pc} ; Pop et retour a l'appelant

Je me rends compte que je n'ai même pas implanté l'idée finale que j'avais pour accélérer l'affichage. Mais bon, tant pis embarrassed Rien de bien sorcier cependant wink

34

-

35

*jalou* >_<
avatar@originalfei
In pixels we trust.
ORE WO DARE DA TO OMOTTE YAGARU !

36

-

37

Oui je parle pour la collec.
En fait comme on ne trouve plus de jeux GP32 à la vente, j'ai de plus en plus envie de me les procurer avant que ce ne soit vraiment plus possible...
J'adore ma GP32 \o/
avatar@originalfei
In pixels we trust.
ORE WO DARE DA TO OMOTTE YAGARU !

38

Moi je reve toujours de chopper Blue angelo !!

dès que je me le trouve je me reprend un gp32 smile

d'ailleurs quelqu'un avait il gagné le fameux voyage aux japon qui était censé se trouver dans l'une des boites du jeu ??

39

Rah je le veux aussi ce jeu sad
avatar@originalfei
In pixels we trust.
ORE WO DARE DA TO OMOTTE YAGARU !

40

-

41

Trop cher pour moi (pour l'instant...).

Moi j'ai encore :
- une GP32 BLU complète
- une GP32 FLU complète
- Little Wizard
- Her Knights
- Treasure Island
- Wizard Slayer
- Astonisha Story R
- Dungeon & Guardian

Pareil, si je trouve des lots où des offres contenant des jeux qui ne m'intéressent pas je penserai à vous ^^
avatar@originalfei
In pixels we trust.
ORE WO DARE DA TO OMOTTE YAGARU !

42

43

Ah Blue Angelo, bon souvenir smile

44

GP32, que de souvenirs, mais trop feignant pour la sortir du placard grin
avatarpourquoi la mort ? parce qu'elle nous est si douce, au contraire de la vie :)

45

Encore un revenant, salut FagEmul smile

46

...sans passer par le bios de la GP32...
...la gestion d'init du LCD et des surfaces graphique ce fait au niveau du BIOS...

Bonjour, juste pour être sûr d'avoir bien compris: ce que tu appelles le BIOS, c'est le firmware ? Si oui, ne serait-il pas possible de le décompiler pour localiser ces fonctions (d'init et autres) puis d'adapter le source du SDK de Mirko pour appeler le code inclut dans le BIOS au lieu de celui écrit par Mirko ?

En tout cas un grand merci pour ces explications, je ne savais pas que les libs officielles étaient aussi bien fichues ! wink

Pour moi un truc qui manque sacrément dans le petit monde de la GP32: un bon émulateur. Okay GeePee32 fait son job, mais pas de son, freeze après quelques minutes, et certains FXE plantent alors qu'ils se lancent sans problème sur vrai hardware.

47

-

48

non c'est le bios, pas le firmware, y'a 2 partie

Ah okayyyy, merci pour l'info... mais comment sais-tu tout ça ?! lol En effet c'est bien foutu leur truc. En tout cas je vais suivre avec attention ton blog, c'est une vrai mine d'or wink (même si je me retrouve totalement largué quand on commences à me parler en assembleur :s)

Hmmm Mame/MESS tu dis ? Je me demande si je n'y avais pas déjà jetté un oeil et que c'était incroyablement lent sur mon ordi (P4 3.4GHz + 4Go Ram). Je vais retenté le coup maintenant que j'ai une config un poil mieux...

49

Pour blitter des sprites avec tranparence je faisais un truc bizarre qui marchait pas mal pour éviter de faire du pixel par pixel : je convertissais au préalable mes sprites pour les stocker sous la forme d'une suite de pixels à blitter (avec memcpy par ex) et de "sauts". À moins d'avoir un sprite hideux du genre 1 pixel sur 2 tranparent, c'était nettement plus rapide que gptransblt.

50

Ah que de souvenirs oui...

51

love
avatar@originalfei
In pixels we trust.
ORE WO DARE DA TO OMOTTE YAGARU !