37 #ifndef AGS_LIB_AASTR_AAUTIL_H 38 #define AGS_LIB_AASTR_AAUTIL_H 40 #include "ags/lib/allegro.h" 54 #if ((aa_BITS < 0) || (aa_BITS > 12)) 55 #error aa_BITS must be (0 <= aa_BITS <= 12) 58 #define aa_SIZE (1UL << aa_BITS) 59 #define aa_MASK (aa_SIZE - 1) 61 #define aa_MAX_SIZE (1UL << 12) 62 #define aa_MAX_NUM (aa_MAX_SIZE * aa_MAX_SIZE) 66 #define aa_PREPARE(inc,dd,i1,i2,_yw,_xw) \ 71 if ((xw == 0) || ((yw < xw) && (yw > -xw))) { \ 82 (i2) = ((dd) = ((i1) = 2 * yw) - xw) - xw; \ 86 #define aa_ADVANCE(y,inc,dd,i1,i2) \ 89 (y) += (inc) + 1, (dd) += (i2); \ 91 (y) += (inc), (dd) += (i1); \ 100 void _aa_prepare_for_24bpp(
void);
103 void _aa_add_rgb8(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2, uint32_t _num);
104 #ifdef ALLEGRO_COLOR16 105 void _aa_add_rgb15(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2, uint32_t _num);
106 void _aa_add_rgb16(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2, uint32_t _num);
108 #ifdef ALLEGRO_COLOR24 109 void _aa_add_rgb24(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2, uint32_t _num);
111 #ifdef ALLEGRO_COLOR32 112 void _aa_add_rgb32(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2, uint32_t _num);
116 void _aa_put_rgb8(byte *addr,
int _x);
117 #ifdef ALLEGRO_COLOR16 118 void _aa_put_rgb15(byte *addr,
int _x);
119 void _aa_put_rgb16(byte *addr,
int _x);
121 #ifdef ALLEGRO_COLOR24 122 void _aa_put_rgb24(byte *addr,
int _x);
124 #ifdef ALLEGRO_COLOR32 125 void _aa_put_rgb32(byte *addr,
int _x);
129 void _aa_masked_add_rgb8(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2,
131 #ifdef ALLEGRO_COLOR16 132 void _aa_masked_add_rgb15(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2,
134 void _aa_masked_add_rgb16(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2,
137 #ifdef ALLEGRO_COLOR24 138 void _aa_masked_add_rgb24(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2,
141 #ifdef ALLEGRO_COLOR32 142 void _aa_masked_add_rgb32(BITMAP *_src,
int _sx1,
int _sx2,
int _sy1,
int _sy2,
147 void _aa_masked_put_rgb8(byte *addr,
int _x);
148 #ifdef ALLEGRO_COLOR16 149 void _aa_masked_put_rgb15(byte *addr,
int _x);
150 void _aa_masked_put_rgb16(byte *addr,
int _x);
152 #ifdef ALLEGRO_COLOR24 153 void _aa_masked_put_rgb24(byte *addr,
int _x);
155 #ifdef ALLEGRO_COLOR32 156 void _aa_masked_put_rgb32(byte *addr,
int _x);