1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/bitblt_test.c Thu Dec 27 11:04:43 2001 +0000 1.3 @@ -0,0 +1,99 @@ 1.4 +#include <stdio.h> 1.5 + 1.6 +#include "bitblt.h" 1.7 + 1.8 + 1.9 +#define WIDTH 20 1.10 +#define HEIGHT 9 1.11 + 1.12 +char test_data [HEIGHT][WIDTH] = 1.13 +{ 1.14 + ".....XXXXXXXXXX.....", 1.15 + ".....XX.......X.....", 1.16 + "XXXXXX.X......XXXXXX", 1.17 + ".....X..X.....X.....", 1.18 + ".....X...X....X.....", 1.19 + ".....X....X...X.....", 1.20 + ".....X.....X..X.....", 1.21 + ".....XXXXXXXXXX.....", 1.22 + ".....XXXXXXXXXX....." 1.23 +}; 1.24 + 1.25 +Bitmap *setup (void) 1.26 +{ 1.27 + Bitmap *b; 1.28 + Point p; 1.29 + 1.30 + b = create_bitmap (WIDTH, HEIGHT); 1.31 + if (! b) 1.32 + return (NULL); 1.33 + 1.34 + for (p.y = 0; p.y < HEIGHT; p.y++) 1.35 + for (p.x = 0; p.x < WIDTH; p.x++) 1.36 + set_pixel (b, p, test_data [p.y][p.x] == 'X'); 1.37 + 1.38 + return (b); 1.39 +} 1.40 + 1.41 +void print_bitmap (FILE *o, Bitmap *b) 1.42 +{ 1.43 + Point p; 1.44 + printf ("rowbytes: %d\n", b->rowbytes); 1.45 + for (p.y = 0; p.y < b->height; p.y++) 1.46 + { 1.47 + for (p.x = 0; p.x < b->width; p.x++) 1.48 + fputc (".X" [get_pixel (b, p)], o); 1.49 + fprintf (o, "\n"); 1.50 + } 1.51 +} 1.52 + 1.53 + 1.54 +int main (int argc, char *argv[]) 1.55 +{ 1.56 + Bitmap *b; 1.57 + Bitmap *b2; 1.58 + Rect r; 1.59 + Point p; 1.60 + 1.61 + b = setup (); 1.62 + if (! b) 1.63 + { 1.64 + fprintf (stderr, "setup failed\n"); 1.65 + exit (2); 1.66 + } 1.67 + 1.68 + print_bitmap (stdout, b); 1.69 + 1.70 + printf ("\n"); 1.71 + 1.72 +#if 0 1.73 + b2 = create_bitmap (b->height, b->width); 1.74 + if (! b2) 1.75 + { 1.76 + fprintf (stderr, "create_bitmap failed\n"); 1.77 + exit (2); 1.78 + } 1.79 +#endif 1.80 + 1.81 + r.upper_left.x = r.upper_left.y = 0; 1.82 + r.lower_right.x = b->width; 1.83 + r.lower_right.y = b->height; 1.84 + p.x = p.y = 0; 1.85 + 1.86 + b2 = bitblt (b, r, 1.87 + NULL, p, 1.88 + 0, 0, 1.89 + 1, /* transpose */ 1.90 + TF_SRC); 1.91 + if (! b2) 1.92 + { 1.93 + fprintf (stderr, "bitblt failed\n"); 1.94 + exit (2); 1.95 + } 1.96 + 1.97 + print_bitmap (stdout, b2); 1.98 + 1.99 + exit (0); 1.100 +} 1.101 + 1.102 +