Index: trunk/nv/gl/gl_device.hh
===================================================================
--- trunk/nv/gl/gl_device.hh	(revision 91)
+++ trunk/nv/gl/gl_device.hh	(revision 92)
@@ -28,4 +28,6 @@
 		virtual image_data* create_image_data( const std::string& filename ); // temporary
 		virtual texture2d* create_texture2d( ivec2 size, image_format aformat, datatype adatatype, sampler asampler, void* data = nullptr );
+		virtual uint32 get_ticks();
+		virtual void delay( uint32 ms );
 		virtual ~gl_device();
 	private:
Index: trunk/nv/interface/device.hh
===================================================================
--- trunk/nv/interface/device.hh	(revision 91)
+++ trunk/nv/interface/device.hh	(revision 92)
@@ -35,4 +35,6 @@
 		virtual image_data* create_image_data( const std::string& filename ) = 0; // temporary
 		virtual texture2d* create_texture2d( ivec2 size, image_format aformat, datatype adatatype, sampler asampler, void* data = nullptr ) = 0;
+		virtual uint32 get_ticks() = 0;
+		virtual void delay( uint32 ms ) = 0;
 
 		virtual vertex_array* create_vertex_array( const mesh* m, const attribute_map* am, buffer_hint hint )
Index: trunk/src/gl/gl_device.cc
===================================================================
--- trunk/src/gl/gl_device.cc	(revision 91)
+++ trunk/src/gl/gl_device.cc	(revision 92)
@@ -83,4 +83,14 @@
 }
 
+uint32 gl_device::get_ticks()
+{
+	return SDL_GetTicks();
+}
+
+void gl_device::delay( uint32 ms )
+{
+	return SDL_Delay( ms );
+}
+
 gl_device::~gl_device()
 {
