X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Ftunnel.c;h=d10c691379f7debc88698e0737fee7e1899e5be9;hb=0945eeeef21fe85f9a592bfc2e41069a7894b08b;hp=4fbc16b2129364aae65a67ad757099c9515acd20;hpb=6e4f1008ad81b6cc108c11736dbf9366a38092fc;p=dosdemo diff --git a/src/tunnel.c b/src/tunnel.c index 4fbc16b..d10c691 100644 --- a/src/tunnel.c +++ b/src/tunnel.c @@ -1,10 +1,12 @@ #include #include +#include #include #include #include "imago2.h" #include "demo.h" #include "screen.h" +#include "gfxutil.h" #ifndef M_PI #define M_PI 3.1415926535 @@ -26,8 +28,6 @@ static void draw_tunnel_range(unsigned short *pixels, int xoffs, int yoffs, int static int count_bits(unsigned int x); static int count_zeros(unsigned int x); -static unsigned int *gen_test_image(int *wptr, int *hptr); - static struct screen scr = { "tunnel", init, @@ -183,11 +183,13 @@ static void draw(void) int starty = i * num_lines; int resty = starty + draw_lines; int rest_lines = num_lines - draw_lines; - draw_tunnel_range((unsigned short*)fb_pixels, xoffs, yoffs, starty, draw_lines, time_msec); + draw_tunnel_range(vmem_back, xoffs, yoffs, starty, draw_lines, time_msec); if(rest_lines) { - memset((unsigned short*)fb_pixels + resty * fb_width, 0, rest_lines * fb_width * 2); + memset(vmem_back + resty * fb_width, 0, rest_lines * fb_width * 2); } } + + swap_buffers(0); } static void tunnel_color(int *rp, int *gp, int *bp, long toffs, unsigned int tpacked, int fog) @@ -212,11 +214,6 @@ static void tunnel_color(int *rp, int *gp, int *bp, long toffs, unsigned int tpa *bp = (b * fog) >> 8; } -#define PACK_RGB16(r, g, b) \ - (((((r) >> 3) & 0x1f) << 11) | ((((g) >> 2) & 0x3f) << 5) | (((b) >> 3) & 0x1f)) -#define PACK_RGB32(r, g, b) \ - ((((r) & 0xff) << 16) | (((g) & 0xff) << 8) | ((b) & 0xff)) - static void draw_tunnel_range(unsigned short *pix, int xoffs, int yoffs, int starty, int num_lines, long tm) { int i, j; @@ -263,6 +260,7 @@ static int count_zeros(unsigned int x) return num; } +/* static unsigned int *gen_test_image(int *wptr, int *hptr) { int i, j; @@ -286,3 +284,4 @@ static unsigned int *gen_test_image(int *wptr, int *hptr) *hptr = ysz; return pixels; } +*/