X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fgfxutil.h;h=603c11da3014d4b02539ff5126724a1adf28d827;hb=9b942b99fe10222bee50c47bfc809de268d331ec;hp=8de560704c860a7f9cf1b4dafe89535fd4f56510;hpb=757e7697c9a4434df6f3fdf3234de504bb4636bc;p=dosdemo diff --git a/src/gfxutil.h b/src/gfxutil.h index 8de5607..603c11d 100644 --- a/src/gfxutil.h +++ b/src/gfxutil.h @@ -1,6 +1,16 @@ #ifndef GFXUTIL_H_ #define GFXUTIL_H_ +#define PACK_RGB16(r, g, b) \ + (((((r) >> 3) & 0x1f) << 11) | ((((g) >> 2) & 0x3f) << 5) | (((b) >> 3) & 0x1f)) + +#define UNPACK_R16(c) (((c) >> 8) & 0xf8) +#define UNPACK_G16(c) (((c) >> 3) & 0xfc) +#define UNPACK_B16(c) (((c) << 3) & 0xf8) + +#define PACK_RGB32(r, g, b) \ + ((((r) & 0xff) << 16) | (((g) & 0xff) << 8) | ((b) & 0xff)) + int clip_line(int *x0, int *y0, int *x1, int *y1, int xmin, int ymin, int xmax, int ymax); void draw_line(int x0, int y0, int x1, int y1, unsigned short color);