diff demos/sdl.d @ 38:27b2f40bdb58 trunk

[svn r42] Disabled the extensive logging by default. Use the -vv flag to get it back. Fiddled a bit the the testing system. Added a very simple SDL graphics demo.
author lindquist
date Wed, 10 Oct 2007 06:16:48 +0200
parents
children 0b9b286b67b6
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/demos/sdl.d	Wed Oct 10 06:16:48 2007 +0200
@@ -0,0 +1,46 @@
+module sdl;
+
+version(build)
+    pragma(link,"SDL");
+
+extern(C):
+struct SDL_Rect {
+    short x, y;
+    ushort w, h;
+}
+struct SDL_PixelFormat {
+    //SDL_Palette *palette;
+    void *palette;
+    ubyte BitsPerPixel, BytesPerPixel, Rloss, Gloss, Bloss, Aloss, Rshift, Gshift, Bshift, Ashift;
+    uint Rmask, Gmask, Bmask, Amask, colorkey; ubyte alpha;
+}
+struct SDL_Surface {
+    uint flags;
+    SDL_PixelFormat *format;
+    int w, h;
+    ushort pitch;
+    void *pixels;
+    int offset;
+    void *hwdata;
+    SDL_Rect clip_rect;
+    uint unused;
+    uint locked;
+    void *map;
+    uint format_version;
+    int refcount;
+}
+uint SDL_MapRGBA(SDL_PixelFormat *format, ubyte r, ubyte g, ubyte b, ubyte a);
+void SDL_GetRGBA(uint pixel, SDL_PixelFormat *fmt, ubyte *r, ubyte *g, ubyte *b, ubyte *a);
+int SDL_LockSurface(SDL_Surface *);
+void SDL_UnlockSurface(SDL_Surface *);
+SDL_Surface * SDL_SetVideoMode(int width, int height, int bpp, uint flags);
+int SDL_Flip(SDL_Surface *);
+void SDL_Delay(uint);
+int SDL_FillRect(SDL_Surface*,SDL_Rect*,uint);
+enum : uint {
+    SDL_SWSURFACE=0,
+    SDL_HWSURFACE=1,
+    SDL_DOUBLEBUF=0x40000000,
+    SDL_FULLSCREEN=0x80000000
+}
+