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