/[projet1]/public/atari/tools/rembrandt/DIVERS/EFFETS.S/G_FLOU.S
Defence Force logotype

Contents of /public/atari/tools/rembrandt/DIVERS/EFFETS.S/G_FLOU.S

Parent Directory Parent Directory | Revision Log Revision Log


Revision 67 - (show annotations)
Sat Apr 25 18:10:46 2009 UTC (10 years, 7 months ago) by dbug
File size: 1955 byte(s)
Added Rembrandt and Forgotten Bits
1 ;
2 ;
3 ; Effet de flou global par moyenne des 8 points adjacents+point central
4 ;
5 ; Le pixel central contient la somme des composante:
6 ; D0=rouge
7 ; D1=vert
8 ; D2=bleu
9 ;
10 ; On bosse sur d3/d4/d5 pour les composantes RVB des autres points.
11 ; et l'on aditionne au fur et a mesure sur d0/d1/d2.
12 ;
13 coef_1=16 x1=16
14 coef_2=1 x4=8
15 coef_3=0 x4=4
16
17 applique_effet_flou_global
18 move largeur_image,d0
19 * sub d0,flou_1
20 * add d0,flou_2
21
22 * sub d0,flou_3
23 * sub d0,flou_4
24
25 * add d0,flou_5
26 * add d0,flou_6
27
28 move.l ‚cran,a0
29 move.l fichier,a1
30
31 move.l taille_image,d7
32 lsr.l d7
33 move.l d7,a6
34 .traite_pixel_suivant
35
36 move (a1),d0 Charge le pixel central lui meme.
37 move d0,d2
38 and #%11111,d2 D2=bleu initial
39 move d0,d1
40 lsr #6,d1
41 and #%11111,d1 D1=vert initial
42 rol #5,d0
43 and #%11111,d0 D0=rouge initial
44
45 mulu #20,d0 Fort coefficient pour le point central.
46 mulu #20,d1
47 mulu #20,d2
48
49 * bra .zap
50
51 lea liste_points(pc),a2
52
53 moveq #5-1,d7 8
54 .convolue_pixel
55 move (a2)+,d6 Charge l'adresse_du_pixel
56 move (a1,d6.w),d3 Charge le pixel lui meme.
57 move d3,d5
58 and #%11111,d5 D5=bleu
59 move d3,d4
60 lsr #6,d4
61 and #%11111,d4 D4=vert
62 rol #5,d3
63 and #%11111,d3 D3=rouge
64
65 move (a2)+,d6
66 lsl d6,d3 Coefficiente les valeurs RVB du pixel lu
67 lsl d6,d4
68 lsl d6,d5
69
70 add d3,d0 Ajoute au total courant
71 add d4,d1
72 add d5,d2
73 dbra d7,.convolue_pixel
74
75 .zap
76 lsr #5,d0 Redivise tout par 32
77 lsr #5,d1
78 lsr #5,d2
79
80 ror #5,d0
81 lsl #6,d1
82 or d1,d0
83 or d2,d0
84
85 move d0,(a0)+
86 addq #2,a1
87 subq.l #1,a6 y'a plus de registres libres !
88 cmp.l #0,a6
89 bne .traite_pixel_suivant
90 rts
91
92 liste_points
93 dc.w -2,coef_2 Gauche
94 dc.w +2,coef_2 Droite
95 flou_1
96 dc.w -640,coef_2 Haut
97 flou_2
98 dc.w +640,coef_2 Bas
99
100
101 flou_3
102 dc.w -644,coef_3 Haut gauche
103 flou_4
104 dc.w -642,coef_3 Haut droite
105 flou_5
106 dc.w 638,coef_3 Bas gauche
107 flou_6
108 dc.w 642,coef_3 bas droite

  ViewVC Help
Powered by ViewVC 1.1.26