diff --git a/starsphere.C b/starsphere.C
deleted file mode 100644
index 5f3291bb8c63ff1e17ab7b5d786d09a0dab1f7f9..0000000000000000000000000000000000000000
--- a/starsphere.C
+++ /dev/null
@@ -1,842 +0,0 @@
- /***************************************************************************
- * Star Sphere graphics for Einstein@Home Screen Saver  
- *
- * This file contains graphics routines to draw the stars, constellations,
- * pulstars and SNRs, and the GW Observatories.
- * 
- * Also contains the BOINC graphics API callbacks.
- *
- *****************************************************************************/
-static volatile const char *CVSfileVersion= "$Id$";
-/***********************************************************************
- * Copyright (C) 2004 David Hammer, Eric Myers, Bruce Allen
- * Copyright (C) 2008 Bernd Machenschalk
- * Copyright (C) 2008 Oliver Bock
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * You should have received a copy of the GNU General Public License
- * (for example COPYING); if not, write to the Free
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- ************************************************************************/
-
-#ifndef _MSC_VER
-using namespace std;
-#include <iostream>
-#endif
-
-// needed to find OpenGL 1.4 prototypes in glext.h (alternatives?)
-#define GL_GLEXT_PROTOTYPES
-
-#include "SDL.h"
-
-#include "starsphere.h"
-
-
-/* Constellation & star coordinates are in starlist.C */
-extern float star_info[][2];
-extern int Nstars;
-
-/* Pulsar coordinates are in pulsar_list.C */
-extern float pulsar_info[][2];
-extern int Npulsars;
-
-/* SNR coordinates are in snr_list.C */
-extern float SNR_info[][2];
-extern int NSNRs;
-
-
-extern "C" {
-  void set_search_pos(float, float);			// in search_info.C
-  void set_fraction_done(float);			// in search_info.C
-}
-
-void annotate_screen();                                 // in user_info.C
-void display_search_info(double);                       // in search_info.C
-void make_search_marker(GLfloat, GLfloat, GLfloat);     // in search_info.C
-
-
-/**
- * Object ID's  and on/off switches.
- * (someday the keyboard can be used to turn display of items on/off)
- */
-GLuint Axes=0, Stars=0, Constellations=0, Pulsars=0;
-GLuint LLOmarker=0, LHOmarker=0, GEOmarker=0;
-GLuint sphGrid=0, SNRs=0;
-
-// feature bitmap
-int featureFlags = 0;
-
-/* Search position and time */ 
-extern float  search_RAdeg;     // search_info.C
-extern float  search_DEdeg;     // search_info.C
-extern GLuint SearchMarker;     // search_info.C
-
-// 0: dont' display, 1: display, 2: recompute position
-int show_markers=MARKER_NONE;     // switch back to bool soon -EAM
-extern int marker_status;    // switching to this...
-
-/**
- * Parameters and State info:
- */
-GLfloat sphRadius = 5.5;
-
-/**
- * Viewpoint (can be changed with mouse)
- */
-GLfloat viewpt_azimuth = 30.0;   // azimuth, in degrees
-GLfloat viewpt_elev = 23.6;      // elevation angle, in degrees
-GLfloat viewpt_radius = 7.6;     // distance out
-
-GLfloat wobble_amp = 37.0;       // wobble amplitude, in degrees
-GLfloat wobble_period = 17.0;    // wobble up/down period, in minutes
-GLfloat zoom_amp = 0.00;         // radial zoom amplitude
-GLfloat zoom_period = 29.0;      // zoom in/out period, in minutes
-
-GLfloat rotation_offset = 0.0;   // so that we can rotate sphere
-GLfloat rotation_speed = 180.0;  // degrees per minute
-
-/**
- * display window size for dynamic text alignment
- * set in app+graphics_resize(), 
- * used in user_text.C - annotate_screen()
- * and search_info.C - display_search_info()
- */
-float gfx_width = 0;
-float gfx_height = 0;
-
-/**
- * Timezone correction for BOINCs dtime(), only needed for Win32 
- */
-#define gmt_dtime dtime
-
-
-/**
- * sphVertex3D() creates a GL vertex in 3D sky sphere coordinates
- * sphVertex() creates a GL vertex on the surface of the sky sphere.
- * Use either like glVertex().
- */
-void sphVertex3D(GLfloat RAdeg, GLfloat DEdeg,GLfloat radius) {
-  GLfloat x, y, z;
-
-  x =  radius * COS(DEdeg) * COS(RAdeg);
-  z = -radius * COS(DEdeg) * SIN(RAdeg);
-  y =  radius * SIN(DEdeg);
-  glVertex3f(x, y, z);
-  return;
-}
-
-
-void sphVertex(GLfloat RAdeg, GLfloat DEdeg) {
-  sphVertex3D(RAdeg, DEdeg, sphRadius);
-}
-
-
-/**
- * Star Marker:
- * Makes a marker for one star at a given position and angular size.  
- */
-void star_marker(float RAdeg, float DEdeg, float size) {
-  glPointSize((GLfloat) size);
-  glBegin(GL_POINTS);    
-    sphVertex((GLfloat) RAdeg, (GLfloat) DEdeg);
-  glEnd();
-  return;
-}
-
-
-/**
- *  Create Stars: markers for each star
- */
-void make_stars(){
-  GLfloat mag_size;
-  int i, j;
-  bool is_dupe;
-  int Ndupes=0;
-
-  if (!Stars) Stars = glGenLists(1);
-  glNewList(Stars, GL_COMPILE);
-      glColor3f(1.0, 1.0, 1.0); 
-
-     /**
-      * At some point in the future star_info[][] will also contain
-      * star magnitude and the marker size will vary with this.
-      */
-     for(i=0; i < Nstars; i++) {
-       // same stars appear more than once in constallations so ignore dupes
-       is_dupe=false;
-       for(j=0; j< i; j++) {
-         if ( star_info[j][0] == star_info[i][0]
-           && star_info[j][0] == star_info[i][0] ) {
-           is_dupe=true;
-           Ndupes++;
-           break;
-         }
-       }
-       if(!is_dupe) {
-         // mag_size = 0.05 + 0.50*rand()/RAND_MAX;
-         mag_size = 4.0;
-         star_marker(star_info[i][0],star_info[i][1], mag_size);
-       }
-     }
-  glEndList();
-  // fprintf(stderr,"make_stars: there were %d duplicate stars.\n", Ndupes);
-}
-
-
-/**
- *  Pulsar Markers:
- */
-void make_pulsars(){
-  GLfloat mag_size=3.0;
-  int i;
-  
-  if (!Pulsars) Pulsars = glGenLists(1);
-  glNewList(Pulsars, GL_COMPILE);
-  glColor3f(0.80, 0.0, 0.85);        // _P_ulsars are _P_urple
-  
-  for(i=0; i < Npulsars; i++) {
-    star_marker(pulsar_info[i][0], pulsar_info[i][1], mag_size);
-  }
-  glEndList();
-}
-
-
-/**
- * Super Novae Remenants (SNRs):
- */
-void make_snrs(){
-  GLfloat mag_size=3.0;
-  int i;
-
-  if (!SNRs) SNRs = glGenLists(1);
-  glNewList(SNRs, GL_COMPILE);
-  glColor3f(0.7, 0.176, 0.0);	  // _S_NRs are _S_ienna
-
-  for(i=0; i < NSNRs; i++) {
-    star_marker(SNR_info[i][0], SNR_info[i][1], mag_size);
-  }
-  glEndList();
-}
-
-
-/**
- * Create Constellations:
- * draws line links between pairs of stars in the list.
- */
-void make_constellations(){
-  GLint star_num=0;
-
-  if (!Constellations) Constellations = glGenLists(1);
-  glNewList(Constellations, GL_COMPILE);
-  glLineWidth(1.0);
-  glColor3f(0.7, 0.7, 0.0);	// light yellow
-
-  glBegin(GL_LINES);            // draws lines between *pairs* of vertices
-  for(star_num=0; star_num < Nstars; ++star_num) { 
-    sphVertex(star_info[star_num][0],star_info[star_num][1]);
-    star_num++;         
-    sphVertex(star_info[star_num][0],star_info[star_num][1]);
-  }
-  glEnd();
-  glEndList();  
-}
-
-/**
- * Create markers on sky sphere for LLO, LHO, and GEO
- * IFO corner positions are from Myers' personal GPS and are +/- 100m
- */
-
-
-/**
- * RAofZenith(time, longitude)
- *
- * Computes the Right Ascention of the zenith at a given time (from
- * the Unix epoch, in seconds) at a given Longitude (in degrees). From
- * 'The Cambridge Handbook of Physics Formulas', Graham Woan, 2003
- * edition, CUP.  (NOT the first edition), p177.
- */
-GLfloat RAofZenith(double T, GLfloat LONdeg) {
-
-  // unix epoch at 12h  1/1/2000
-  const double T_0 = 946728000.0;
-
-  //  UT seconds of the day
-  double T_s = fmod(T, 24.0*3600.0);
-
-  // Julian centuries since 12h 1/1/2000 and 0h today
-  double T_c = (T - T_s - T_0)/3155760000.0;
-
-  // GMST at 0h today in seconds
-  double GMST0 = 6.0*3600.0 + 41.0*60.0 + 50.54841 + (8640184.812866 + 0.093104*T_c)*T_c;
-
-  // GMST now in seconds
-  double GMST = GMST0 + 1.002738*T_s; 
-  
-  // longitude defined as west positive
-  GLfloat alpha = (GMST/(24.0*3600.0))*360.0 - LONdeg;
-
-  return alpha;
-}
-
-
-/* Time info */
-double obs_dtime_drawn;         // dtime() when obs were drawn
-double gmt_offset=0.0;          // dtime() correction to get GMT
-bool show_gmt=true;             // show clock or not?
-
-
-/**
- * Draw the observatories at their zenith positions
- */
-void make_obs() {
-  GLfloat Lat, Lon;             // Latitute/Longitude of IFO is
-  GLfloat RAdeg, DEdeg;         // converted to RA/DEC of sky sphere position
-  GLfloat radius;               // radius of sphere for obs
-
-  GLfloat arm_len_deg=3.000;    // lenght of arms, in degrees (not to scale)
-  GLfloat h2=0.400;             // slight offset for H2 arms
-
-  double obs_gmt_dtime;         // current time in GMT to get zenith position
-
-  obs_gmt_dtime = 0.0; //FIXME: gmt_dtime();  // Current GMT time
-  obs_dtime_drawn = 0.0; //FIXME:dtime();    // dtime() not gmt_dtime(), for difference
-  gmt_offset = obs_gmt_dtime - obs_dtime_drawn;   // save for GMT display
-
-  radius = 1.0*sphRadius;       // radius of sphere on which they are drawn
-  
-  float lineSize = 4.0;
-
-  /**
-   * LIGO Livingston Observatory:
-   */
-
-  Lat= 30.56377;
-  Lon= 90.77408;
-
-  RAdeg= RAofZenith(obs_gmt_dtime, Lon);
-  DEdeg=  Lat;
-
-  if (!LLOmarker) LLOmarker = glGenLists(1);
-  glNewList(LLOmarker, GL_COMPILE);
-	  glColor3f(0.0, 1.0, 0.0);
-	  glLineWidth(lineSize);
-	  glBegin(GL_LINE_STRIP);
-	    //  North/South arm:
-	    sphVertex3D(RAdeg, DEdeg-arm_len_deg, radius);
-	    sphVertex3D(RAdeg, DEdeg,radius);
-	    // East/West arm:
-	    sphVertex3D(RAdeg-arm_len_deg, DEdeg, radius);
-	  glEnd();
-	  // arm joint H2
-	  glPointSize((GLfloat) lineSize);
-	  glBegin(GL_POINTS);    
-	  	sphVertex3D(RAdeg, DEdeg, radius);
-	  glEnd();
-  glEndList();
-
-  /**
-   * LIGO Hanford Observatory: H1 and H2
-   */
-
-  Lat=  46.45510;
-  Lon= 119.40627;
-
-  RAdeg= RAofZenith(obs_gmt_dtime, Lon);
-  DEdeg=  Lat;
-  
-  if (!LHOmarker) LHOmarker = glGenLists(1);
-  glNewList(LHOmarker, GL_COMPILE);
-	  glColor3f(0.0, 0.0, 1.0);
-	  glLineWidth(lineSize);
-	  glBegin(GL_LINE_STRIP);
-	    // North/South arm:
-	    sphVertex3D(RAdeg, DEdeg+arm_len_deg, radius);
-	    sphVertex3D(RAdeg, DEdeg, radius);
-	    // East/West arm:
-	    sphVertex3D(RAdeg-arm_len_deg, DEdeg, radius);
-	  glEnd();
-	  glBegin(GL_LINE_STRIP);
-	    // North/South arm, H2:
-	    sphVertex3D(RAdeg-h2, DEdeg+arm_len_deg/2.0+h2/2.0, radius);
-	    sphVertex3D(RAdeg-h2, DEdeg+h2/2.0, radius);
-	    // East/West arm, H2;
-	    sphVertex3D(RAdeg-arm_len_deg/2.0-h2, DEdeg+h2/2.0, radius);
-	  glEnd();
-	  // arm joint H1
-	  glPointSize((GLfloat) lineSize);
-	  glBegin(GL_POINTS);    
-	  	sphVertex3D(RAdeg, DEdeg, radius);
-	  glEnd();
-	  // arm joint H2
-	  glPointSize((GLfloat) lineSize);
-	  glBegin(GL_POINTS);    
-	  	sphVertex3D(RAdeg-h2, DEdeg+h2/2.0, radius);
-	  glEnd();
-  glEndList();
-  
-  /**
-   *  GEO600 Interferometer:
-   */
-
-  Lat= 52.24452;
-  Lon= -9.80683;
-  arm_len_deg=1.50;   // not to scale
-
-  RAdeg= RAofZenith(obs_gmt_dtime, Lon);
-  DEdeg=  Lat;
-  
-  if (!GEOmarker) GEOmarker = glGenLists(1);
-  glNewList(GEOmarker, GL_COMPILE);
-  glColor3f(1.0, 0.0, 0.0);
-	  glLineWidth(lineSize);
-	  glBegin(GL_LINE_STRIP);
-	    // North/South arm:
-	    sphVertex3D(RAdeg, DEdeg+arm_len_deg, radius);
-	    sphVertex3D(RAdeg, DEdeg, radius);
-	    // West/East arm:
-	    sphVertex3D(RAdeg+arm_len_deg, DEdeg, radius);
-	  glEnd();
-	  // arm joint
-	  glPointSize((GLfloat) lineSize);
-	  glBegin(GL_POINTS);    
-	  	sphVertex3D(RAdeg, DEdeg, radius);
-	  glEnd();
-  glEndList();
-
-  return;
-}
-
-
-/**
- * XYZ coordinate axes: (if we want them - most useful for testing)
- */
-void make_axes(){
-    GLfloat axl=10.0;
-
-    if (!Axes) Axes = glGenLists(1);
-    glNewList(Axes, GL_COMPILE);
-    glLineWidth(2.0);
-
-    glBegin(GL_LINES);
-      glColor3f(1.0, 0.0, 0.0);
-      glVertex3f(-axl, 0.0, 0.0);
-      glVertex3f( axl, 0.0, 0.0);
-
-      glColor3f(0.0, 1.0, 0.0);
-      glVertex3f(0.0, -axl, 0.0);
-      glVertex3f(0.0,  axl, 0.0);
-
-      glColor3f(0.0, 0.0, 1.0);
-      glVertex3f(0.0, 0.0, -axl);
-      glVertex3f(0.0, 0.0,  axl);
-  glEnd();
-  glEndList();
-}
-
-
-/**
- * RA/DEC coordinate grid on the sphere
- */
-void make_globe(){
-  int hr, j, i, iMax=100;
-  GLfloat RAdeg, DEdeg;
-
-  if (!sphGrid) sphGrid = glGenLists(1);
-  glNewList(sphGrid, GL_COMPILE);
-  glLineWidth(1.0);
-
-  // Lines of constant Right Ascencion (East Longitude)
-
-  for(hr=0; hr<24; hr++) {
-    RAdeg=hr*15.0;
-	glColor3f(0.25, 0.25, 0.25);
-	if(hr==0)   glColor3f(0.55, 0.55, 0.55);
-    glBegin(GL_LINE_STRIP);  
-      for(i=0; i<=iMax; i++) {
-        DEdeg = i*180.0/iMax - 90.0;
-        sphVertex(RAdeg, DEdeg);
-      }
-    glEnd();
-  }
-
-
-  // Lines of constant Declination (Lattitude)
-
-  for(j=1; j<=12; j++){
-    DEdeg = 90.0 - j*15.0;
-    glBegin(GL_LINE_STRIP);  
-    for(i=0; i<=iMax; i++) {
-      RAdeg = i*360.0/iMax;
-      sphVertex(RAdeg, DEdeg);
-    }
-    glEnd();
-  }
-  glEndList();
-}
-
-
-/**
- * BOINC Graphics callbacks: 
- */
-
-// Graphics state info:
-float aspect = 4 / 3;
-
-/**
- * Window resize/remap
- * (FWIW, this is called *before* app_graphics_init(), 
- * when window is first mapped)
- */
-void app_graphics_resize(int width, int height) {
-
-	/* Adjust aspect ratio and projection */
-	glViewport(0, 0, (GLsizei) width, (GLsizei) height);
-
-	gfx_width = (float)width;
-	gfx_height = (float)height;  
-	aspect = gfx_width / gfx_height;
-	
-	glMatrixMode(GL_PROJECTION);
-	glLoadIdentity();
-	gluPerspective(95.0, aspect, 0.50, 25.0);
-	glMatrixMode(GL_MODELVIEW);
-	
-	// Update in case time (zone?) change
-	gmt_offset = 2; //FIXME: gmt_dtime() - dtime(); 
-}
-
-
-/**
- *  What to do when graphics are "initialized".
- */
-void app_graphics_init() {
-
-  // Drawing setup:
-  glClearColor(0.0, 0.0, 0.0, 0.0);	// background is black
-
-  // some polishing
-  glShadeModel(GL_SMOOTH);
-  glEnable(GL_POINT_SMOOTH);
-  glEnable(GL_LINE_SMOOTH);
-  
-  glHint(GL_POINT_SMOOTH_HINT, GL_NICEST);
-  glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);
-  glHint(GL_FOG_HINT, GL_DONT_CARE);
-  glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
-  
-  glEnable(GL_BLEND);
-  glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
-
-  /* Enable depth buffering for 3D graphics */
-  glClearDepth(1.0f);
-  glEnable(GL_DEPTH_TEST);      
-  glDepthFunc(GL_LEQUAL);               
- 
-  /* Fog aids depth perception */
-  glEnable(GL_FOG);
-  glFogi(GL_FOG_MODE, GL_EXP2);
-  glFogf(GL_FOG_DENSITY, 0.085);
-
-  /* Set initial perspective projection */
-  glMatrixMode(GL_PROJECTION);
-  glLoadIdentity();
-  gluPerspective(95.0, aspect, 0.50, 25.0);
-  glMatrixMode(GL_MODELVIEW);
-
-   /* Create pre-drawn display lists */
-  make_stars();    
-  make_constellations(); 
-  make_pulsars();
-  make_snrs();
-  make_axes();
-  make_globe();
-  make_obs();
-  
-  setFeature(STARS, true);
-  setFeature(CONSTELLATIONS, true);
-  setFeature(PULSARS, true);
-  setFeature(OBSERVATORIES, true);
-  setFeature(SNRS, true);
-  setFeature(GLOBE, true);
-  setFeature(SEARCHINFO, true);
-  setFeature(LOGO, true);
-
-  glDisable(GL_CLIP_PLANE0);
-  glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
-  glFlush();
-}
-
-
-/**
- * Rendering routine:  this is what does the drawing:   
- */
-void app_graphics_render(int xs, int ys, double time_of_day){
-  GLfloat xvp, yvp, zvp, vp_theta, vp_phi, vp_rad; 
-  GLfloat Zrot = 0.0, Zobs=0.0; 
-  double revs,  t, dt = 0;
-  static double start_time=-1.0, last_time=-1.0;
-  static const double rad2deg = 180.0/PI;
-
-  // Calculate the real time t since we started (or reset) and the
-  // time dt since the last render() call.    Both may be useful
-  // for timing animations.  Note that time_of_day is dtime().
-
-  if ( start_time < 0.0 )  start_time = time_of_day;
-  t = time_of_day - start_time;
-
-  if (last_time < 0.0)  last_time = time_of_day - 0.01; 
-  dt = time_of_day - last_time; 
-
-  last_time = time_of_day;      // remember for next time
-
-  // Now determine the rotation angle based on the time since start
-  // It is negative to get the rotation direction correct (the sun
-  // rises in the East, so the sky sphere rotates E to W).
-
-  Zrot = t*rotation_speed/60.0;   
-  revs = Zrot/360.0;
-  Zrot = -360.0 * ( revs - (int)revs);
-
-  // And start drawing...
-  
-  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
-
-  // First, write user text to screen,  from user_text.C
-
-  annotate_screen();
-  if(isFeature(SEARCHINFO)) display_search_info(time_of_day);
-
-
-  // Now draw the scene...
-
-  glLoadIdentity();
- 
-  // Vary the viewpoint with both a long period wobble of the elevation 
-  // of the view and a longer period zoom in/out that might even penetrate
-  // The starsphere for a brief time.   Increase the power in pow(,) to 
-  // make the visit inside briefer.
-
-  vp_theta = 90.0 - viewpt_elev + wobble_amp*sin(PI2*t/(wobble_period*60.0));
-  vp_phi = viewpt_azimuth;
-  vp_rad = viewpt_radius - zoom_amp*sin(PI2*t/(zoom_period*60.0));
-  if(vp_rad <0.0) vp_rad = 0.0;         // cannot pass origin (confusing)
-       // TRIED THIS TOO: -zoom_amp*pow(fabs(sin(PI2*t/(zoom_period*60.0))),3);
-  xvp = vp_rad * SIN(vp_theta) * SIN(vp_phi);
-  zvp = vp_rad * SIN(vp_theta) * COS(vp_phi);
-  yvp = vp_rad * COS(vp_theta);
-
-  gluLookAt ( xvp,  yvp, zvp,      // eyes position
-               0.0, 0.0, 0.0,                   // looking toward here
-               0.0, 1.0, 0.0);                  // which way is up?  y axis!
-
-  // Draw axes before any rotation so they stay put
-  if(isFeature(AXES)) glCallList(Axes);
-
-
-  	// Draw the sky sphere, with rotation:
-  	glPushMatrix(); 
-    glRotatef(Zrot - rotation_offset ,  0.0, 1.0, 0.0);
-
-    /* stars, pulsars, supernovae */
-
-    if(isFeature(STARS))          glCallList(Stars);
-    if(isFeature(PULSARS))        glCallList(Pulsars);
-    if(isFeature(SNRS))           glCallList(SNRs);
-    if(isFeature(CONSTELLATIONS)) glCallList(Constellations);
-    if(isFeature(GLOBE))          glCallList(sphGrid);
-
-    /* search position marker */
-
-    if (show_markers){
-      if (show_markers==MARKER_NEW) {   // need to reposition the marker?
-        make_search_marker(search_RAdeg, search_DEdeg, 0.50);
-        show_markers=MARKER_SHOW;
-      }
-      glCallList(SearchMarker);
-    }
-
-
-    /* Observatories move an extra 15 degrees/hr since they were drawn */
-
-    if(isFeature(OBSERVATORIES)) {
-      glPushMatrix();
-        Zobs = (time_of_day-obs_dtime_drawn) * 15.0/3600.0;
-        glRotatef(Zobs, 0.0, 1.0, 0.0);            
-        glCallList(LLOmarker);
-        glCallList(LHOmarker);
-        glCallList(GEOmarker);
-      glPopMatrix();
-    }
-
-  glPopMatrix();
-
-  
-  	// draw 2D vectorized HUD
-  
-  	static GLfloat xStartPosLeft = 0.008;
-  	static GLfloat xStartPosRight = 0.84;
-  	static GLfloat yStartPosTop = 0.9675;
-  	static GLfloat yStartPosBottom = 0.075;
-  	static GLfloat fontScaleLargeX = 0.020;
-  	static GLfloat fontScaleMediumX = 0.0115;
-  	static GLfloat fontScaleSmallX = 0.01;
-  	static GLfloat fontScaleMediumY = fontScaleMediumX * aspect;
-  	static GLfloat fontScaleLargeY = fontScaleLargeX * aspect;
-  	static GLfloat fontScaleSmallY = fontScaleSmallX * aspect;
-//    static GLfloat yOffset = (font->Ascender() + font->Descender());
-  	static GLfloat yOffsetLarge = 0.02;
-  	static GLfloat yOffsetMedium = 0.015;
-  
-	// save current state
-	glMatrixMode(GL_PROJECTION); 
-	glPushMatrix();
-	glLoadIdentity(); 
-	glOrtho(0, 1 , 0 , 1, -1, 1);
-	glMatrixMode(GL_MODELVIEW); 
-	glPushMatrix(); 
-	glLoadIdentity(); 
-
-	if(isFeature(LOGO)) { 
-		glPushMatrix(); 
-		glColor3f(1.0, 1.0, 0.0);
-		glTranslatef(xStartPosLeft, yStartPosTop, 0);
-		glScalef(fontScaleLargeX, fontScaleLargeY, 1.0);
-		font->Render("Einstein@Home");
-		glPopMatrix();
-		   
-		glPushMatrix();
-		glLoadIdentity();
-		glColor4f(1.0, 1.0, 1.0, 0.5);
-		glTranslatef(xStartPosLeft, yStartPosTop - yOffsetLarge, 0);
-		glScalef(fontScaleMediumX, fontScaleMediumY, 1.0);
-		font->Render("World Year of Physics 2005");
-		glPopMatrix();
-	}
-	if(isFeature(SEARCHINFO)) {
-		// left info block		
-		glPushMatrix(); 
-		glColor3f(1.0, 1.0, 0.0);
-		glTranslatef(xStartPosLeft, yStartPosBottom, 0);
-		glScalef(fontScaleMediumX, fontScaleMediumY, 1.0);
-		font->Render("BOINC Statistics");
-		glPopMatrix();
-		   
-		glPushMatrix();
-		glLoadIdentity();
-		glColor4f(1.0, 1.0, 1.0, 0.5);
-		glTranslatef(xStartPosLeft, yStartPosBottom - yOffsetMedium, 0);
-		glScalef(fontScaleSmallX, fontScaleSmallY, 1.0);
-		font->Render("User: Oliver");
-		glPopMatrix();
-		
-		glPushMatrix();
-		glLoadIdentity();
-		glTranslatef(xStartPosLeft, yStartPosBottom - 2*yOffsetMedium, 0);
-		glScalef(fontScaleSmallX, fontScaleSmallY, 1.0);
-		font->Render("Team: Albert-Einstein-Institut");
-		glPopMatrix();
-		
-		glPushMatrix();
-		glLoadIdentity();
-		glTranslatef(xStartPosLeft, yStartPosBottom - 3*yOffsetMedium, 0);
-		glScalef(fontScaleSmallX, fontScaleSmallY, 1.0);
-		font->Render("Project credits: 12.000");
-		glPopMatrix();
-		
-		glPushMatrix();
-		glLoadIdentity();
-		glTranslatef(xStartPosLeft, yStartPosBottom - 4*yOffsetMedium, 0);
-		glScalef(fontScaleSmallX, fontScaleSmallY, 1.0);
-		font->Render("Project RAC: 145.00");
-		glPopMatrix();
-		
-		// right info block
-		glPushMatrix(); 
-		glColor3f(1.0, 1.0, 0.0);
-		glTranslatef(xStartPosRight, yStartPosBottom, 0);
-		glScalef(fontScaleMediumX, fontScaleMediumY, 1.0);
-		font->Render("Search Information");
-		glPopMatrix();
-		   
-		glPushMatrix();
-		glLoadIdentity();
-		glColor4f(1.0, 1.0, 1.0, 0.5);
-		glTranslatef(xStartPosRight, yStartPosBottom - yOffsetMedium, 0);
-		glScalef(fontScaleSmallX, fontScaleSmallY, 1.0);
-		font->Render("Right ascension: 180.00 deg");
-		glPopMatrix();
-		
-		glPushMatrix();
-		glLoadIdentity();
-		glTranslatef(xStartPosRight, yStartPosBottom - 2*yOffsetMedium, 0);
-		glScalef(fontScaleSmallX, fontScaleSmallY, 1.0);
-		font->Render("Declination: 45.00 deg");
-		glPopMatrix();
-		
-		glPushMatrix();
-		glLoadIdentity();
-		glTranslatef(xStartPosRight, yStartPosBottom - 3*yOffsetMedium, 0);
-		glScalef(fontScaleSmallX, fontScaleSmallY, 1.0);
-		font->Render("Frequency: 850.05 Hz");
-		glPopMatrix();
-		
-		glPushMatrix();
-		glLoadIdentity();
-		glTranslatef(xStartPosRight, yStartPosBottom - 4*yOffsetMedium, 0);
-		glScalef(fontScaleSmallX, fontScaleSmallY, 1.0);
-		font->Render("Spindown rate: 3.25 * 10^-10 Hz/s");
-		glPopMatrix();
-	}
-	
-	// restore original state
-	glMatrixMode( GL_PROJECTION );
-	glPopMatrix();
-	glMatrixMode( GL_MODELVIEW );
-	glPopMatrix();
-
-
-	glFlush();
-	glFinish();
-	  
-	SDL_GL_SwapBuffers();
-}
-
-/**
- * View control
- */
-void rotateSphere(const int relativeRotation, const int relativeElevation)
-{
-	// elevation
-    viewpt_elev += relativeElevation/10.0;
-    if( viewpt_elev >  89.0 ) viewpt_elev = +89.0;
-    if( viewpt_elev < -89.0 ) viewpt_elev = -89.0;
-
-    // rotation
-    rotation_offset -= relativeRotation/10.0;   
-}
-
-void zoomSphere(const int relativeZoom)
-{
-	// zoom
-    viewpt_radius -= relativeZoom/10.0;
-    if (viewpt_radius > 15.0) viewpt_radius = 15.0;
-    if (viewpt_radius < 0.5)  viewpt_radius = 0.5;
-}
-
-
-/**
- * Feature control
- */
-void setFeature(const FEATURES feature, const bool enable)
-{
-	featureFlags = enable ? (featureFlags | feature) : (featureFlags & ~feature);
-}
-
-bool isFeature(const FEATURES feature)
-{
-	return ((featureFlags & feature) == feature ? true : false);
-}
diff --git a/starsphere.h b/starsphere.h
deleted file mode 100644
index 81dbe9bf06b3d406feb889486115784a170075cc..0000000000000000000000000000000000000000
--- a/starsphere.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*****************************************************************************
- * Star Sphere graphics for Einstein@Home Screen Saver  
- * 
- * @(#) $Id$
- *
- * Copyright (C) 2004 David Hammer, Eric Myers, Bruce Allen
- * Copyright (C) 2008 Bernd Machenschalk
- * Copyright (C) 2008 Oliver Bock
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * You should have received a copy of the GNU General Public License
- * (for example COPYING); if not, write to the Free
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- ************************************************************************/
-
-#ifndef BOINC_APP_GRAPHICS
-#define BOINC_APP_GRAPHICS
-
-// or for Unix 
-#include <cmath>
-#include <cstdio>
-#include <cstring>
-
-#include <SDL_opengl.h>
-
-#include <FTGLExtrdFont.h>
-#include <FTGLOutlineFont.h>
-#include <FTGLPolygonFont.h>
-#include <FTGLTextureFont.h>
-#include <FTGLPixmapFont.h>
-#include <FTGLBitmapFont.h>
-
-#define EAH_SHMEM_APP_NAME "Einstein@Home"
-
-/* SIN and COS take arguments in DEGREES */
-#define PI 3.14159265
-#define PI2 (2*PI)
-#define COS(X)   cos( (X) * PI2/360.0 )
-#define SIN(X)   sin( (X) * PI2/360.0 )
-
-/* search marker status */
-#define MARKER_NONE 0
-#define MARKER_SHOW 1
-#define MARKER_NEW  2
-
-// place to keep current window dimensions
-extern float gfx_width, gfx_height;
-
-// If graphics are disabled during compilation then we still need
-// empty callbacks for these:
-void app_graphics_init();
-void app_graphics_resize(int w, int h);
-void app_graphics_render(int xs, int ys, double time_of_day);
-
-void rotateSphere(const int relativeRotation, const int relativeElevation);
-void zoomSphere(const int relativeZoom);
-
-// features
-typedef enum Features {
-	STARS=1,
-	CONSTELLATIONS=2,
-	OBSERVATORIES=4,
-	XRAYS=8,
-	PULSARS=16,
-	SNRS=32,
-	GLOBE=64,
-	AXES=128,
-	SEARCHINFO=256,
-	LOGO=512
-} FEATURES;
-
-// feature control API
-void setFeature(const FEATURES features, const bool enable);
-bool isFeature(const FEATURES features);
-
-// font from main.C
-extern FTFont *font;
-
-#endif