-void my_glWritePPMFile( const char *filename, GLubyte *buffer, int win_width,
+/**
+ * Dump the screen buffer to a PNG file.
+ * @param filename name of file
+ * @param win_width width of our opengl window
+ * @param win_height height of our opengl window
+ */
+bool sg_glDumpWindow( const char *filename, int win_width, int win_height );
+
+
+/**
+ * Given a GLubyte *buffer, write it out to a ppm file.
+ * @param filename name of file
+ * @param buffer pointer to opengl buffer
+ * @param win_width width of buffer
+ * @param win_height height of buffer
+ * @param mode one of GL_RGBA, GL_RGB, etc.
+ */
+bool sg_glWritePPMFile( const char *filename, GLubyte *buffer, int win_width,