extern int cmap2rgba(int);
extern void icossin(int, int*, int*);
extern void icossin2(int, int, int*, int*);
+extern int badrect(Rectangle);
/*
* Graphics
extern Subfont* getdefont(Display*);
extern void lockdisplay(Display*);
extern void unlockdisplay(Display*);
-extern int drawlsetrefresh(ulong, int, void*, void*);
/*
* Predefined
extern Image *screen;
extern Screen *_screen;
extern int _cursorfd;
-extern int _drawdebug; /* set to 1 to see errors from flushimage */
extern void _setdrawop(Display*, Drawop);
-#define BGSHORT(p) (((p)[0]<<0) | ((p)[1]<<8))
-#define BGLONG(p) ((BGSHORT(p)<<0) | (BGSHORT(p+2)<<16))
-#define BPSHORT(p, v) ((p)[0]=(v), (p)[1]=((v)>>8))
-#define BPLONG(p, v) (BPSHORT(p, (v)), BPSHORT(p+2, (v)>>16))
+#define BGSHORT(p) ((p)[0]|((p)[1]<<8))
+#define BGLONG(p) ((p)[0]|((p)[1]<<8)|((p)[2]<<16)|((p)[3]<<24))
+#define BPSHORT(p,v) do{ushort _v_=(v);(p)[0]=_v_;(p)[1]=_v_>>8;}while(0)
+#define BPLONG(p,v) do{ulong _v_=(v);(p)[0]=_v_;(p)[1]=_v_>>8;(p)[2]=_v_>>16;(p)[3]=_v_>>24;}while(0)
/*
* Compressed image file parameters and helper routines
extern void _twiddlecompressed(uchar*, int);
extern int _compblocksize(Rectangle, int);
-/* XXX backwards helps; should go */
-// extern int log2[]; /* was used by libmemlayer/line.c */
extern ulong drawld2chan[];
-extern void drawsetdebug(int);
+extern void drawsetdebug(int);