-void Draw_Character (int x, int y, int num);
-void Draw_GenericPic (rtexture_t *tex, float red, float green, float blue, float alpha, int x, int y, int width, int height);
-void Draw_Pic (int x, int y, qpic_t *pic);
-void Draw_AdditivePic (int x, int y, qpic_t *pic);
-void Draw_PicTranslate (int x, int y, qpic_t *pic, byte *translation);
-void Draw_ConsoleBackground (int lines);
-void Draw_Fill (int x, int y, int w, int h, int c);
-void Draw_String (int x, int y, char *str, int maxlen); // LordHavoc: added maxlen
-void Draw_AdditiveString (int x, int y, char *str, int maxlen);
-qpic_t *Draw_PicFromWad (char *name);
-qpic_t *Draw_CachePic (char *path);
+cachepic_t *Draw_CachePic (const char *path, qboolean persistent);
+// create or update a pic's image
+cachepic_t *Draw_NewPic(const char *picname, int width, int height, int alpha, qbyte *pixels);
+// free the texture memory used by a pic
+void Draw_FreePic(const char *picname);
+
+void R_DrawQueue(void);
+
+#endif
+