Making room for test prog's gsoc2008_nds
authorDarren Alton <dalton@stevens.edu>
Wed, 13 Aug 2008 00:45:35 +0000
branchgsoc2008_nds
changeset 26852190b873ff00
parent 2684 a4f143d187dd
child 2686 e9f27fe4f2a1
Making room for test prog's
src/audio/nds/SDL_ndsaudio.c
src/video/nds/SDL_ndsrender.c
test/nds-test/Makefile
test/nds-test/build/main.d
test/nds-test/build/main.i
test/nds-test/build/main.s
test/nds-test/build/nds-test.map
test/nds-test/nds-test.arm9
test/nds-test/nds-test.ds.gba
test/nds-test/nds-test.elf
test/nds-test/nds-test.nds
test/nds-test/source/main.c
     1.1 --- a/src/audio/nds/SDL_ndsaudio.c	Mon Aug 11 04:39:24 2008 +0000
     1.2 +++ b/src/audio/nds/SDL_ndsaudio.c	Wed Aug 13 00:45:35 2008 +0000
     1.3 @@ -50,6 +50,7 @@
     1.4      sound->vol = 127;    /* volume [0..127] for [min..max] */
     1.5      sound->pan = 64;     /* balance [0..127] for [left..right] */
     1.6      sound->format = 0;   /* 0 for 16-bit, 1 for 8-bit */
     1.7 +    /*playSound(sound);*/
     1.8      /* stub */
     1.9  }
    1.10  
     2.1 --- a/src/video/nds/SDL_ndsrender.c	Mon Aug 11 04:39:24 2008 +0000
     2.2 +++ b/src/video/nds/SDL_ndsrender.c	Wed Aug 13 00:45:35 2008 +0000
     2.3 @@ -32,7 +32,7 @@
     2.4  #include "../SDL_renderer_sw.h"
     2.5  
     2.6  
     2.7 -/* SDL surface based renderer implementation */
     2.8 +/* SDL NDS renderer implementation */
     2.9  
    2.10  static SDL_Renderer *NDS_CreateRenderer(SDL_Window * window, Uint32 flags);
    2.11  static int NDS_ActivateRenderer(SDL_Renderer * renderer);
    2.12 @@ -99,6 +99,7 @@
    2.13  {
    2.14      bg_attribute *bg;
    2.15      u8 bg_taken[4];
    2.16 +    /* todo for sprites: pSpriteRotation and pSpriteEntry. pointers to OAM */
    2.17      int sub;
    2.18  } NDS_RenderData;
    2.19  
    2.20 @@ -106,7 +107,7 @@
    2.21  {
    2.22      enum { NDSTX_BG, NDSTX_SPR } type;
    2.23      int hw_index;
    2.24 -    struct { int w, h, pitch, bpp; } dim;
    2.25 +    struct { int hdx, hdy, vdx, vdy, pitch, bpp; } dim;
    2.26      u16 *vram;
    2.27  } NDS_TextureData;
    2.28  
    2.29 @@ -125,25 +126,6 @@
    2.30      return (c & GAmask) | r | b;
    2.31  }
    2.32  
    2.33 -void
    2.34 -sdlds_print_pixfmt_info(SDL_PixelFormat * f)
    2.35 -{
    2.36 -    if (!f)
    2.37 -        return;
    2.38 -    printf("bpp: %d\nRGBA: %x %x %x %x\n",
    2.39 -           f->BitsPerPixel, f->Rmask, f->Gmask, f->Bmask, f->Amask);
    2.40 -}
    2.41 -
    2.42 -void
    2.43 -sdlds_print_surface_info(SDL_Surface * s)
    2.44 -{
    2.45 -    if (!s)
    2.46 -        return;
    2.47 -    printf("flags: %x\nsize: %dx%d, pitch: %d\nlocked: %d, refcount: %d\n",
    2.48 -           s->flags, s->w, s->h, s->pitch, s->locked, s->refcount);
    2.49 -    sdlds_print_pixfmt_info(s->format);
    2.50 -}
    2.51 -
    2.52  /* again the above shouldn't make it into the stable version */
    2.53  
    2.54  SDL_Renderer *
    2.55 @@ -269,20 +251,8 @@
    2.56              int whichbg = -1;
    2.57              if(!data->bg_taken[2]) {
    2.58                  whichbg = 2;
    2.59 -                data->bg->bg2_rotation.xdx = 0x100;
    2.60 -                data->bg->bg2_rotation.xdy = 0;
    2.61 -                data->bg->bg2_rotation.ydx = 0;
    2.62 -                data->bg->bg2_rotation.ydy = 0x100;
    2.63 -                data->bg->bg2_rotation.centerX = 0;
    2.64 -                data->bg->bg2_rotation.centerY = 0;
    2.65              } else if(!data->bg_taken[3]) {
    2.66                  whichbg = 3;
    2.67 -                data->bg->bg3_rotation.xdx = 0x100;
    2.68 -                data->bg->bg3_rotation.xdy = 0;
    2.69 -                data->bg->bg3_rotation.ydx = 0;
    2.70 -                data->bg->bg3_rotation.ydy = 0x100;
    2.71 -                data->bg->bg3_rotation.centerX = 0;
    2.72 -                data->bg->bg3_rotation.centerY = 0;
    2.73              }
    2.74              if(whichbg >= 0) {
    2.75                  data->bg->control[whichbg] = (bpp == 8) ?
    2.76 @@ -293,18 +263,16 @@
    2.77                  txdat = (NDS_TextureData*)texture->driverdata;
    2.78                  txdat->type = NDSTX_BG;
    2.79                  txdat->hw_index = whichbg;
    2.80 -                txdat->dim.w = texture->w;
    2.81 -                txdat->dim.h = texture->h;
    2.82 +                txdat->dim.hdx = 0x100; txdat->dim.hdy = 0;
    2.83 +                txdat->dim.vdx = 0;     txdat->dim.vdy = 0x100;
    2.84                  txdat->dim.pitch = 256 * (bpp/8);
    2.85                  txdat->dim.bpp = bpp;
    2.86                  txdat->vram = (u16*)(data->sub ?
    2.87                      BG_BMP_RAM_SUB(whichbg) : BG_BMP_RAM(whichbg));
    2.88 -                for(i = 0; i < 256*256; ++i) {
    2.89 -                    txdat->vram[i] = 0x8000|RGB15(0,31,31);
    2.90 -                }
    2.91                  for(i = 0; i < 60; ++i) swiWaitForVBlank();
    2.92              } else {
    2.93                  SDL_SetError("Out of NDS backgrounds.");
    2.94 +                printf("ran out.\n");
    2.95              }
    2.96          } else {
    2.97              SDL_SetError("Texture too big for NDS hardware.");
    2.98 @@ -337,6 +305,191 @@
    2.99  }
   2.100  
   2.101  static int
   2.102 +NDS_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   2.103 +                 const SDL_Rect * rect, const void *pixels, int pitch)
   2.104 +{
   2.105 +printf("+NDS_UpdateTexture\n");
   2.106 +    if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
   2.107 +        SDL_SetError("Unsupported texture format");
   2.108 +        return -1;
   2.109 +    } else {
   2.110 +        NDS_TextureData *txdat = (NDS_TextureData *) texture->driverdata;
   2.111 +        Uint8 *src, *dst;
   2.112 +        int row;
   2.113 +        size_t length;
   2.114 +        /* IMPORTANT! copy the new pixels into the sprite or bg. */
   2.115 +        src = (Uint8 *) pixels;
   2.116 +        dst =
   2.117 +            (Uint8 *) txdat->vram + rect->y * txdat->dim.pitch +
   2.118 +            rect->x * (txdat->dim.bpp/8);
   2.119 +        length = rect->w * (txdat->dim.bpp/8);
   2.120 +        for (row = 0; row < rect->h; ++row) {
   2.121 +            SDL_memcpy(dst, src, length);
   2.122 +            src += pitch;
   2.123 +            dst += txdat->dim.pitch;
   2.124 +        }
   2.125 +printf("-NDS_UpdateTexture\n");
   2.126 +        return 0;
   2.127 +    }
   2.128 +}
   2.129 +
   2.130 +static int
   2.131 +NDS_LockTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   2.132 +               const SDL_Rect * rect, int markDirty, void **pixels,
   2.133 +               int *pitch)
   2.134 +{
   2.135 +printf("+NDS_LockTexture\n");
   2.136 +    if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
   2.137 +        SDL_SetError("Unsupported texture format");
   2.138 +        return -1;
   2.139 +    } else {
   2.140 +        NDS_TextureData *txdat = (NDS_TextureData *) texture->driverdata;
   2.141 +
   2.142 +        if (markDirty) {
   2.143 +            printf("wanted to mark dirty\n");
   2.144 +            /*SDL_AddDirtyRect(&txdat->dirty, rect);*/
   2.145 +        }
   2.146 +
   2.147 +        *pixels = (void *) ((u8 *)txdat->vram + rect->y * txdat->dim.pitch
   2.148 +                            + rect->x * (txdat->dim.bpp/8));
   2.149 +        *pitch = txdat->dim.pitch;
   2.150 +        printf("  pixels = %08x\n", (u32)*pixels);
   2.151 +printf("-NDS_LockTexture\n");
   2.152 +        return 0;
   2.153 +    }
   2.154 +}
   2.155 +
   2.156 +static void
   2.157 +NDS_UnlockTexture(SDL_Renderer * renderer, SDL_Texture * texture)
   2.158 +{
   2.159 +    if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
   2.160 +        SDL_SetError("Unsupported texture format");
   2.161 +    }
   2.162 +printf("+NDS_UnlockTexture\n-NDS_UnlockTexture\n");
   2.163 +}
   2.164 +
   2.165 +static void
   2.166 +NDS_DirtyTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   2.167 +                int numrects, const SDL_Rect * rects)
   2.168 +{ /* stub */
   2.169 +printf("!NDS_DirtyTexture\n");
   2.170 +}
   2.171 +
   2.172 +static int
   2.173 +NDS_RenderFill(SDL_Renderer * renderer, Uint8 r, Uint8 g, Uint8 b,
   2.174 +                   Uint8 a, const SDL_Rect * rect)
   2.175 +{
   2.176 +    NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
   2.177 +    SDL_Rect real_rect = *rect;
   2.178 +    u16 color;
   2.179 +    int i, j;
   2.180 +
   2.181 +printf("+NDS_RenderFill\n");
   2.182 +    /* TODO: make a single-color sprite and stretch it.
   2.183 +    color = RGB15(r>>3,g>>3,b>>3);
   2.184 +    for (i = real_rect.x; i < real_rect.x+real_rect.w; ++i) {
   2.185 +        for (j = real_rect.y; j < real_rect.y+real_rect.h; ++j) {
   2.186 +            data->fb[(j + real_rect.y) * 256 + i + real_rect.x] = 
   2.187 +                0x8000 | color;
   2.188 +        }
   2.189 +    }*/
   2.190 +printf("-NDS_RenderFill\n");
   2.191 +    return 0;
   2.192 +}
   2.193 +
   2.194 +static int
   2.195 +NDS_RenderCopy(SDL_Renderer * renderer, SDL_Texture * texture,
   2.196 +                   const SDL_Rect * srcrect, const SDL_Rect * dstrect)
   2.197 +{
   2.198 +    NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
   2.199 +    NDS_TextureData *txdat = (NDS_TextureData *) texture->driverdata;
   2.200 +//    SDL_Window *window = SDL_GetWindowFromID(renderer->window);
   2.201 +//    SDL_VideoDisplay *display = SDL_GetDisplayFromWindow(window);
   2.202 +    int i;
   2.203 +    int bpp = SDL_BYTESPERPIXEL(texture->format);
   2.204 +    int pitch = txdat->dim.pitch;
   2.205 +printf("+NDS_RenderCopy\n");
   2.206 +    if(txdat->type == NDSTX_BG) {
   2.207 +        bg_rotation *tmpbg = (txdat->hw_index == 2) ?
   2.208 +            &(data->bg->bg2_rotation) : &(data->bg->bg3_rotation);
   2.209 +        tmpbg->xdx = txdat->dim.hdx;
   2.210 +        tmpbg->xdy = txdat->dim.hdy;
   2.211 +        tmpbg->ydx = txdat->dim.vdx;
   2.212 +        tmpbg->ydy = txdat->dim.vdy;
   2.213 +        tmpbg->centerX = 0;
   2.214 +        tmpbg->centerY = 0;
   2.215 +    } else {
   2.216 +        /* sprites not implemented yet */
   2.217 +    }
   2.218 +    printf("  txdat->hw_index = %d\n", txdat->hw_index);
   2.219 +printf("-NDS_RenderCopy\n");
   2.220 +    return 0;
   2.221 +}
   2.222 +
   2.223 +
   2.224 +static void
   2.225 +NDS_RenderPresent(SDL_Renderer * renderer)
   2.226 +{
   2.227 +    NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
   2.228 +    /* Send the data to the display TODO */
   2.229 +    /* shouldn't it already be there at this point?
   2.230 +       I guess set the BG's and sprites "visible" flags here. */
   2.231 +printf("+NDS_RenderPresent\n");
   2.232 +
   2.233 +    /* vsync for NDS */
   2.234 +    if (renderer->info.flags & SDL_RENDERER_PRESENTVSYNC) {
   2.235 +        swiWaitForVBlank();
   2.236 +    }
   2.237 +printf("-NDS_RenderPresent\n");
   2.238 +}
   2.239 +
   2.240 +static void
   2.241 +NDS_DestroyTexture(SDL_Renderer * renderer, SDL_Texture * texture)
   2.242 +{
   2.243 +printf("+NDS_DestroyTexture\n");
   2.244 +    if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
   2.245 +        SDL_SetError("Unsupported texture format");
   2.246 +    } else {
   2.247 +        /* free anything else allocated for texture */
   2.248 +        NDS_TextureData *txdat = texture->driverdata;
   2.249 +        /*SDL_FreeDirtyRects(&txdat->dirty);*/
   2.250 +        SDL_free(txdat);
   2.251 +    }
   2.252 +printf("-NDS_DestroyTexture\n");
   2.253 +}
   2.254 +
   2.255 +static void
   2.256 +NDS_DestroyRenderer(SDL_Renderer * renderer)
   2.257 +{
   2.258 +    NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
   2.259 +    /*SDL_Window *window = SDL_GetWindowFromID(renderer->window);
   2.260 +    SDL_VideoDisplay *display = SDL_GetDisplayFromWindow(window);*/
   2.261 +    int i;
   2.262 +
   2.263 +printf("+NDS_DestroyRenderer\n");
   2.264 +    if (data) {
   2.265 +        /* TODO: free anything relevant. */
   2.266 +        /*for (i = 0; i < SDL_arraysize(data->texture); ++i) {
   2.267 +            if (data->texture[i]) {
   2.268 +                DestroyTexture(data->renderer, data->texture[i]);
   2.269 +            }
   2.270 +        }
   2.271 +        if (data->surface.format) {
   2.272 +            SDL_SetSurfacePalette(&data->surface, NULL);
   2.273 +            SDL_FreeFormat(data->surface.format);
   2.274 +        }
   2.275 +        if (display->palette) {
   2.276 +            SDL_DelPaletteWatch(display->palette, DisplayPaletteChanged,
   2.277 +                                data);
   2.278 +        }
   2.279 +        SDL_FreeDirtyRects(&data->dirty);*/
   2.280 +        SDL_free(data);
   2.281 +    }
   2.282 +    SDL_free(renderer);
   2.283 +printf("-NDS_DestroyRenderer\n");
   2.284 +}
   2.285 +
   2.286 +static int
   2.287  NDS_SetTexturePalette(SDL_Renderer * renderer, SDL_Texture * texture,
   2.288                       const SDL_Color * colors, int firstcolor, int ncolors)
   2.289  {
   2.290 @@ -401,195 +554,4 @@
   2.291      return 0;
   2.292  }
   2.293  
   2.294 -static int
   2.295 -NDS_UpdateTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   2.296 -                 const SDL_Rect * rect, const void *pixels, int pitch)
   2.297 -{
   2.298 -printf("+NDS_UpdateTexture\n");
   2.299 -    if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
   2.300 -        SDL_SetError("Unsupported texture format");
   2.301 -        return -1;
   2.302 -    } else {
   2.303 -        NDS_TextureData *txdat = (NDS_TextureData *) texture->driverdata;
   2.304 -        Uint8 *src, *dst;
   2.305 -        int row;
   2.306 -        size_t length;
   2.307 -        /* IMPORTANT! copy the new pixels into the sprite or bg. */
   2.308 -        src = (Uint8 *) pixels;
   2.309 -        dst =
   2.310 -            (Uint8 *) txdat->vram + rect->y * txdat->dim.pitch +
   2.311 -            rect->x * (txdat->dim.bpp/8);
   2.312 -        length = rect->w * (txdat->dim.bpp/8);
   2.313 -        for (row = 0; row < rect->h; ++row) {
   2.314 -            SDL_memcpy(dst, src, length);
   2.315 -            src += pitch;
   2.316 -            dst += txdat->dim.pitch;
   2.317 -        }
   2.318 -printf("-NDS_UpdateTexture\n");
   2.319 -        return 0;
   2.320 -    }
   2.321 -}
   2.322 -
   2.323 -static int
   2.324 -NDS_LockTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   2.325 -               const SDL_Rect * rect, int markDirty, void **pixels,
   2.326 -               int *pitch)
   2.327 -{
   2.328 -printf("+NDS_LockTexture\n");
   2.329 -    if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
   2.330 -        SDL_SetError("Unsupported texture format");
   2.331 -        return -1;
   2.332 -    } else {
   2.333 -        NDS_TextureData *txdat = (NDS_TextureData *) texture->driverdata;
   2.334 -
   2.335 -        if (markDirty) {
   2.336 -            /*SDL_AddDirtyRect(&txdat->dirty, rect);*/
   2.337 -        }
   2.338 -
   2.339 -        *pixels = (void *) ((u8 *)txdat->vram + rect->y * txdat->dim.pitch
   2.340 -                            + rect->x * (txdat->dim.bpp/8));
   2.341 -        *pitch = txdat->dim.pitch;
   2.342 -printf("-NDS_LockTexture\n");
   2.343 -        return 0;
   2.344 -    }
   2.345 -}
   2.346 -
   2.347 -static void
   2.348 -NDS_UnlockTexture(SDL_Renderer * renderer, SDL_Texture * texture)
   2.349 -{
   2.350 -    if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
   2.351 -        SDL_SetError("Unsupported texture format");
   2.352 -    }
   2.353 -printf("+NDS_UnlockTexture\n-NDS_UnlockTexture\n");
   2.354 -}
   2.355 -
   2.356 -static void
   2.357 -NDS_DirtyTexture(SDL_Renderer * renderer, SDL_Texture * texture,
   2.358 -                int numrects, const SDL_Rect * rects)
   2.359 -{ /* stub */
   2.360 -printf("!NDS_DirtyTexture\n");
   2.361 -}
   2.362 -
   2.363 -static int
   2.364 -NDS_RenderFill(SDL_Renderer * renderer, Uint8 r, Uint8 g, Uint8 b,
   2.365 -                   Uint8 a, const SDL_Rect * rect)
   2.366 -{
   2.367 -    NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
   2.368 -    SDL_Rect real_rect = *rect;
   2.369 -    u16 color;
   2.370 -    int i, j;
   2.371 -
   2.372 -printf("+NDS_RenderFill\n");
   2.373 -    /* TODO: make a single-color sprite and stretch it.
   2.374 -    color = RGB15(r>>3,g>>3,b>>3);
   2.375 -    for (i = real_rect.x; i < real_rect.x+real_rect.w; ++i) {
   2.376 -        for (j = real_rect.y; j < real_rect.y+real_rect.h; ++j) {
   2.377 -            data->fb[(j + real_rect.y) * 256 + i + real_rect.x] = 
   2.378 -                0x8000 | color;
   2.379 -        }
   2.380 -    }*/
   2.381 -printf("-NDS_RenderFill\n");
   2.382 -    return 0;
   2.383 -}
   2.384 -
   2.385 -static int
   2.386 -NDS_RenderCopy(SDL_Renderer * renderer, SDL_Texture * texture,
   2.387 -                   const SDL_Rect * srcrect, const SDL_Rect * dstrect)
   2.388 -{
   2.389 -    NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
   2.390 -    NDS_TextureData *txdat = (NDS_TextureData *) texture->driverdata;
   2.391 -//    SDL_Window *window = SDL_GetWindowFromID(renderer->window);
   2.392 -//    SDL_VideoDisplay *display = SDL_GetDisplayFromWindow(window);
   2.393 -    int i;
   2.394 -printf("+NDS_RenderCopy\n");
   2.395 -    /*for(i = 0; i <= 0xFFFF; ++i) {
   2.396 -        txdat->vram[i] = 0x8000|i;
   2.397 -    }*/
   2.398 -    printf("/txdat->hw_index = %d\n", txdat->hw_index);
   2.399 -#if 0
   2.400 -    if (txdat->dirty.list) {
   2.401 -        SDL_DirtyRect *dirty;
   2.402 -        void *pixels;
   2.403 -        int bpp = SDL_BYTESPERPIXEL(texture->format);
   2.404 -        int pitch = txdat->pitch;
   2.405 -/* below was borrowed from SDL_renderer_gl.c.  doesn't work, obv.
   2.406 -   figure out how to get the graphics data into VRAM. */
   2.407 -
   2.408 -        for (dirty = txdat->dirty.list; dirty; dirty = dirty->next) {
   2.409 -            SDL_Rect *rect = &dirty->rect;
   2.410 -            /*pixels =
   2.411 -                (void *) ((Uint8 *) txdat->vram + rect->y * pitch +
   2.412 -                          rect->x * bpp);
   2.413 -            data->glTexSubImage2D(texturedata->type, 0, rect->x, rect->y,
   2.414 -                                  rect->w, rect->h, texturedata->format,
   2.415 -                                  texturedata->formattype, pixels);*/
   2.416 -        }
   2.417 -        SDL_ClearDirtyRects(&txdat->dirty);
   2.418 -    }
   2.419 -#endif
   2.420 -printf("-NDS_RenderCopy\n");
   2.421 -    return 0;
   2.422 -}
   2.423 -
   2.424 -
   2.425 -static void
   2.426 -NDS_RenderPresent(SDL_Renderer * renderer)
   2.427 -{
   2.428 -    NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
   2.429 -    /* Send the data to the display TODO */
   2.430 -
   2.431 -printf("+NDS_RenderPresent\n");
   2.432 -    /* Update the flipping chain, if any */
   2.433 -    if (renderer->info.flags & SDL_RENDERER_PRESENTVSYNC) {
   2.434 -        swiWaitForVBlank();
   2.435 -    }
   2.436 -printf("-NDS_RenderPresent\n");
   2.437 -}
   2.438 -
   2.439 -static void
   2.440 -NDS_DestroyTexture(SDL_Renderer * renderer, SDL_Texture * texture)
   2.441 -{
   2.442 -printf("+NDS_DestroyTexture\n");
   2.443 -    if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
   2.444 -        SDL_SetError("Unsupported texture format");
   2.445 -    } else {
   2.446 -        /* free anything else allocated for texture */
   2.447 -        NDS_TextureData *txdat = texture->driverdata;
   2.448 -        /*SDL_FreeDirtyRects(&txdat->dirty);*/
   2.449 -        SDL_free(txdat);
   2.450 -    }
   2.451 -printf("-NDS_DestroyTexture\n");
   2.452 -}
   2.453 -
   2.454 -static void
   2.455 -NDS_DestroyRenderer(SDL_Renderer * renderer)
   2.456 -{
   2.457 -    NDS_RenderData *data = (NDS_RenderData *) renderer->driverdata;
   2.458 -    /*SDL_Window *window = SDL_GetWindowFromID(renderer->window);
   2.459 -    SDL_VideoDisplay *display = SDL_GetDisplayFromWindow(window);*/
   2.460 -    int i;
   2.461 -
   2.462 -printf("+NDS_DestroyRenderer\n");
   2.463 -    if (data) {
   2.464 -        /* TODO: free anything relevant. */
   2.465 -        /*for (i = 0; i < SDL_arraysize(data->texture); ++i) {
   2.466 -            if (data->texture[i]) {
   2.467 -                DestroyTexture(data->renderer, data->texture[i]);
   2.468 -            }
   2.469 -        }
   2.470 -        if (data->surface.format) {
   2.471 -            SDL_SetSurfacePalette(&data->surface, NULL);
   2.472 -            SDL_FreeFormat(data->surface.format);
   2.473 -        }
   2.474 -        if (display->palette) {
   2.475 -            SDL_DelPaletteWatch(display->palette, DisplayPaletteChanged,
   2.476 -                                data);
   2.477 -        }
   2.478 -        SDL_FreeDirtyRects(&data->dirty);*/
   2.479 -        SDL_free(data);
   2.480 -    }
   2.481 -    SDL_free(renderer);
   2.482 -printf("-NDS_DestroyRenderer\n");
   2.483 -}
   2.484 -
   2.485  /* vi: set ts=4 sw=4 expandtab: */
     3.1 --- a/test/nds-test/Makefile	Mon Aug 11 04:39:24 2008 +0000
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,132 +0,0 @@
     3.4 -#---------------------------------------------------------------------------------
     3.5 -.SUFFIXES:
     3.6 -#---------------------------------------------------------------------------------
     3.7 -
     3.8 -ifeq ($(strip $(DEVKITARM)),)
     3.9 -$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
    3.10 -endif
    3.11 -
    3.12 -include $(DEVKITARM)/ds_rules
    3.13 -
    3.14 -#---------------------------------------------------------------------------------
    3.15 -# TARGET is the name of the output
    3.16 -# BUILD is the directory where object files & intermediate files will be placed
    3.17 -# SOURCES is a list of directories containing source code
    3.18 -# INCLUDES is a list of directories containing extra header files
    3.19 -#---------------------------------------------------------------------------------
    3.20 -TARGET		:=	$(shell basename $(CURDIR))
    3.21 -BUILD		:=	build
    3.22 -SOURCES		:=	source
    3.23 -DATA		:=	data  
    3.24 -INCLUDES	:=	include
    3.25 -
    3.26 -#---------------------------------------------------------------------------------
    3.27 -# options for code generation
    3.28 -#---------------------------------------------------------------------------------
    3.29 -ARCH	:=	-mthumb -mthumb-interwork
    3.30 -
    3.31 -# note: arm9tdmi isn't the correct CPU arch, but anything newer and LD
    3.32 -# *insists* it has a FPU or VFP, and it won't take no for an answer!
    3.33 -CFLAGS	:=	-save-temps -g -Wall -O0\
    3.34 - 			-mcpu=arm9tdmi -mtune=arm9tdmi \
    3.35 -			$(ARCH)
    3.36 -
    3.37 -CFLAGS	+=	$(INCLUDE) -DARM9 -D__NDS__
    3.38 -CXXFLAGS	:= $(CFLAGS) -fno-rtti -fno-exceptions -fno-exceptions -fno-rtti
    3.39 -
    3.40 -ASFLAGS	:=	-g $(ARCH)
    3.41 -LDFLAGS	=	-specs=ds_arm9.specs -g $(ARCH) -mno-fpu -Wl,-Map,$(notdir $*.map)
    3.42 -
    3.43 -#---------------------------------------------------------------------------------
    3.44 -# any extra libraries we wish to link with the project
    3.45 -#---------------------------------------------------------------------------------
    3.46 -LIBS	:= -lSDL -lfat -lnds9
    3.47 - 
    3.48 - 
    3.49 -#---------------------------------------------------------------------------------
    3.50 -# list of directories containing libraries, this must be the top level containing
    3.51 -# include and lib
    3.52 -#---------------------------------------------------------------------------------
    3.53 -LIBDIRS	:=	$(LIBNDS)
    3.54 - 
    3.55 -#---------------------------------------------------------------------------------
    3.56 -# no real need to edit anything past this point unless you need to add additional
    3.57 -# rules for different file extensions
    3.58 -#---------------------------------------------------------------------------------
    3.59 -ifneq ($(BUILD),$(notdir $(CURDIR)))
    3.60 -#---------------------------------------------------------------------------------
    3.61 - 
    3.62 -export OUTPUT	:=	$(CURDIR)/$(TARGET)
    3.63 - 
    3.64 -export VPATH	:=	$(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
    3.65 -					$(foreach dir,$(DATA),$(CURDIR)/$(dir))
    3.66 -
    3.67 -export DEPSDIR	:=	$(CURDIR)/$(BUILD)
    3.68 -
    3.69 -CFILES		:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
    3.70 -CPPFILES	:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
    3.71 -SFILES		:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
    3.72 -BINFILES	:=	$(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
    3.73 - 
    3.74 -#---------------------------------------------------------------------------------
    3.75 -# use CXX for linking C++ projects, CC for standard C
    3.76 -#---------------------------------------------------------------------------------
    3.77 -ifeq ($(strip $(CPPFILES)),)
    3.78 -#---------------------------------------------------------------------------------
    3.79 -	export LD	:=	$(CC)
    3.80 -#---------------------------------------------------------------------------------
    3.81 -else
    3.82 -#---------------------------------------------------------------------------------
    3.83 -	export LD	:=	$(CXX)
    3.84 -#---------------------------------------------------------------------------------
    3.85 -endif
    3.86 -#---------------------------------------------------------------------------------
    3.87 -
    3.88 -export OFILES	:=	$(addsuffix .o,$(BINFILES)) \
    3.89 -					$(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
    3.90 - 
    3.91 -export INCLUDE	:=	$(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
    3.92 -					$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
    3.93 -					$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
    3.94 -					-I$(CURDIR)/$(BUILD)
    3.95 - 
    3.96 -export LIBPATHS	:=	$(foreach dir,$(LIBDIRS),-L$(dir)/lib)
    3.97 - 
    3.98 -.PHONY: $(BUILD) clean
    3.99 - 
   3.100 -#---------------------------------------------------------------------------------
   3.101 -$(BUILD):
   3.102 -	@[ -d $@ ] || mkdir -p $@
   3.103 -	@make --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
   3.104 - 
   3.105 -#---------------------------------------------------------------------------------
   3.106 -clean:
   3.107 -	@echo clean ...
   3.108 -	@rm -fr $(BUILD) $(TARGET).elf $(TARGET).nds $(TARGET).arm9 $(TARGET).ds.gba 
   3.109 - 
   3.110 - 
   3.111 -#---------------------------------------------------------------------------------
   3.112 -else
   3.113 - 
   3.114 -DEPENDS	:=	$(OFILES:.o=.d)
   3.115 - 
   3.116 -#---------------------------------------------------------------------------------
   3.117 -# main targets
   3.118 -#---------------------------------------------------------------------------------
   3.119 -$(OUTPUT).ds.gba	: 	$(OUTPUT).nds
   3.120 -$(OUTPUT).nds	: 	$(OUTPUT).arm9
   3.121 -$(OUTPUT).arm9	:	$(OUTPUT).elf
   3.122 -$(OUTPUT).elf	:	$(OFILES)
   3.123 - 
   3.124 -#---------------------------------------------------------------------------------
   3.125 -%.pcx.o	:	%.pcx
   3.126 -#---------------------------------------------------------------------------------
   3.127 -	@echo $(notdir $<)
   3.128 -	@$(bin2o)
   3.129 - 
   3.130 - 
   3.131 --include $(DEPENDS)
   3.132 - 
   3.133 -#---------------------------------------------------------------------------------------
   3.134 -endif
   3.135 -#---------------------------------------------------------------------------------------
     4.1 --- a/test/nds-test/build/main.d	Mon Aug 11 04:39:24 2008 +0000
     4.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.3 @@ -1,172 +0,0 @@
     4.4 -main.o: /home/lifning/hack/nds-test/source/main.c \
     4.5 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h \
     4.6 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_main.h \
     4.7 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h \
     4.8 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config.h \
     4.9 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_platform.h \
    4.10 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config_nintendods.h \
    4.11 -  /home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h \
    4.12 -  /home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h \
    4.13 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h \
    4.14 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_error.h \
    4.15 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h \
    4.16 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mutex.h \
    4.17 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h \
    4.18 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h \
    4.19 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h \
    4.20 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cpuinfo.h \
    4.21 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h \
    4.22 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h \
    4.23 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h \
    4.24 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h \
    4.25 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h \
    4.26 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h \
    4.27 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keysym.h \
    4.28 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_scancode.h \
    4.29 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h \
    4.30 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h \
    4.31 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_quit.h \
    4.32 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_loadso.h \
    4.33 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h \
    4.34 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_version.h \
    4.35 -  /home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h \
    4.36 -  /home/lifning/hack/devkitPro/libnds/include/nds.h \
    4.37 -  /home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h \
    4.38 -  /home/lifning/hack/devkitPro/libnds/include/nds/bios.h \
    4.39 -  /home/lifning/hack/devkitPro/libnds/include/nds/card.h \
    4.40 -  /home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h \
    4.41 -  /home/lifning/hack/devkitPro/libnds/include/nds/dma.h \
    4.42 -  /home/lifning/hack/devkitPro/libnds/include/nds/interrupts.h \
    4.43 -  /home/lifning/hack/devkitPro/libnds/include/nds/ipc.h \
    4.44 -  /home/lifning/hack/devkitPro/libnds/include/nds/memory.h \
    4.45 -  /home/lifning/hack/devkitPro/libnds/include/nds/system.h \
    4.46 -  /home/lifning/hack/devkitPro/libnds/include/nds/timers.h \
    4.47 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/background.h \
    4.48 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h \
    4.49 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/video.h \
    4.50 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h \
    4.51 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/math.h \
    4.52 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/trig_lut.h \
    4.53 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/cache.h \
    4.54 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/console.h \
    4.55 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/exceptions.h \
    4.56 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/image.h \
    4.57 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/pcx.h \
    4.58 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/input.h \
    4.59 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/rumble.h \
    4.60 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/sound.h \
    4.61 -  /home/lifning/hack/devkitPro/libnds/include/nds/arm9/sprite.h
    4.62 -
    4.63 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h:
    4.64 -
    4.65 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_main.h:
    4.66 -
    4.67 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h:
    4.68 -
    4.69 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config.h:
    4.70 -
    4.71 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_platform.h:
    4.72 -
    4.73 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config_nintendods.h:
    4.74 -
    4.75 -/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h:
    4.76 -
    4.77 -/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h:
    4.78 -
    4.79 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h:
    4.80 -
    4.81 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_error.h:
    4.82 -
    4.83 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h:
    4.84 -
    4.85 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mutex.h:
    4.86 -
    4.87 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h:
    4.88 -
    4.89 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h:
    4.90 -
    4.91 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h:
    4.92 -
    4.93 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cpuinfo.h:
    4.94 -
    4.95 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h:
    4.96 -
    4.97 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h:
    4.98 -
    4.99 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h:
   4.100 -
   4.101 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h:
   4.102 -
   4.103 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h:
   4.104 -
   4.105 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h:
   4.106 -
   4.107 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keysym.h:
   4.108 -
   4.109 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_scancode.h:
   4.110 -
   4.111 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h:
   4.112 -
   4.113 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h:
   4.114 -
   4.115 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_quit.h:
   4.116 -
   4.117 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_loadso.h:
   4.118 -
   4.119 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h:
   4.120 -
   4.121 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_version.h:
   4.122 -
   4.123 -/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h:
   4.124 -
   4.125 -/home/lifning/hack/devkitPro/libnds/include/nds.h:
   4.126 -
   4.127 -/home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h:
   4.128 -
   4.129 -/home/lifning/hack/devkitPro/libnds/include/nds/bios.h:
   4.130 -
   4.131 -/home/lifning/hack/devkitPro/libnds/include/nds/card.h:
   4.132 -
   4.133 -/home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h:
   4.134 -
   4.135 -/home/lifning/hack/devkitPro/libnds/include/nds/dma.h:
   4.136 -
   4.137 -/home/lifning/hack/devkitPro/libnds/include/nds/interrupts.h:
   4.138 -
   4.139 -/home/lifning/hack/devkitPro/libnds/include/nds/ipc.h:
   4.140 -
   4.141 -/home/lifning/hack/devkitPro/libnds/include/nds/memory.h:
   4.142 -
   4.143 -/home/lifning/hack/devkitPro/libnds/include/nds/system.h:
   4.144 -
   4.145 -/home/lifning/hack/devkitPro/libnds/include/nds/timers.h:
   4.146 -
   4.147 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/background.h:
   4.148 -
   4.149 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h:
   4.150 -
   4.151 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/video.h:
   4.152 -
   4.153 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h:
   4.154 -
   4.155 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/math.h:
   4.156 -
   4.157 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/trig_lut.h:
   4.158 -
   4.159 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/cache.h:
   4.160 -
   4.161 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/console.h:
   4.162 -
   4.163 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/exceptions.h:
   4.164 -
   4.165 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/image.h:
   4.166 -
   4.167 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/pcx.h:
   4.168 -
   4.169 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/input.h:
   4.170 -
   4.171 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/rumble.h:
   4.172 -
   4.173 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/sound.h:
   4.174 -
   4.175 -/home/lifning/hack/devkitPro/libnds/include/nds/arm9/sprite.h:
     5.1 --- a/test/nds-test/build/main.i	Mon Aug 11 04:39:24 2008 +0000
     5.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.3 @@ -1,6568 +0,0 @@
     5.4 -# 1 "/home/lifning/hack/nds-test/source/main.c"
     5.5 -# 1 "/home/lifning/hack/nds-test/build//"
     5.6 -# 1 "<built-in>"
     5.7 -# 1 "<command-line>"
     5.8 -# 1 "/home/lifning/hack/nds-test/source/main.c"
     5.9 -
    5.10 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 1
    5.11 -# 77 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h"
    5.12 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_main.h" 1
    5.13 -# 26 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_main.h"
    5.14 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 1
    5.15 -# 32 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
    5.16 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config.h" 1
    5.17 -# 26 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config.h"
    5.18 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_platform.h" 1
    5.19 -# 27 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config.h" 2
    5.20 -
    5.21 -
    5.22 -
    5.23 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config_nintendods.h" 1
    5.24 -# 30 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config_nintendods.h"
    5.25 -typedef signed char int8_t;
    5.26 -typedef unsigned char uint8_t;
    5.27 -typedef signed short int16_t;
    5.28 -typedef unsigned short uint16_t;
    5.29 -typedef signed int int32_t;
    5.30 -typedef unsigned int uint32_t;
    5.31 -typedef signed long long int64_t;
    5.32 -typedef unsigned long long uint64_t;
    5.33 -
    5.34 -
    5.35 -
    5.36 -
    5.37 -
    5.38 -
    5.39 -typedef unsigned int uintptr_t;
    5.40 -# 31 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config.h" 2
    5.41 -# 33 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
    5.42 -
    5.43 -
    5.44 -
    5.45 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 1 3
    5.46 -# 20 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 3
    5.47 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/_ansi.h" 1 3
    5.48 -# 15 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/_ansi.h" 3
    5.49 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/newlib.h" 1 3
    5.50 -# 16 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/_ansi.h" 2 3
    5.51 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/config.h" 1 3
    5.52 -
    5.53 -
    5.54 -
    5.55 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/ieeefp.h" 1 3
    5.56 -# 5 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/config.h" 2 3
    5.57 -# 17 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/_ansi.h" 2 3
    5.58 -# 21 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 2 3
    5.59 -
    5.60 -
    5.61 -
    5.62 -
    5.63 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_types.h" 1 3
    5.64 -
    5.65 -
    5.66 -
    5.67 -
    5.68 -
    5.69 -
    5.70 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_default_types.h" 1 3
    5.71 -# 26 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_default_types.h" 3
    5.72 -typedef signed char __int8_t ;
    5.73 -typedef unsigned char __uint8_t ;
    5.74 -# 36 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_default_types.h" 3
    5.75 -typedef signed short __int16_t;
    5.76 -typedef unsigned short __uint16_t;
    5.77 -# 46 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_default_types.h" 3
    5.78 -typedef __int16_t __int_least16_t;
    5.79 -typedef __uint16_t __uint_least16_t;
    5.80 -# 58 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_default_types.h" 3
    5.81 -typedef signed int __int32_t;
    5.82 -typedef unsigned int __uint32_t;
    5.83 -# 76 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_default_types.h" 3
    5.84 -typedef __int32_t __int_least32_t;
    5.85 -typedef __uint32_t __uint_least32_t;
    5.86 -# 99 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_default_types.h" 3
    5.87 -typedef signed long long __int64_t;
    5.88 -typedef unsigned long long __uint64_t;
    5.89 -# 8 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/_types.h" 2 3
    5.90 -# 26 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 2 3
    5.91 -# 61 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 3
    5.92 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/_types.h" 1 3
    5.93 -# 13 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/_types.h" 3
    5.94 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/lock.h" 1 3
    5.95 -
    5.96 -
    5.97 -
    5.98 -
    5.99 -
   5.100 -typedef int _LOCK_T;
   5.101 -typedef int _LOCK_RECURSIVE_T;
   5.102 -# 14 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/_types.h" 2 3
   5.103 -
   5.104 -
   5.105 -typedef long _off_t;
   5.106 -
   5.107 -
   5.108 -
   5.109 -
   5.110 -
   5.111 -
   5.112 -
   5.113 -typedef short __dev_t;
   5.114 -
   5.115 -
   5.116 -
   5.117 -
   5.118 -typedef unsigned short __uid_t;
   5.119 -
   5.120 -
   5.121 -typedef unsigned short __gid_t;
   5.122 -
   5.123 -
   5.124 -
   5.125 -__extension__ typedef long long _off64_t;
   5.126 -
   5.127 -
   5.128 -
   5.129 -
   5.130 -
   5.131 -
   5.132 -
   5.133 -typedef long _fpos_t;
   5.134 -# 56 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/_types.h" 3
   5.135 -typedef int _ssize_t;
   5.136 -
   5.137 -
   5.138 -
   5.139 -
   5.140 -
   5.141 -
   5.142 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 1 3 4
   5.143 -# 355 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 3 4
   5.144 -typedef unsigned int wint_t;
   5.145 -# 64 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/_types.h" 2 3
   5.146 -
   5.147 -
   5.148 -
   5.149 -typedef struct
   5.150 -{
   5.151 -  int __count;
   5.152 -  union
   5.153 -  {
   5.154 -    wint_t __wch;
   5.155 -    unsigned char __wchb[4];
   5.156 -  } __value;
   5.157 -} _mbstate_t;
   5.158 -
   5.159 -
   5.160 -
   5.161 -typedef _LOCK_RECURSIVE_T _flock_t;
   5.162 -
   5.163 -
   5.164 -
   5.165 -
   5.166 -typedef void *_iconv_t;
   5.167 -# 62 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 2 3
   5.168 -
   5.169 -
   5.170 -
   5.171 -
   5.172 -
   5.173 -
   5.174 -
   5.175 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 1 3 4
   5.176 -# 152 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 3 4
   5.177 -typedef int ptrdiff_t;
   5.178 -# 214 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 3 4
   5.179 -typedef unsigned int size_t;
   5.180 -# 326 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 3 4
   5.181 -typedef unsigned int wchar_t;
   5.182 -# 70 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 2 3
   5.183 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/types.h" 1 3
   5.184 -# 19 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/types.h" 3
   5.185 -typedef long int __off_t;
   5.186 -typedef int __pid_t;
   5.187 -
   5.188 -__extension__ typedef long long int __loff_t;
   5.189 -# 71 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 2 3
   5.190 -# 92 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 3
   5.191 -typedef unsigned char u_char;
   5.192 -typedef unsigned short u_short;
   5.193 -typedef unsigned int u_int;
   5.194 -typedef unsigned long u_long;
   5.195 -
   5.196 -
   5.197 -
   5.198 -typedef unsigned short ushort;
   5.199 -typedef unsigned int uint;
   5.200 -
   5.201 -
   5.202 -
   5.203 -typedef unsigned long clock_t;
   5.204 -
   5.205 -
   5.206 -
   5.207 -
   5.208 -typedef long time_t;
   5.209 -
   5.210 -
   5.211 -
   5.212 -
   5.213 -struct timespec {
   5.214 -  time_t tv_sec;
   5.215 -  long tv_nsec;
   5.216 -};
   5.217 -
   5.218 -struct itimerspec {
   5.219 -  struct timespec it_interval;
   5.220 -  struct timespec it_value;
   5.221 -};
   5.222 -
   5.223 -
   5.224 -typedef long daddr_t;
   5.225 -typedef char * caddr_t;
   5.226 -
   5.227 -
   5.228 -
   5.229 -
   5.230 -
   5.231 -
   5.232 -typedef unsigned int ino_t;
   5.233 -# 162 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 3
   5.234 -typedef _off_t off_t;
   5.235 -typedef __dev_t dev_t;
   5.236 -typedef __uid_t uid_t;
   5.237 -typedef __gid_t gid_t;
   5.238 -
   5.239 -
   5.240 -typedef int pid_t;
   5.241 -
   5.242 -typedef long key_t;
   5.243 -
   5.244 -typedef _ssize_t ssize_t;
   5.245 -# 186 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 3
   5.246 -typedef unsigned int mode_t __attribute__ ((__mode__ (__SI__)));
   5.247 -
   5.248 -
   5.249 -
   5.250 -
   5.251 -typedef unsigned short nlink_t;
   5.252 -# 213 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 3
   5.253 -typedef long fd_mask;
   5.254 -
   5.255 -
   5.256 -
   5.257 -
   5.258 -
   5.259 -
   5.260 -
   5.261 -typedef struct _types_fd_set {
   5.262 - fd_mask fds_bits[(((64)+(((sizeof (fd_mask) * 8))-1))/((sizeof (fd_mask) * 8)))];
   5.263 -} _types_fd_set;
   5.264 -# 244 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 3
   5.265 -typedef unsigned long clockid_t;
   5.266 -
   5.267 -
   5.268 -
   5.269 -
   5.270 -typedef unsigned long timer_t;
   5.271 -
   5.272 -
   5.273 -
   5.274 -typedef unsigned long useconds_t;
   5.275 -typedef long suseconds_t;
   5.276 -
   5.277 -typedef __uint32_t fsblkcnt_t;
   5.278 -typedef __uint32_t fsfilcnt_t;
   5.279 -
   5.280 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/features.h" 1 3
   5.281 -# 260 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/types.h" 2 3
   5.282 -# 37 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
   5.283 -
   5.284 -
   5.285 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 1 3
   5.286 -# 29 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.287 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/_ansi.h" 1 3
   5.288 -# 30 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 2 3
   5.289 -
   5.290 -
   5.291 -
   5.292 -
   5.293 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 1 3 4
   5.294 -# 35 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 2 3
   5.295 -
   5.296 -
   5.297 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stdarg.h" 1 3 4
   5.298 -# 43 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stdarg.h" 3 4
   5.299 -typedef __builtin_va_list __gnuc_va_list;
   5.300 -# 38 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 2 3
   5.301 -
   5.302 -
   5.303 -
   5.304 -
   5.305 -
   5.306 -
   5.307 -
   5.308 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 1 3
   5.309 -# 21 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.310 -typedef unsigned long __ULong;
   5.311 -# 37 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.312 -struct _reent;
   5.313 -
   5.314 -
   5.315 -
   5.316 -
   5.317 -
   5.318 -
   5.319 -struct _Bigint
   5.320 -{
   5.321 -  struct _Bigint *_next;
   5.322 -  int _k, _maxwds, _sign, _wds;
   5.323 -  __ULong _x[1];
   5.324 -};
   5.325 -
   5.326 -
   5.327 -struct __tm
   5.328 -{
   5.329 -  int __tm_sec;
   5.330 -  int __tm_min;
   5.331 -  int __tm_hour;
   5.332 -  int __tm_mday;
   5.333 -  int __tm_mon;
   5.334 -  int __tm_year;
   5.335 -  int __tm_wday;
   5.336 -  int __tm_yday;
   5.337 -  int __tm_isdst;
   5.338 -};
   5.339 -
   5.340 -
   5.341 -
   5.342 -
   5.343 -
   5.344 -
   5.345 -
   5.346 -struct _on_exit_args {
   5.347 - void * _fnargs[32];
   5.348 - void * _dso_handle[32];
   5.349 -
   5.350 - __ULong _fntypes;
   5.351 -
   5.352 -
   5.353 - __ULong _is_cxa;
   5.354 -};
   5.355 -# 89 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.356 -struct _atexit {
   5.357 - struct _atexit *_next;
   5.358 - int _ind;
   5.359 -
   5.360 - void (*_fns[32])(void);
   5.361 -        struct _on_exit_args _on_exit_args;
   5.362 -};
   5.363 -# 105 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.364 -struct __sbuf {
   5.365 - unsigned char *_base;
   5.366 - int _size;
   5.367 -};
   5.368 -# 158 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.369 -struct __sFILE {
   5.370 -  unsigned char *_p;
   5.371 -  int _r;
   5.372 -  int _w;
   5.373 -  short _flags;
   5.374 -  short _file;
   5.375 -  struct __sbuf _bf;
   5.376 -  int _lbfsize;
   5.377 -
   5.378 -
   5.379 -
   5.380 -
   5.381 -
   5.382 -
   5.383 -  void * _cookie;
   5.384 -
   5.385 -  int (*_read) (struct _reent *, void *, char *, int);
   5.386 -
   5.387 -  int (*_write) (struct _reent *, void *, const char *, int);
   5.388 -
   5.389 -  _fpos_t (*_seek) (struct _reent *, void *, _fpos_t, int);
   5.390 -  int (*_close) (struct _reent *, void *);
   5.391 -
   5.392 -
   5.393 -  struct __sbuf _ub;
   5.394 -  unsigned char *_up;
   5.395 -  int _ur;
   5.396 -
   5.397 -
   5.398 -  unsigned char _ubuf[3];
   5.399 -  unsigned char _nbuf[1];
   5.400 -
   5.401 -
   5.402 -  struct __sbuf _lb;
   5.403 -
   5.404 -
   5.405 -  int _blksize;
   5.406 -  int _offset;
   5.407 -
   5.408 -
   5.409 -  struct _reent *_data;
   5.410 -
   5.411 -
   5.412 -
   5.413 -  _flock_t _lock;
   5.414 -
   5.415 -};
   5.416 -# 259 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.417 -typedef struct __sFILE __FILE;
   5.418 -
   5.419 -
   5.420 -
   5.421 -struct _glue
   5.422 -{
   5.423 -  struct _glue *_next;
   5.424 -  int _niobs;
   5.425 -  __FILE *_iobs;
   5.426 -};
   5.427 -# 291 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.428 -struct _rand48 {
   5.429 -  unsigned short _seed[3];
   5.430 -  unsigned short _mult[3];
   5.431 -  unsigned short _add;
   5.432 -
   5.433 -
   5.434 -
   5.435 -
   5.436 -};
   5.437 -# 564 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.438 -struct _reent
   5.439 -{
   5.440 -  int _errno;
   5.441 -
   5.442 -
   5.443 -
   5.444 -
   5.445 -  __FILE *_stdin, *_stdout, *_stderr;
   5.446 -
   5.447 -  int _inc;
   5.448 -  char _emergency[25];
   5.449 -
   5.450 -  int _current_category;
   5.451 -  const char *_current_locale;
   5.452 -
   5.453 -  int __sdidinit;
   5.454 -
   5.455 -  void (*__cleanup) (struct _reent *);
   5.456 -
   5.457 -
   5.458 -  struct _Bigint *_result;
   5.459 -  int _result_k;
   5.460 -  struct _Bigint *_p5s;
   5.461 -  struct _Bigint **_freelist;
   5.462 -
   5.463 -
   5.464 -  int _cvtlen;
   5.465 -  char *_cvtbuf;
   5.466 -
   5.467 -  union
   5.468 -    {
   5.469 -      struct
   5.470 -        {
   5.471 -          unsigned int _unused_rand;
   5.472 -          char * _strtok_last;
   5.473 -          char _asctime_buf[26];
   5.474 -          struct __tm _localtime_buf;
   5.475 -          int _gamma_signgam;
   5.476 -          __extension__ unsigned long long _rand_next;
   5.477 -          struct _rand48 _r48;
   5.478 -          _mbstate_t _mblen_state;
   5.479 -          _mbstate_t _mbtowc_state;
   5.480 -          _mbstate_t _wctomb_state;
   5.481 -          char _l64a_buf[8];
   5.482 -          char _signal_buf[24];
   5.483 -          int _getdate_err;
   5.484 -          _mbstate_t _mbrlen_state;
   5.485 -          _mbstate_t _mbrtowc_state;
   5.486 -          _mbstate_t _mbsrtowcs_state;
   5.487 -          _mbstate_t _wcrtomb_state;
   5.488 -          _mbstate_t _wcsrtombs_state;
   5.489 -        } _reent;
   5.490 -
   5.491 -
   5.492 -
   5.493 -      struct
   5.494 -        {
   5.495 -
   5.496 -          unsigned char * _nextf[30];
   5.497 -          unsigned int _nmalloc[30];
   5.498 -        } _unused;
   5.499 -    } _new;
   5.500 -
   5.501 -
   5.502 -  struct _atexit *_atexit;
   5.503 -  struct _atexit _atexit0;
   5.504 -
   5.505 -
   5.506 -  void (**(_sig_func))(int);
   5.507 -
   5.508 -
   5.509 -
   5.510 -
   5.511 -  struct _glue __sglue;
   5.512 -  __FILE __sf[3];
   5.513 -};
   5.514 -# 796 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/reent.h" 3
   5.515 -extern struct _reent *_impure_ptr ;
   5.516 -extern struct _reent *const _global_impure_ptr ;
   5.517 -
   5.518 -void _reclaim_reent (struct _reent *);
   5.519 -# 46 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 2 3
   5.520 -
   5.521 -
   5.522 -
   5.523 -
   5.524 -typedef __FILE FILE;
   5.525 -# 59 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.526 -typedef _fpos_t fpos_t;
   5.527 -
   5.528 -
   5.529 -
   5.530 -
   5.531 -
   5.532 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/stdio.h" 1 3
   5.533 -# 66 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 2 3
   5.534 -# 170 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.535 -FILE * tmpfile (void);
   5.536 -char * tmpnam (char *);
   5.537 -int fclose (FILE *);
   5.538 -int fflush (FILE *);
   5.539 -FILE * freopen (const char *, const char *, FILE *);
   5.540 -void setbuf (FILE *, char *);
   5.541 -int setvbuf (FILE *, char *, int, size_t);
   5.542 -int fprintf (FILE *, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.543 -
   5.544 -int fscanf (FILE *, const char *, ...) __attribute__ ((__format__ (__scanf__, 2, 3)));
   5.545 -
   5.546 -int printf (const char *, ...) __attribute__ ((__format__ (__printf__, 1, 2)));
   5.547 -
   5.548 -int scanf (const char *, ...) __attribute__ ((__format__ (__scanf__, 1, 2)));
   5.549 -
   5.550 -int sscanf (const char *, const char *, ...) __attribute__ ((__format__ (__scanf__, 2, 3)));
   5.551 -
   5.552 -int vfprintf (FILE *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.553 -
   5.554 -int vprintf (const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 1, 0)));
   5.555 -
   5.556 -int vsprintf (char *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.557 -
   5.558 -int fgetc (FILE *);
   5.559 -char * fgets (char *, int, FILE *);
   5.560 -int fputc (int, FILE *);
   5.561 -int fputs (const char *, FILE *);
   5.562 -int getc (FILE *);
   5.563 -int getchar (void);
   5.564 -char * gets (char *);
   5.565 -int putc (int, FILE *);
   5.566 -int putchar (int);
   5.567 -int puts (const char *);
   5.568 -int ungetc (int, FILE *);
   5.569 -size_t fread (void *, size_t _size, size_t _n, FILE *);
   5.570 -size_t fwrite (const void * , size_t _size, size_t _n, FILE *);
   5.571 -
   5.572 -
   5.573 -
   5.574 -int fgetpos (FILE *, fpos_t *);
   5.575 -
   5.576 -int fseek (FILE *, long, int);
   5.577 -
   5.578 -
   5.579 -
   5.580 -int fsetpos (FILE *, const fpos_t *);
   5.581 -
   5.582 -long ftell ( FILE *);
   5.583 -void rewind (FILE *);
   5.584 -void clearerr (FILE *);
   5.585 -int feof (FILE *);
   5.586 -int ferror (FILE *);
   5.587 -void perror (const char *);
   5.588 -
   5.589 -FILE * fopen (const char *_name, const char *_type);
   5.590 -int sprintf (char *, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.591 -
   5.592 -int remove (const char *);
   5.593 -int rename (const char *, const char *);
   5.594 -
   5.595 -
   5.596 -
   5.597 -
   5.598 -
   5.599 -
   5.600 -int fseeko (FILE *, off_t, int);
   5.601 -off_t ftello ( FILE *);
   5.602 -
   5.603 -
   5.604 -int asiprintf (char **, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.605 -
   5.606 -char * asniprintf (char *, size_t *, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.607 -
   5.608 -char * asnprintf (char *, size_t *, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.609 -
   5.610 -int asprintf (char **, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.611 -
   5.612 -
   5.613 -int diprintf (int, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.614 -
   5.615 -
   5.616 -int fcloseall (void);
   5.617 -int fiprintf (FILE *, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.618 -
   5.619 -int fiscanf (FILE *, const char *, ...) __attribute__ ((__format__ (__scanf__, 2, 3)));
   5.620 -
   5.621 -int iprintf (const char *, ...) __attribute__ ((__format__ (__printf__, 1, 2)));
   5.622 -
   5.623 -int iscanf (const char *, ...) __attribute__ ((__format__ (__scanf__, 1, 2)));
   5.624 -
   5.625 -int siprintf (char *, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.626 -
   5.627 -int siscanf (const char *, const char *, ...) __attribute__ ((__format__ (__scanf__, 2, 3)));
   5.628 -
   5.629 -int snprintf (char *, size_t, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.630 -
   5.631 -int sniprintf (char *, size_t, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.632 -
   5.633 -char * tempnam (const char *, const char *);
   5.634 -int vasiprintf (char **, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.635 -
   5.636 -char * vasniprintf (char *, size_t *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.637 -
   5.638 -char * vasnprintf (char *, size_t *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.639 -
   5.640 -int vasprintf (char **, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.641 -
   5.642 -int vdiprintf (int, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.643 -
   5.644 -int vfiprintf (FILE *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.645 -
   5.646 -int vfiscanf (FILE *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 2, 0)));
   5.647 -
   5.648 -int vfscanf (FILE *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 2, 0)));
   5.649 -
   5.650 -int viprintf (const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 1, 0)));
   5.651 -
   5.652 -int viscanf (const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 1, 0)));
   5.653 -
   5.654 -int vscanf (const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 1, 0)));
   5.655 -
   5.656 -int vsiprintf (char *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.657 -
   5.658 -int vsiscanf (const char *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 2, 0)));
   5.659 -
   5.660 -int vsniprintf (char *, size_t, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.661 -
   5.662 -int vsnprintf (char *, size_t, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.663 -
   5.664 -int vsscanf (const char *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 2, 0)));
   5.665 -# 310 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.666 -FILE * fdopen (int, const char *);
   5.667 -
   5.668 -int fileno (FILE *);
   5.669 -int getw (FILE *);
   5.670 -int pclose (FILE *);
   5.671 -FILE * popen (const char *, const char *);
   5.672 -int putw (int, FILE *);
   5.673 -void setbuffer (FILE *, char *, int);
   5.674 -int setlinebuf (FILE *);
   5.675 -int getc_unlocked (FILE *);
   5.676 -int getchar_unlocked (void);
   5.677 -void flockfile (FILE *);
   5.678 -int ftrylockfile (FILE *);
   5.679 -void funlockfile (FILE *);
   5.680 -int putc_unlocked (int, FILE *);
   5.681 -int putchar_unlocked (int);
   5.682 -# 335 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.683 -int dprintf (int, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.684 -
   5.685 -
   5.686 -FILE * fmemopen (void *, size_t, const char *);
   5.687 -
   5.688 -
   5.689 -FILE * open_memstream (char **, size_t *);
   5.690 -
   5.691 -int vdprintf (int, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.692 -# 352 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.693 -int _asiprintf_r (struct _reent *, char **, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.694 -
   5.695 -char * _asniprintf_r (struct _reent *, char *, size_t *, const char *, ...) __attribute__ ((__format__ (__printf__, 4, 5)));
   5.696 -
   5.697 -char * _asnprintf_r (struct _reent *, char *, size_t *, const char *, ...) __attribute__ ((__format__ (__printf__, 4, 5)));
   5.698 -
   5.699 -int _asprintf_r (struct _reent *, char **, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.700 -
   5.701 -int _diprintf_r (struct _reent *, int, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.702 -
   5.703 -int _dprintf_r (struct _reent *, int, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.704 -
   5.705 -int _fclose_r (struct _reent *, FILE *);
   5.706 -int _fcloseall_r (struct _reent *);
   5.707 -FILE * _fdopen_r (struct _reent *, int, const char *);
   5.708 -int _fflush_r (struct _reent *, FILE *);
   5.709 -char * _fgets_r (struct _reent *, char *, int, FILE *);
   5.710 -int _fiprintf_r (struct _reent *, FILE *, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.711 -
   5.712 -int _fiscanf_r (struct _reent *, FILE *, const char *, ...) __attribute__ ((__format__ (__scanf__, 3, 4)));
   5.713 -
   5.714 -FILE * _fmemopen_r (struct _reent *, void *, size_t, const char *);
   5.715 -FILE * _fopen_r (struct _reent *, const char *, const char *);
   5.716 -int _fprintf_r (struct _reent *, FILE *, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.717 -
   5.718 -int _fputc_r (struct _reent *, int, FILE *);
   5.719 -int _fputs_r (struct _reent *, const char *, FILE *);
   5.720 -size_t _fread_r (struct _reent *, void *, size_t _size, size_t _n, FILE *);
   5.721 -int _fscanf_r (struct _reent *, FILE *, const char *, ...) __attribute__ ((__format__ (__scanf__, 3, 4)));
   5.722 -
   5.723 -int _fseek_r (struct _reent *, FILE *, long, int);
   5.724 -long _ftell_r (struct _reent *, FILE *);
   5.725 -size_t _fwrite_r (struct _reent *, const void * , size_t _size, size_t _n, FILE *);
   5.726 -int _getc_r (struct _reent *, FILE *);
   5.727 -int _getc_unlocked_r (struct _reent *, FILE *);
   5.728 -int _getchar_r (struct _reent *);
   5.729 -int _getchar_unlocked_r (struct _reent *);
   5.730 -char * _gets_r (struct _reent *, char *);
   5.731 -int _iprintf_r (struct _reent *, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.732 -
   5.733 -int _iscanf_r (struct _reent *, const char *, ...) __attribute__ ((__format__ (__scanf__, 2, 3)));
   5.734 -
   5.735 -int _mkstemp_r (struct _reent *, char *);
   5.736 -char * _mktemp_r (struct _reent *, char *);
   5.737 -FILE * _open_memstream_r (struct _reent *, char **, size_t *);
   5.738 -void _perror_r (struct _reent *, const char *);
   5.739 -int _printf_r (struct _reent *, const char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
   5.740 -
   5.741 -int _putc_r (struct _reent *, int, FILE *);
   5.742 -int _putc_unlocked_r (struct _reent *, int, FILE *);
   5.743 -int _putchar_unlocked_r (struct _reent *, int);
   5.744 -int _putchar_r (struct _reent *, int);
   5.745 -int _puts_r (struct _reent *, const char *);
   5.746 -int _remove_r (struct _reent *, const char *);
   5.747 -int _rename_r (struct _reent *, const char *_old, const char *_new);
   5.748 -
   5.749 -int _scanf_r (struct _reent *, const char *, ...) __attribute__ ((__format__ (__scanf__, 2, 3)));
   5.750 -
   5.751 -int _siprintf_r (struct _reent *, char *, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.752 -
   5.753 -int _siscanf_r (struct _reent *, const char *, const char *, ...) __attribute__ ((__format__ (__scanf__, 3, 4)));
   5.754 -
   5.755 -int _sniprintf_r (struct _reent *, char *, size_t, const char *, ...) __attribute__ ((__format__ (__printf__, 4, 5)));
   5.756 -
   5.757 -int _snprintf_r (struct _reent *, char *, size_t, const char *, ...) __attribute__ ((__format__ (__printf__, 4, 5)));
   5.758 -
   5.759 -int _sprintf_r (struct _reent *, char *, const char *, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
   5.760 -
   5.761 -int _sscanf_r (struct _reent *, const char *, const char *, ...) __attribute__ ((__format__ (__scanf__, 3, 4)));
   5.762 -
   5.763 -char * _tempnam_r (struct _reent *, const char *, const char *);
   5.764 -FILE * _tmpfile_r (struct _reent *);
   5.765 -char * _tmpnam_r (struct _reent *, char *);
   5.766 -int _ungetc_r (struct _reent *, int, FILE *);
   5.767 -int _vasiprintf_r (struct _reent *, char **, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.768 -
   5.769 -char * _vasniprintf_r (struct _reent*, char *, size_t *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 4, 0)));
   5.770 -
   5.771 -char * _vasnprintf_r (struct _reent*, char *, size_t *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 4, 0)));
   5.772 -
   5.773 -int _vasprintf_r (struct _reent *, char **, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.774 -
   5.775 -int _vdiprintf_r (struct _reent *, int, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.776 -
   5.777 -int _vdprintf_r (struct _reent *, int, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.778 -
   5.779 -int _vfiprintf_r (struct _reent *, FILE *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.780 -
   5.781 -int _vfiscanf_r (struct _reent *, FILE *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 3, 0)));
   5.782 -
   5.783 -int _vfprintf_r (struct _reent *, FILE *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.784 -
   5.785 -int _vfscanf_r (struct _reent *, FILE *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 3, 0)));
   5.786 -
   5.787 -int _viprintf_r (struct _reent *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.788 -
   5.789 -int _viscanf_r (struct _reent *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 2, 0)));
   5.790 -
   5.791 -int _vprintf_r (struct _reent *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 2, 0)));
   5.792 -
   5.793 -int _vscanf_r (struct _reent *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 2, 0)));
   5.794 -
   5.795 -int _vsiprintf_r (struct _reent *, char *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.796 -
   5.797 -int _vsiscanf_r (struct _reent *, const char *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 3, 0)));
   5.798 -
   5.799 -int _vsniprintf_r (struct _reent *, char *, size_t, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 4, 0)));
   5.800 -
   5.801 -int _vsnprintf_r (struct _reent *, char *, size_t, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 4, 0)));
   5.802 -
   5.803 -int _vsprintf_r (struct _reent *, char *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__printf__, 3, 0)));
   5.804 -
   5.805 -int _vsscanf_r (struct _reent *, const char *, const char *, __gnuc_va_list) __attribute__ ((__format__ (__scanf__, 3, 0)));
   5.806 -
   5.807 -
   5.808 -ssize_t __getdelim (char **, size_t *, int, FILE *);
   5.809 -ssize_t __getline (char **, size_t *, FILE *);
   5.810 -# 494 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.811 -int __srget_r (struct _reent *, FILE *);
   5.812 -int __swbuf_r (struct _reent *, int, FILE *);
   5.813 -# 509 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.814 -FILE *funopen (const void * __cookie, int (*__readfn)(void * __cookie, char *__buf, int __n), int (*__writefn)(void * __cookie, const char *__buf, int __n), fpos_t (*__seekfn)(void * __cookie, fpos_t __off, int __whence), int (*__closefn)(void * __cookie));
   5.815 -# 521 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.816 -typedef ssize_t cookie_read_function_t(void *__cookie, char *__buf, size_t __n);
   5.817 -typedef ssize_t cookie_write_function_t(void *__cookie, const char *__buf,
   5.818 -     size_t __n);
   5.819 -
   5.820 -
   5.821 -
   5.822 -
   5.823 -typedef int cookie_seek_function_t(void *__cookie, off_t *__off, int __whence);
   5.824 -
   5.825 -typedef int cookie_close_function_t(void *__cookie);
   5.826 -typedef struct
   5.827 -{
   5.828 -
   5.829 -
   5.830 -  cookie_read_function_t *read;
   5.831 -  cookie_write_function_t *write;
   5.832 -  cookie_seek_function_t *seek;
   5.833 -  cookie_close_function_t *close;
   5.834 -} cookie_io_functions_t;
   5.835 -FILE *fopencookie (void *__cookie, const char *__mode, cookie_io_functions_t __functions);
   5.836 -# 669 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdio.h" 3
   5.837 -
   5.838 -# 40 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
   5.839 -
   5.840 -
   5.841 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdlib.h" 1 3
   5.842 -# 14 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdlib.h" 3
   5.843 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 1 3 4
   5.844 -# 15 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdlib.h" 2 3
   5.845 -
   5.846 -
   5.847 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/machine/stdlib.h" 1 3
   5.848 -# 18 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdlib.h" 2 3
   5.849 -
   5.850 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/alloca.h" 1 3
   5.851 -# 20 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdlib.h" 2 3
   5.852 -
   5.853 -
   5.854 -
   5.855 -
   5.856 -
   5.857 -
   5.858 -
   5.859 -
   5.860 -typedef struct
   5.861 -{
   5.862 -  int quot;
   5.863 -  int rem;
   5.864 -} div_t;
   5.865 -
   5.866 -typedef struct
   5.867 -{
   5.868 -  long quot;
   5.869 -  long rem;
   5.870 -} ldiv_t;
   5.871 -
   5.872 -
   5.873 -typedef struct
   5.874 -{
   5.875 -  long long int quot;
   5.876 -  long long int rem;
   5.877 -} lldiv_t;
   5.878 -# 57 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdlib.h" 3
   5.879 -extern int __mb_cur_max;
   5.880 -
   5.881 -
   5.882 -
   5.883 -void abort (void) __attribute__ ((noreturn));
   5.884 -int abs (int);
   5.885 -int atexit (void (*__func)(void));
   5.886 -double atof (const char *__nptr);
   5.887 -
   5.888 -float atoff (const char *__nptr);
   5.889 -
   5.890 -int atoi (const char *__nptr);
   5.891 -int _atoi_r (struct _reent *, const char *__nptr);
   5.892 -long atol (const char *__nptr);
   5.893 -long _atol_r (struct _reent *, const char *__nptr);
   5.894 -void * bsearch (const void * __key, const void * __base, size_t __nmemb, size_t __size, int (* _compar) (const void *, const void *));
   5.895 -
   5.896 -
   5.897 -
   5.898 -
   5.899 -void * calloc (size_t __nmemb, size_t __size);
   5.900 -div_t div (int __numer, int __denom);
   5.901 -void exit (int __status) __attribute__ ((noreturn));
   5.902 -void free (void *);
   5.903 -char * getenv (const char *__string);
   5.904 -char * _getenv_r (struct _reent *, const char *__string);
   5.905 -char * _findenv (const char *, int *);
   5.906 -char * _findenv_r (struct _reent *, const char *, int *);
   5.907 -long labs (long);
   5.908 -ldiv_t ldiv (long __numer, long __denom);
   5.909 -void * malloc (size_t __size);
   5.910 -int mblen (const char *, size_t);
   5.911 -int _mblen_r (struct _reent *, const char *, size_t, _mbstate_t *);
   5.912 -int mbtowc (wchar_t *, const char *, size_t);
   5.913 -int _mbtowc_r (struct _reent *, wchar_t *, const char *, size_t, _mbstate_t *);
   5.914 -int wctomb (char *, wchar_t);
   5.915 -int _wctomb_r (struct _reent *, char *, wchar_t, _mbstate_t *);
   5.916 -size_t mbstowcs (wchar_t *, const char *, size_t);
   5.917 -size_t _mbstowcs_r (struct _reent *, wchar_t *, const char *, size_t, _mbstate_t *);
   5.918 -size_t wcstombs (char *, const wchar_t *, size_t);
   5.919 -size_t _wcstombs_r (struct _reent *, char *, const wchar_t *, size_t, _mbstate_t *);
   5.920 -
   5.921 -
   5.922 -int mkstemp (char *);
   5.923 -char * mktemp (char *);
   5.924 -
   5.925 -
   5.926 -void qsort (void * __base, size_t __nmemb, size_t __size, int(*_compar)(const void *, const void *));
   5.927 -int rand (void);
   5.928 -void * realloc (void * __r, size_t __size);
   5.929 -void srand (unsigned __seed);
   5.930 -double strtod (const char *__n, char **__end_PTR);
   5.931 -double _strtod_r (struct _reent *,const char *__n, char **__end_PTR);
   5.932 -float strtof (const char *__n, char **__end_PTR);
   5.933 -
   5.934 -
   5.935 -
   5.936 -
   5.937 -
   5.938 -
   5.939 -long strtol (const char *__n, char **__end_PTR, int __base);
   5.940 -long _strtol_r (struct _reent *,const char *__n, char **__end_PTR, int __base);
   5.941 -unsigned long strtoul (const char *__n, char **__end_PTR, int __base);
   5.942 -unsigned long _strtoul_r (struct _reent *,const char *__n, char **__end_PTR, int __base);
   5.943 -
   5.944 -int system (const char *__string);
   5.945 -
   5.946 -
   5.947 -long a64l (const char *__input);
   5.948 -char * l64a (long __input);
   5.949 -char * _l64a_r (struct _reent *,long __input);
   5.950 -int on_exit (void (*__func)(int, void *),void * __arg);
   5.951 -void _Exit (int __status) __attribute__ ((noreturn));
   5.952 -int putenv (char *__string);
   5.953 -int _putenv_r (struct _reent *, char *__string);
   5.954 -int setenv (const char *__string, const char *__value, int __overwrite);
   5.955 -int _setenv_r (struct _reent *, const char *__string, const char *__value, int __overwrite);
   5.956 -
   5.957 -char * gcvt (double,int,char *);
   5.958 -char * gcvtf (float,int,char *);
   5.959 -char * fcvt (double,int,int *,int *);
   5.960 -char * fcvtf (float,int,int *,int *);
   5.961 -char * ecvt (double,int,int *,int *);
   5.962 -char * ecvtbuf (double, int, int*, int*, char *);
   5.963 -char * fcvtbuf (double, int, int*, int*, char *);
   5.964 -char * ecvtf (float,int,int *,int *);
   5.965 -char * dtoa (double, int, int, int *, int*, char**);
   5.966 -int rand_r (unsigned *__seed);
   5.967 -
   5.968 -double drand48 (void);
   5.969 -double _drand48_r (struct _reent *);
   5.970 -double erand48 (unsigned short [3]);
   5.971 -double _erand48_r (struct _reent *, unsigned short [3]);
   5.972 -long jrand48 (unsigned short [3]);
   5.973 -long _jrand48_r (struct _reent *, unsigned short [3]);
   5.974 -void lcong48 (unsigned short [7]);
   5.975 -void _lcong48_r (struct _reent *, unsigned short [7]);
   5.976 -long lrand48 (void);
   5.977 -long _lrand48_r (struct _reent *);
   5.978 -long mrand48 (void);
   5.979 -long _mrand48_r (struct _reent *);
   5.980 -long nrand48 (unsigned short [3]);
   5.981 -long _nrand48_r (struct _reent *, unsigned short [3]);
   5.982 -unsigned short *
   5.983 -       seed48 (unsigned short [3]);
   5.984 -unsigned short *
   5.985 -       _seed48_r (struct _reent *, unsigned short [3]);
   5.986 -void srand48 (long);
   5.987 -void _srand48_r (struct _reent *, long);
   5.988 -long long atoll (const char *__nptr);
   5.989 -long long _atoll_r (struct _reent *, const char *__nptr);
   5.990 -long long llabs (long long);
   5.991 -lldiv_t lldiv (long long __numer, long long __denom);
   5.992 -long long strtoll (const char *__n, char **__end_PTR, int __base);
   5.993 -long long _strtoll_r (struct _reent *, const char *__n, char **__end_PTR, int __base);
   5.994 -unsigned long long strtoull (const char *__n, char **__end_PTR, int __base);
   5.995 -unsigned long long _strtoull_r (struct _reent *, const char *__n, char **__end_PTR, int __base);
   5.996 -
   5.997 -
   5.998 -void cfree (void *);
   5.999 -void unsetenv (const char *__string);
  5.1000 -void _unsetenv_r (struct _reent *, const char *__string);
  5.1001 -
  5.1002 -
  5.1003 -
  5.1004 -
  5.1005 -char * _dtoa_r (struct _reent *, double, int, int, int *, int*, char**);
  5.1006 -
  5.1007 -void * _malloc_r (struct _reent *, size_t);
  5.1008 -void * _calloc_r (struct _reent *, size_t, size_t);
  5.1009 -void _free_r (struct _reent *, void *);
  5.1010 -void * _realloc_r (struct _reent *, void *, size_t);
  5.1011 -void _mstats_r (struct _reent *, char *);
  5.1012 -
  5.1013 -int _system_r (struct _reent *, const char *);
  5.1014 -
  5.1015 -void __eprintf (const char *, const char *, unsigned int, const char *);
  5.1016 -
  5.1017 -
  5.1018 -# 43 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
  5.1019 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 1 3 4
  5.1020 -# 44 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
  5.1021 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stdarg.h" 1 3 4
  5.1022 -# 105 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stdarg.h" 3 4
  5.1023 -typedef __gnuc_va_list va_list;
  5.1024 -# 45 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
  5.1025 -# 62 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1026 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/string.h" 1 3
  5.1027 -# 14 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/string.h" 3
  5.1028 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/include/stddef.h" 1 3 4
  5.1029 -# 15 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/string.h" 2 3
  5.1030 -
  5.1031 -
  5.1032 -
  5.1033 -
  5.1034 -
  5.1035 -
  5.1036 -
  5.1037 -void * memchr (const void *, int, size_t);
  5.1038 -int memcmp (const void *, const void *, size_t);
  5.1039 -void * memcpy (void *, const void *, size_t);
  5.1040 -void * memmove (void *, const void *, size_t);
  5.1041 -void * memset (void *, int, size_t);
  5.1042 -char *strcat (char *, const char *);
  5.1043 -char *strchr (const char *, int);
  5.1044 -int strcmp (const char *, const char *);
  5.1045 -int strcoll (const char *, const char *);
  5.1046 -char *strcpy (char *, const char *);
  5.1047 -size_t strcspn (const char *, const char *);
  5.1048 -char *strerror (int);
  5.1049 -size_t strlen (const char *);
  5.1050 -char *strncat (char *, const char *, size_t);
  5.1051 -int strncmp (const char *, const char *, size_t);
  5.1052 -char *strncpy (char *, const char *, size_t);
  5.1053 -char *strpbrk (const char *, const char *);
  5.1054 -char *strrchr (const char *, int);
  5.1055 -size_t strspn (const char *, const char *);
  5.1056 -char *strstr (const char *, const char *);
  5.1057 -
  5.1058 -
  5.1059 -char *strtok (char *, const char *);
  5.1060 -
  5.1061 -
  5.1062 -size_t strxfrm (char *, const char *, size_t);
  5.1063 -
  5.1064 -
  5.1065 -char *strtok_r (char *, const char *, char **);
  5.1066 -
  5.1067 -int bcmp (const void *, const void *, size_t);
  5.1068 -void bcopy (const void *, void *, size_t);
  5.1069 -void bzero (void *, size_t);
  5.1070 -int ffs (int);
  5.1071 -char *index (const char *, int);
  5.1072 -void * memccpy (void *, const void *, int, size_t);
  5.1073 -void * mempcpy (void *, const void *, size_t);
  5.1074 -
  5.1075 -
  5.1076 -
  5.1077 -char *rindex (const char *, int);
  5.1078 -char *stpcpy (char *, const char *);
  5.1079 -char *stpncpy (char *, const char *, size_t);
  5.1080 -int strcasecmp (const char *, const char *);
  5.1081 -char *strcasestr (const char *, const char *);
  5.1082 -char *strdup (const char *);
  5.1083 -char *_strdup_r (struct _reent *, const char *);
  5.1084 -char *strndup (const char *, size_t);
  5.1085 -char *_strndup_r (struct _reent *, const char *, size_t);
  5.1086 -char *strerror_r (int, char *, size_t);
  5.1087 -size_t strlcat (char *, const char *, size_t);
  5.1088 -size_t strlcpy (char *, const char *, size_t);
  5.1089 -int strncasecmp (const char *, const char *, size_t);
  5.1090 -size_t strnlen (const char *, size_t);
  5.1091 -char *strsep (char **, const char *);
  5.1092 -char *strlwr (char *);
  5.1093 -char *strupr (char *);
  5.1094 -# 102 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/string.h" 3
  5.1095 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/sys/string.h" 1 3
  5.1096 -# 103 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/string.h" 2 3
  5.1097 -
  5.1098 -
  5.1099 -# 63 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
  5.1100 -# 73 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1101 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/ctype.h" 1 3
  5.1102 -
  5.1103 -
  5.1104 -
  5.1105 -
  5.1106 -
  5.1107 -
  5.1108 -
  5.1109 -int isalnum (int __c);
  5.1110 -int isalpha (int __c);
  5.1111 -int iscntrl (int __c);
  5.1112 -int isdigit (int __c);
  5.1113 -int isgraph (int __c);
  5.1114 -int islower (int __c);
  5.1115 -int isprint (int __c);
  5.1116 -int ispunct (int __c);
  5.1117 -int isspace (int __c);
  5.1118 -int isupper (int __c);
  5.1119 -int isxdigit (int __c);
  5.1120 -int tolower (int __c);
  5.1121 -int toupper (int __c);
  5.1122 -
  5.1123 -
  5.1124 -int isblank (int __c);
  5.1125 -int isascii (int __c);
  5.1126 -int toascii (int __c);
  5.1127 -int _tolower (int __c);
  5.1128 -int _toupper (int __c);
  5.1129 -# 39 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/ctype.h" 3
  5.1130 -extern const char *__ctype_ptr;
  5.1131 -extern const char _ctype_[];
  5.1132 -# 71 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/ctype.h" 3
  5.1133 -
  5.1134 -# 74 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
  5.1135 -# 84 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1136 -typedef enum SDL_bool
  5.1137 -{
  5.1138 -    SDL_FALSE = 0,
  5.1139 -    SDL_TRUE = 1
  5.1140 -} SDL_bool;
  5.1141 -
  5.1142 -
  5.1143 -
  5.1144 -
  5.1145 -
  5.1146 -typedef int8_t Sint8;
  5.1147 -
  5.1148 -
  5.1149 -
  5.1150 -
  5.1151 -typedef uint8_t Uint8;
  5.1152 -
  5.1153 -
  5.1154 -
  5.1155 -
  5.1156 -typedef int16_t Sint16;
  5.1157 -
  5.1158 -
  5.1159 -
  5.1160 -
  5.1161 -typedef uint16_t Uint16;
  5.1162 -
  5.1163 -
  5.1164 -
  5.1165 -
  5.1166 -typedef int32_t Sint32;
  5.1167 -
  5.1168 -
  5.1169 -
  5.1170 -
  5.1171 -typedef uint32_t Uint32;
  5.1172 -
  5.1173 -
  5.1174 -
  5.1175 -
  5.1176 -
  5.1177 -
  5.1178 -
  5.1179 -typedef int64_t Sint64;
  5.1180 -
  5.1181 -
  5.1182 -
  5.1183 -
  5.1184 -
  5.1185 -typedef uint64_t Uint64;
  5.1186 -# 144 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1187 -typedef int SDL_dummy_uint8[(sizeof(Uint8) == 1) * 2 - 1];
  5.1188 -typedef int SDL_dummy_sint8[(sizeof(Sint8) == 1) * 2 - 1];
  5.1189 -typedef int SDL_dummy_uint16[(sizeof(Uint16) == 2) * 2 - 1];
  5.1190 -typedef int SDL_dummy_sint16[(sizeof(Sint16) == 2) * 2 - 1];
  5.1191 -typedef int SDL_dummy_uint32[(sizeof(Uint32) == 4) * 2 - 1];
  5.1192 -typedef int SDL_dummy_sint32[(sizeof(Sint32) == 4) * 2 - 1];
  5.1193 -# 179 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1194 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1195 -# 180 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
  5.1196 -# 399 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1197 -extern __attribute__ ((visibility("default"))) void * SDL_revcpy(void *dst, const void *src,
  5.1198 -                                         size_t len);
  5.1199 -# 437 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1200 -extern __attribute__ ((visibility("default"))) size_t SDL_wcslen(const short * string);
  5.1201 -
  5.1202 -
  5.1203 -
  5.1204 -
  5.1205 -
  5.1206 -extern __attribute__ ((visibility("default"))) size_t SDL_strlcpy(char *dst, const char *src,
  5.1207 -                                           size_t maxlen);
  5.1208 -
  5.1209 -
  5.1210 -
  5.1211 -
  5.1212 -
  5.1213 -extern __attribute__ ((visibility("default"))) size_t SDL_strlcat(char *dst, const char *src,
  5.1214 -                                           size_t maxlen);
  5.1215 -# 463 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1216 -extern __attribute__ ((visibility("default"))) char * SDL_strrev(char *string);
  5.1217 -
  5.1218 -
  5.1219 -
  5.1220 -
  5.1221 -
  5.1222 -extern __attribute__ ((visibility("default"))) char * SDL_strupr(char *string);
  5.1223 -
  5.1224 -
  5.1225 -
  5.1226 -
  5.1227 -
  5.1228 -extern __attribute__ ((visibility("default"))) char * SDL_strlwr(char *string);
  5.1229 -# 510 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1230 -extern __attribute__ ((visibility("default"))) char * SDL_ltoa(long value, char *string, int radix);
  5.1231 -# 522 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1232 -extern __attribute__ ((visibility("default"))) char * SDL_ultoa(unsigned long value, char *string,
  5.1233 -                                        int radix);
  5.1234 -# 536 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1235 -extern __attribute__ ((visibility("default"))) unsigned long SDL_strtoul(const char *string,
  5.1236 -                                                  char **endp, int base);
  5.1237 -
  5.1238 -
  5.1239 -
  5.1240 -
  5.1241 -
  5.1242 -
  5.1243 -
  5.1244 -extern __attribute__ ((visibility("default"))) char * SDL_lltoa(Sint64 value, char *string,
  5.1245 -                                        int radix);
  5.1246 -
  5.1247 -
  5.1248 -
  5.1249 -
  5.1250 -
  5.1251 -extern __attribute__ ((visibility("default"))) char * SDL_ulltoa(Uint64 value, char *string,
  5.1252 -                                         int radix);
  5.1253 -
  5.1254 -
  5.1255 -
  5.1256 -
  5.1257 -
  5.1258 -extern __attribute__ ((visibility("default"))) Sint64 SDL_strtoll(const char *string, char **endp,
  5.1259 -                                           int base);
  5.1260 -
  5.1261 -
  5.1262 -
  5.1263 -
  5.1264 -
  5.1265 -extern __attribute__ ((visibility("default"))) Uint64 SDL_strtoull(const char *string, char **endp,
  5.1266 -                                            int base);
  5.1267 -# 617 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1268 -extern __attribute__ ((visibility("default"))) int SDL_strncasecmp(const char *str1,
  5.1269 -                                            const char *str2, size_t maxlen);
  5.1270 -# 653 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1271 -typedef struct _SDL_iconv_t *SDL_iconv_t;
  5.1272 -extern __attribute__ ((visibility("default"))) SDL_iconv_t SDL_iconv_open(const char *tocode,
  5.1273 -                                                   const char *fromcode);
  5.1274 -extern __attribute__ ((visibility("default"))) int SDL_iconv_close(SDL_iconv_t cd);
  5.1275 -
  5.1276 -extern __attribute__ ((visibility("default"))) size_t SDL_iconv(SDL_iconv_t cd, const char **inbuf,
  5.1277 -                                         size_t * inbytesleft, char **outbuf,
  5.1278 -                                         size_t * outbytesleft);
  5.1279 -
  5.1280 -
  5.1281 -
  5.1282 -extern __attribute__ ((visibility("default"))) char * SDL_iconv_string(const char *tocode,
  5.1283 -                                               const char *fromcode,
  5.1284 -                                               const char *inbuf,
  5.1285 -                                               size_t inbytesleft);
  5.1286 -# 678 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
  5.1287 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1288 -# 679 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h" 2
  5.1289 -# 27 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_main.h" 2
  5.1290 -# 78 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.1291 -
  5.1292 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h" 1
  5.1293 -# 33 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1294 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_error.h" 1
  5.1295 -# 33 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_error.h"
  5.1296 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1297 -# 34 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_error.h" 2
  5.1298 -# 42 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_error.h"
  5.1299 -extern __attribute__ ((visibility("default"))) void SDL_SetError(const char *fmt, ...);
  5.1300 -extern __attribute__ ((visibility("default"))) char * SDL_GetError(void);
  5.1301 -extern __attribute__ ((visibility("default"))) void SDL_ClearError(void);
  5.1302 -
  5.1303 -
  5.1304 -
  5.1305 -
  5.1306 -typedef enum
  5.1307 -{
  5.1308 -    SDL_ENOMEM,
  5.1309 -    SDL_EFREAD,
  5.1310 -    SDL_EFWRITE,
  5.1311 -    SDL_EFSEEK,
  5.1312 -    SDL_UNSUPPORTED,
  5.1313 -    SDL_LASTERROR
  5.1314 -} SDL_errorcode;
  5.1315 -extern __attribute__ ((visibility("default"))) void SDL_Error(SDL_errorcode code);
  5.1316 -# 67 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_error.h"
  5.1317 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1318 -# 68 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_error.h" 2
  5.1319 -# 34 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h" 2
  5.1320 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h" 1
  5.1321 -# 51 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h"
  5.1322 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1323 -# 52 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h" 2
  5.1324 -# 96 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h"
  5.1325 -static __inline__ Uint16
  5.1326 -SDL_Swap16(Uint16 x)
  5.1327 -{
  5.1328 -    return ((x << 8) | (x >> 8));
  5.1329 -}
  5.1330 -# 136 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h"
  5.1331 -static __inline__ Uint32
  5.1332 -SDL_Swap32(Uint32 x)
  5.1333 -{
  5.1334 -    return ((x << 24) | ((x << 8) & 0x00FF0000) | ((x >> 8) & 0x0000FF00) |
  5.1335 -            (x >> 24));
  5.1336 -}
  5.1337 -# 171 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h"
  5.1338 -static __inline__ Uint64
  5.1339 -SDL_Swap64(Uint64 x)
  5.1340 -{
  5.1341 -    Uint32 hi, lo;
  5.1342 -
  5.1343 -
  5.1344 -    lo = (Uint32) (x & 0xFFFFFFFF);
  5.1345 -    x >>= 32;
  5.1346 -    hi = (Uint32) (x & 0xFFFFFFFF);
  5.1347 -    x = SDL_Swap32(lo);
  5.1348 -    x <<= 32;
  5.1349 -    x |= SDL_Swap32(hi);
  5.1350 -    return (x);
  5.1351 -}
  5.1352 -# 195 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h"
  5.1353 -static __inline__ float
  5.1354 -SDL_SwapFloat(float x)
  5.1355 -{
  5.1356 -    union
  5.1357 -    {
  5.1358 -        float f;
  5.1359 -        Uint32 ui32;
  5.1360 -    } swapper;
  5.1361 -    swapper.f = x;
  5.1362 -    swapper.ui32 = SDL_Swap32(swapper.ui32);
  5.1363 -    return swapper.f;
  5.1364 -}
  5.1365 -# 236 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h"
  5.1366 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1367 -# 237 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_endian.h" 2
  5.1368 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h" 2
  5.1369 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mutex.h" 1
  5.1370 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mutex.h"
  5.1371 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1372 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mutex.h" 2
  5.1373 -# 57 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mutex.h"
  5.1374 -struct SDL_mutex;
  5.1375 -typedef struct SDL_mutex SDL_mutex;
  5.1376 -
  5.1377 -
  5.1378 -extern __attribute__ ((visibility("default"))) SDL_mutex * SDL_CreateMutex(void);
  5.1379 -
  5.1380 -
  5.1381 -
  5.1382 -extern __attribute__ ((visibility("default"))) int SDL_mutexP(SDL_mutex * mutex);
  5.1383 -
  5.1384 -
  5.1385 -
  5.1386 -
  5.1387 -
  5.1388 -
  5.1389 -extern __attribute__ ((visibility("default"))) int SDL_mutexV(SDL_mutex * mutex);
  5.1390 -
  5.1391 -
  5.1392 -extern __attribute__ ((visibility("default"))) void SDL_DestroyMutex(SDL_mutex * mutex);
  5.1393 -
  5.1394 -
  5.1395 -
  5.1396 -
  5.1397 -
  5.1398 -
  5.1399 -
  5.1400 -struct SDL_semaphore;
  5.1401 -typedef struct SDL_semaphore SDL_sem;
  5.1402 -
  5.1403 -
  5.1404 -extern __attribute__ ((visibility("default"))) SDL_sem * SDL_CreateSemaphore(Uint32 initial_value);
  5.1405 -
  5.1406 -
  5.1407 -extern __attribute__ ((visibility("default"))) void SDL_DestroySemaphore(SDL_sem * sem);
  5.1408 -
  5.1409 -
  5.1410 -
  5.1411 -
  5.1412 -
  5.1413 -extern __attribute__ ((visibility("default"))) int SDL_SemWait(SDL_sem * sem);
  5.1414 -
  5.1415 -
  5.1416 -
  5.1417 -
  5.1418 -extern __attribute__ ((visibility("default"))) int SDL_SemTryWait(SDL_sem * sem);
  5.1419 -
  5.1420 -
  5.1421 -
  5.1422 -
  5.1423 -
  5.1424 -
  5.1425 -
  5.1426 -extern __attribute__ ((visibility("default"))) int SDL_SemWaitTimeout(SDL_sem * sem, Uint32 ms);
  5.1427 -
  5.1428 -
  5.1429 -
  5.1430 -
  5.1431 -extern __attribute__ ((visibility("default"))) int SDL_SemPost(SDL_sem * sem);
  5.1432 -
  5.1433 -
  5.1434 -extern __attribute__ ((visibility("default"))) Uint32 SDL_SemValue(SDL_sem * sem);
  5.1435 -
  5.1436 -
  5.1437 -
  5.1438 -
  5.1439 -
  5.1440 -
  5.1441 -
  5.1442 -struct SDL_cond;
  5.1443 -typedef struct SDL_cond SDL_cond;
  5.1444 -
  5.1445 -
  5.1446 -extern __attribute__ ((visibility("default"))) SDL_cond * SDL_CreateCond(void);
  5.1447 -
  5.1448 -
  5.1449 -extern __attribute__ ((visibility("default"))) void SDL_DestroyCond(SDL_cond * cond);
  5.1450 -
  5.1451 -
  5.1452 -
  5.1453 -
  5.1454 -extern __attribute__ ((visibility("default"))) int SDL_CondSignal(SDL_cond * cond);
  5.1455 -
  5.1456 -
  5.1457 -
  5.1458 -
  5.1459 -extern __attribute__ ((visibility("default"))) int SDL_CondBroadcast(SDL_cond * cond);
  5.1460 -
  5.1461 -
  5.1462 -
  5.1463 -
  5.1464 -
  5.1465 -
  5.1466 -extern __attribute__ ((visibility("default"))) int SDL_CondWait(SDL_cond * cond, SDL_mutex * mut);
  5.1467 -
  5.1468 -
  5.1469 -
  5.1470 -
  5.1471 -
  5.1472 -
  5.1473 -
  5.1474 -extern __attribute__ ((visibility("default"))) int SDL_CondWaitTimeout(SDL_cond * cond,
  5.1475 -                                                SDL_mutex * mutex, Uint32 ms);
  5.1476 -
  5.1477 -
  5.1478 -
  5.1479 -
  5.1480 -
  5.1481 -
  5.1482 -
  5.1483 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1484 -# 167 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mutex.h" 2
  5.1485 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h" 2
  5.1486 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h" 1
  5.1487 -# 38 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h"
  5.1488 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1489 -# 39 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h" 2
  5.1490 -# 47 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h"
  5.1491 -struct SDL_Thread;
  5.1492 -typedef struct SDL_Thread SDL_Thread;
  5.1493 -# 107 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h"
  5.1494 -extern __attribute__ ((visibility("default"))) SDL_Thread *
  5.1495 -SDL_CreateThread(int ( * fn) (void *), void *data);
  5.1496 -
  5.1497 -
  5.1498 -
  5.1499 -extern __attribute__ ((visibility("default"))) Uint32 SDL_ThreadID(void);
  5.1500 -
  5.1501 -
  5.1502 -
  5.1503 -
  5.1504 -extern __attribute__ ((visibility("default"))) Uint32 SDL_GetThreadID(SDL_Thread * thread);
  5.1505 -
  5.1506 -
  5.1507 -
  5.1508 -
  5.1509 -
  5.1510 -extern __attribute__ ((visibility("default"))) void SDL_WaitThread(SDL_Thread * thread, int *status);
  5.1511 -
  5.1512 -
  5.1513 -extern __attribute__ ((visibility("default"))) void SDL_KillThread(SDL_Thread * thread);
  5.1514 -# 135 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h"
  5.1515 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1516 -# 136 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_thread.h" 2
  5.1517 -# 37 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h" 2
  5.1518 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h" 1
  5.1519 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h"
  5.1520 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1521 -# 37 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h" 2
  5.1522 -# 46 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h"
  5.1523 -typedef struct SDL_RWops
  5.1524 -{
  5.1525 -
  5.1526 -
  5.1527 -
  5.1528 -
  5.1529 -    long ( * seek) (struct SDL_RWops * context, long offset,
  5.1530 -                           int whence);
  5.1531 -
  5.1532 -
  5.1533 -
  5.1534 -
  5.1535 -
  5.1536 -      size_t( * read) (struct SDL_RWops * context, void *ptr,
  5.1537 -                              size_t size, size_t maxnum);
  5.1538 -
  5.1539 -
  5.1540 -
  5.1541 -
  5.1542 -
  5.1543 -      size_t( * write) (struct SDL_RWops * context, const void *ptr,
  5.1544 -                               size_t size, size_t num);
  5.1545 -
  5.1546 -
  5.1547 -
  5.1548 -
  5.1549 -    int ( * close) (struct SDL_RWops * context);
  5.1550 -
  5.1551 -    Uint32 type;
  5.1552 -    union
  5.1553 -    {
  5.1554 -# 91 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h"
  5.1555 -        struct
  5.1556 -        {
  5.1557 -            SDL_bool autoclose;
  5.1558 -            FILE *fp;
  5.1559 -        } stdio;
  5.1560 -
  5.1561 -        struct
  5.1562 -        {
  5.1563 -            Uint8 *base;
  5.1564 -            Uint8 *here;
  5.1565 -            Uint8 *stop;
  5.1566 -        } mem;
  5.1567 -        struct
  5.1568 -        {
  5.1569 -            void *data1;
  5.1570 -        } unknown;
  5.1571 -    } hidden;
  5.1572 -
  5.1573 -} SDL_RWops;
  5.1574 -
  5.1575 -
  5.1576 -
  5.1577 -
  5.1578 -extern __attribute__ ((visibility("default"))) SDL_RWops * SDL_RWFromFile(const char *file,
  5.1579 -                                                  const char *mode);
  5.1580 -
  5.1581 -
  5.1582 -extern __attribute__ ((visibility("default"))) SDL_RWops * SDL_RWFromFP(FILE * fp,
  5.1583 -                                                SDL_bool autoclose);
  5.1584 -
  5.1585 -
  5.1586 -extern __attribute__ ((visibility("default"))) SDL_RWops * SDL_RWFromMem(void *mem, int size);
  5.1587 -extern __attribute__ ((visibility("default"))) SDL_RWops * SDL_RWFromConstMem(const void *mem,
  5.1588 -                                                      int size);
  5.1589 -
  5.1590 -extern __attribute__ ((visibility("default"))) SDL_RWops * SDL_AllocRW(void);
  5.1591 -extern __attribute__ ((visibility("default"))) void SDL_FreeRW(SDL_RWops * area);
  5.1592 -# 142 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h"
  5.1593 -extern __attribute__ ((visibility("default"))) Uint16 SDL_ReadLE16(SDL_RWops * src);
  5.1594 -extern __attribute__ ((visibility("default"))) Uint16 SDL_ReadBE16(SDL_RWops * src);
  5.1595 -extern __attribute__ ((visibility("default"))) Uint32 SDL_ReadLE32(SDL_RWops * src);
  5.1596 -extern __attribute__ ((visibility("default"))) Uint32 SDL_ReadBE32(SDL_RWops * src);
  5.1597 -extern __attribute__ ((visibility("default"))) Uint64 SDL_ReadLE64(SDL_RWops * src);
  5.1598 -extern __attribute__ ((visibility("default"))) Uint64 SDL_ReadBE64(SDL_RWops * src);
  5.1599 -
  5.1600 -
  5.1601 -extern __attribute__ ((visibility("default"))) int SDL_WriteLE16(SDL_RWops * dst, Uint16 value);
  5.1602 -extern __attribute__ ((visibility("default"))) int SDL_WriteBE16(SDL_RWops * dst, Uint16 value);
  5.1603 -extern __attribute__ ((visibility("default"))) int SDL_WriteLE32(SDL_RWops * dst, Uint32 value);
  5.1604 -extern __attribute__ ((visibility("default"))) int SDL_WriteBE32(SDL_RWops * dst, Uint32 value);
  5.1605 -extern __attribute__ ((visibility("default"))) int SDL_WriteLE64(SDL_RWops * dst, Uint64 value);
  5.1606 -extern __attribute__ ((visibility("default"))) int SDL_WriteBE64(SDL_RWops * dst, Uint64 value);
  5.1607 -# 164 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h"
  5.1608 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1609 -# 165 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rwops.h" 2
  5.1610 -# 38 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h" 2
  5.1611 -
  5.1612 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1613 -# 40 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h" 2
  5.1614 -
  5.1615 -
  5.1616 -
  5.1617 -
  5.1618 -
  5.1619 -
  5.1620 -
  5.1621 -typedef Uint16 SDL_AudioFormat;
  5.1622 -
  5.1623 -
  5.1624 -typedef struct SDL_AudioSpec
  5.1625 -{
  5.1626 -    int freq;
  5.1627 -    SDL_AudioFormat format;
  5.1628 -    Uint8 channels;
  5.1629 -    Uint8 silence;
  5.1630 -    Uint16 samples;
  5.1631 -    Uint16 padding;
  5.1632 -    Uint32 size;
  5.1633 -
  5.1634 -
  5.1635 -
  5.1636 -
  5.1637 -
  5.1638 -
  5.1639 -    void ( * callback) (void *userdata, Uint8 * stream, int len);
  5.1640 -    void *userdata;
  5.1641 -} SDL_AudioSpec;
  5.1642 -# 134 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1643 -struct SDL_AudioCVT;
  5.1644 -typedef void ( * SDL_AudioFilter) (struct SDL_AudioCVT * cvt,
  5.1645 -                                          SDL_AudioFormat format);
  5.1646 -
  5.1647 -typedef struct SDL_AudioCVT
  5.1648 -{
  5.1649 -    int needed;
  5.1650 -    SDL_AudioFormat src_format;
  5.1651 -    SDL_AudioFormat dst_format;
  5.1652 -    double rate_incr;
  5.1653 -    Uint8 *buf;
  5.1654 -    int len;
  5.1655 -    int len_cvt;
  5.1656 -    int len_mult;
  5.1657 -    double len_ratio;
  5.1658 -    SDL_AudioFilter filters[10];
  5.1659 -    int filter_index;
  5.1660 -} SDL_AudioCVT;
  5.1661 -
  5.1662 -
  5.1663 -
  5.1664 -
  5.1665 -
  5.1666 -
  5.1667 -
  5.1668 -extern __attribute__ ((visibility("default"))) int SDL_GetNumAudioDrivers(void);
  5.1669 -extern __attribute__ ((visibility("default"))) const char * SDL_GetAudioDriver(int index);
  5.1670 -
  5.1671 -
  5.1672 -
  5.1673 -
  5.1674 -
  5.1675 -extern __attribute__ ((visibility("default"))) int SDL_AudioInit(const char *driver_name);
  5.1676 -extern __attribute__ ((visibility("default"))) void SDL_AudioQuit(void);
  5.1677 -
  5.1678 -
  5.1679 -
  5.1680 -
  5.1681 -extern __attribute__ ((visibility("default"))) const char * SDL_GetCurrentAudioDriver(void);
  5.1682 -# 215 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1683 -extern __attribute__ ((visibility("default"))) int SDL_OpenAudio(const SDL_AudioSpec * desired,
  5.1684 -                                          SDL_AudioSpec * obtained);
  5.1685 -# 226 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1686 -typedef Uint32 SDL_AudioDeviceID;
  5.1687 -# 239 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1688 -extern __attribute__ ((visibility("default"))) int SDL_GetNumAudioDevices(int iscapture);
  5.1689 -# 254 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1690 -extern __attribute__ ((visibility("default"))) const char * SDL_GetAudioDeviceName(int index,
  5.1691 -                                                           int iscapture);
  5.1692 -# 268 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1693 -extern __attribute__ ((visibility("default"))) SDL_AudioDeviceID SDL_OpenAudioDevice(const char
  5.1694 -                                                              *device,
  5.1695 -                                                              int iscapture,
  5.1696 -                                                              const
  5.1697 -                                                              SDL_AudioSpec *
  5.1698 -                                                              desired,
  5.1699 -                                                              SDL_AudioSpec *
  5.1700 -                                                              obtained);
  5.1701 -
  5.1702 -
  5.1703 -
  5.1704 -
  5.1705 -
  5.1706 -
  5.1707 -typedef enum
  5.1708 -{
  5.1709 -    SDL_AUDIO_STOPPED = 0,
  5.1710 -    SDL_AUDIO_PLAYING,
  5.1711 -    SDL_AUDIO_PAUSED
  5.1712 -} SDL_audiostatus;
  5.1713 -extern __attribute__ ((visibility("default"))) SDL_audiostatus SDL_GetAudioStatus(void);
  5.1714 -
  5.1715 -extern __attribute__ ((visibility("default"))) SDL_audiostatus
  5.1716 -SDL_GetAudioDeviceStatus(SDL_AudioDeviceID dev);
  5.1717 -# 300 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1718 -extern __attribute__ ((visibility("default"))) void SDL_PauseAudio(int pause_on);
  5.1719 -extern __attribute__ ((visibility("default"))) void SDL_PauseAudioDevice(SDL_AudioDeviceID dev,
  5.1720 -                                                  int pause_on);
  5.1721 -# 321 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1722 -extern __attribute__ ((visibility("default"))) SDL_AudioSpec * SDL_LoadWAV_RW(SDL_RWops * src,
  5.1723 -                                                      int freesrc,
  5.1724 -                                                      SDL_AudioSpec * spec,
  5.1725 -                                                      Uint8 ** audio_buf,
  5.1726 -                                                      Uint32 * audio_len);
  5.1727 -# 334 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1728 -extern __attribute__ ((visibility("default"))) void SDL_FreeWAV(Uint8 * audio_buf);
  5.1729 -# 344 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1730 -extern __attribute__ ((visibility("default"))) int SDL_BuildAudioCVT(SDL_AudioCVT * cvt,
  5.1731 -                                              SDL_AudioFormat src_format,
  5.1732 -                                              Uint8 src_channels,
  5.1733 -                                              int src_rate,
  5.1734 -                                              SDL_AudioFormat dst_format,
  5.1735 -                                              Uint8 dst_channels,
  5.1736 -                                              int dst_rate);
  5.1737 -# 360 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1738 -extern __attribute__ ((visibility("default"))) int SDL_ConvertAudio(SDL_AudioCVT * cvt);
  5.1739 -# 370 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1740 -extern __attribute__ ((visibility("default"))) void SDL_MixAudio(Uint8 * dst, const Uint8 * src,
  5.1741 -                                          Uint32 len, int volume);
  5.1742 -
  5.1743 -
  5.1744 -
  5.1745 -
  5.1746 -
  5.1747 -
  5.1748 -extern __attribute__ ((visibility("default"))) void SDL_MixAudioFormat(Uint8 * dst,
  5.1749 -                                                const Uint8 * src,
  5.1750 -                                                SDL_AudioFormat format,
  5.1751 -                                                Uint32 len, int volume);
  5.1752 -
  5.1753 -
  5.1754 -
  5.1755 -
  5.1756 -
  5.1757 -
  5.1758 -
  5.1759 -extern __attribute__ ((visibility("default"))) void SDL_LockAudio(void);
  5.1760 -extern __attribute__ ((visibility("default"))) void SDL_LockAudioDevice(SDL_AudioDeviceID dev);
  5.1761 -extern __attribute__ ((visibility("default"))) void SDL_UnlockAudio(void);
  5.1762 -extern __attribute__ ((visibility("default"))) void SDL_UnlockAudioDevice(SDL_AudioDeviceID dev);
  5.1763 -
  5.1764 -
  5.1765 -
  5.1766 -
  5.1767 -extern __attribute__ ((visibility("default"))) void SDL_CloseAudio(void);
  5.1768 -extern __attribute__ ((visibility("default"))) void SDL_CloseAudioDevice(SDL_AudioDeviceID dev);
  5.1769 -
  5.1770 -
  5.1771 -
  5.1772 -
  5.1773 -extern __attribute__ ((visibility("default"))) int SDL_AudioDeviceConnected(SDL_AudioDeviceID dev);
  5.1774 -# 412 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h"
  5.1775 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1776 -# 413 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_audio.h" 2
  5.1777 -# 80 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.1778 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h" 1
  5.1779 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h"
  5.1780 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1781 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h" 2
  5.1782 -# 56 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h"
  5.1783 -typedef enum
  5.1784 -{
  5.1785 -    CD_TRAYEMPTY,
  5.1786 -    CD_STOPPED,
  5.1787 -    CD_PLAYING,
  5.1788 -    CD_PAUSED,
  5.1789 -    CD_ERROR = -1
  5.1790 -} CDstatus;
  5.1791 -
  5.1792 -
  5.1793 -
  5.1794 -
  5.1795 -typedef struct SDL_CDtrack
  5.1796 -{
  5.1797 -    Uint8 id;
  5.1798 -    Uint8 type;
  5.1799 -    Uint16 unused;
  5.1800 -    Uint32 length;
  5.1801 -    Uint32 offset;
  5.1802 -} SDL_CDtrack;
  5.1803 -
  5.1804 -
  5.1805 -typedef struct SDL_CD
  5.1806 -{
  5.1807 -    int id;
  5.1808 -    CDstatus status;
  5.1809 -
  5.1810 -
  5.1811 -    int numtracks;
  5.1812 -    int cur_track;
  5.1813 -    int cur_frame;
  5.1814 -    SDL_CDtrack track[99 + 1];
  5.1815 -} SDL_CD;
  5.1816 -# 107 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h"
  5.1817 -extern __attribute__ ((visibility("default"))) int SDL_CDNumDrives(void);
  5.1818 -
  5.1819 -
  5.1820 -
  5.1821 -
  5.1822 -
  5.1823 -
  5.1824 -
  5.1825 -extern __attribute__ ((visibility("default"))) const char * SDL_CDName(int drive);
  5.1826 -
  5.1827 -
  5.1828 -
  5.1829 -
  5.1830 -
  5.1831 -
  5.1832 -
  5.1833 -extern __attribute__ ((visibility("default"))) SDL_CD * SDL_CDOpen(int drive);
  5.1834 -
  5.1835 -
  5.1836 -
  5.1837 -
  5.1838 -
  5.1839 -extern __attribute__ ((visibility("default"))) CDstatus SDL_CDStatus(SDL_CD * cdrom);
  5.1840 -# 150 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h"
  5.1841 -extern __attribute__ ((visibility("default"))) int SDL_CDPlayTracks(SDL_CD * cdrom,
  5.1842 -                                             int start_track,
  5.1843 -                                             int start_frame, int ntracks,
  5.1844 -                                             int nframes);
  5.1845 -
  5.1846 -
  5.1847 -
  5.1848 -
  5.1849 -extern __attribute__ ((visibility("default"))) int SDL_CDPlay(SDL_CD * cdrom, int start, int length);
  5.1850 -
  5.1851 -
  5.1852 -extern __attribute__ ((visibility("default"))) int SDL_CDPause(SDL_CD * cdrom);
  5.1853 -
  5.1854 -
  5.1855 -extern __attribute__ ((visibility("default"))) int SDL_CDResume(SDL_CD * cdrom);
  5.1856 -
  5.1857 -
  5.1858 -extern __attribute__ ((visibility("default"))) int SDL_CDStop(SDL_CD * cdrom);
  5.1859 -
  5.1860 -
  5.1861 -extern __attribute__ ((visibility("default"))) int SDL_CDEject(SDL_CD * cdrom);
  5.1862 -
  5.1863 -
  5.1864 -extern __attribute__ ((visibility("default"))) void SDL_CDClose(SDL_CD * cdrom);
  5.1865 -# 182 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h"
  5.1866 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1867 -# 183 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cdrom.h" 2
  5.1868 -# 81 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.1869 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cpuinfo.h" 1
  5.1870 -# 34 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cpuinfo.h"
  5.1871 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1872 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cpuinfo.h" 2
  5.1873 -# 44 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cpuinfo.h"
  5.1874 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_HasRDTSC(void);
  5.1875 -
  5.1876 -
  5.1877 -
  5.1878 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_HasMMX(void);
  5.1879 -
  5.1880 -
  5.1881 -
  5.1882 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_HasMMXExt(void);
  5.1883 -
  5.1884 -
  5.1885 -
  5.1886 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_Has3DNow(void);
  5.1887 -
  5.1888 -
  5.1889 -
  5.1890 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_Has3DNowExt(void);
  5.1891 -
  5.1892 -
  5.1893 -
  5.1894 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_HasSSE(void);
  5.1895 -
  5.1896 -
  5.1897 -
  5.1898 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_HasSSE2(void);
  5.1899 -
  5.1900 -
  5.1901 -
  5.1902 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_HasAltiVec(void);
  5.1903 -
  5.1904 -
  5.1905 -
  5.1906 -
  5.1907 -
  5.1908 -
  5.1909 -
  5.1910 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.1911 -# 81 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_cpuinfo.h" 2
  5.1912 -# 82 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.1913 -
  5.1914 -
  5.1915 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h" 1
  5.1916 -# 34 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
  5.1917 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h" 1
  5.1918 -# 33 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.1919 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h" 1
  5.1920 -# 32 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.1921 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.1922 -# 33 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h" 2
  5.1923 -# 44 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.1924 -enum
  5.1925 -{
  5.1926 -    SDL_PIXELTYPE_UNKNOWN,
  5.1927 -    SDL_PIXELTYPE_INDEX1,
  5.1928 -    SDL_PIXELTYPE_INDEX4,
  5.1929 -    SDL_PIXELTYPE_INDEX8,
  5.1930 -    SDL_PIXELTYPE_PACKED8,
  5.1931 -    SDL_PIXELTYPE_PACKED16,
  5.1932 -    SDL_PIXELTYPE_PACKED32,
  5.1933 -    SDL_PIXELTYPE_ARRAYU8,
  5.1934 -    SDL_PIXELTYPE_ARRAYU16,
  5.1935 -    SDL_PIXELTYPE_ARRAYU32,
  5.1936 -    SDL_PIXELTYPE_ARRAYF16,
  5.1937 -    SDL_PIXELTYPE_ARRAYF32
  5.1938 -};
  5.1939 -
  5.1940 -enum
  5.1941 -{
  5.1942 -    SDL_BITMAPORDER_NONE,
  5.1943 -    SDL_BITMAPORDER_4321,
  5.1944 -    SDL_BITMAPORDER_1234
  5.1945 -};
  5.1946 -enum
  5.1947 -{
  5.1948 -    SDL_PACKEDORDER_NONE,
  5.1949 -    SDL_PACKEDORDER_XRGB,
  5.1950 -    SDL_PACKEDORDER_RGBX,
  5.1951 -    SDL_PACKEDORDER_ARGB,
  5.1952 -    SDL_PACKEDORDER_RGBA,
  5.1953 -    SDL_PACKEDORDER_XBGR,
  5.1954 -    SDL_PACKEDORDER_BGRX,
  5.1955 -    SDL_PACKEDORDER_ABGR,
  5.1956 -    SDL_PACKEDORDER_BGRA
  5.1957 -};
  5.1958 -enum
  5.1959 -{
  5.1960 -    SDL_ARRAYORDER_NONE,
  5.1961 -    SDL_ARRAYORDER_RGB,
  5.1962 -    SDL_ARRAYORDER_RGBA,
  5.1963 -    SDL_ARRAYORDER_ARGB,
  5.1964 -    SDL_ARRAYORDER_BGR,
  5.1965 -    SDL_ARRAYORDER_BGRA,
  5.1966 -    SDL_ARRAYORDER_ABGR
  5.1967 -};
  5.1968 -
  5.1969 -enum
  5.1970 -{
  5.1971 -    SDL_PACKEDLAYOUT_NONE,
  5.1972 -    SDL_PACKEDLAYOUT_332,
  5.1973 -    SDL_PACKEDLAYOUT_4444,
  5.1974 -    SDL_PACKEDLAYOUT_1555,
  5.1975 -    SDL_PACKEDLAYOUT_5551,
  5.1976 -    SDL_PACKEDLAYOUT_565,
  5.1977 -    SDL_PACKEDLAYOUT_8888,
  5.1978 -    SDL_PACKEDLAYOUT_2101010,
  5.1979 -    SDL_PACKEDLAYOUT_1010102
  5.1980 -};
  5.1981 -# 123 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.1982 -enum
  5.1983 -{
  5.1984 -    SDL_PIXELFORMAT_UNKNOWN,
  5.1985 -    SDL_PIXELFORMAT_INDEX1LSB =
  5.1986 -        ((1 << 31) | ((SDL_PIXELTYPE_INDEX1) << 24) | ((SDL_BITMAPORDER_1234) << 20) | ((0) << 16) | ((1) << 8) | ((0) << 0)),
  5.1987 -
  5.1988 -    SDL_PIXELFORMAT_INDEX1MSB =
  5.1989 -        ((1 << 31) | ((SDL_PIXELTYPE_INDEX1) << 24) | ((SDL_BITMAPORDER_4321) << 20) | ((0) << 16) | ((1) << 8) | ((0) << 0)),
  5.1990 -
  5.1991 -    SDL_PIXELFORMAT_INDEX4LSB =
  5.1992 -        ((1 << 31) | ((SDL_PIXELTYPE_INDEX4) << 24) | ((SDL_BITMAPORDER_1234) << 20) | ((0) << 16) | ((2) << 8) | ((0) << 0)),
  5.1993 -
  5.1994 -    SDL_PIXELFORMAT_INDEX4MSB =
  5.1995 -        ((1 << 31) | ((SDL_PIXELTYPE_INDEX4) << 24) | ((SDL_BITMAPORDER_4321) << 20) | ((0) << 16) | ((2) << 8) | ((0) << 0)),
  5.1996 -
  5.1997 -    SDL_PIXELFORMAT_INDEX8 =
  5.1998 -        ((1 << 31) | ((SDL_PIXELTYPE_INDEX8) << 24) | ((0) << 20) | ((0) << 16) | ((8) << 8) | ((1) << 0)),
  5.1999 -    SDL_PIXELFORMAT_RGB332 =
  5.2000 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED8) << 24) | ((SDL_PACKEDORDER_XRGB) << 20) | ((SDL_PACKEDLAYOUT_332) << 16) | ((8) << 8) | ((1) << 0)),
  5.2001 -
  5.2002 -    SDL_PIXELFORMAT_RGB444 =
  5.2003 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED16) << 24) | ((SDL_PACKEDORDER_XRGB) << 20) | ((SDL_PACKEDLAYOUT_4444) << 16) | ((12) << 8) | ((2) << 0)),
  5.2004 -
  5.2005 -    SDL_PIXELFORMAT_RGB555 =
  5.2006 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED16) << 24) | ((SDL_PACKEDORDER_XRGB) << 20) | ((SDL_PACKEDLAYOUT_1555) << 16) | ((15) << 8) | ((2) << 0)),
  5.2007 -
  5.2008 -    SDL_PIXELFORMAT_BGR555 =
  5.2009 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED16) << 24) | ((SDL_PACKEDORDER_XBGR) << 20) | ((SDL_PACKEDLAYOUT_1555) << 16) | ((15) << 8) | ((2) << 0)),
  5.2010 -
  5.2011 -    SDL_PIXELFORMAT_ARGB4444 =
  5.2012 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED16) << 24) | ((SDL_PACKEDORDER_ARGB) << 20) | ((SDL_PACKEDLAYOUT_4444) << 16) | ((16) << 8) | ((2) << 0)),
  5.2013 -
  5.2014 -    SDL_PIXELFORMAT_ARGB1555 =
  5.2015 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED16) << 24) | ((SDL_PACKEDORDER_ARGB) << 20) | ((SDL_PACKEDLAYOUT_1555) << 16) | ((16) << 8) | ((2) << 0)),
  5.2016 -
  5.2017 -    SDL_PIXELFORMAT_ABGR1555 =
  5.2018 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED16) << 24) | ((SDL_PACKEDORDER_ABGR) << 20) | ((SDL_PACKEDLAYOUT_1555) << 16) | ((16) << 8) | ((2) << 0)),
  5.2019 -
  5.2020 -    SDL_PIXELFORMAT_RGB565 =
  5.2021 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED16) << 24) | ((SDL_PACKEDORDER_XRGB) << 20) | ((SDL_PACKEDLAYOUT_565) << 16) | ((16) << 8) | ((2) << 0)),
  5.2022 -
  5.2023 -    SDL_PIXELFORMAT_RGB24 =
  5.2024 -        ((1 << 31) | ((SDL_PIXELTYPE_ARRAYU8) << 24) | ((SDL_ARRAYORDER_RGB) << 20) | ((0) << 16) | ((24) << 8) | ((3) << 0)),
  5.2025 -
  5.2026 -    SDL_PIXELFORMAT_BGR24 =
  5.2027 -        ((1 << 31) | ((SDL_PIXELTYPE_ARRAYU8) << 24) | ((SDL_ARRAYORDER_BGR) << 20) | ((0) << 16) | ((24) << 8) | ((3) << 0)),
  5.2028 -
  5.2029 -    SDL_PIXELFORMAT_RGB888 =
  5.2030 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED32) << 24) | ((SDL_PACKEDORDER_XRGB) << 20) | ((SDL_PACKEDLAYOUT_8888) << 16) | ((24) << 8) | ((4) << 0)),
  5.2031 -
  5.2032 -    SDL_PIXELFORMAT_BGR888 =
  5.2033 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED32) << 24) | ((SDL_PACKEDORDER_XBGR) << 20) | ((SDL_PACKEDLAYOUT_8888) << 16) | ((24) << 8) | ((4) << 0)),
  5.2034 -
  5.2035 -    SDL_PIXELFORMAT_ARGB8888 =
  5.2036 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED32) << 24) | ((SDL_PACKEDORDER_ARGB) << 20) | ((SDL_PACKEDLAYOUT_8888) << 16) | ((32) << 8) | ((4) << 0)),
  5.2037 -
  5.2038 -    SDL_PIXELFORMAT_RGBA8888 =
  5.2039 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED32) << 24) | ((SDL_PACKEDORDER_RGBA) << 20) | ((SDL_PACKEDLAYOUT_8888) << 16) | ((32) << 8) | ((4) << 0)),
  5.2040 -
  5.2041 -    SDL_PIXELFORMAT_ABGR8888 =
  5.2042 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED32) << 24) | ((SDL_PACKEDORDER_ABGR) << 20) | ((SDL_PACKEDLAYOUT_8888) << 16) | ((32) << 8) | ((4) << 0)),
  5.2043 -
  5.2044 -    SDL_PIXELFORMAT_BGRA8888 =
  5.2045 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED32) << 24) | ((SDL_PACKEDORDER_BGRA) << 20) | ((SDL_PACKEDLAYOUT_8888) << 16) | ((32) << 8) | ((4) << 0)),
  5.2046 -
  5.2047 -    SDL_PIXELFORMAT_ARGB2101010 =
  5.2048 -        ((1 << 31) | ((SDL_PIXELTYPE_PACKED32) << 24) | ((SDL_PACKEDORDER_ARGB) << 20) | ((SDL_PACKEDLAYOUT_2101010) << 16) | ((32) << 8) | ((4) << 0)),
  5.2049 -
  5.2050 -
  5.2051 -    SDL_PIXELFORMAT_YV12 =
  5.2052 -        (('Y') | (('V') << 8) | (('1') << 16) | (('2') << 24)),
  5.2053 -    SDL_PIXELFORMAT_IYUV =
  5.2054 -        (('I') | (('Y') << 8) | (('U') << 16) | (('V') << 24)),
  5.2055 -    SDL_PIXELFORMAT_YUY2 =
  5.2056 -        (('Y') | (('U') << 8) | (('Y') << 16) | (('2') << 24)),
  5.2057 -    SDL_PIXELFORMAT_UYVY =
  5.2058 -        (('U') | (('Y') << 8) | (('V') << 16) | (('Y') << 24)),
  5.2059 -    SDL_PIXELFORMAT_YVYU =
  5.2060 -        (('Y') | (('V') << 8) | (('Y') << 16) | (('U') << 24))
  5.2061 -};
  5.2062 -
  5.2063 -typedef struct SDL_Color
  5.2064 -{
  5.2065 -    Uint8 r;
  5.2066 -    Uint8 g;
  5.2067 -    Uint8 b;
  5.2068 -    Uint8 unused;
  5.2069 -} SDL_Color;
  5.2070 -
  5.2071 -
  5.2072 -typedef struct SDL_Palette SDL_Palette;
  5.2073 -typedef int (*SDL_PaletteChangedFunc) (void *userdata, SDL_Palette * palette);
  5.2074 -
  5.2075 -typedef struct SDL_PaletteWatch
  5.2076 -{
  5.2077 -    SDL_PaletteChangedFunc callback;
  5.2078 -    void *userdata;
  5.2079 -    struct SDL_PaletteWatch *next;
  5.2080 -} SDL_PaletteWatch;
  5.2081 -
  5.2082 -struct SDL_Palette
  5.2083 -{
  5.2084 -    int ncolors;
  5.2085 -    SDL_Color *colors;
  5.2086 -
  5.2087 -    int refcount;
  5.2088 -    SDL_PaletteWatch *watch;
  5.2089 -};
  5.2090 -
  5.2091 -
  5.2092 -typedef struct SDL_PixelFormat
  5.2093 -{
  5.2094 -    SDL_Palette *palette;
  5.2095 -    Uint8 BitsPerPixel;
  5.2096 -    Uint8 BytesPerPixel;
  5.2097 -    Uint8 Rloss;
  5.2098 -    Uint8 Gloss;
  5.2099 -    Uint8 Bloss;
  5.2100 -    Uint8 Aloss;
  5.2101 -    Uint8 Rshift;
  5.2102 -    Uint8 Gshift;
  5.2103 -    Uint8 Bshift;
  5.2104 -    Uint8 Ashift;
  5.2105 -    Uint32 Rmask;
  5.2106 -    Uint32 Gmask;
  5.2107 -    Uint32 Bmask;
  5.2108 -    Uint32 Amask;
  5.2109 -} SDL_PixelFormat;
  5.2110 -# 261 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2111 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_PixelFormatEnumToMasks(Uint32 format,
  5.2112 -                                                            int *bpp,
  5.2113 -                                                            Uint32 * Rmask,
  5.2114 -                                                            Uint32 * Gmask,
  5.2115 -                                                            Uint32 * Bmask,
  5.2116 -                                                            Uint32 * Amask);
  5.2117 -# 277 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2118 -extern __attribute__ ((visibility("default"))) Uint32 SDL_MasksToPixelFormatEnum(int bpp,
  5.2119 -                                                          Uint32 Rmask,
  5.2120 -                                                          Uint32 Gmask,
  5.2121 -                                                          Uint32 Bmask,
  5.2122 -                                                          Uint32 Amask);
  5.2123 -# 294 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2124 -extern __attribute__ ((visibility("default"))) SDL_Palette * SDL_AllocPalette(int ncolors);
  5.2125 -# 303 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2126 -extern __attribute__ ((visibility("default"))) int SDL_AddPaletteWatch(SDL_Palette * palette,
  5.2127 -                                                SDL_PaletteChangedFunc
  5.2128 -                                                callback, void *userdata);
  5.2129 -# 314 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2130 -extern __attribute__ ((visibility("default"))) void SDL_DelPaletteWatch(SDL_Palette * palette,
  5.2131 -                                                 SDL_PaletteChangedFunc
  5.2132 -                                                 callback, void *userdata);
  5.2133 -# 330 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2134 -extern __attribute__ ((visibility("default"))) int SDL_SetPaletteColors(SDL_Palette * palette,
  5.2135 -                                                 const SDL_Color * colors,
  5.2136 -                                                 int firstcolor, int ncolors);
  5.2137 -# 341 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2138 -extern __attribute__ ((visibility("default"))) void SDL_FreePalette(SDL_Palette * palette);
  5.2139 -# 351 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2140 -extern __attribute__ ((visibility("default"))) Uint32 SDL_MapRGB(const SDL_PixelFormat * format,
  5.2141 -                                          Uint8 r, Uint8 g, Uint8 b);
  5.2142 -# 362 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2143 -extern __attribute__ ((visibility("default"))) Uint32 SDL_MapRGBA(const SDL_PixelFormat * format,
  5.2144 -                                           Uint8 r, Uint8 g, Uint8 b,
  5.2145 -                                           Uint8 a);
  5.2146 -# 374 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2147 -extern __attribute__ ((visibility("default"))) void SDL_GetRGB(Uint32 pixel,
  5.2148 -                                        const SDL_PixelFormat * format,
  5.2149 -                                        Uint8 * r, Uint8 * g, Uint8 * b);
  5.2150 -# 386 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
  5.2151 -extern __attribute__ ((visibility("default"))) void SDL_GetRGBA(Uint32 pixel,
  5.2152 -                                         const SDL_PixelFormat * format,
  5.2153 -                                         Uint8 * r, Uint8 * g, Uint8 * b,
  5.2154 -                                         Uint8 * a);
  5.2155 -
  5.2156 -
  5.2157 -
  5.2158 -
  5.2159 -
  5.2160 -
  5.2161 -
  5.2162 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.2163 -# 398 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h" 2
  5.2164 -# 34 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h" 2
  5.2165 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h" 1
  5.2166 -# 37 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h"
  5.2167 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.2168 -# 38 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h" 2
  5.2169 -# 56 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h"
  5.2170 -typedef struct SDL_Rect
  5.2171 -{
  5.2172 -    int x, y;
  5.2173 -    int w, h;
  5.2174 -} SDL_Rect;
  5.2175 -# 84 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h"
  5.2176 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_HasIntersection(const SDL_Rect * A,
  5.2177 -                                                     const SDL_Rect * B);
  5.2178 -# 94 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h"
  5.2179 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_IntersectRect(const SDL_Rect * A,
  5.2180 -                                                   const SDL_Rect * B,
  5.2181 -                                                   SDL_Rect * result);
  5.2182 -
  5.2183 -
  5.2184 -
  5.2185 -
  5.2186 -
  5.2187 -
  5.2188 -extern __attribute__ ((visibility("default"))) void SDL_UnionRect(const SDL_Rect * A,
  5.2189 -                                           const SDL_Rect * B,
  5.2190 -                                           SDL_Rect * result);
  5.2191 -
  5.2192 -
  5.2193 -
  5.2194 -
  5.2195 -
  5.2196 -
  5.2197 -
  5.2198 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.2199 -# 114 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h" 2
  5.2200 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h" 2
  5.2201 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h" 1
  5.2202 -# 37 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2203 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.2204 -# 38 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h" 2
  5.2205 -# 61 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2206 -typedef struct SDL_Surface
  5.2207 -{
  5.2208 -    Uint32 flags;
  5.2209 -    SDL_PixelFormat *format;
  5.2210 -    int w, h;
  5.2211 -    int pitch;
  5.2212 -    void *pixels;
  5.2213 -
  5.2214 -
  5.2215 -    void *userdata;
  5.2216 -
  5.2217 -
  5.2218 -    int locked;
  5.2219 -    void *lock_data;
  5.2220 -
  5.2221 -
  5.2222 -    SDL_Rect clip_rect;
  5.2223 -
  5.2224 -
  5.2225 -    struct SDL_BlitMap *map;
  5.2226 -
  5.2227 -
  5.2228 -    unsigned int format_version;
  5.2229 -
  5.2230 -
  5.2231 -    int refcount;
  5.2232 -} SDL_Surface;
  5.2233 -
  5.2234 -
  5.2235 -
  5.2236 -
  5.2237 -
  5.2238 -
  5.2239 -typedef int (*SDL_blit) (struct SDL_Surface * src, SDL_Rect * srcrect,
  5.2240 -                         struct SDL_Surface * dst, SDL_Rect * dstrect);
  5.2241 -# 108 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2242 -extern __attribute__ ((visibility("default"))) SDL_Surface * SDL_CreateRGBSurface
  5.2243 -    (Uint32 flags, int width, int height, int depth,
  5.2244 -     Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask);
  5.2245 -extern __attribute__ ((visibility("default"))) SDL_Surface * SDL_CreateRGBSurfaceFrom(void *pixels,
  5.2246 -                                                              int width,
  5.2247 -                                                              int height,
  5.2248 -                                                              int depth,
  5.2249 -                                                              int pitch,
  5.2250 -                                                              Uint32 Rmask,
  5.2251 -                                                              Uint32 Gmask,
  5.2252 -                                                              Uint32 Bmask,
  5.2253 -                                                              Uint32 Amask);
  5.2254 -extern __attribute__ ((visibility("default"))) void SDL_FreeSurface(SDL_Surface * surface);
  5.2255 -# 131 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2256 -extern __attribute__ ((visibility("default"))) int SDL_SetSurfacePalette(SDL_Surface * surface,
  5.2257 -                                                  SDL_Palette * palette);
  5.2258 -# 150 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2259 -extern __attribute__ ((visibility("default"))) int SDL_LockSurface(SDL_Surface * surface);
  5.2260 -extern __attribute__ ((visibility("default"))) void SDL_UnlockSurface(SDL_Surface * surface);
  5.2261 -
  5.2262 -
  5.2263 -
  5.2264 -
  5.2265 -
  5.2266 -
  5.2267 -
  5.2268 -extern __attribute__ ((visibility("default"))) SDL_Surface * SDL_LoadBMP_RW(SDL_RWops * src,
  5.2269 -                                                    int freesrc);
  5.2270 -# 170 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2271 -extern __attribute__ ((visibility("default"))) int SDL_SaveBMP_RW
  5.2272 -    (SDL_Surface * surface, SDL_RWops * dst, int freedst);
  5.2273 -# 187 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2274 -extern __attribute__ ((visibility("default"))) int SDL_SetSurfaceRLE(SDL_Surface * surface,
  5.2275 -                                              int flag);
  5.2276 -# 201 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2277 -extern __attribute__ ((visibility("default"))) int SDL_SetColorKey(SDL_Surface * surface,
  5.2278 -                                            Uint32 flag, Uint32 key);
  5.2279 -# 218 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2280 -extern __attribute__ ((visibility("default"))) int SDL_SetSurfaceColorMod(SDL_Surface * surface,
  5.2281 -                                                   Uint8 r, Uint8 g, Uint8 b);
  5.2282 -# 236 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2283 -extern __attribute__ ((visibility("default"))) int SDL_GetSurfaceColorMod(SDL_Surface * surface,
  5.2284 -                                                   Uint8 * r, Uint8 * g,
  5.2285 -                                                   Uint8 * b);
  5.2286 -# 252 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2287 -extern __attribute__ ((visibility("default"))) int SDL_SetSurfaceAlphaMod(SDL_Surface * surface,
  5.2288 -                                                   Uint8 alpha);
  5.2289 -# 267 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2290 -extern __attribute__ ((visibility("default"))) int SDL_GetSurfaceAlphaMod(SDL_Surface * surface,
  5.2291 -                                                   Uint8 * alpha);
  5.2292 -# 282 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2293 -extern __attribute__ ((visibility("default"))) int SDL_SetSurfaceBlendMode(SDL_Surface * surface,
  5.2294 -                                                    int blendMode);
  5.2295 -# 297 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2296 -extern __attribute__ ((visibility("default"))) int SDL_GetSurfaceBlendMode(SDL_Surface * surface,
  5.2297 -                                                    int *blendMode);
  5.2298 -# 314 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2299 -extern __attribute__ ((visibility("default"))) int SDL_SetSurfaceScaleMode(SDL_Surface * surface,
  5.2300 -                                                    int scaleMode);
  5.2301 -# 329 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2302 -extern __attribute__ ((visibility("default"))) int SDL_GetSurfaceScaleMode(SDL_Surface * surface,
  5.2303 -                                                    int *scaleMode);
  5.2304 -# 344 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2305 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_SetClipRect(SDL_Surface * surface,
  5.2306 -                                                 const SDL_Rect * rect);
  5.2307 -
  5.2308 -
  5.2309 -
  5.2310 -
  5.2311 -
  5.2312 -
  5.2313 -extern __attribute__ ((visibility("default"))) void SDL_GetClipRect(SDL_Surface * surface,
  5.2314 -                                             SDL_Rect * rect);
  5.2315 -# 367 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2316 -extern __attribute__ ((visibility("default"))) SDL_Surface * SDL_ConvertSurface
  5.2317 -    (SDL_Surface * src, SDL_PixelFormat * fmt, Uint32 flags);
  5.2318 -# 379 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2319 -extern __attribute__ ((visibility("default"))) int SDL_FillRect
  5.2320 -    (SDL_Surface * dst, SDL_Rect * dstrect, Uint32 color);
  5.2321 -# 456 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2322 -extern __attribute__ ((visibility("default"))) int SDL_UpperBlit
  5.2323 -    (SDL_Surface * src, SDL_Rect * srcrect,
  5.2324 -     SDL_Surface * dst, SDL_Rect * dstrect);
  5.2325 -
  5.2326 -
  5.2327 -
  5.2328 -extern __attribute__ ((visibility("default"))) int SDL_LowerBlit
  5.2329 -    (SDL_Surface * src, SDL_Rect * srcrect,
  5.2330 -     SDL_Surface * dst, SDL_Rect * dstrect);
  5.2331 -# 473 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
  5.2332 -extern __attribute__ ((visibility("default"))) int SDL_SoftStretch(SDL_Surface * src,
  5.2333 -                                            SDL_Rect * srcrect,
  5.2334 -                                            SDL_Surface * dst,
  5.2335 -                                            SDL_Rect * dstrect);
  5.2336 -
  5.2337 -
  5.2338 -
  5.2339 -
  5.2340 -
  5.2341 -
  5.2342 -
  5.2343 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.2344 -# 485 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h" 2
  5.2345 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h" 2
  5.2346 -
  5.2347 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.2348 -# 38 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h" 2
  5.2349 -# 57 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2350 -typedef struct
  5.2351 -{
  5.2352 -    Uint32 format;
  5.2353 -    int w;
  5.2354 -    int h;
  5.2355 -    int refresh_rate;
  5.2356 -    void *driverdata;
  5.2357 -} SDL_DisplayMode;
  5.2358 -# 94 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2359 -typedef Uint32 SDL_WindowID;
  5.2360 -# 103 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2361 -typedef enum
  5.2362 -{
  5.2363 -    SDL_WINDOW_FULLSCREEN = 0x00000001,
  5.2364 -    SDL_WINDOW_OPENGL = 0x00000002,
  5.2365 -    SDL_WINDOW_SHOWN = 0x00000004,
  5.2366 -    SDL_WINDOW_BORDERLESS = 0x00000008,
  5.2367 -    SDL_WINDOW_RESIZABLE = 0x00000010,
  5.2368 -    SDL_WINDOW_MINIMIZED = 0x00000020,
  5.2369 -    SDL_WINDOW_MAXIMIZED = 0x00000040,
  5.2370 -    SDL_WINDOW_INPUT_GRABBED = 0x00000100,
  5.2371 -    SDL_WINDOW_INPUT_FOCUS = 0x00000200,
  5.2372 -    SDL_WINDOW_MOUSE_FOCUS = 0x00000400
  5.2373 -} SDL_WindowFlags;
  5.2374 -# 133 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2375 -typedef enum
  5.2376 -{
  5.2377 -    SDL_WINDOWEVENT_NONE,
  5.2378 -    SDL_WINDOWEVENT_SHOWN,
  5.2379 -    SDL_WINDOWEVENT_HIDDEN,
  5.2380 -    SDL_WINDOWEVENT_EXPOSED,
  5.2381 -    SDL_WINDOWEVENT_MOVED,
  5.2382 -    SDL_WINDOWEVENT_RESIZED,
  5.2383 -    SDL_WINDOWEVENT_MINIMIZED,
  5.2384 -    SDL_WINDOWEVENT_MAXIMIZED,
  5.2385 -    SDL_WINDOWEVENT_RESTORED,
  5.2386 -    SDL_WINDOWEVENT_ENTER,
  5.2387 -    SDL_WINDOWEVENT_LEAVE,
  5.2388 -    SDL_WINDOWEVENT_FOCUS_GAINED,
  5.2389 -    SDL_WINDOWEVENT_FOCUS_LOST,
  5.2390 -    SDL_WINDOWEVENT_CLOSE
  5.2391 -} SDL_WindowEventID;
  5.2392 -
  5.2393 -
  5.2394 -
  5.2395 -
  5.2396 -
  5.2397 -
  5.2398 -typedef enum
  5.2399 -{
  5.2400 -    SDL_RENDERER_SINGLEBUFFER = 0x00000001,
  5.2401 -    SDL_RENDERER_PRESENTCOPY = 0x00000002,
  5.2402 -    SDL_RENDERER_PRESENTFLIP2 = 0x00000004,
  5.2403 -    SDL_RENDERER_PRESENTFLIP3 = 0x00000008,
  5.2404 -    SDL_RENDERER_PRESENTDISCARD = 0x00000010,
  5.2405 -    SDL_RENDERER_PRESENTVSYNC = 0x00000020,
  5.2406 -    SDL_RENDERER_ACCELERATED = 0x00000040
  5.2407 -} SDL_RendererFlags;
  5.2408 -
  5.2409 -
  5.2410 -
  5.2411 -
  5.2412 -
  5.2413 -
  5.2414 -typedef struct SDL_RendererInfo
  5.2415 -{
  5.2416 -    const char *name;
  5.2417 -    Uint32 flags;
  5.2418 -    Uint32 mod_modes;
  5.2419 -    Uint32 blend_modes;
  5.2420 -    Uint32 scale_modes;
  5.2421 -    Uint32 num_texture_formats;
  5.2422 -    Uint32 texture_formats[20];
  5.2423 -    int max_texture_width;
  5.2424 -    int max_texture_height;
  5.2425 -} SDL_RendererInfo;
  5.2426 -
  5.2427 -
  5.2428 -
  5.2429 -
  5.2430 -
  5.2431 -
  5.2432 -typedef enum
  5.2433 -{
  5.2434 -    SDL_TEXTUREACCESS_STATIC,
  5.2435 -    SDL_TEXTUREACCESS_STREAMING
  5.2436 -} SDL_TextureAccess;
  5.2437 -
  5.2438 -
  5.2439 -
  5.2440 -
  5.2441 -
  5.2442 -
  5.2443 -typedef enum
  5.2444 -{
  5.2445 -    SDL_TEXTUREMODULATE_NONE = 0x00000000,
  5.2446 -    SDL_TEXTUREMODULATE_COLOR = 0x00000001,
  5.2447 -    SDL_TEXTUREMODULATE_ALPHA = 0x00000002
  5.2448 -} SDL_TextureModulate;
  5.2449 -
  5.2450 -
  5.2451 -
  5.2452 -
  5.2453 -
  5.2454 -
  5.2455 -typedef enum
  5.2456 -{
  5.2457 -    SDL_TEXTUREBLENDMODE_NONE = 0x00000000,
  5.2458 -    SDL_TEXTUREBLENDMODE_MASK = 0x00000001,
  5.2459 -    SDL_TEXTUREBLENDMODE_BLEND = 0x00000002,
  5.2460 -    SDL_TEXTUREBLENDMODE_ADD = 0x00000004,
  5.2461 -    SDL_TEXTUREBLENDMODE_MOD = 0x00000008
  5.2462 -} SDL_TextureBlendMode;
  5.2463 -
  5.2464 -
  5.2465 -
  5.2466 -
  5.2467 -
  5.2468 -
  5.2469 -typedef enum
  5.2470 -{
  5.2471 -    SDL_TEXTURESCALEMODE_NONE = 0x00000000,
  5.2472 -    SDL_TEXTURESCALEMODE_FAST = 0x00000001,
  5.2473 -    SDL_TEXTURESCALEMODE_SLOW = 0x00000002,
  5.2474 -    SDL_TEXTURESCALEMODE_BEST = 0x00000004
  5.2475 -} SDL_TextureScaleMode;
  5.2476 -
  5.2477 -
  5.2478 -
  5.2479 -
  5.2480 -
  5.2481 -
  5.2482 -typedef Uint32 SDL_TextureID;
  5.2483 -
  5.2484 -
  5.2485 -
  5.2486 -
  5.2487 -
  5.2488 -
  5.2489 -typedef void *SDL_GLContext;
  5.2490 -
  5.2491 -
  5.2492 -
  5.2493 -
  5.2494 -
  5.2495 -
  5.2496 -typedef enum
  5.2497 -{
  5.2498 -    SDL_GL_RED_SIZE,
  5.2499 -    SDL_GL_GREEN_SIZE,
  5.2500 -    SDL_GL_BLUE_SIZE,
  5.2501 -    SDL_GL_ALPHA_SIZE,
  5.2502 -    SDL_GL_BUFFER_SIZE,
  5.2503 -    SDL_GL_DOUBLEBUFFER,
  5.2504 -    SDL_GL_DEPTH_SIZE,
  5.2505 -    SDL_GL_STENCIL_SIZE,
  5.2506 -    SDL_GL_ACCUM_RED_SIZE,
  5.2507 -    SDL_GL_ACCUM_GREEN_SIZE,
  5.2508 -    SDL_GL_ACCUM_BLUE_SIZE,
  5.2509 -    SDL_GL_ACCUM_ALPHA_SIZE,
  5.2510 -    SDL_GL_STEREO,
  5.2511 -    SDL_GL_MULTISAMPLEBUFFERS,
  5.2512 -    SDL_GL_MULTISAMPLESAMPLES,
  5.2513 -    SDL_GL_ACCELERATED_VISUAL
  5.2514 -} SDL_GLattr;
  5.2515 -# 284 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2516 -extern __attribute__ ((visibility("default"))) int SDL_GetNumVideoDrivers(void);
  5.2517 -# 296 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2518 -extern __attribute__ ((visibility("default"))) const char * SDL_GetVideoDriver(int index);
  5.2519 -# 314 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2520 -extern __attribute__ ((visibility("default"))) int SDL_VideoInit(const char *driver_name,
  5.2521 -                                          Uint32 flags);
  5.2522 -# 326 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2523 -extern __attribute__ ((visibility("default"))) void SDL_VideoQuit(void);
  5.2524 -# 339 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2525 -extern __attribute__ ((visibility("default"))) const char * SDL_GetCurrentVideoDriver(void);
  5.2526 -# 348 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2527 -extern __attribute__ ((visibility("default"))) int SDL_GetNumVideoDisplays(void);
  5.2528 -# 360 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2529 -extern __attribute__ ((visibility("default"))) int SDL_SelectVideoDisplay(int index);
  5.2530 -# 372 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2531 -extern __attribute__ ((visibility("default"))) int SDL_GetCurrentVideoDisplay(void);
  5.2532 -# 381 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2533 -extern __attribute__ ((visibility("default"))) int SDL_GetNumDisplayModes(void);
  5.2534 -# 396 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2535 -extern __attribute__ ((visibility("default"))) int SDL_GetDisplayMode(int index,
  5.2536 -                                               SDL_DisplayMode * mode);
  5.2537 -
  5.2538 -
  5.2539 -
  5.2540 -
  5.2541 -
  5.2542 -
  5.2543 -extern __attribute__ ((visibility("default"))) int SDL_GetDesktopDisplayMode(SDL_DisplayMode * mode);
  5.2544 -
  5.2545 -
  5.2546 -
  5.2547 -
  5.2548 -
  5.2549 -
  5.2550 -extern __attribute__ ((visibility("default"))) int SDL_GetCurrentDisplayMode(SDL_DisplayMode * mode);
  5.2551 -# 428 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2552 -extern __attribute__ ((visibility("default"))) SDL_DisplayMode * SDL_GetClosestDisplayMode(const
  5.2553 -                                                                   SDL_DisplayMode
  5.2554 -                                                                   * mode,
  5.2555 -                                                                   SDL_DisplayMode
  5.2556 -                                                                   * closest);
  5.2557 -# 446 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2558 -extern __attribute__ ((visibility("default"))) int SDL_SetFullscreenDisplayMode(const SDL_DisplayMode
  5.2559 -                                                         * mode);
  5.2560 -
  5.2561 -
  5.2562 -
  5.2563 -
  5.2564 -
  5.2565 -
  5.2566 -
  5.2567 -extern __attribute__ ((visibility("default"))) int SDL_GetFullscreenDisplayMode(SDL_DisplayMode *
  5.2568 -                                                         mode);
  5.2569 -# 465 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2570 -extern __attribute__ ((visibility("default"))) int SDL_SetDisplayPalette(const SDL_Color * colors,
  5.2571 -                                                  int firstcolor,
  5.2572 -                                                  int ncolors);
  5.2573 -# 476 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2574 -extern __attribute__ ((visibility("default"))) int SDL_GetDisplayPalette(SDL_Color * colors,
  5.2575 -                                                  int firstcolor,
  5.2576 -                                                  int ncolors);
  5.2577 -# 489 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2578 -extern __attribute__ ((visibility("default"))) int SDL_SetGamma(float red, float green, float blue);
  5.2579 -# 510 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2580 -extern __attribute__ ((visibility("default"))) int SDL_SetGammaRamp(const Uint16 * red,
  5.2581 -                                             const Uint16 * green,
  5.2582 -                                             const Uint16 * blue);
  5.2583 -# 527 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2584 -extern __attribute__ ((visibility("default"))) int SDL_GetGammaRamp(Uint16 * red, Uint16 * green,
  5.2585 -                                             Uint16 * blue);
  5.2586 -# 547 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2587 -extern __attribute__ ((visibility("default"))) SDL_WindowID SDL_CreateWindow(const char *title,
  5.2588 -                                                      int x, int y, int w,
  5.2589 -                                                      int h, Uint32 flags);
  5.2590 -# 564 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2591 -extern __attribute__ ((visibility("default"))) SDL_WindowID SDL_CreateWindowFrom(const void *data);
  5.2592 -
  5.2593 -
  5.2594 -
  5.2595 -
  5.2596 -
  5.2597 -
  5.2598 -extern __attribute__ ((visibility("default"))) Uint32 SDL_GetWindowFlags(SDL_WindowID windowID);
  5.2599 -# 580 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2600 -extern __attribute__ ((visibility("default"))) void SDL_SetWindowTitle(SDL_WindowID windowID,
  5.2601 -                                                const char *title);
  5.2602 -# 590 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2603 -extern __attribute__ ((visibility("default"))) const char * SDL_GetWindowTitle(SDL_WindowID windowID);
  5.2604 -# 601 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2605 -extern __attribute__ ((visibility("default"))) void SDL_SetWindowIcon(SDL_Surface * icon);
  5.2606 -# 610 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2607 -extern __attribute__ ((visibility("default"))) void SDL_SetWindowData(SDL_WindowID windowID,
  5.2608 -                                               void *userdata);
  5.2609 -# 620 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2610 -extern __attribute__ ((visibility("default"))) void * SDL_GetWindowData(SDL_WindowID windowID);
  5.2611 -# 635 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2612 -extern __attribute__ ((visibility("default"))) void SDL_SetWindowPosition(SDL_WindowID windowID,
  5.2613 -                                                   int x, int y);
  5.2614 -# 645 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2615 -extern __attribute__ ((visibility("default"))) void SDL_GetWindowPosition(SDL_WindowID windowID,
  5.2616 -                                                   int *x, int *y);
  5.2617 -# 658 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2618 -extern __attribute__ ((visibility("default"))) void SDL_SetWindowSize(SDL_WindowID windowID, int w,
  5.2619 -                                               int h);
  5.2620 -# 668 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2621 -extern __attribute__ ((visibility("default"))) void SDL_GetWindowSize(SDL_WindowID windowID, int *w,
  5.2622 -                                               int *h);
  5.2623 -# 678 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2624 -extern __attribute__ ((visibility("default"))) void SDL_ShowWindow(SDL_WindowID windowID);
  5.2625 -# 687 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2626 -extern __attribute__ ((visibility("default"))) void SDL_HideWindow(SDL_WindowID windowID);
  5.2627 -
  5.2628 -
  5.2629 -
  5.2630 -
  5.2631 -
  5.2632 -
  5.2633 -extern __attribute__ ((visibility("default"))) void SDL_RaiseWindow(SDL_WindowID windowID);
  5.2634 -# 703 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2635 -extern __attribute__ ((visibility("default"))) void SDL_MaximizeWindow(SDL_WindowID windowID);
  5.2636 -# 712 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2637 -extern __attribute__ ((visibility("default"))) void SDL_MinimizeWindow(SDL_WindowID windowID);
  5.2638 -# 722 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2639 -extern __attribute__ ((visibility("default"))) void SDL_RestoreWindow(SDL_WindowID windowID);
  5.2640 -# 733 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2641 -extern __attribute__ ((visibility("default"))) int SDL_SetWindowFullscreen(SDL_WindowID windowID,
  5.2642 -                                                    int fullscreen);
  5.2643 -# 745 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2644 -extern __attribute__ ((visibility("default"))) void SDL_SetWindowGrab(SDL_WindowID windowID,
  5.2645 -                                               int mode);
  5.2646 -# 757 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2647 -extern __attribute__ ((visibility("default"))) int SDL_GetWindowGrab(SDL_WindowID windowID);
  5.2648 -# 766 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2649 -struct SDL_SysWMinfo;
  5.2650 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_GetWindowWMInfo(SDL_WindowID windowID,
  5.2651 -                                                     struct SDL_SysWMinfo
  5.2652 -                                                     *info);
  5.2653 -
  5.2654 -
  5.2655 -
  5.2656 -
  5.2657 -
  5.2658 -
  5.2659 -extern __attribute__ ((visibility("default"))) void SDL_DestroyWindow(SDL_WindowID windowID);
  5.2660 -# 790 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2661 -extern __attribute__ ((visibility("default"))) int SDL_GetNumRenderDrivers(void);
  5.2662 -# 804 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2663 -extern __attribute__ ((visibility("default"))) int SDL_GetRenderDriverInfo(int index,
  5.2664 -                                                    SDL_RendererInfo * info);
  5.2665 -# 823 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2666 -extern __attribute__ ((visibility("default"))) int SDL_CreateRenderer(SDL_WindowID windowID,
  5.2667 -                                               int index, Uint32 flags);
  5.2668 -# 834 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2669 -extern __attribute__ ((visibility("default"))) int SDL_SelectRenderer(SDL_WindowID windowID);
  5.2670 -
  5.2671 -
  5.2672 -
  5.2673 -
  5.2674 -
  5.2675 -
  5.2676 -extern __attribute__ ((visibility("default"))) int SDL_GetRendererInfo(SDL_RendererInfo * info);
  5.2677 -# 858 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2678 -extern __attribute__ ((visibility("default"))) SDL_TextureID SDL_CreateTexture(Uint32 format,
  5.2679 -                                                        int access, int w,
  5.2680 -                                                        int h);
  5.2681 -# 877 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2682 -extern __attribute__ ((visibility("default"))) SDL_TextureID SDL_CreateTextureFromSurface(Uint32
  5.2683 -                                                                   format,
  5.2684 -                                                                   SDL_Surface
  5.2685 -                                                                   * surface);
  5.2686 -# 895 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2687 -extern __attribute__ ((visibility("default"))) int SDL_QueryTexture(SDL_TextureID textureID,
  5.2688 -                                             Uint32 * format, int *access,
  5.2689 -                                             int *w, int *h);
  5.2690 -# 910 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2691 -extern __attribute__ ((visibility("default"))) int SDL_QueryTexturePixels(SDL_TextureID textureID,
  5.2692 -                                                   void **pixels, int *pitch);
  5.2693 -# 925 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2694 -extern __attribute__ ((visibility("default"))) int SDL_SetTexturePalette(SDL_TextureID textureID,
  5.2695 -                                                  const SDL_Color * colors,
  5.2696 -                                                  int firstcolor,
  5.2697 -                                                  int ncolors);
  5.2698 -# 942 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2699 -extern __attribute__ ((visibility("default"))) int SDL_GetTexturePalette(SDL_TextureID textureID,
  5.2700 -                                                  SDL_Color * colors,
  5.2701 -                                                  int firstcolor,
  5.2702 -                                                  int ncolors);
  5.2703 -# 961 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2704 -extern __attribute__ ((visibility("default"))) int SDL_SetTextureColorMod(SDL_TextureID textureID,
  5.2705 -                                                   Uint8 r, Uint8 g, Uint8 b);
  5.2706 -# 979 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2707 -extern __attribute__ ((visibility("default"))) int SDL_GetTextureColorMod(SDL_TextureID textureID,
  5.2708 -                                                   Uint8 * r, Uint8 * g,
  5.2709 -                                                   Uint8 * b);
  5.2710 -# 995 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2711 -extern __attribute__ ((visibility("default"))) int SDL_SetTextureAlphaMod(SDL_TextureID textureID,
  5.2712 -                                                   Uint8 alpha);
  5.2713 -# 1010 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2714 -extern __attribute__ ((visibility("default"))) int SDL_GetTextureAlphaMod(SDL_TextureID textureID,
  5.2715 -                                                   Uint8 * alpha);
  5.2716 -# 1027 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2717 -extern __attribute__ ((visibility("default"))) int SDL_SetTextureBlendMode(SDL_TextureID textureID,
  5.2718 -                                                    int blendMode);
  5.2719 -# 1042 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2720 -extern __attribute__ ((visibility("default"))) int SDL_GetTextureBlendMode(SDL_TextureID textureID,
  5.2721 -                                                    int *blendMode);
  5.2722 -# 1059 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2723 -extern __attribute__ ((visibility("default"))) int SDL_SetTextureScaleMode(SDL_TextureID textureID,
  5.2724 -                                                    int scaleMode);
  5.2725 -# 1074 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2726 -extern __attribute__ ((visibility("default"))) int SDL_GetTextureScaleMode(SDL_TextureID textureID,
  5.2727 -                                                    int *scaleMode);
  5.2728 -# 1091 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2729 -extern __attribute__ ((visibility("default"))) int SDL_UpdateTexture(SDL_TextureID textureID,
  5.2730 -                                              const SDL_Rect * rect,
  5.2731 -                                              const void *pixels, int pitch);
  5.2732 -# 1111 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2733 -extern __attribute__ ((visibility("default"))) int SDL_LockTexture(SDL_TextureID textureID,
  5.2734 -                                            const SDL_Rect * rect,
  5.2735 -                                            int markDirty, void **pixels,
  5.2736 -                                            int *pitch);
  5.2737 -# 1124 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2738 -extern __attribute__ ((visibility("default"))) void SDL_UnlockTexture(SDL_TextureID textureID);
  5.2739 -# 1138 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2740 -extern __attribute__ ((visibility("default"))) void SDL_DirtyTexture(SDL_TextureID textureID,
  5.2741 -                                              int numrects,
  5.2742 -                                              const SDL_Rect * rects);
  5.2743 -# 1155 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2744 -extern __attribute__ ((visibility("default"))) int SDL_RenderFill(Uint8 r, Uint8 g, Uint8 b, Uint8 a,
  5.2745 -                                           const SDL_Rect * rect);
  5.2746 -# 1169 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2747 -extern __attribute__ ((visibility("default"))) int SDL_RenderCopy(SDL_TextureID textureID,
  5.2748 -                                           const SDL_Rect * srcrect,
  5.2749 -                                           const SDL_Rect * dstrect);
  5.2750 -# 1186 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2751 -extern __attribute__ ((visibility("default"))) int SDL_RenderReadPixels(const SDL_Rect * rect,
  5.2752 -                                                 void *pixels, int pitch);
  5.2753 -# 1202 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2754 -extern __attribute__ ((visibility("default"))) int SDL_RenderWritePixels(const SDL_Rect * rect,
  5.2755 -                                                  const void *pixels,
  5.2756 -                                                  int pitch);
  5.2757 -
  5.2758 -
  5.2759 -
  5.2760 -
  5.2761 -
  5.2762 -
  5.2763 -extern __attribute__ ((visibility("default"))) void SDL_RenderPresent(void);
  5.2764 -# 1221 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2765 -extern __attribute__ ((visibility("default"))) void SDL_DestroyTexture(SDL_TextureID textureID);
  5.2766 -# 1231 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2767 -extern __attribute__ ((visibility("default"))) void SDL_DestroyRenderer(SDL_WindowID windowID);
  5.2768 -# 1256 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2769 -extern __attribute__ ((visibility("default"))) int SDL_GL_LoadLibrary(const char *path);
  5.2770 -
  5.2771 -
  5.2772 -
  5.2773 -
  5.2774 -
  5.2775 -
  5.2776 -extern __attribute__ ((visibility("default"))) void * SDL_GL_GetProcAddress(const char *proc);
  5.2777 -
  5.2778 -
  5.2779 -
  5.2780 -
  5.2781 -
  5.2782 -
  5.2783 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_GL_ExtensionSupported(const char
  5.2784 -                                                           *extension);
  5.2785 -
  5.2786 -
  5.2787 -
  5.2788 -
  5.2789 -
  5.2790 -
  5.2791 -extern __attribute__ ((visibility("default"))) int SDL_GL_SetAttribute(SDL_GLattr attr, int value);
  5.2792 -
  5.2793 -
  5.2794 -
  5.2795 -
  5.2796 -
  5.2797 -
  5.2798 -extern __attribute__ ((visibility("default"))) int SDL_GL_GetAttribute(SDL_GLattr attr, int *value);
  5.2799 -# 1294 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2800 -extern __attribute__ ((visibility("default"))) SDL_GLContext SDL_GL_CreateContext(SDL_WindowID
  5.2801 -                                                           windowID);
  5.2802 -# 1304 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2803 -extern __attribute__ ((visibility("default"))) int SDL_GL_MakeCurrent(SDL_WindowID windowID,
  5.2804 -                                               SDL_GLContext context);
  5.2805 -# 1318 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2806 -extern __attribute__ ((visibility("default"))) int SDL_GL_SetSwapInterval(int interval);
  5.2807 -# 1329 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2808 -extern __attribute__ ((visibility("default"))) int SDL_GL_GetSwapInterval(void);
  5.2809 -
  5.2810 -
  5.2811 -
  5.2812 -
  5.2813 -
  5.2814 -
  5.2815 -extern __attribute__ ((visibility("default"))) void SDL_GL_SwapWindow(SDL_WindowID windowID);
  5.2816 -# 1345 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2817 -extern __attribute__ ((visibility("default"))) void SDL_GL_DeleteContext(SDL_GLContext context);
  5.2818 -# 1354 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
  5.2819 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.2820 -# 1355 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h" 2
  5.2821 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h" 2
  5.2822 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h" 1
  5.2823 -# 34 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.2824 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keysym.h" 1
  5.2825 -# 31 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keysym.h"
  5.2826 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_scancode.h" 1
  5.2827 -# 44 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_scancode.h"
  5.2828 -typedef enum
  5.2829 -{
  5.2830 -    SDL_SCANCODE_UNKNOWN = 0,
  5.2831 -
  5.2832 -
  5.2833 -
  5.2834 -    SDL_SCANCODE_A = 4,
  5.2835 -    SDL_SCANCODE_B = 5,
  5.2836 -    SDL_SCANCODE_C = 6,
  5.2837 -    SDL_SCANCODE_D = 7,
  5.2838 -    SDL_SCANCODE_E = 8,
  5.2839 -    SDL_SCANCODE_F = 9,
  5.2840 -    SDL_SCANCODE_G = 10,
  5.2841 -    SDL_SCANCODE_H = 11,
  5.2842 -    SDL_SCANCODE_I = 12,
  5.2843 -    SDL_SCANCODE_J = 13,
  5.2844 -    SDL_SCANCODE_K = 14,
  5.2845 -    SDL_SCANCODE_L = 15,
  5.2846 -    SDL_SCANCODE_M = 16,
  5.2847 -    SDL_SCANCODE_N = 17,
  5.2848 -    SDL_SCANCODE_O = 18,
  5.2849 -    SDL_SCANCODE_P = 19,
  5.2850 -    SDL_SCANCODE_Q = 20,
  5.2851 -    SDL_SCANCODE_R = 21,
  5.2852 -    SDL_SCANCODE_S = 22,
  5.2853 -    SDL_SCANCODE_T = 23,
  5.2854 -    SDL_SCANCODE_U = 24,
  5.2855 -    SDL_SCANCODE_V = 25,
  5.2856 -    SDL_SCANCODE_W = 26,
  5.2857 -    SDL_SCANCODE_X = 27,
  5.2858 -    SDL_SCANCODE_Y = 28,
  5.2859 -    SDL_SCANCODE_Z = 29,
  5.2860 -
  5.2861 -    SDL_SCANCODE_1 = 30,
  5.2862 -    SDL_SCANCODE_2 = 31,
  5.2863 -    SDL_SCANCODE_3 = 32,
  5.2864 -    SDL_SCANCODE_4 = 33,
  5.2865 -    SDL_SCANCODE_5 = 34,
  5.2866 -    SDL_SCANCODE_6 = 35,
  5.2867 -    SDL_SCANCODE_7 = 36,
  5.2868 -    SDL_SCANCODE_8 = 37,
  5.2869 -    SDL_SCANCODE_9 = 38,
  5.2870 -    SDL_SCANCODE_0 = 39,
  5.2871 -
  5.2872 -    SDL_SCANCODE_RETURN = 40,
  5.2873 -    SDL_SCANCODE_ESCAPE = 41,
  5.2874 -    SDL_SCANCODE_BACKSPACE = 42,
  5.2875 -    SDL_SCANCODE_TAB = 43,
  5.2876 -    SDL_SCANCODE_SPACE = 44,
  5.2877 -
  5.2878 -    SDL_SCANCODE_MINUS = 45,
  5.2879 -    SDL_SCANCODE_EQUALS = 46,
  5.2880 -    SDL_SCANCODE_LEFTBRACKET = 47,
  5.2881 -    SDL_SCANCODE_RIGHTBRACKET = 48,
  5.2882 -    SDL_SCANCODE_BACKSLASH = 49,
  5.2883 -    SDL_SCANCODE_NONUSHASH = 50,
  5.2884 -    SDL_SCANCODE_SEMICOLON = 51,
  5.2885 -    SDL_SCANCODE_APOSTROPHE = 52,
  5.2886 -    SDL_SCANCODE_GRAVE = 53,
  5.2887 -    SDL_SCANCODE_COMMA = 54,
  5.2888 -    SDL_SCANCODE_PERIOD = 55,
  5.2889 -    SDL_SCANCODE_SLASH = 56,
  5.2890 -
  5.2891 -    SDL_SCANCODE_CAPSLOCK = 57,
  5.2892 -
  5.2893 -    SDL_SCANCODE_F1 = 58,
  5.2894 -    SDL_SCANCODE_F2 = 59,
  5.2895 -    SDL_SCANCODE_F3 = 60,
  5.2896 -    SDL_SCANCODE_F4 = 61,
  5.2897 -    SDL_SCANCODE_F5 = 62,
  5.2898 -    SDL_SCANCODE_F6 = 63,
  5.2899 -    SDL_SCANCODE_F7 = 64,
  5.2900 -    SDL_SCANCODE_F8 = 65,
  5.2901 -    SDL_SCANCODE_F9 = 66,
  5.2902 -    SDL_SCANCODE_F10 = 67,
  5.2903 -    SDL_SCANCODE_F11 = 68,
  5.2904 -    SDL_SCANCODE_F12 = 69,
  5.2905 -
  5.2906 -    SDL_SCANCODE_PRINTSCREEN = 70,
  5.2907 -    SDL_SCANCODE_SCROLLLOCK = 71,
  5.2908 -    SDL_SCANCODE_PAUSE = 72,
  5.2909 -    SDL_SCANCODE_INSERT = 73,
  5.2910 -    SDL_SCANCODE_HOME = 74,
  5.2911 -    SDL_SCANCODE_PAGEUP = 75,
  5.2912 -    SDL_SCANCODE_DELETE = 76,
  5.2913 -    SDL_SCANCODE_END = 77,
  5.2914 -    SDL_SCANCODE_PAGEDOWN = 78,
  5.2915 -    SDL_SCANCODE_RIGHT = 79,
  5.2916 -    SDL_SCANCODE_LEFT = 80,
  5.2917 -    SDL_SCANCODE_DOWN = 81,
  5.2918 -    SDL_SCANCODE_UP = 82,
  5.2919 -
  5.2920 -    SDL_SCANCODE_NUMLOCKCLEAR = 83,
  5.2921 -    SDL_SCANCODE_KP_DIVIDE = 84,
  5.2922 -    SDL_SCANCODE_KP_MULTIPLY = 85,
  5.2923 -    SDL_SCANCODE_KP_MINUS = 86,
  5.2924 -    SDL_SCANCODE_KP_PLUS = 87,
  5.2925 -    SDL_SCANCODE_KP_ENTER = 88,
  5.2926 -    SDL_SCANCODE_KP_1 = 89,
  5.2927 -    SDL_SCANCODE_KP_2 = 90,
  5.2928 -    SDL_SCANCODE_KP_3 = 91,
  5.2929 -    SDL_SCANCODE_KP_4 = 92,
  5.2930 -    SDL_SCANCODE_KP_5 = 93,
  5.2931 -    SDL_SCANCODE_KP_6 = 94,
  5.2932 -    SDL_SCANCODE_KP_7 = 95,
  5.2933 -    SDL_SCANCODE_KP_8 = 96,
  5.2934 -    SDL_SCANCODE_KP_9 = 97,
  5.2935 -    SDL_SCANCODE_KP_0 = 98,
  5.2936 -    SDL_SCANCODE_KP_PERIOD = 99,
  5.2937 -
  5.2938 -    SDL_SCANCODE_NONUSBACKSLASH = 100,
  5.2939 -    SDL_SCANCODE_APPLICATION = 101,
  5.2940 -    SDL_SCANCODE_POWER = 102,
  5.2941 -    SDL_SCANCODE_KP_EQUALS = 103,
  5.2942 -    SDL_SCANCODE_F13 = 104,
  5.2943 -    SDL_SCANCODE_F14 = 105,
  5.2944 -    SDL_SCANCODE_F15 = 106,
  5.2945 -    SDL_SCANCODE_F16 = 107,
  5.2946 -    SDL_SCANCODE_F17 = 108,
  5.2947 -    SDL_SCANCODE_F18 = 109,
  5.2948 -    SDL_SCANCODE_F19 = 110,
  5.2949 -    SDL_SCANCODE_F20 = 111,
  5.2950 -    SDL_SCANCODE_F21 = 112,
  5.2951 -    SDL_SCANCODE_F22 = 113,
  5.2952 -    SDL_SCANCODE_F23 = 114,
  5.2953 -    SDL_SCANCODE_F24 = 115,
  5.2954 -    SDL_SCANCODE_EXECUTE = 116,
  5.2955 -    SDL_SCANCODE_HELP = 117,
  5.2956 -    SDL_SCANCODE_MENU = 118,
  5.2957 -    SDL_SCANCODE_SELECT = 119,
  5.2958 -    SDL_SCANCODE_STOP = 120,
  5.2959 -    SDL_SCANCODE_AGAIN = 121,
  5.2960 -    SDL_SCANCODE_UNDO = 122,
  5.2961 -    SDL_SCANCODE_CUT = 123,
  5.2962 -    SDL_SCANCODE_COPY = 124,
  5.2963 -    SDL_SCANCODE_PASTE = 125,
  5.2964 -    SDL_SCANCODE_FIND = 126,
  5.2965 -    SDL_SCANCODE_MUTE = 127,
  5.2966 -    SDL_SCANCODE_VOLUMEUP = 128,
  5.2967 -    SDL_SCANCODE_VOLUMEDOWN = 129,
  5.2968 -
  5.2969 -
  5.2970 -
  5.2971 -
  5.2972 -    SDL_SCANCODE_KP_COMMA = 133,
  5.2973 -    SDL_SCANCODE_KP_EQUALSAS400 = 134,
  5.2974 -
  5.2975 -    SDL_SCANCODE_INTERNATIONAL1 = 135,
  5.2976 -    SDL_SCANCODE_INTERNATIONAL2 = 136,
  5.2977 -    SDL_SCANCODE_INTERNATIONAL3 = 137,
  5.2978 -    SDL_SCANCODE_INTERNATIONAL4 = 138,
  5.2979 -    SDL_SCANCODE_INTERNATIONAL5 = 139,
  5.2980 -    SDL_SCANCODE_INTERNATIONAL6 = 140,
  5.2981 -    SDL_SCANCODE_INTERNATIONAL7 = 141,
  5.2982 -    SDL_SCANCODE_INTERNATIONAL8 = 142,
  5.2983 -    SDL_SCANCODE_INTERNATIONAL9 = 143,
  5.2984 -    SDL_SCANCODE_LANG1 = 144,
  5.2985 -    SDL_SCANCODE_LANG2 = 145,
  5.2986 -    SDL_SCANCODE_LANG3 = 146,
  5.2987 -    SDL_SCANCODE_LANG4 = 147,
  5.2988 -    SDL_SCANCODE_LANG5 = 148,
  5.2989 -    SDL_SCANCODE_LANG6 = 149,
  5.2990 -    SDL_SCANCODE_LANG7 = 150,
  5.2991 -    SDL_SCANCODE_LANG8 = 151,
  5.2992 -    SDL_SCANCODE_LANG9 = 152,
  5.2993 -
  5.2994 -    SDL_SCANCODE_ALTERASE = 153,
  5.2995 -    SDL_SCANCODE_SYSREQ = 154,
  5.2996 -    SDL_SCANCODE_CANCEL = 155,
  5.2997 -    SDL_SCANCODE_CLEAR = 156,
  5.2998 -    SDL_SCANCODE_PRIOR = 157,
  5.2999 -    SDL_SCANCODE_RETURN2 = 158,
  5.3000 -    SDL_SCANCODE_SEPARATOR = 159,
  5.3001 -    SDL_SCANCODE_OUT = 160,
  5.3002 -    SDL_SCANCODE_OPER = 161,
  5.3003 -    SDL_SCANCODE_CLEARAGAIN = 162,
  5.3004 -    SDL_SCANCODE_CRSEL = 163,
  5.3005 -    SDL_SCANCODE_EXSEL = 164,
  5.3006 -
  5.3007 -    SDL_SCANCODE_KP_00 = 176,
  5.3008 -    SDL_SCANCODE_KP_000 = 177,
  5.3009 -    SDL_SCANCODE_THOUSANDSSEPARATOR = 178,
  5.3010 -    SDL_SCANCODE_DECIMALSEPARATOR = 179,
  5.3011 -    SDL_SCANCODE_CURRENCYUNIT = 180,
  5.3012 -    SDL_SCANCODE_CURRENCYSUBUNIT = 181,
  5.3013 -    SDL_SCANCODE_KP_LEFTPAREN = 182,
  5.3014 -    SDL_SCANCODE_KP_RIGHTPAREN = 183,
  5.3015 -    SDL_SCANCODE_KP_LEFTBRACE = 184,
  5.3016 -    SDL_SCANCODE_KP_RIGHTBRACE = 185,
  5.3017 -    SDL_SCANCODE_KP_TAB = 186,
  5.3018 -    SDL_SCANCODE_KP_BACKSPACE = 187,
  5.3019 -    SDL_SCANCODE_KP_A = 188,
  5.3020 -    SDL_SCANCODE_KP_B = 189,
  5.3021 -    SDL_SCANCODE_KP_C = 190,
  5.3022 -    SDL_SCANCODE_KP_D = 191,
  5.3023 -    SDL_SCANCODE_KP_E = 192,
  5.3024 -    SDL_SCANCODE_KP_F = 193,
  5.3025 -    SDL_SCANCODE_KP_XOR = 194,
  5.3026 -    SDL_SCANCODE_KP_POWER = 195,
  5.3027 -    SDL_SCANCODE_KP_PERCENT = 196,
  5.3028 -    SDL_SCANCODE_KP_LESS = 197,
  5.3029 -    SDL_SCANCODE_KP_GREATER = 198,
  5.3030 -    SDL_SCANCODE_KP_AMPERSAND = 199,
  5.3031 -    SDL_SCANCODE_KP_DBLAMPERSAND = 200,
  5.3032 -    SDL_SCANCODE_KP_VERTICALBAR = 201,
  5.3033 -    SDL_SCANCODE_KP_DBLVERTICALBAR = 202,
  5.3034 -    SDL_SCANCODE_KP_COLON = 203,
  5.3035 -    SDL_SCANCODE_KP_HASH = 204,
  5.3036 -    SDL_SCANCODE_KP_SPACE = 205,
  5.3037 -    SDL_SCANCODE_KP_AT = 206,
  5.3038 -    SDL_SCANCODE_KP_EXCLAM = 207,
  5.3039 -    SDL_SCANCODE_KP_MEMSTORE = 208,
  5.3040 -    SDL_SCANCODE_KP_MEMRECALL = 209,
  5.3041 -    SDL_SCANCODE_KP_MEMCLEAR = 210,
  5.3042 -    SDL_SCANCODE_KP_MEMADD = 211,
  5.3043 -    SDL_SCANCODE_KP_MEMSUBTRACT = 212,
  5.3044 -    SDL_SCANCODE_KP_MEMMULTIPLY = 213,
  5.3045 -    SDL_SCANCODE_KP_MEMDIVIDE = 214,
  5.3046 -    SDL_SCANCODE_KP_PLUSMINUS = 215,
  5.3047 -    SDL_SCANCODE_KP_CLEAR = 216,
  5.3048 -    SDL_SCANCODE_KP_CLEARENTRY = 217,
  5.3049 -    SDL_SCANCODE_KP_BINARY = 218,
  5.3050 -    SDL_SCANCODE_KP_OCTAL = 219,
  5.3051 -    SDL_SCANCODE_KP_DECIMAL = 220,
  5.3052 -    SDL_SCANCODE_KP_HEXADECIMAL = 221,
  5.3053 -
  5.3054 -    SDL_SCANCODE_LCTRL = 224,
  5.3055 -    SDL_SCANCODE_LSHIFT = 225,
  5.3056 -    SDL_SCANCODE_LALT = 226,
  5.3057 -    SDL_SCANCODE_LGUI = 227,
  5.3058 -    SDL_SCANCODE_RCTRL = 228,
  5.3059 -    SDL_SCANCODE_RSHIFT = 229,
  5.3060 -    SDL_SCANCODE_RALT = 230,
  5.3061 -    SDL_SCANCODE_RGUI = 231,
  5.3062 -
  5.3063 -    SDL_SCANCODE_MODE = 257,
  5.3064 -
  5.3065 -
  5.3066 -
  5.3067 -    SDL_SCANCODE_AUDIONEXT = 258,
  5.3068 -    SDL_SCANCODE_AUDIOPREV = 259,
  5.3069 -    SDL_SCANCODE_AUDIOSTOP = 260,
  5.3070 -    SDL_SCANCODE_AUDIOPLAY = 261,
  5.3071 -    SDL_SCANCODE_AUDIOMUTE = 262,
  5.3072 -    SDL_SCANCODE_MEDIASELECT = 263,
  5.3073 -    SDL_SCANCODE_WWW = 264,
  5.3074 -    SDL_SCANCODE_MAIL = 265,
  5.3075 -    SDL_SCANCODE_CALCULATOR = 266,
  5.3076 -    SDL_SCANCODE_COMPUTER = 267,
  5.3077 -    SDL_SCANCODE_AC_SEARCH = 268,
  5.3078 -    SDL_SCANCODE_AC_HOME = 269,
  5.3079 -    SDL_SCANCODE_AC_BACK = 270,
  5.3080 -    SDL_SCANCODE_AC_FORWARD = 271,
  5.3081 -    SDL_SCANCODE_AC_STOP = 272,
  5.3082 -    SDL_SCANCODE_AC_REFRESH = 273,
  5.3083 -    SDL_SCANCODE_AC_BOOKMARKS = 274,
  5.3084 -
  5.3085 -
  5.3086 -
  5.3087 -    SDL_SCANCODE_BRIGHTNESSDOWN = 275,
  5.3088 -    SDL_SCANCODE_BRIGHTNESSUP = 276,
  5.3089 -    SDL_SCANCODE_DISPLAYSWITCH = 277,
  5.3090 -    SDL_SCANCODE_KBDILLUMTOGGLE = 278,
  5.3091 -    SDL_SCANCODE_KBDILLUMDOWN = 279,
  5.3092 -    SDL_SCANCODE_KBDILLUMUP = 280,
  5.3093 -    SDL_SCANCODE_EJECT = 281,
  5.3094 -    SDL_SCANCODE_SLEEP = 282,
  5.3095 -
  5.3096 -
  5.3097 -
  5.3098 -    SDL_NUM_SCANCODES = 512
  5.3099 -} SDL_scancode;
  5.3100 -# 32 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keysym.h" 2
  5.3101 -# 43 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keysym.h"
  5.3102 -typedef Sint32 SDLKey;
  5.3103 -
  5.3104 -
  5.3105 -
  5.3106 -
  5.3107 -enum
  5.3108 -{
  5.3109 -    SDLK_UNKNOWN = 0,
  5.3110 -
  5.3111 -    SDLK_RETURN = (SDL_SCANCODE_RETURN | (1<<30)),
  5.3112 -    SDLK_ESCAPE = (SDL_SCANCODE_ESCAPE | (1<<30)),
  5.3113 -    SDLK_BACKSPACE = (SDL_SCANCODE_BACKSPACE | (1<<30)),
  5.3114 -    SDLK_TAB = (SDL_SCANCODE_TAB | (1<<30)),
  5.3115 -    SDLK_SPACE = (SDL_SCANCODE_SPACE | (1<<30)),
  5.3116 -
  5.3117 -    SDLK_CAPSLOCK = (SDL_SCANCODE_CAPSLOCK | (1<<30)),
  5.3118 -
  5.3119 -    SDLK_F1 = (SDL_SCANCODE_F1 | (1<<30)),
  5.3120 -    SDLK_F2 = (SDL_SCANCODE_F2 | (1<<30)),
  5.3121 -    SDLK_F3 = (SDL_SCANCODE_F3 | (1<<30)),
  5.3122 -    SDLK_F4 = (SDL_SCANCODE_F4 | (1<<30)),
  5.3123 -    SDLK_F5 = (SDL_SCANCODE_F5 | (1<<30)),
  5.3124 -    SDLK_F6 = (SDL_SCANCODE_F6 | (1<<30)),
  5.3125 -    SDLK_F7 = (SDL_SCANCODE_F7 | (1<<30)),
  5.3126 -    SDLK_F8 = (SDL_SCANCODE_F8 | (1<<30)),
  5.3127 -    SDLK_F9 = (SDL_SCANCODE_F9 | (1<<30)),
  5.3128 -    SDLK_F10 = (SDL_SCANCODE_F10 | (1<<30)),
  5.3129 -    SDLK_F11 = (SDL_SCANCODE_F11 | (1<<30)),
  5.3130 -    SDLK_F12 = (SDL_SCANCODE_F12 | (1<<30)),
  5.3131 -
  5.3132 -    SDLK_PRINTSCREEN = (SDL_SCANCODE_PRINTSCREEN | (1<<30)),
  5.3133 -    SDLK_SCROLLLOCK = (SDL_SCANCODE_SCROLLLOCK | (1<<30)),
  5.3134 -    SDLK_PAUSE = (SDL_SCANCODE_PAUSE | (1<<30)),
  5.3135 -    SDLK_INSERT = (SDL_SCANCODE_INSERT | (1<<30)),
  5.3136 -    SDLK_HOME = (SDL_SCANCODE_HOME | (1<<30)),
  5.3137 -    SDLK_PAGEUP = (SDL_SCANCODE_PAGEUP | (1<<30)),
  5.3138 -    SDLK_DELETE = (SDL_SCANCODE_DELETE | (1<<30)),
  5.3139 -    SDLK_END = (SDL_SCANCODE_END | (1<<30)),
  5.3140 -    SDLK_PAGEDOWN = (SDL_SCANCODE_PAGEDOWN | (1<<30)),
  5.3141 -    SDLK_RIGHT = (SDL_SCANCODE_RIGHT | (1<<30)),
  5.3142 -    SDLK_LEFT = (SDL_SCANCODE_LEFT | (1<<30)),
  5.3143 -    SDLK_DOWN = (SDL_SCANCODE_DOWN | (1<<30)),
  5.3144 -    SDLK_UP = (SDL_SCANCODE_UP | (1<<30)),
  5.3145 -
  5.3146 -    SDLK_NUMLOCKCLEAR = (SDL_SCANCODE_NUMLOCKCLEAR | (1<<30)),
  5.3147 -    SDLK_KP_DIVIDE = (SDL_SCANCODE_KP_DIVIDE | (1<<30)),
  5.3148 -    SDLK_KP_MULTIPLY = (SDL_SCANCODE_KP_MULTIPLY | (1<<30)),
  5.3149 -    SDLK_KP_MINUS = (SDL_SCANCODE_KP_MINUS | (1<<30)),
  5.3150 -    SDLK_KP_PLUS = (SDL_SCANCODE_KP_PLUS | (1<<30)),
  5.3151 -    SDLK_KP_ENTER = (SDL_SCANCODE_KP_ENTER | (1<<30)),
  5.3152 -    SDLK_KP_1 = (SDL_SCANCODE_KP_1 | (1<<30)),
  5.3153 -    SDLK_KP_2 = (SDL_SCANCODE_KP_2 | (1<<30)),
  5.3154 -    SDLK_KP_3 = (SDL_SCANCODE_KP_3 | (1<<30)),
  5.3155 -    SDLK_KP_4 = (SDL_SCANCODE_KP_4 | (1<<30)),
  5.3156 -    SDLK_KP_5 = (SDL_SCANCODE_KP_5 | (1<<30)),
  5.3157 -    SDLK_KP_6 = (SDL_SCANCODE_KP_6 | (1<<30)),
  5.3158 -    SDLK_KP_7 = (SDL_SCANCODE_KP_7 | (1<<30)),
  5.3159 -    SDLK_KP_8 = (SDL_SCANCODE_KP_8 | (1<<30)),
  5.3160 -    SDLK_KP_9 = (SDL_SCANCODE_KP_9 | (1<<30)),
  5.3161 -    SDLK_KP_0 = (SDL_SCANCODE_KP_0 | (1<<30)),
  5.3162 -    SDLK_KP_PERIOD = (SDL_SCANCODE_KP_PERIOD | (1<<30)),
  5.3163 -
  5.3164 -    SDLK_APPLICATION = (SDL_SCANCODE_APPLICATION | (1<<30)),
  5.3165 -    SDLK_POWER = (SDL_SCANCODE_POWER | (1<<30)),
  5.3166 -    SDLK_KP_EQUALS = (SDL_SCANCODE_KP_EQUALS | (1<<30)),
  5.3167 -    SDLK_F13 = (SDL_SCANCODE_F13 | (1<<30)),
  5.3168 -    SDLK_F14 = (SDL_SCANCODE_F14 | (1<<30)),
  5.3169 -    SDLK_F15 = (SDL_SCANCODE_F15 | (1<<30)),
  5.3170 -    SDLK_F16 = (SDL_SCANCODE_F16 | (1<<30)),
  5.3171 -    SDLK_F17 = (SDL_SCANCODE_F17 | (1<<30)),
  5.3172 -    SDLK_F18 = (SDL_SCANCODE_F18 | (1<<30)),
  5.3173 -    SDLK_F19 = (SDL_SCANCODE_F19 | (1<<30)),
  5.3174 -    SDLK_F20 = (SDL_SCANCODE_F20 | (1<<30)),
  5.3175 -    SDLK_F21 = (SDL_SCANCODE_F21 | (1<<30)),
  5.3176 -    SDLK_F22 = (SDL_SCANCODE_F22 | (1<<30)),
  5.3177 -    SDLK_F23 = (SDL_SCANCODE_F23 | (1<<30)),
  5.3178 -    SDLK_F24 = (SDL_SCANCODE_F24 | (1<<30)),
  5.3179 -    SDLK_EXECUTE = (SDL_SCANCODE_EXECUTE | (1<<30)),
  5.3180 -    SDLK_HELP = (SDL_SCANCODE_HELP | (1<<30)),
  5.3181 -    SDLK_MENU = (SDL_SCANCODE_MENU | (1<<30)),
  5.3182 -    SDLK_SELECT = (SDL_SCANCODE_SELECT | (1<<30)),
  5.3183 -    SDLK_STOP = (SDL_SCANCODE_STOP | (1<<30)),
  5.3184 -    SDLK_AGAIN = (SDL_SCANCODE_AGAIN | (1<<30)),
  5.3185 -    SDLK_UNDO = (SDL_SCANCODE_UNDO | (1<<30)),
  5.3186 -    SDLK_CUT = (SDL_SCANCODE_CUT | (1<<30)),
  5.3187 -    SDLK_COPY = (SDL_SCANCODE_COPY | (1<<30)),
  5.3188 -    SDLK_PASTE = (SDL_SCANCODE_PASTE | (1<<30)),
  5.3189 -    SDLK_FIND = (SDL_SCANCODE_FIND | (1<<30)),
  5.3190 -    SDLK_MUTE = (SDL_SCANCODE_MUTE | (1<<30)),
  5.3191 -    SDLK_VOLUMEUP = (SDL_SCANCODE_VOLUMEUP | (1<<30)),
  5.3192 -    SDLK_VOLUMEDOWN = (SDL_SCANCODE_VOLUMEDOWN | (1<<30)),
  5.3193 -    SDLK_KP_COMMA = (SDL_SCANCODE_KP_COMMA | (1<<30)),
  5.3194 -    SDLK_KP_EQUALSAS400 =
  5.3195 -        (SDL_SCANCODE_KP_EQUALSAS400 | (1<<30)),
  5.3196 -
  5.3197 -    SDLK_ALTERASE = (SDL_SCANCODE_ALTERASE | (1<<30)),
  5.3198 -    SDLK_SYSREQ = (SDL_SCANCODE_SYSREQ | (1<<30)),
  5.3199 -    SDLK_CANCEL = (SDL_SCANCODE_CANCEL | (1<<30)),
  5.3200 -    SDLK_CLEAR = (SDL_SCANCODE_CLEAR | (1<<30)),
  5.3201 -    SDLK_PRIOR = (SDL_SCANCODE_PRIOR | (1<<30)),
  5.3202 -    SDLK_RETURN2 = (SDL_SCANCODE_RETURN2 | (1<<30)),
  5.3203 -    SDLK_SEPARATOR = (SDL_SCANCODE_SEPARATOR | (1<<30)),
  5.3204 -    SDLK_OUT = (SDL_SCANCODE_OUT | (1<<30)),
  5.3205 -    SDLK_OPER = (SDL_SCANCODE_OPER | (1<<30)),
  5.3206 -    SDLK_CLEARAGAIN = (SDL_SCANCODE_CLEARAGAIN | (1<<30)),
  5.3207 -    SDLK_CRSEL = (SDL_SCANCODE_CRSEL | (1<<30)),
  5.3208 -    SDLK_EXSEL = (SDL_SCANCODE_EXSEL | (1<<30)),
  5.3209 -
  5.3210 -    SDLK_KP_00 = (SDL_SCANCODE_KP_00 | (1<<30)),
  5.3211 -    SDLK_KP_000 = (SDL_SCANCODE_KP_000 | (1<<30)),
  5.3212 -    SDLK_THOUSANDSSEPARATOR =
  5.3213 -        (SDL_SCANCODE_THOUSANDSSEPARATOR | (1<<30)),
  5.3214 -    SDLK_DECIMALSEPARATOR =
  5.3215 -        (SDL_SCANCODE_DECIMALSEPARATOR | (1<<30)),
  5.3216 -    SDLK_CURRENCYUNIT = (SDL_SCANCODE_CURRENCYUNIT | (1<<30)),
  5.3217 -    SDLK_CURRENCYSUBUNIT =
  5.3218 -        (SDL_SCANCODE_CURRENCYSUBUNIT | (1<<30)),
  5.3219 -    SDLK_KP_LEFTPAREN = (SDL_SCANCODE_KP_LEFTPAREN | (1<<30)),
  5.3220 -    SDLK_KP_RIGHTPAREN = (SDL_SCANCODE_KP_RIGHTPAREN | (1<<30)),
  5.3221 -    SDLK_KP_LEFTBRACE = (SDL_SCANCODE_KP_LEFTBRACE | (1<<30)),
  5.3222 -    SDLK_KP_RIGHTBRACE = (SDL_SCANCODE_KP_RIGHTBRACE | (1<<30)),
  5.3223 -    SDLK_KP_TAB = (SDL_SCANCODE_KP_TAB | (1<<30)),
  5.3224 -    SDLK_KP_BACKSPACE = (SDL_SCANCODE_KP_BACKSPACE | (1<<30)),
  5.3225 -    SDLK_KP_A = (SDL_SCANCODE_KP_A | (1<<30)),
  5.3226 -    SDLK_KP_B = (SDL_SCANCODE_KP_B | (1<<30)),
  5.3227 -    SDLK_KP_C = (SDL_SCANCODE_KP_C | (1<<30)),
  5.3228 -    SDLK_KP_D = (SDL_SCANCODE_KP_D | (1<<30)),
  5.3229 -    SDLK_KP_E = (SDL_SCANCODE_KP_E | (1<<30)),
  5.3230 -    SDLK_KP_F = (SDL_SCANCODE_KP_F | (1<<30)),
  5.3231 -    SDLK_KP_XOR = (SDL_SCANCODE_KP_XOR | (1<<30)),
  5.3232 -    SDLK_KP_POWER = (SDL_SCANCODE_KP_POWER | (1<<30)),
  5.3233 -    SDLK_KP_PERCENT = (SDL_SCANCODE_KP_PERCENT | (1<<30)),
  5.3234 -    SDLK_KP_LESS = (SDL_SCANCODE_KP_LESS | (1<<30)),
  5.3235 -    SDLK_KP_GREATER = (SDL_SCANCODE_KP_GREATER | (1<<30)),
  5.3236 -    SDLK_KP_AMPERSAND = (SDL_SCANCODE_KP_AMPERSAND | (1<<30)),
  5.3237 -    SDLK_KP_DBLAMPERSAND =
  5.3238 -        (SDL_SCANCODE_KP_DBLAMPERSAND | (1<<30)),
  5.3239 -    SDLK_KP_VERTICALBAR =
  5.3240 -        (SDL_SCANCODE_KP_VERTICALBAR | (1<<30)),
  5.3241 -    SDLK_KP_DBLVERTICALBAR =
  5.3242 -        (SDL_SCANCODE_KP_DBLVERTICALBAR | (1<<30)),
  5.3243 -    SDLK_KP_COLON = (SDL_SCANCODE_KP_COLON | (1<<30)),
  5.3244 -    SDLK_KP_HASH = (SDL_SCANCODE_KP_HASH | (1<<30)),
  5.3245 -    SDLK_KP_SPACE = (SDL_SCANCODE_KP_SPACE | (1<<30)),
  5.3246 -    SDLK_KP_AT = (SDL_SCANCODE_KP_AT | (1<<30)),
  5.3247 -    SDLK_KP_EXCLAM = (SDL_SCANCODE_KP_EXCLAM | (1<<30)),
  5.3248 -    SDLK_KP_MEMSTORE = (SDL_SCANCODE_KP_MEMSTORE | (1<<30)),
  5.3249 -    SDLK_KP_MEMRECALL = (SDL_SCANCODE_KP_MEMRECALL | (1<<30)),
  5.3250 -    SDLK_KP_MEMCLEAR = (SDL_SCANCODE_KP_MEMCLEAR | (1<<30)),
  5.3251 -    SDLK_KP_MEMADD = (SDL_SCANCODE_KP_MEMADD | (1<<30)),
  5.3252 -    SDLK_KP_MEMSUBTRACT =
  5.3253 -        (SDL_SCANCODE_KP_MEMSUBTRACT | (1<<30)),
  5.3254 -    SDLK_KP_MEMMULTIPLY =
  5.3255 -        (SDL_SCANCODE_KP_MEMMULTIPLY | (1<<30)),
  5.3256 -    SDLK_KP_MEMDIVIDE = (SDL_SCANCODE_KP_MEMDIVIDE | (1<<30)),
  5.3257 -    SDLK_KP_PLUSMINUS = (SDL_SCANCODE_KP_PLUSMINUS | (1<<30)),
  5.3258 -    SDLK_KP_CLEAR = (SDL_SCANCODE_KP_CLEAR | (1<<30)),
  5.3259 -    SDLK_KP_CLEARENTRY = (SDL_SCANCODE_KP_CLEARENTRY | (1<<30)),
  5.3260 -    SDLK_KP_BINARY = (SDL_SCANCODE_KP_BINARY | (1<<30)),
  5.3261 -    SDLK_KP_OCTAL = (SDL_SCANCODE_KP_OCTAL | (1<<30)),
  5.3262 -    SDLK_KP_DECIMAL = (SDL_SCANCODE_KP_DECIMAL | (1<<30)),
  5.3263 -    SDLK_KP_HEXADECIMAL =
  5.3264 -        (SDL_SCANCODE_KP_HEXADECIMAL | (1<<30)),
  5.3265 -
  5.3266 -    SDLK_LCTRL = (SDL_SCANCODE_LCTRL | (1<<30)),
  5.3267 -    SDLK_LSHIFT = (SDL_SCANCODE_LSHIFT | (1<<30)),
  5.3268 -    SDLK_LALT = (SDL_SCANCODE_LALT | (1<<30)),
  5.3269 -    SDLK_LGUI = (SDL_SCANCODE_LGUI | (1<<30)),
  5.3270 -    SDLK_RCTRL = (SDL_SCANCODE_RCTRL | (1<<30)),
  5.3271 -    SDLK_RSHIFT = (SDL_SCANCODE_RSHIFT | (1<<30)),
  5.3272 -    SDLK_RALT = (SDL_SCANCODE_RALT | (1<<30)),
  5.3273 -    SDLK_RGUI = (SDL_SCANCODE_RGUI | (1<<30)),
  5.3274 -
  5.3275 -    SDLK_MODE = (SDL_SCANCODE_MODE | (1<<30)),
  5.3276 -
  5.3277 -    SDLK_AUDIONEXT = (SDL_SCANCODE_AUDIONEXT | (1<<30)),
  5.3278 -    SDLK_AUDIOPREV = (SDL_SCANCODE_AUDIOPREV | (1<<30)),
  5.3279 -    SDLK_AUDIOSTOP = (SDL_SCANCODE_AUDIOSTOP | (1<<30)),
  5.3280 -    SDLK_AUDIOPLAY = (SDL_SCANCODE_AUDIOPLAY | (1<<30)),
  5.3281 -    SDLK_AUDIOMUTE = (SDL_SCANCODE_AUDIOMUTE | (1<<30)),
  5.3282 -    SDLK_MEDIASELECT = (SDL_SCANCODE_MEDIASELECT | (1<<30)),
  5.3283 -    SDLK_WWW = (SDL_SCANCODE_WWW | (1<<30)),
  5.3284 -    SDLK_MAIL = (SDL_SCANCODE_MAIL | (1<<30)),
  5.3285 -    SDLK_CALCULATOR = (SDL_SCANCODE_CALCULATOR | (1<<30)),
  5.3286 -    SDLK_COMPUTER = (SDL_SCANCODE_COMPUTER | (1<<30)),
  5.3287 -    SDLK_AC_SEARCH = (SDL_SCANCODE_AC_SEARCH | (1<<30)),
  5.3288 -    SDLK_AC_HOME = (SDL_SCANCODE_AC_HOME | (1<<30)),
  5.3289 -    SDLK_AC_BACK = (SDL_SCANCODE_AC_BACK | (1<<30)),
  5.3290 -    SDLK_AC_FORWARD = (SDL_SCANCODE_AC_FORWARD | (1<<30)),
  5.3291 -    SDLK_AC_STOP = (SDL_SCANCODE_AC_STOP | (1<<30)),
  5.3292 -    SDLK_AC_REFRESH = (SDL_SCANCODE_AC_REFRESH | (1<<30)),
  5.3293 -    SDLK_AC_BOOKMARKS = (SDL_SCANCODE_AC_BOOKMARKS | (1<<30)),
  5.3294 -
  5.3295 -    SDLK_BRIGHTNESSDOWN =
  5.3296 -        (SDL_SCANCODE_BRIGHTNESSDOWN | (1<<30)),
  5.3297 -    SDLK_BRIGHTNESSUP = (SDL_SCANCODE_BRIGHTNESSUP | (1<<30)),
  5.3298 -    SDLK_DISPLAYSWITCH = (SDL_SCANCODE_DISPLAYSWITCH | (1<<30)),
  5.3299 -    SDLK_KBDILLUMTOGGLE =
  5.3300 -        (SDL_SCANCODE_KBDILLUMTOGGLE | (1<<30)),
  5.3301 -    SDLK_KBDILLUMDOWN = (SDL_SCANCODE_KBDILLUMDOWN | (1<<30)),
  5.3302 -    SDLK_KBDILLUMUP = (SDL_SCANCODE_KBDILLUMUP | (1<<30)),
  5.3303 -    SDLK_EJECT = (SDL_SCANCODE_EJECT | (1<<30)),
  5.3304 -    SDLK_SLEEP = (SDL_SCANCODE_SLEEP | (1<<30)),
  5.3305 -};
  5.3306 -
  5.3307 -
  5.3308 -
  5.3309 -
  5.3310 -
  5.3311 -
  5.3312 -typedef enum
  5.3313 -{
  5.3314 -    KMOD_NONE = 0x0000,
  5.3315 -    KMOD_LSHIFT = 0x0001,
  5.3316 -    KMOD_RSHIFT = 0x0002,
  5.3317 -    KMOD_LCTRL = 0x0040,
  5.3318 -    KMOD_RCTRL = 0x0080,
  5.3319 -    KMOD_LALT = 0x0100,
  5.3320 -    KMOD_RALT = 0x0200,
  5.3321 -    KMOD_LGUI = 0x0400,
  5.3322 -    KMOD_RGUI = 0x0800,
  5.3323 -    KMOD_NUM = 0x1000,
  5.3324 -    KMOD_CAPS = 0x2000,
  5.3325 -    KMOD_MODE = 0x4000,
  5.3326 -    KMOD_RESERVED = 0x8000
  5.3327 -} SDLMod;
  5.3328 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h" 2
  5.3329 -
  5.3330 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.3331 -# 37 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h" 2
  5.3332 -# 49 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3333 -typedef struct SDL_keysym
  5.3334 -{
  5.3335 -    SDL_scancode scancode;
  5.3336 -    SDLKey sym;
  5.3337 -    Uint16 mod;
  5.3338 -    Uint32 unicode;
  5.3339 -} SDL_keysym;
  5.3340 -# 66 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3341 -extern __attribute__ ((visibility("default"))) int SDL_GetNumKeyboards(void);
  5.3342 -# 79 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3343 -extern __attribute__ ((visibility("default"))) int SDL_SelectKeyboard(int index);
  5.3344 -# 94 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3345 -extern __attribute__ ((visibility("default"))) Uint8 * SDL_GetKeyboardState(int *numkeys);
  5.3346 -
  5.3347 -
  5.3348 -
  5.3349 -
  5.3350 -
  5.3351 -
  5.3352 -extern __attribute__ ((visibility("default"))) SDLMod SDL_GetModState(void);
  5.3353 -# 110 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3354 -extern __attribute__ ((visibility("default"))) void SDL_SetModState(SDLMod modstate);
  5.3355 -# 121 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3356 -extern __attribute__ ((visibility("default"))) SDLKey SDL_GetKeyFromScancode(SDL_scancode scancode);
  5.3357 -# 132 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3358 -extern __attribute__ ((visibility("default"))) SDL_scancode SDL_GetScancodeFromKey(SDLKey key);
  5.3359 -# 143 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3360 -extern __attribute__ ((visibility("default"))) const char * SDL_GetScancodeName(SDL_scancode
  5.3361 -                                                        scancode);
  5.3362 -# 155 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3363 -extern __attribute__ ((visibility("default"))) const char * SDL_GetKeyName(SDLKey key);
  5.3364 -# 164 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
  5.3365 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.3366 -# 165 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h" 2
  5.3367 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h" 2
  5.3368 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h" 1
  5.3369 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3370 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.3371 -# 37 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h" 2
  5.3372 -
  5.3373 -
  5.3374 -
  5.3375 -
  5.3376 -
  5.3377 -
  5.3378 -
  5.3379 -typedef struct SDL_Cursor SDL_Cursor;
  5.3380 -# 55 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3381 -extern __attribute__ ((visibility("default"))) int SDL_GetNumMice(void);
  5.3382 -# 68 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3383 -extern __attribute__ ((visibility("default"))) int SDL_SelectMouse(int index);
  5.3384 -
  5.3385 -
  5.3386 -
  5.3387 -
  5.3388 -
  5.3389 -
  5.3390 -extern __attribute__ ((visibility("default"))) SDL_WindowID SDL_GetMouseFocusWindow(void);
  5.3391 -# 95 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3392 -extern __attribute__ ((visibility("default"))) int SDL_SetRelativeMouseMode(SDL_bool enabled);
  5.3393 -# 104 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3394 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_GetRelativeMouseMode(void);
  5.3395 -# 116 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3396 -extern __attribute__ ((visibility("default"))) Uint8 SDL_GetMouseState(int *x, int *y);
  5.3397 -# 127 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3398 -extern __attribute__ ((visibility("default"))) Uint8 SDL_GetRelativeMouseState(int *x, int *y);
  5.3399 -# 140 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3400 -extern __attribute__ ((visibility("default"))) void SDL_WarpMouseInWindow(SDL_WindowID windowID,
  5.3401 -                                                   int x, int y);
  5.3402 -# 160 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3403 -extern __attribute__ ((visibility("default"))) SDL_Cursor * SDL_CreateCursor(const Uint8 * data,
  5.3404 -                                                     const Uint8 * mask,
  5.3405 -                                                     int w, int h, int hot_x,
  5.3406 -                                                     int hot_y);
  5.3407 -# 172 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3408 -extern __attribute__ ((visibility("default"))) void SDL_SetCursor(SDL_Cursor * cursor);
  5.3409 -
  5.3410 -
  5.3411 -
  5.3412 -
  5.3413 -
  5.3414 -
  5.3415 -extern __attribute__ ((visibility("default"))) SDL_Cursor * SDL_GetCursor(void);
  5.3416 -# 188 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3417 -extern __attribute__ ((visibility("default"))) void SDL_FreeCursor(SDL_Cursor * cursor);
  5.3418 -# 199 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3419 -extern __attribute__ ((visibility("default"))) int SDL_ShowCursor(int toggle);
  5.3420 -# 225 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h"
  5.3421 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.3422 -# 226 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_mouse.h" 2
  5.3423 -# 37 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h" 2
  5.3424 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h" 1
  5.3425 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h"
  5.3426 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.3427 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h" 2
  5.3428 -# 49 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h"
  5.3429 -struct _SDL_Joystick;
  5.3430 -typedef struct _SDL_Joystick SDL_Joystick;
  5.3431 -
  5.3432 -
  5.3433 -
  5.3434 -
  5.3435 -
  5.3436 -
  5.3437 -extern __attribute__ ((visibility("default"))) int SDL_NumJoysticks(void);
  5.3438 -
  5.3439 -
  5.3440 -
  5.3441 -
  5.3442 -
  5.3443 -
  5.3444 -extern __attribute__ ((visibility("default"))) const char * SDL_JoystickName(int device_index);
  5.3445 -# 73 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h"
  5.3446 -extern __attribute__ ((visibility("default"))) SDL_Joystick * SDL_JoystickOpen(int device_index);
  5.3447 -
  5.3448 -
  5.3449 -
  5.3450 -
  5.3451 -extern __attribute__ ((visibility("default"))) int SDL_JoystickOpened(int device_index);
  5.3452 -
  5.3453 -
  5.3454 -
  5.3455 -
  5.3456 -extern __attribute__ ((visibility("default"))) int SDL_JoystickIndex(SDL_Joystick * joystick);
  5.3457 -
  5.3458 -
  5.3459 -
  5.3460 -
  5.3461 -extern __attribute__ ((visibility("default"))) int SDL_JoystickNumAxes(SDL_Joystick * joystick);
  5.3462 -
  5.3463 -
  5.3464 -
  5.3465 -
  5.3466 -
  5.3467 -
  5.3468 -extern __attribute__ ((visibility("default"))) int SDL_JoystickNumBalls(SDL_Joystick * joystick);
  5.3469 -
  5.3470 -
  5.3471 -
  5.3472 -
  5.3473 -extern __attribute__ ((visibility("default"))) int SDL_JoystickNumHats(SDL_Joystick * joystick);
  5.3474 -
  5.3475 -
  5.3476 -
  5.3477 -
  5.3478 -extern __attribute__ ((visibility("default"))) int SDL_JoystickNumButtons(SDL_Joystick * joystick);
  5.3479 -
  5.3480 -
  5.3481 -
  5.3482 -
  5.3483 -
  5.3484 -
  5.3485 -extern __attribute__ ((visibility("default"))) void SDL_JoystickUpdate(void);
  5.3486 -# 121 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h"
  5.3487 -extern __attribute__ ((visibility("default"))) int SDL_JoystickEventState(int state);
  5.3488 -
  5.3489 -
  5.3490 -
  5.3491 -
  5.3492 -
  5.3493 -
  5.3494 -extern __attribute__ ((visibility("default"))) Sint16 SDL_JoystickGetAxis(SDL_Joystick * joystick,
  5.3495 -                                                   int axis);
  5.3496 -# 147 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h"
  5.3497 -extern __attribute__ ((visibility("default"))) Uint8 SDL_JoystickGetHat(SDL_Joystick * joystick,
  5.3498 -                                                 int hat);
  5.3499 -
  5.3500 -
  5.3501 -
  5.3502 -
  5.3503 -
  5.3504 -
  5.3505 -extern __attribute__ ((visibility("default"))) int SDL_JoystickGetBall(SDL_Joystick * joystick,
  5.3506 -                                                int ball, int *dx, int *dy);
  5.3507 -
  5.3508 -
  5.3509 -
  5.3510 -
  5.3511 -
  5.3512 -extern __attribute__ ((visibility("default"))) Uint8 SDL_JoystickGetButton(SDL_Joystick * joystick,
  5.3513 -                                                    int button);
  5.3514 -
  5.3515 -
  5.3516 -
  5.3517 -
  5.3518 -extern __attribute__ ((visibility("default"))) void SDL_JoystickClose(SDL_Joystick * joystick);
  5.3519 -# 177 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h"
  5.3520 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.3521 -# 178 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h" 2
  5.3522 -# 38 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h" 2
  5.3523 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_quit.h" 1
  5.3524 -# 39 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h" 2
  5.3525 -
  5.3526 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.3527 -# 41 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h" 2
  5.3528 -# 57 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
  5.3529 -typedef enum
  5.3530 -{
  5.3531 -    SDL_NOEVENT = 0,
  5.3532 -    SDL_WINDOWEVENT,
  5.3533 -    SDL_KEYDOWN,
  5.3534 -    SDL_KEYUP,
  5.3535 -    SDL_TEXTINPUT,
  5.3536 -    SDL_MOUSEMOTION,
  5.3537 -    SDL_MOUSEBUTTONDOWN,
  5.3538 -    SDL_MOUSEBUTTONUP,
  5.3539 -    SDL_MOUSEWHEEL,
  5.3540 -    SDL_JOYAXISMOTION,
  5.3541 -    SDL_JOYBALLMOTION,
  5.3542 -    SDL_JOYHATMOTION,
  5.3543 -    SDL_JOYBUTTONDOWN,
  5.3544 -    SDL_JOYBUTTONUP,
  5.3545 -    SDL_QUIT,
  5.3546 -    SDL_SYSWMEVENT,
  5.3547 -    SDL_EVENT_RESERVED1,
  5.3548 -    SDL_EVENT_RESERVED2,
  5.3549 -    SDL_EVENT_RESERVED3,
  5.3550 -
  5.3551 -    SDL_USEREVENT = 24,
  5.3552 -
  5.3553 -
  5.3554 -
  5.3555 -    SDL_NUMEVENTS = 32
  5.3556 -} SDL_EventType;
  5.3557 -
  5.3558 -
  5.3559 -
  5.3560 -
  5.3561 -
  5.3562 -
  5.3563 -
  5.3564 -typedef enum
  5.3565 -{
  5.3566 -    SDL_WINDOWEVENTMASK = (1<<(SDL_WINDOWEVENT)),
  5.3567 -    SDL_KEYDOWNMASK = (1<<(SDL_KEYDOWN)),
  5.3568 -    SDL_KEYUPMASK = (1<<(SDL_KEYUP)),
  5.3569 -    SDL_KEYEVENTMASK = (1<<(SDL_KEYDOWN)) | (1<<(SDL_KEYUP)),
  5.3570 -    SDL_TEXTINPUTMASK = (1<<(SDL_TEXTINPUT)),
  5.3571 -    SDL_MOUSEMOTIONMASK = (1<<(SDL_MOUSEMOTION)),
  5.3572 -    SDL_MOUSEBUTTONDOWNMASK = (1<<(SDL_MOUSEBUTTONDOWN)),
  5.3573 -    SDL_MOUSEBUTTONUPMASK = (1<<(SDL_MOUSEBUTTONUP)),
  5.3574 -    SDL_MOUSEWHEELMASK = (1<<(SDL_MOUSEWHEEL)),
  5.3575 -    SDL_MOUSEEVENTMASK = (1<<(SDL_MOUSEMOTION)) |
  5.3576 -        (1<<(SDL_MOUSEBUTTONDOWN)) | (1<<(SDL_MOUSEBUTTONUP)),
  5.3577 -    SDL_JOYAXISMOTIONMASK = (1<<(SDL_JOYAXISMOTION)),
  5.3578 -    SDL_JOYBALLMOTIONMASK = (1<<(SDL_JOYBALLMOTION)),
  5.3579 -    SDL_JOYHATMOTIONMASK = (1<<(SDL_JOYHATMOTION)),
  5.3580 -    SDL_JOYBUTTONDOWNMASK = (1<<(SDL_JOYBUTTONDOWN)),
  5.3581 -    SDL_JOYBUTTONUPMASK = (1<<(SDL_JOYBUTTONUP)),
  5.3582 -    SDL_JOYEVENTMASK = (1<<(SDL_JOYAXISMOTION)) |
  5.3583 -        (1<<(SDL_JOYBALLMOTION)) |
  5.3584 -        (1<<(SDL_JOYHATMOTION)) |
  5.3585 -        (1<<(SDL_JOYBUTTONDOWN)) | (1<<(SDL_JOYBUTTONUP)),
  5.3586 -    SDL_QUITMASK = (1<<(SDL_QUIT)),
  5.3587 -    SDL_SYSWMEVENTMASK = (1<<(SDL_SYSWMEVENT))
  5.3588 -} SDL_EventMask;
  5.3589 -
  5.3590 -
  5.3591 -
  5.3592 -
  5.3593 -
  5.3594 -
  5.3595 -
  5.3596 -typedef struct SDL_WindowEvent
  5.3597 -{
  5.3598 -    Uint8 type;
  5.3599 -    Uint8 event;
  5.3600 -    int data1;
  5.3601 -    int data2;
  5.3602 -    SDL_WindowID windowID;
  5.3603 -} SDL_WindowEvent;
  5.3604 -
  5.3605 -
  5.3606 -
  5.3607 -
  5.3608 -
  5.3609 -
  5.3610 -typedef struct SDL_KeyboardEvent
  5.3611 -{
  5.3612 -    Uint8 type;
  5.3613 -    Uint8 which;
  5.3614 -    Uint8 state;
  5.3615 -    SDL_keysym keysym;
  5.3616 -    SDL_WindowID windowID;
  5.3617 -} SDL_KeyboardEvent;
  5.3618 -
  5.3619 -
  5.3620 -
  5.3621 -
  5.3622 -
  5.3623 -
  5.3624 -
  5.3625 -typedef struct SDL_TextInputEvent
  5.3626 -{
  5.3627 -    Uint8 type;
  5.3628 -    Uint8 which;
  5.3629 -    char text[(32)];
  5.3630 -    SDL_WindowID windowID;
  5.3631 -} SDL_TextInputEvent;
  5.3632 -
  5.3633 -
  5.3634 -
  5.3635 -
  5.3636 -
  5.3637 -
  5.3638 -typedef struct SDL_MouseMotionEvent
  5.3639 -{
  5.3640 -    Uint8 type;
  5.3641 -    Uint8 which;
  5.3642 -    Uint8 state;
  5.3643 -    int x;
  5.3644 -    int y;
  5.3645 -    int xrel;
  5.3646 -    int yrel;
  5.3647 -    SDL_WindowID windowID;
  5.3648 -} SDL_MouseMotionEvent;
  5.3649 -
  5.3650 -
  5.3651 -
  5.3652 -
  5.3653 -
  5.3654 -
  5.3655 -typedef struct SDL_MouseButtonEvent
  5.3656 -{
  5.3657 -    Uint8 type;
  5.3658 -    Uint8 which;
  5.3659 -    Uint8 button;
  5.3660 -    Uint8 state;
  5.3661 -    int x;
  5.3662 -    int y;
  5.3663 -    SDL_WindowID windowID;
  5.3664 -} SDL_MouseButtonEvent;
  5.3665 -
  5.3666 -
  5.3667 -
  5.3668 -
  5.3669 -
  5.3670 -
  5.3671 -typedef struct SDL_MouseWheelEvent
  5.3672 -{
  5.3673 -    Uint8 type;
  5.3674 -    Uint8 which;
  5.3675 -    int x;
  5.3676 -    int y;
  5.3677 -    SDL_WindowID windowID;
  5.3678 -} SDL_MouseWheelEvent;
  5.3679 -
  5.3680 -
  5.3681 -
  5.3682 -
  5.3683 -
  5.3684 -
  5.3685 -typedef struct SDL_JoyAxisEvent
  5.3686 -{
  5.3687 -    Uint8 type;
  5.3688 -    Uint8 which;
  5.3689 -    Uint8 axis;
  5.3690 -    int value;
  5.3691 -} SDL_JoyAxisEvent;
  5.3692 -
  5.3693 -
  5.3694 -
  5.3695 -
  5.3696 -
  5.3697 -
  5.3698 -typedef struct SDL_JoyBallEvent
  5.3699 -{
  5.3700 -    Uint8 type;
  5.3701 -    Uint8 which;
  5.3702 -    Uint8 ball;
  5.3703 -    int xrel;
  5.3704 -    int yrel;
  5.3705 -} SDL_JoyBallEvent;
  5.3706 -
  5.3707 -
  5.3708 -
  5.3709 -
  5.3710 -
  5.3711 -
  5.3712 -typedef struct SDL_JoyHatEvent
  5.3713 -{
  5.3714 -    Uint8 type;
  5.3715 -    Uint8 which;
  5.3716 -    Uint8 hat;
  5.3717 -    Uint8 value;
  5.3718 -
  5.3719 -
  5.3720 -
  5.3721 -
  5.3722 -
  5.3723 -} SDL_JoyHatEvent;
  5.3724 -
  5.3725 -
  5.3726 -
  5.3727 -
  5.3728 -
  5.3729 -
  5.3730 -typedef struct SDL_JoyButtonEvent
  5.3731 -{
  5.3732 -    Uint8 type;
  5.3733 -    Uint8 which;
  5.3734 -    Uint8 button;
  5.3735 -    Uint8 state;
  5.3736 -} SDL_JoyButtonEvent;
  5.3737 -
  5.3738 -
  5.3739 -
  5.3740 -
  5.3741 -
  5.3742 -
  5.3743 -typedef struct SDL_QuitEvent
  5.3744 -{
  5.3745 -    Uint8 type;
  5.3746 -} SDL_QuitEvent;
  5.3747 -
  5.3748 -
  5.3749 -
  5.3750 -
  5.3751 -
  5.3752 -
  5.3753 -typedef struct SDL_UserEvent
  5.3754 -{
  5.3755 -    Uint8 type;
  5.3756 -    int code;
  5.3757 -    void *data1;
  5.3758 -    void *data2;
  5.3759 -    SDL_WindowID windowID;
  5.3760 -} SDL_UserEvent;
  5.3761 -# 297 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
  5.3762 -struct SDL_SysWMmsg;
  5.3763 -typedef struct SDL_SysWMmsg SDL_SysWMmsg;
  5.3764 -typedef struct SDL_SysWMEvent
  5.3765 -{
  5.3766 -    Uint8 type;
  5.3767 -    SDL_SysWMmsg *msg;
  5.3768 -} SDL_SysWMEvent;
  5.3769 -
  5.3770 -
  5.3771 -typedef struct SDL_ActiveEvent
  5.3772 -{
  5.3773 -    Uint8 type;
  5.3774 -    Uint8 gain;
  5.3775 -    Uint8 state;
  5.3776 -} SDL_ActiveEvent;
  5.3777 -typedef struct SDL_ResizeEvent
  5.3778 -{
  5.3779 -    Uint8 type;
  5.3780 -    int w;
  5.3781 -    int h;
  5.3782 -} SDL_ResizeEvent;
  5.3783 -
  5.3784 -
  5.3785 -
  5.3786 -
  5.3787 -
  5.3788 -
  5.3789 -typedef union SDL_Event
  5.3790 -{
  5.3791 -    Uint8 type;
  5.3792 -    SDL_WindowEvent window;
  5.3793 -    SDL_KeyboardEvent key;
  5.3794 -    SDL_TextInputEvent text;
  5.3795 -    SDL_MouseMotionEvent motion;
  5.3796 -    SDL_MouseButtonEvent button;
  5.3797 -    SDL_MouseWheelEvent wheel;
  5.3798 -    SDL_JoyAxisEvent jaxis;
  5.3799 -    SDL_JoyBallEvent jball;
  5.3800 -    SDL_JoyHatEvent jhat;
  5.3801 -    SDL_JoyButtonEvent jbutton;
  5.3802 -    SDL_QuitEvent quit;
  5.3803 -    SDL_UserEvent user;
  5.3804 -    SDL_SysWMEvent syswm;
  5.3805 -
  5.3806 -
  5.3807 -    SDL_ActiveEvent active;
  5.3808 -    SDL_ResizeEvent resize;
  5.3809 -} SDL_Event;
  5.3810 -# 353 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
  5.3811 -extern __attribute__ ((visibility("default"))) void SDL_PumpEvents(void);
  5.3812 -# 367 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
  5.3813 -typedef enum
  5.3814 -{
  5.3815 -    SDL_ADDEVENT,
  5.3816 -    SDL_PEEKEVENT,
  5.3817 -    SDL_GETEVENT
  5.3818 -} SDL_eventaction;
  5.3819 -
  5.3820 -extern __attribute__ ((visibility("default"))) int SDL_PeepEvents(SDL_Event * events, int numevents,
  5.3821 -                                           SDL_eventaction action,
  5.3822 -                                           Uint32 mask);
  5.3823 -
  5.3824 -
  5.3825 -
  5.3826 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_HasEvent(Uint32 mask);
  5.3827 -
  5.3828 -
  5.3829 -
  5.3830 -
  5.3831 -
  5.3832 -extern __attribute__ ((visibility("default"))) int SDL_PollEvent(SDL_Event * event);
  5.3833 -
  5.3834 -
  5.3835 -
  5.3836 -
  5.3837 -
  5.3838 -extern __attribute__ ((visibility("default"))) int SDL_WaitEvent(SDL_Event * event);
  5.3839 -
  5.3840 -
  5.3841 -
  5.3842 -
  5.3843 -
  5.3844 -extern __attribute__ ((visibility("default"))) int SDL_PushEvent(SDL_Event * event);
  5.3845 -
  5.3846 -
  5.3847 -
  5.3848 -
  5.3849 -
  5.3850 -
  5.3851 -
  5.3852 -typedef int ( * SDL_EventFilter) (void *userdata, SDL_Event * event);
  5.3853 -# 423 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
  5.3854 -extern __attribute__ ((visibility("default"))) void SDL_SetEventFilter(SDL_EventFilter filter,
  5.3855 -                                                void *userdata);
  5.3856 -
  5.3857 -
  5.3858 -
  5.3859 -
  5.3860 -
  5.3861 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_GetEventFilter(SDL_EventFilter * filter,
  5.3862 -                                                    void **userdata);
  5.3863 -
  5.3864 -
  5.3865 -
  5.3866 -
  5.3867 -
  5.3868 -extern __attribute__ ((visibility("default"))) void SDL_FilterEvents(SDL_EventFilter filter,
  5.3869 -                                              void *userdata);
  5.3870 -# 452 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
  5.3871 -extern __attribute__ ((visibility("default"))) Uint8 SDL_EventState(Uint8 type, int state);
  5.3872 -# 461 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
  5.3873 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.3874 -# 462 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h" 2
  5.3875 -# 85 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.3876 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_loadso.h" 1
  5.3877 -# 48 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_loadso.h"
  5.3878 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.3879 -# 49 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_loadso.h" 2
  5.3880 -# 60 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_loadso.h"
  5.3881 -extern __attribute__ ((visibility("default"))) void * SDL_LoadObject(const char *sofile);
  5.3882 -
  5.3883 -
  5.3884 -
  5.3885 -
  5.3886 -
  5.3887 -extern __attribute__ ((visibility("default"))) void * SDL_LoadFunction(void *handle,
  5.3888 -                                               const char *name);
  5.3889 -
  5.3890 -
  5.3891 -extern __attribute__ ((visibility("default"))) void SDL_UnloadObject(void *handle);
  5.3892 -
  5.3893 -
  5.3894 -
  5.3895 -
  5.3896 -
  5.3897 -
  5.3898 -
  5.3899 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.3900 -# 79 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_loadso.h" 2
  5.3901 -# 86 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.3902 -
  5.3903 -
  5.3904 -
  5.3905 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h" 1
  5.3906 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h"
  5.3907 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.3908 -# 36 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h" 2
  5.3909 -# 52 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h"
  5.3910 -extern __attribute__ ((visibility("default"))) Uint32 SDL_GetTicks(void);
  5.3911 -
  5.3912 -
  5.3913 -extern __attribute__ ((visibility("default"))) void SDL_Delay(Uint32 ms);
  5.3914 -
  5.3915 -
  5.3916 -typedef Uint32( * SDL_TimerCallback) (Uint32 interval);
  5.3917 -# 88 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h"
  5.3918 -extern __attribute__ ((visibility("default"))) int SDL_SetTimer(Uint32 interval,
  5.3919 -                                         SDL_TimerCallback callback);
  5.3920 -# 101 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h"
  5.3921 -typedef Uint32( * SDL_NewTimerCallback) (Uint32 interval, void *param);
  5.3922 -
  5.3923 -
  5.3924 -typedef struct _SDL_TimerID *SDL_TimerID;
  5.3925 -
  5.3926 -
  5.3927 -
  5.3928 -
  5.3929 -extern __attribute__ ((visibility("default"))) SDL_TimerID SDL_AddTimer(Uint32 interval,
  5.3930 -                                                 SDL_NewTimerCallback
  5.3931 -                                                 callback, void *param);
  5.3932 -
  5.3933 -
  5.3934 -
  5.3935 -
  5.3936 -extern __attribute__ ((visibility("default"))) SDL_bool SDL_RemoveTimer(SDL_TimerID t);
  5.3937 -
  5.3938 -
  5.3939 -
  5.3940 -
  5.3941 -
  5.3942 -
  5.3943 -
  5.3944 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.3945 -# 125 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_timer.h" 2
  5.3946 -# 90 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.3947 -
  5.3948 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_version.h" 1
  5.3949 -# 34 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_version.h"
  5.3950 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.3951 -# 35 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_version.h" 2
  5.3952 -# 55 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_version.h"
  5.3953 -typedef struct SDL_version
  5.3954 -{
  5.3955 -    Uint8 major;
  5.3956 -    Uint8 minor;
  5.3957 -    Uint8 patch;
  5.3958 -} SDL_version;
  5.3959 -# 132 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_version.h"
  5.3960 -extern __attribute__ ((visibility("default"))) void SDL_GetVersion(SDL_version * ver);
  5.3961 -
  5.3962 -
  5.3963 -
  5.3964 -
  5.3965 -
  5.3966 -
  5.3967 -
  5.3968 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.3969 -# 141 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_version.h" 2
  5.3970 -# 92 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.3971 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h" 1
  5.3972 -# 31 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h"
  5.3973 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.3974 -# 32 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h" 2
  5.3975 -# 74 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h"
  5.3976 -typedef struct SDL_VideoInfo
  5.3977 -{
  5.3978 -    Uint32 hw_available:1;
  5.3979 -    Uint32 wm_available:1;
  5.3980 -    Uint32 UnusedBits1:6;
  5.3981 -    Uint32 UnusedBits2:1;
  5.3982 -    Uint32 blit_hw:1;
  5.3983 -    Uint32 blit_hw_CC:1;
  5.3984 -    Uint32 blit_hw_A:1;
  5.3985 -    Uint32 blit_sw:1;
  5.3986 -    Uint32 blit_sw_CC:1;
  5.3987 -    Uint32 blit_sw_A:1;
  5.3988 -    Uint32 blit_fill:1;
  5.3989 -    Uint32 UnusedBits3:16;
  5.3990 -    Uint32 video_mem;
  5.3991 -
  5.3992 -    SDL_PixelFormat *vfmt;
  5.3993 -} SDL_VideoInfo;
  5.3994 -# 107 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h"
  5.3995 -typedef struct SDL_Overlay
  5.3996 -{
  5.3997 -    Uint32 format;
  5.3998 -    int w, h;
  5.3999 -    int planes;
  5.4000 -    Uint16 *pitches;
  5.4001 -    Uint8 **pixels;
  5.4002 -
  5.4003 -
  5.4004 -    struct private_yuvhwfuncs *hwfuncs;
  5.4005 -    struct private_yuvhwdata *hwdata;
  5.4006 -
  5.4007 -
  5.4008 -    Uint32 hw_overlay:1;
  5.4009 -    Uint32 UnusedBits:31;
  5.4010 -} SDL_Overlay;
  5.4011 -
  5.4012 -typedef enum
  5.4013 -{
  5.4014 -    SDL_GRAB_QUERY = -1,
  5.4015 -    SDL_GRAB_OFF = 0,
  5.4016 -    SDL_GRAB_ON = 1
  5.4017 -} SDL_GrabMode;
  5.4018 -
  5.4019 -struct SDL_SysWMinfo;
  5.4020 -# 211 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h"
  5.4021 -extern __attribute__ ((visibility("default"))) const SDL_version * SDL_Linked_Version(void);
  5.4022 -extern __attribute__ ((visibility("default"))) char * SDL_AudioDriverName(char *namebuf, int maxlen);
  5.4023 -extern __attribute__ ((visibility("default"))) char * SDL_VideoDriverName(char *namebuf, int maxlen);
  5.4024 -extern __attribute__ ((visibility("default"))) const SDL_VideoInfo * SDL_GetVideoInfo(void);
  5.4025 -extern __attribute__ ((visibility("default"))) int SDL_VideoModeOK(int width,
  5.4026 -                                            int height,
  5.4027 -                                            int bpp, Uint32 flags);
  5.4028 -extern __attribute__ ((visibility("default"))) SDL_Rect ** SDL_ListModes(SDL_PixelFormat * format,
  5.4029 -                                                 Uint32 flags);
  5.4030 -extern __attribute__ ((visibility("default"))) SDL_Surface * SDL_SetVideoMode(int width,
  5.4031 -                                                      int height,
  5.4032 -                                                      int bpp, Uint32 flags);
  5.4033 -extern __attribute__ ((visibility("default"))) SDL_Surface * SDL_GetVideoSurface(void);
  5.4034 -extern __attribute__ ((visibility("default"))) void SDL_UpdateRects(SDL_Surface * screen,
  5.4035 -                                             int numrects, SDL_Rect * rects);
  5.4036 -extern __attribute__ ((visibility("default"))) void SDL_UpdateRect(SDL_Surface * screen,
  5.4037 -                                            Sint32 x,
  5.4038 -                                            Sint32 y, Uint32 w, Uint32 h);
  5.4039 -extern __attribute__ ((visibility("default"))) int SDL_Flip(SDL_Surface * screen);
  5.4040 -extern __attribute__ ((visibility("default"))) int SDL_SetAlpha(SDL_Surface * surface,
  5.4041 -                                         Uint32 flag, Uint8 alpha);
  5.4042 -extern __attribute__ ((visibility("default"))) SDL_Surface * SDL_DisplayFormat(SDL_Surface * surface);
  5.4043 -extern __attribute__ ((visibility("default"))) SDL_Surface * SDL_DisplayFormatAlpha(SDL_Surface *
  5.4044 -                                                            surface);
  5.4045 -extern __attribute__ ((visibility("default"))) void SDL_WM_SetCaption(const char *title,
  5.4046 -                                               const char *icon);
  5.4047 -extern __attribute__ ((visibility("default"))) void SDL_WM_GetCaption(const char **title,
  5.4048 -                                               const char **icon);
  5.4049 -extern __attribute__ ((visibility("default"))) void SDL_WM_SetIcon(SDL_Surface * icon, Uint8 * mask);
  5.4050 -extern __attribute__ ((visibility("default"))) int SDL_WM_IconifyWindow(void);
  5.4051 -extern __attribute__ ((visibility("default"))) int SDL_WM_ToggleFullScreen(SDL_Surface * surface);
  5.4052 -extern __attribute__ ((visibility("default"))) SDL_GrabMode SDL_WM_GrabInput(SDL_GrabMode mode);
  5.4053 -extern __attribute__ ((visibility("default"))) int SDL_SetPalette(SDL_Surface * surface,
  5.4054 -                                           int flags,
  5.4055 -                                           const SDL_Color * colors,
  5.4056 -                                           int firstcolor, int ncolors);
  5.4057 -extern __attribute__ ((visibility("default"))) int SDL_SetColors(SDL_Surface * surface,
  5.4058 -                                          const SDL_Color * colors,
  5.4059 -                                          int firstcolor, int ncolors);
  5.4060 -extern __attribute__ ((visibility("default"))) int SDL_GetWMInfo(struct SDL_SysWMinfo *info);
  5.4061 -extern __attribute__ ((visibility("default"))) Uint8 SDL_GetAppState(void);
  5.4062 -extern __attribute__ ((visibility("default"))) void SDL_WarpMouse(Uint16 x, Uint16 y);
  5.4063 -extern __attribute__ ((visibility("default"))) SDL_Overlay * SDL_CreateYUVOverlay(int width,
  5.4064 -                                                          int height,
  5.4065 -                                                          Uint32 format,
  5.4066 -                                                          SDL_Surface *
  5.4067 -                                                          display);
  5.4068 -extern __attribute__ ((visibility("default"))) int SDL_LockYUVOverlay(SDL_Overlay * overlay);
  5.4069 -extern __attribute__ ((visibility("default"))) void SDL_UnlockYUVOverlay(SDL_Overlay * overlay);
  5.4070 -extern __attribute__ ((visibility("default"))) int SDL_DisplayYUVOverlay(SDL_Overlay * overlay,
  5.4071 -                                                  SDL_Rect * dstrect);
  5.4072 -extern __attribute__ ((visibility("default"))) void SDL_FreeYUVOverlay(SDL_Overlay * overlay);
  5.4073 -extern __attribute__ ((visibility("default"))) void SDL_GL_SwapBuffers(void);
  5.4074 -extern __attribute__ ((visibility("default"))) int SDL_EnableKeyRepeat(int delay, int interval);
  5.4075 -extern __attribute__ ((visibility("default"))) void SDL_GetKeyRepeat(int *delay, int *interval);
  5.4076 -extern __attribute__ ((visibility("default"))) int SDL_EnableUNICODE(int enable);
  5.4077 -
  5.4078 -
  5.4079 -
  5.4080 -
  5.4081 -
  5.4082 -
  5.4083 -
  5.4084 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.4085 -# 275 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_compat.h" 2
  5.4086 -# 93 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.4087 -
  5.4088 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/begin_code.h" 1
  5.4089 -# 95 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.4090 -# 121 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h"
  5.4091 -extern __attribute__ ((visibility("default"))) int SDL_Init(Uint32 flags);
  5.4092 -
  5.4093 -
  5.4094 -extern __attribute__ ((visibility("default"))) int SDL_InitSubSystem(Uint32 flags);
  5.4095 -
  5.4096 -
  5.4097 -extern __attribute__ ((visibility("default"))) void SDL_QuitSubSystem(Uint32 flags);
  5.4098 -
  5.4099 -
  5.4100 -
  5.4101 -
  5.4102 -
  5.4103 -extern __attribute__ ((visibility("default"))) Uint32 SDL_WasInit(Uint32 flags);
  5.4104 -
  5.4105 -
  5.4106 -
  5.4107 -
  5.4108 -extern __attribute__ ((visibility("default"))) void SDL_Quit(void);
  5.4109 -
  5.4110 -
  5.4111 -
  5.4112 -
  5.4113 -
  5.4114 -
  5.4115 -
  5.4116 -# 1 "/home/lifning/hack/devkitPro/libnds/include/SDL/close_code.h" 1
  5.4117 -# 147 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL.h" 2
  5.4118 -# 3 "/home/lifning/hack/nds-test/source/main.c" 2
  5.4119 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 1
  5.4120 -# 44 "/home/lifning/hack/devkitPro/libnds/include/nds.h"
  5.4121 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h" 1
  5.4122 -# 65 "/home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h"
  5.4123 -# 1 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 1 3
  5.4124 -# 45 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4125 -typedef signed char int8_t ;
  5.4126 -typedef unsigned char uint8_t ;
  5.4127 -
  5.4128 -
  5.4129 -
  5.4130 -
  5.4131 -typedef signed char int_least8_t;
  5.4132 -typedef unsigned char uint_least8_t;
  5.4133 -
  5.4134 -
  5.4135 -
  5.4136 -
  5.4137 -typedef signed short int16_t;
  5.4138 -typedef unsigned short uint16_t;
  5.4139 -# 71 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4140 -typedef int16_t int_least16_t;
  5.4141 -typedef uint16_t uint_least16_t;
  5.4142 -# 83 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4143 -typedef signed int int32_t;
  5.4144 -typedef unsigned int uint32_t;
  5.4145 -# 101 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4146 -typedef int32_t int_least32_t;
  5.4147 -typedef uint32_t uint_least32_t;
  5.4148 -# 123 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4149 -typedef signed long long int64_t;
  5.4150 -typedef unsigned long long uint64_t;
  5.4151 -# 133 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4152 -typedef int64_t int_least64_t;
  5.4153 -typedef uint64_t uint_least64_t;
  5.4154 -# 163 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4155 -  typedef signed int int_fast8_t;
  5.4156 -  typedef unsigned int uint_fast8_t;
  5.4157 -
  5.4158 -
  5.4159 -
  5.4160 -
  5.4161 -  typedef signed int int_fast16_t;
  5.4162 -  typedef unsigned int uint_fast16_t;
  5.4163 -
  5.4164 -
  5.4165 -
  5.4166 -
  5.4167 -  typedef signed int int_fast32_t;
  5.4168 -  typedef unsigned int uint_fast32_t;
  5.4169 -# 217 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4170 -  typedef int_least64_t int_fast64_t;
  5.4171 -  typedef uint_least64_t uint_fast64_t;
  5.4172 -
  5.4173 -
  5.4174 -
  5.4175 -
  5.4176 -
  5.4177 -
  5.4178 -
  5.4179 -  typedef long long int intmax_t;
  5.4180 -# 235 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4181 -  typedef long long unsigned int uintmax_t;
  5.4182 -# 247 "/home/lifning/hack/devkitPro/devkitARM/bin/../lib/gcc/arm-eabi/4.3.0/../../../../arm-eabi/include/stdint.h" 3
  5.4183 -typedef signed int intptr_t;
  5.4184 -typedef unsigned int uintptr_t;
  5.4185 -# 66 "/home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h" 2
  5.4186 -
  5.4187 -typedef uint8_t uint8;
  5.4188 -typedef uint16_t uint16;
  5.4189 -typedef uint32_t uint32;
  5.4190 -typedef uint64_t uint64;
  5.4191 -
  5.4192 -typedef int8_t int8;
  5.4193 -typedef int16_t int16;
  5.4194 -typedef int32_t int32;
  5.4195 -typedef int64_t int64;
  5.4196 -
  5.4197 -typedef float float32;
  5.4198 -typedef double float64;
  5.4199 -
  5.4200 -typedef volatile uint8_t vuint8;
  5.4201 -typedef volatile uint16_t vuint16;
  5.4202 -typedef volatile uint32_t vuint32;
  5.4203 -typedef volatile uint64_t vuint64;
  5.4204 -
  5.4205 -typedef volatile int8_t vint8;
  5.4206 -typedef volatile int16_t vint16;
  5.4207 -typedef volatile int32_t vint32;
  5.4208 -typedef volatile int64_t vint64;
  5.4209 -
  5.4210 -typedef volatile float32 vfloat32;
  5.4211 -typedef volatile float64 vfloat64;
  5.4212 -
  5.4213 -typedef uint8_t byte;
  5.4214 -
  5.4215 -typedef uint8_t u8;
  5.4216 -typedef uint16_t u16;
  5.4217 -typedef uint32_t u32;
  5.4218 -typedef uint64_t u64;
  5.4219 -
  5.4220 -typedef int8_t s8;
  5.4221 -typedef int16_t s16;
  5.4222 -typedef int32_t s32;
  5.4223 -typedef int64_t s64;
  5.4224 -
  5.4225 -typedef volatile u8 vu8;
  5.4226 -typedef volatile u16 vu16;
  5.4227 -typedef volatile u32 vu32;
  5.4228 -typedef volatile u64 vu64;
  5.4229 -
  5.4230 -typedef volatile s8 vs8;
  5.4231 -typedef volatile s16 vs16;
  5.4232 -typedef volatile s32 vs32;
  5.4233 -typedef volatile s64 vs64;
  5.4234 -
  5.4235 -typedef struct touchPosition {
  5.4236 - int16 x;
  5.4237 - int16 y;
  5.4238 - int16 px;
  5.4239 - int16 py;
  5.4240 - int16 z1;
  5.4241 - int16 z2;
  5.4242 -} touchPosition;
  5.4243 -
  5.4244 -
  5.4245 -
  5.4246 -
  5.4247 -
  5.4248 -
  5.4249 -typedef enum { false, true } bool;
  5.4250 -
  5.4251 -
  5.4252 -
  5.4253 -typedef void ( * IntFn)(void);
  5.4254 -typedef void (* VoidFunctionPointer)(void);
  5.4255 -typedef void (* fp)(void);
  5.4256 -# 45 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4257 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h" 1
  5.4258 -# 47 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4259 -typedef struct DecompressionStream {
  5.4260 -  int (*getSize)(uint8 * source, uint16 * dest, uint32 r2);
  5.4261 -  int (*getResult)(uint8 * source);
  5.4262 -  uint8 (*readByte)(uint8 * source);
  5.4263 -} __attribute__ ((packed)) TDecompressionStream;
  5.4264 -
  5.4265 -
  5.4266 -typedef struct UnpackStruct {
  5.4267 -  uint16 sourceSize;
  5.4268 -  uint8 sourceWidth;
  5.4269 -  uint8 destWidth;
  5.4270 -  uint32 dataOffset;
  5.4271 -} __attribute__ ((packed)) TUnpackStruct, * PUnpackStruct;
  5.4272 -
  5.4273 -
  5.4274 -
  5.4275 -
  5.4276 -
  5.4277 -
  5.4278 -void swiSoftReset(void);
  5.4279 -# 84 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4280 -void swiDelay(uint32 duration);
  5.4281 -# 98 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4282 -void swiIntrWait(int waitForSet, uint32 flags);
  5.4283 -# 108 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4284 -void swiWaitForVBlank(void);
  5.4285 -# 135 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4286 -int swiDivide(int numerator, int divisor);
  5.4287 -int swiRemainder(int numerator, int divisor);
  5.4288 -void swiDivMod(int numerator, int divisor, int * result, int * remainder);
  5.4289 -# 168 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4290 -void swiCopy(const void * source, void * dest, int flags);
  5.4291 -void swiFastCopy(const void * source, void * dest, int flags);
  5.4292 -
  5.4293 -
  5.4294 -
  5.4295 -int swiSqrt(int value);
  5.4296 -# 182 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4297 -uint16 swiCRC16(uint16 crc, void * data, uint32 size);
  5.4298 -
  5.4299 -
  5.4300 -
  5.4301 -
  5.4302 -
  5.4303 -
  5.4304 -int swiIsDebugger(void);
  5.4305 -# 207 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4306 -void swiUnpackBits(uint8 * source, uint32 * destination, PUnpackStruct params);
  5.4307 -# 220 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4308 -void swiDecompressLZSSWram(void * source, void * destination);
  5.4309 -int swiDecompressLZSSVram(void * source, void * destination, uint32 toGetSize, TDecompressionStream * stream);
  5.4310 -
  5.4311 -
  5.4312 -
  5.4313 -
  5.4314 -int swiDecompressHuffman(void * source, void * destination, uint32 toGetSize, TDecompressionStream * stream);
  5.4315 -# 260 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4316 -void swiDecompressRLEWram(void * source, void * destination);
  5.4317 -int swiDecompressRLEVram(void * source, void * destination, uint32 toGetSize, TDecompressionStream * stream);
  5.4318 -# 279 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4319 -void swiWaitForIRQ(void);
  5.4320 -
  5.4321 -void swiSetHaltCR(uint32 data);
  5.4322 -
  5.4323 -
  5.4324 -extern void swiDecodeDelta8(void * source, void * destination);
  5.4325 -# 295 "/home/lifning/hack/devkitPro/libnds/include/nds/bios.h"
  5.4326 -void swiDecodeDelta16(void * source, void * destination);
  5.4327 -# 46 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4328 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/card.h" 1
  5.4329 -# 32 "/home/lifning/hack/devkitPro/libnds/include/nds/card.h"
  5.4330 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h" 1
  5.4331 -# 33 "/home/lifning/hack/devkitPro/libnds/include/nds/card.h" 2
  5.4332 -# 78 "/home/lifning/hack/devkitPro/libnds/include/nds/card.h"
  5.4333 -void cardWriteCommand(const uint8 * command);
  5.4334 -
  5.4335 -void cardPolledTransfer(uint32 flags, uint32 * destination, uint32 length, const uint8 * command);
  5.4336 -void cardStartTransfer(const uint8 * command, uint32 * destination, int channel, uint32 flags);
  5.4337 -uint32 cardWriteAndRead(const uint8 * command, uint32 flags);
  5.4338 -
  5.4339 -
  5.4340 -
  5.4341 -void cardRead00(uint32 address, uint32 * destination, uint32 length, uint32 flags);
  5.4342 -void cardReadHeader(uint8 * header);
  5.4343 -int cardReadID(uint32 flags);
  5.4344 -
  5.4345 -
  5.4346 -void cardReadEeprom(uint32 address, uint8 *data, uint32 length, uint32 addrtype);
  5.4347 -
  5.4348 -
  5.4349 -void cardWriteEeprom(uint32 address, uint8 *data, uint32 length, uint32 addrtype);
  5.4350 -
  5.4351 -
  5.4352 -
  5.4353 -uint8 cardEepromReadID(uint8 i);
  5.4354 -
  5.4355 -
  5.4356 -uint8 cardEepromCommand(uint8 command, uint32 address);
  5.4357 -# 110 "/home/lifning/hack/devkitPro/libnds/include/nds/card.h"
  5.4358 -int cardEepromGetType(void);
  5.4359 -
  5.4360 -
  5.4361 -uint32 cardEepromGetSize();
  5.4362 -
  5.4363 -
  5.4364 -void cardEepromChipErase(void);
  5.4365 -
  5.4366 -
  5.4367 -void cardEepromSectorErase(uint32 address);
  5.4368 -# 47 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4369 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/dma.h" 1
  5.4370 -# 93 "/home/lifning/hack/devkitPro/libnds/include/nds/dma.h"
  5.4371 -static inline void dmaCopyWords(uint8 channel, const void* src, void* dest, uint32 size) {
  5.4372 - (*(vuint32*)(0x040000B0+(channel*12))) = (uint32)src;
  5.4373 - (*(vuint32*)(0x040000B4+(channel*12))) = (uint32)dest;
  5.4374 - (*(vuint32*)(0x040000B8+(channel*12))) = ((1 << (31)) | (1 << (26)) | 0) | (size>>2);
  5.4375 - while((*(vuint32*)(0x040000B8+(channel*12))) & (1 << (31)));
  5.4376 -}
  5.4377 -
  5.4378 -static inline void dmaCopyHalfWords(uint8 channel, const void* src, void* dest, uint32 size) {
  5.4379 - (*(vuint32*)(0x040000B0+(channel*12))) = (uint32)src;
  5.4380 - (*(vuint32*)(0x040000B4+(channel*12))) = (uint32)dest;
  5.4381 - (*(vuint32*)(0x040000B8+(channel*12))) = ((1 << (31)) | 0 | 0) | (size>>1);
  5.4382 - while((*(vuint32*)(0x040000B8+(channel*12))) & (1 << (31)));
  5.4383 -}
  5.4384 -
  5.4385 -static inline void dmaCopy(const void * source, void * dest, uint32 size) {
  5.4386 - (*(vuint32*)(0x040000B0+(3*12))) = (uint32)source;
  5.4387 - (*(vuint32*)(0x040000B4+(3*12))) = (uint32)dest;
  5.4388 - (*(vuint32*)(0x040000B8+(3*12))) = ((1 << (31)) | 0 | 0) | (size>>1);
  5.4389 - while((*(vuint32*)(0x040000B8+(3*12))) & (1 << (31)));
  5.4390 -}
  5.4391 -
  5.4392 -static inline void dmaCopyWordsAsynch(uint8 channel, const void* src, void* dest, uint32 size) {
  5.4393 - (*(vuint32*)(0x040000B0+(channel*12))) = (uint32)src;
  5.4394 - (*(vuint32*)(0x040000B4+(channel*12))) = (uint32)dest;
  5.4395 - (*(vuint32*)(0x040000B8+(channel*12))) = ((1 << (31)) | (1 << (26)) | 0) | (size>>2);
  5.4396 -
  5.4397 -}
  5.4398 -
  5.4399 -static inline void dmaCopyHalfWordsAsynch(uint8 channel, const void* src, void* dest, uint32 size) {
  5.4400 - (*(vuint32*)(0x040000B0+(channel*12))) = (uint32)src;
  5.4401 - (*(vuint32*)(0x040000B4+(channel*12))) = (uint32)dest;
  5.4402 - (*(vuint32*)(0x040000B8+(channel*12))) = ((1 << (31)) | 0 | 0) | (size>>1);
  5.4403 -}
  5.4404 -
  5.4405 -static inline void dmaCopyAsynch(const void * source, void * dest, uint32 size) {
  5.4406 - (*(vuint32*)(0x040000B0+(3*12))) = (uint32)source;
  5.4407 - (*(vuint32*)(0x040000B4+(3*12))) = (uint32)dest;
  5.4408 - (*(vuint32*)(0x040000B8+(3*12))) = ((1 << (31)) | 0 | 0) | (size>>1);
  5.4409 -}
  5.4410 -
  5.4411 -static inline void dmaFillWords( const void* src, void* dest, uint32 size) {
  5.4412 - (*(vuint32*)(0x040000B0+(3*12))) = (uint32)src;
  5.4413 - (*(vuint32*)(0x040000B4+(3*12))) = (uint32)dest;
  5.4414 - (*(vuint32*)(0x040000B8+(3*12))) = (1 << (24)) | ((1 << (31)) | (1 << (26)) | 0) | (size>>2);
  5.4415 - while((*(vuint32*)(0x040000B8+(3*12))) & (1 << (31)));
  5.4416 -}
  5.4417 -
  5.4418 -static inline void dmaFillHalfWords( const void* src, void* dest, uint32 size) {
  5.4419 - (*(vuint32*)(0x040000B0+(3*12))) = (uint32)src;
  5.4420 - (*(vuint32*)(0x040000B4+(3*12))) = (uint32)dest;
  5.4421 - (*(vuint32*)(0x040000B8+(3*12))) = (1 << (24)) | ((1 << (31)) | 0 | 0) | (size>>1);
  5.4422 - while((*(vuint32*)(0x040000B8+(3*12))) & (1 << (31)));
  5.4423 -}
  5.4424 -
  5.4425 -static inline int dmaBusy(uint8 channel) {
  5.4426 - return ((*(vuint32*)(0x040000B8+(channel*12))) & (1 << (31)))>>31;
  5.4427 -}
  5.4428 -# 48 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4429 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/interrupts.h" 1
  5.4430 -# 47 "/home/lifning/hack/devkitPro/libnds/include/nds/interrupts.h"
  5.4431 -enum IRQ_MASKS {
  5.4432 - IRQ_VBLANK = (1 << (0)),
  5.4433 - IRQ_HBLANK = (1 << (1)),
  5.4434 - IRQ_VCOUNT = (1 << (2)),
  5.4435 - IRQ_TIMER0 = (1 << (3)),
  5.4436 - IRQ_TIMER1 = (1 << (4)),
  5.4437 - IRQ_TIMER2 = (1 << (5)),
  5.4438 - IRQ_TIMER3 = (1 << (6)),
  5.4439 - IRQ_NETWORK = (1 << (7)),
  5.4440 - IRQ_DMA0 = (1 << (8)),
  5.4441 - IRQ_DMA1 = (1 << (9)),
  5.4442 - IRQ_DMA2 = (1 << (10)),
  5.4443 - IRQ_DMA3 = (1 << (11)),
  5.4444 - IRQ_KEYS = (1 << (12)),
  5.4445 - IRQ_CART = (1 << (13)),
  5.4446 - IRQ_IPC_SYNC = (1 << (16)),
  5.4447 - IRQ_FIFO_EMPTY = (1 << (17)),
  5.4448 - IRQ_FIFO_NOT_EMPTY = (1 << (18)),
  5.4449 - IRQ_CARD = (1 << (19)),
  5.4450 - IRQ_CARD_LINE = (1 << (20)),
  5.4451 - IRQ_GEOMETRY_FIFO = (1 << (21)),
  5.4452 - IRQ_LID = (1 << (22)),
  5.4453 - IRQ_SPI = (1 << (23)),
  5.4454 - IRQ_WIFI = (1 << (24)),
  5.4455 - IRQ_ALL = (~0)
  5.4456 -};
  5.4457 -
  5.4458 -
  5.4459 -
  5.4460 -typedef enum IRQ_MASKS IRQ_MASK;
  5.4461 -# 112 "/home/lifning/hack/devkitPro/libnds/include/nds/interrupts.h"
  5.4462 -enum IME_VALUE {
  5.4463 - IME_DISABLE = 0,
  5.4464 - IME_ENABLE = 1,
  5.4465 -};
  5.4466 -
  5.4467 -
  5.4468 -
  5.4469 -
  5.4470 -
  5.4471 -
  5.4472 -
  5.4473 -extern VoidFunctionPointer __irq_vector[];
  5.4474 -extern vuint32 __irq_flags[];
  5.4475 -
  5.4476 -
  5.4477 -
  5.4478 -struct IntTable{IntFn handler; u32 mask;};
  5.4479 -# 137 "/home/lifning/hack/devkitPro/libnds/include/nds/interrupts.h"
  5.4480 -void irqInit();
  5.4481 -# 152 "/home/lifning/hack/devkitPro/libnds/include/nds/interrupts.h"
  5.4482 -void irqSet(IRQ_MASK irq, VoidFunctionPointer handler);
  5.4483 -
  5.4484 -
  5.4485 -
  5.4486 -
  5.4487 -void irqClear(IRQ_MASK irq);
  5.4488 -# 167 "/home/lifning/hack/devkitPro/libnds/include/nds/interrupts.h"
  5.4489 -void irqInitHandler(VoidFunctionPointer handler);
  5.4490 -
  5.4491 -
  5.4492 -
  5.4493 -
  5.4494 -
  5.4495 -void irqEnable(uint32 irq);
  5.4496 -
  5.4497 -
  5.4498 -
  5.4499 -
  5.4500 -
  5.4501 -void irqDisable(uint32 irq);
  5.4502 -# 49 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4503 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/ipc.h" 1
  5.4504 -# 36 "/home/lifning/hack/devkitPro/libnds/include/nds/ipc.h"
  5.4505 -typedef struct sTransferSoundData {
  5.4506 -
  5.4507 -  const void *data;
  5.4508 -  u32 len;
  5.4509 -  u32 rate;
  5.4510 -  u8 vol;
  5.4511 -  u8 pan;
  5.4512 -  u8 format;
  5.4513 -  u8 PADDING;
  5.4514 -} TransferSoundData, * pTransferSoundData;
  5.4515 -
  5.4516 -
  5.4517 -
  5.4518 -typedef struct sTransferSound {
  5.4519 -
  5.4520 -  TransferSoundData data[16];
  5.4521 -  u8 count;
  5.4522 -  u8 PADDING[3];
  5.4523 -} TransferSound, * pTransferSound;
  5.4524 -
  5.4525 -
  5.4526 -
  5.4527 -typedef struct sTransferRegion {
  5.4528 -
  5.4529 - vint16 touchX, touchY;
  5.4530 - vint16 touchXpx, touchYpx;
  5.4531 - vint16 touchZ1, touchZ2;
  5.4532 - vuint16 tdiode1, tdiode2;
  5.4533 - vuint32 temperature;
  5.4534 -
  5.4535 - uint16 buttons;
  5.4536 -
  5.4537 - union {
  5.4538 -  vuint8 curtime[8];
  5.4539 -
  5.4540 -  struct {
  5.4541 -   vu8 command;
  5.4542 -   vu8 year;
  5.4543 -   vu8 month;
  5.4544 -   vu8 day;
  5.4545 -
  5.4546 -   vu8 weekday;
  5.4547 -   vu8 hours;
  5.4548 -   vu8 minutes;
  5.4549 -   vu8 seconds;
  5.4550 -  } rtc;
  5.4551 - } time;
  5.4552 - vint32 unixTime;
  5.4553 -
  5.4554 - uint16 battery;
  5.4555 - uint16 aux;
  5.4556 -
  5.4557 -
  5.4558 - pTransferSound soundData;
  5.4559 -
  5.4560 - vuint32 mailAddr;
  5.4561 - vuint32 mailData;
  5.4562 - vuint8 mailRead;
  5.4563 - vuint8 mailBusy;
  5.4564 - vuint32 mailSize;
  5.4565 -} TransferRegion, * pTransferRegion;
  5.4566 -
  5.4567 -
  5.4568 -static inline
  5.4569 -TransferRegion volatile * getIPC();
  5.4570 -
  5.4571 -static inline
  5.4572 -TransferRegion volatile * getIPC() {
  5.4573 - return (TransferRegion volatile *)(0x027FF000);
  5.4574 -}
  5.4575 -# 119 "/home/lifning/hack/devkitPro/libnds/include/nds/ipc.h"
  5.4576 -enum IPC_SYNC_BITS {
  5.4577 - IPC_SYNC_IRQ_ENABLE = (1 << (14)),
  5.4578 - IPC_SYNC_IRQ_REQUEST = (1 << (13))
  5.4579 -};
  5.4580 -
  5.4581 -
  5.4582 -static inline void IPC_SendSync(unsigned int sync) {
  5.4583 -
  5.4584 - (*(vuint16*)0x04000180) = ((*(vuint16*)0x04000180) & 0xf0ff) | (((sync) & 0x0f) << 8) | IPC_SYNC_IRQ_REQUEST;
  5.4585 -}
  5.4586 -
  5.4587 -
  5.4588 -static inline int IPC_GetSync() {
  5.4589 -
  5.4590 - return (*(vuint16*)0x04000180) & 0x0f;
  5.4591 -}
  5.4592 -# 143 "/home/lifning/hack/devkitPro/libnds/include/nds/ipc.h"
  5.4593 -enum IPC_CONTROL_BITS {
  5.4594 - IPC_FIFO_SEND_EMPTY = (1<<0),
  5.4595 - IPC_FIFO_SEND_FULL = (1<<1),
  5.4596 - IPC_FIFO_SEND_IRQ = (1<<2),
  5.4597 - IPC_FIFO_SEND_CLEAR = (1<<3),
  5.4598 - IPC_FIFO_RECV_EMPTY = (1<<8),
  5.4599 - IPC_FIFO_RECV_FULL = (1<<9),
  5.4600 - IPC_FIFO_RECV_IRQ = (1<<10),
  5.4601 - IPC_FIFO_ERROR = (1<<14),
  5.4602 - IPC_FIFO_ENABLE = (1<<15)
  5.4603 -};
  5.4604 -# 50 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4605 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/memory.h" 1
  5.4606 -# 104 "/home/lifning/hack/devkitPro/libnds/include/nds/memory.h"
  5.4607 -typedef struct sGBAHeader {
  5.4608 - uint32 entryPoint;
  5.4609 - uint8 logo[156];
  5.4610 - char title[0xC];
  5.4611 - char gamecode[0x4];
  5.4612 - uint16 makercode;
  5.4613 - uint8 is96h;
  5.4614 - uint8 unitcode;
  5.4615 - uint8 devicecode;
  5.4616 - uint8 unused[7];
  5.4617 - uint8 version;
  5.4618 - uint8 complement;
  5.4619 - uint16 checksum;
  5.4620 -} __attribute__ ((__packed__)) tGBAHeader;
  5.4621 -
  5.4622 -
  5.4623 -
  5.4624 -
  5.4625 -typedef struct sNDSHeader {
  5.4626 -  char gameTitle[12];
  5.4627 -  char gameCode[4];
  5.4628 -  char makercode[2];
  5.4629 -  uint8 unitCode;
  5.4630 -  uint8 deviceType;
  5.4631 -  uint8 deviceSize;
  5.4632 -  uint8 reserved1[9];
  5.4633 -  uint8 romversion;
  5.4634 -  uint8 flags;
  5.4635 -
  5.4636 -  uint32 arm9romSource;
  5.4637 -  uint32 arm9executeAddress;
  5.4638 -  uint32 arm9destination;
  5.4639 -  uint32 arm9binarySize;
  5.4640 -
  5.4641 -  uint32 arm7romSource;
  5.4642 -  uint32 arm7executeAddress;
  5.4643 -  uint32 arm7destination;
  5.4644 -  uint32 arm7binarySize;
  5.4645 -
  5.4646 -  uint32 filenameSource;
  5.4647 -  uint32 filenameSize;
  5.4648 -  uint32 fatSource;
  5.4649 -  uint32 fatSize;
  5.4650 -
  5.4651 -  uint32 arm9overlaySource;
  5.4652 -  uint32 arm9overlaySize;
  5.4653 -  uint32 arm7overlaySource;
  5.4654 -  uint32 arm7overlaySize;
  5.4655 -
  5.4656 -  uint32 cardControl13;
  5.4657 -  uint32 cardControlBF;
  5.4658 -  uint32 bannerOffset;
  5.4659 -
  5.4660 -  uint16 secureCRC16;
  5.4661 -
  5.4662 -  uint16 readTimeout;
  5.4663 -
  5.4664 -  uint32 unknownRAM1;
  5.4665 -  uint32 unknownRAM2;
  5.4666 -
  5.4667 -  uint32 bfPrime1;
  5.4668 -  uint32 bfPrime2;
  5.4669 -  uint32 romSize;
  5.4670 -
  5.4671 -  uint32 headerSize;
  5.4672 -  uint32 zeros88[14];
  5.4673 -  uint8 gbaLogo[156];
  5.4674 -  uint16 logoCRC16;
  5.4675 -  uint16 headerCRC16;
  5.4676 -
  5.4677 -  uint32 debugRomSource;
  5.4678 -  uint32 debugRomSize;
  5.4679 -  uint32 debugRomDestination;
  5.4680 -  uint32 offset_0x16C;
  5.4681 -
  5.4682 -  uint8 zero[0x90];
  5.4683 -} __attribute__ ((__packed__)) tNDSHeader;
  5.4684 -
  5.4685 -
  5.4686 -
  5.4687 -
  5.4688 -typedef struct sNDSBanner {
  5.4689 -  uint16 version;
  5.4690 -  uint16 crc;
  5.4691 -  uint8 reserved[28];
  5.4692 -  uint8 icon[512];
  5.4693 -  uint16 palette[16];
  5.4694 -  uint16 titles[6][128];
  5.4695 -} __attribute__ ((__packed__)) tNDSBanner;
  5.4696 -# 204 "/home/lifning/hack/devkitPro/libnds/include/nds/memory.h"
  5.4697 -static inline void sysSetCartOwner(bool arm9) {
  5.4698 -  (*(vuint16*)0x04000204) = ((*(vuint16*)0x04000204) & ~(1 << (7))) | (arm9 ? 0 : (1 << (7)));
  5.4699 -}
  5.4700 -
  5.4701 -static inline void sysSetCardOwner(bool arm9) {
  5.4702 -  (*(vuint16*)0x04000204) = ((*(vuint16*)0x04000204) & ~(1 << (11))) | (arm9 ? 0 : (1 << (11)));
  5.4703 -}
  5.4704 -
  5.4705 -
  5.4706 -static inline void sysSetBusOwners(bool arm9rom, bool arm9card) {
  5.4707 -  uint16 pattern = (*(vuint16*)0x04000204) & ~((1 << (11))|(1 << (7)));
  5.4708 -  pattern = pattern | (arm9card ? 0: (1 << (11)) ) |
  5.4709 -                      (arm9rom ? 0: (1 << (7)) );
  5.4710 -  (*(vuint16*)0x04000204) = pattern;
  5.4711 -}
  5.4712 -# 51 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4713 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/system.h" 1
  5.4714 -# 62 "/home/lifning/hack/devkitPro/libnds/include/nds/system.h"
  5.4715 -static inline
  5.4716 -void SetYtrigger(int Yvalue) {
  5.4717 - (*(vu16*)0x04000004) = ((*(vu16*)0x04000004) & 0x007F ) | (Yvalue << 8) | (( Yvalue & 0x100 ) >> 2) ;
  5.4718 -}
  5.4719 -# 88 "/home/lifning/hack/devkitPro/libnds/include/nds/system.h"
  5.4720 -static inline
  5.4721 -void powerON(int on) { *(vu16*)0x4000304 |= on;}
  5.4722 -
  5.4723 -
  5.4724 -
  5.4725 -
  5.4726 -
  5.4727 -
  5.4728 -
  5.4729 -static inline void powerSET(int on) { *(vu16*)0x4000304 = on;}
  5.4730 -
  5.4731 -
  5.4732 -
  5.4733 -
  5.4734 -static inline void powerOFF(int off) { *(vu16*)0x4000304 &= ~off;}
  5.4735 -# 137 "/home/lifning/hack/devkitPro/libnds/include/nds/system.h"
  5.4736 -static inline void lcdSwap(void) { *(vu16*)0x4000304 ^= (1 << (15)); }
  5.4737 -
  5.4738 -
  5.4739 -static inline void lcdMainOnTop(void) { *(vu16*)0x4000304 |= (1 << (15)); }
  5.4740 -
  5.4741 -
  5.4742 -static inline void lcdMainOnBottom(void) { *(vu16*)0x4000304 &= ~(1 << (15)); }
  5.4743 -# 173 "/home/lifning/hack/devkitPro/libnds/include/nds/system.h"
  5.4744 -typedef struct tPERSONAL_DATA {
  5.4745 -  u8 RESERVED0[2];
  5.4746 -
  5.4747 -  u8 theme;
  5.4748 -  u8 birthMonth;
  5.4749 -  u8 birthDay;
  5.4750 -
  5.4751 -  u8 RESERVED1[1];
  5.4752 -
  5.4753 -  s16 name[10];
  5.4754 -  u16 nameLen;
  5.4755 -
  5.4756 -  s16 message[26];
  5.4757 -  u16 messageLen;
  5.4758 -
  5.4759 -  u8 alarmHour;
  5.4760 -  u8 alarmMinute;
  5.4761 -
  5.4762 -
  5.4763 -  u8 RESERVED2[4];
  5.4764 -
  5.4765 -
  5.4766 -  u16 calX1;
  5.4767 -  u16 calY1;
  5.4768 -  u8 calX1px;
  5.4769 -  u8 calY1px;
  5.4770 -
  5.4771 -  u16 calX2;
  5.4772 -  u16 calY2;
  5.4773 -  u8 calX2px;
  5.4774 -  u8 calY2px;
  5.4775 -
  5.4776 -  struct __attribute__ ((packed)) {
  5.4777 -    unsigned language : 3;
  5.4778 -    unsigned gbaScreen : 1;
  5.4779 -    unsigned defaultBrightness : 2;
  5.4780 -    unsigned autoMode : 1;
  5.4781 -    unsigned RESERVED1 : 2;
  5.4782 - unsigned settingsLost : 1;
  5.4783 - unsigned RESERVED2 : 6;
  5.4784 -  } _user_data;
  5.4785 -
  5.4786 -  u16 RESERVED3;
  5.4787 -  u32 rtcOffset;
  5.4788 -  u32 RESERVED4;
  5.4789 -} __attribute__ ((packed)) PERSONAL_DATA ;
  5.4790 -# 238 "/home/lifning/hack/devkitPro/libnds/include/nds/system.h"
  5.4791 -struct __argv {
  5.4792 - int argvMagic;
  5.4793 - char *commandLine;
  5.4794 - int length;
  5.4795 -};
  5.4796 -# 52 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4797 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/timers.h" 1
  5.4798 -# 53 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4799 -
  5.4800 -
  5.4801 -
  5.4802 -
  5.4803 -
  5.4804 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/background.h" 1
  5.4805 -# 59 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.4806 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h" 1
  5.4807 -# 35 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h"
  5.4808 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/video.h" 1
  5.4809 -# 70 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/video.h"
  5.4810 -typedef enum {
  5.4811 - VRAM_A_LCD = 0,
  5.4812 - VRAM_A_MAIN_BG = 1,
  5.4813 - VRAM_A_MAIN_BG_0x06000000 = 1 | ((0)<<3),
  5.4814 - VRAM_A_MAIN_BG_0x06020000 = 1 | ((1)<<3),
  5.4815 - VRAM_A_MAIN_BG_0x06040000 = 1 | ((2)<<3),
  5.4816 - VRAM_A_MAIN_BG_0x06060000 = 1 | ((3)<<3),
  5.4817 - VRAM_A_MAIN_SPRITE = 2,
  5.4818 - VRAM_A_MAIN_SPRITE_0x06400000 = 2,
  5.4819 - VRAM_A_MAIN_SPRITE_0x06420000 = 2 | ((1)<<3),
  5.4820 - VRAM_A_TEXTURE = 3,
  5.4821 - VRAM_A_TEXTURE_SLOT0 = 3 | ((0)<<3),
  5.4822 - VRAM_A_TEXTURE_SLOT1 = 3 | ((1)<<3),
  5.4823 - VRAM_A_TEXTURE_SLOT2 = 3 | ((2)<<3),
  5.4824 - VRAM_A_TEXTURE_SLOT3 = 3 | ((3)<<3)
  5.4825 -} VRAM_A_TYPE;
  5.4826 -
  5.4827 -typedef enum {
  5.4828 - VRAM_B_LCD = 0,
  5.4829 - VRAM_B_MAIN_BG = 1 | ((1)<<3),
  5.4830 - VRAM_B_MAIN_BG_0x06000000 = 1 | ((0)<<3),
  5.4831 - VRAM_B_MAIN_BG_0x06020000 = 1 | ((1)<<3),
  5.4832 - VRAM_B_MAIN_BG_0x06040000 = 1 | ((2)<<3),
  5.4833 - VRAM_B_MAIN_BG_0x06060000 = 1 | ((3)<<3),
  5.4834 - VRAM_B_MAIN_SPRITE = 2 | ((1)<<3),
  5.4835 - VRAM_B_MAIN_SPRITE_0x06400000 = 2,
  5.4836 - VRAM_B_MAIN_SPRITE_0x06420000 = 2 | ((1)<<3),
  5.4837 - VRAM_B_TEXTURE = 3 | ((1)<<3),
  5.4838 - VRAM_B_TEXTURE_SLOT0 = 3 | ((0)<<3),
  5.4839 - VRAM_B_TEXTURE_SLOT1 = 3 | ((1)<<3),
  5.4840 - VRAM_B_TEXTURE_SLOT2 = 3 | ((2)<<3),
  5.4841 - VRAM_B_TEXTURE_SLOT3 = 3 | ((3)<<3)
  5.4842 -} VRAM_B_TYPE;
  5.4843 -
  5.4844 -typedef enum {
  5.4845 - VRAM_C_LCD = 0,
  5.4846 - VRAM_C_MAIN_BG = 1 | ((2)<<3),
  5.4847 - VRAM_C_MAIN_BG_0x06000000 = 1 | ((0)<<3),
  5.4848 - VRAM_C_MAIN_BG_0x06020000 = 1 | ((1)<<3),
  5.4849 - VRAM_C_MAIN_BG_0x06040000 = 1 | ((2)<<3),
  5.4850 - VRAM_C_MAIN_BG_0x06060000 = 1 | ((3)<<3),
  5.4851 - VRAM_C_ARM7 = 2,
  5.4852 - VRAM_C_ARM7_0x06000000 = 2,
  5.4853 - VRAM_C_ARM7_0x06020000 = 2 | ((1)<<3),
  5.4854 - VRAM_C_SUB_BG = 4,
  5.4855 - VRAM_C_SUB_BG_0x06200000 = 4 | ((0)<<3),
  5.4856 - VRAM_C_SUB_BG_0x06220000 = 4 | ((1)<<3),
  5.4857 - VRAM_C_SUB_BG_0x06240000 = 4 | ((2)<<3),
  5.4858 - VRAM_C_SUB_BG_0x06260000 = 4 | ((3)<<3),
  5.4859 - VRAM_C_TEXTURE = 3 | ((2)<<3),
  5.4860 - VRAM_C_TEXTURE_SLOT0 = 3 | ((0)<<3),
  5.4861 - VRAM_C_TEXTURE_SLOT1 = 3 | ((1)<<3),
  5.4862 - VRAM_C_TEXTURE_SLOT2 = 3 | ((2)<<3),
  5.4863 - VRAM_C_TEXTURE_SLOT3 = 3 | ((3)<<3)
  5.4864 -} VRAM_C_TYPE;
  5.4865 -
  5.4866 -typedef enum {
  5.4867 - VRAM_D_LCD = 0,
  5.4868 - VRAM_D_MAIN_BG = 1 | ((3)<<3),
  5.4869 - VRAM_D_MAIN_BG_0x06000000 = 1 | ((0)<<3),
  5.4870 - VRAM_D_MAIN_BG_0x06020000 = 1 | ((1)<<3),
  5.4871 - VRAM_D_MAIN_BG_0x06040000 = 1 | ((2)<<3),
  5.4872 - VRAM_D_MAIN_BG_0x06060000 = 1 | ((3)<<3),
  5.4873 - VRAM_D_ARM7 = 2 | ((1)<<3),
  5.4874 - VRAM_D_ARM7_0x06000000 = 2,
  5.4875 - VRAM_D_ARM7_0x06020000 = 2 | ((1)<<3),
  5.4876 - VRAM_D_SUB_SPRITE = 4,
  5.4877 - VRAM_D_TEXTURE = 3 | ((3)<<3),
  5.4878 - VRAM_D_TEXTURE_SLOT0 = 3 | ((0)<<3),
  5.4879 - VRAM_D_TEXTURE_SLOT1 = 3 | ((1)<<3),
  5.4880 - VRAM_D_TEXTURE_SLOT2 = 3 | ((2)<<3),
  5.4881 - VRAM_D_TEXTURE_SLOT3 = 3 | ((3)<<3)
  5.4882 -} VRAM_D_TYPE;
  5.4883 -
  5.4884 -typedef enum {
  5.4885 - VRAM_E_LCD = 0,
  5.4886 - VRAM_E_MAIN_BG = 1,
  5.4887 - VRAM_E_MAIN_SPRITE = 2,
  5.4888 - VRAM_E_TEX_PALETTE = 3,
  5.4889 - VRAM_E_BG_EXT_PALETTE = 4,
  5.4890 - VRAM_E_OBJ_EXT_PALETTE = 5,
  5.4891 -} VRAM_E_TYPE;
  5.4892 -
  5.4893 -typedef enum {
  5.4894 - VRAM_F_LCD = 0,
  5.4895 - VRAM_F_MAIN_BG = 1,
  5.4896 - VRAM_F_MAIN_SPRITE = 2,
  5.4897 - VRAM_F_MAIN_SPRITE_0x06000000 = 2,
  5.4898 - VRAM_F_MAIN_SPRITE_0x06004000 = 2 | ((1)<<3),
  5.4899 - VRAM_F_MAIN_SPRITE_0x06010000 = 2 | ((2)<<3),
  5.4900 - VRAM_F_MAIN_SPRITE_0x06014000 = 2 | ((3)<<3),
  5.4901 - VRAM_F_TEX_PALETTE = 3,
  5.4902 - VRAM_F_BG_EXT_PALETTE = 4,
  5.4903 - VRAM_F_OBJ_EXT_PALETTE = 5,
  5.4904 -} VRAM_F_TYPE;
  5.4905 -
  5.4906 -typedef enum {
  5.4907 - VRAM_G_LCD = 0,
  5.4908 - VRAM_G_MAIN_BG = 1,
  5.4909 - VRAM_G_MAIN_SPRITE = 2,
  5.4910 - VRAM_G_MAIN_SPRITE_0x06000000 = 2,
  5.4911 - VRAM_G_MAIN_SPRITE_0x06004000 = 2 | ((1)<<3),
  5.4912 - VRAM_G_MAIN_SPRITE_0x06010000 = 2 | ((2)<<3),
  5.4913 - VRAM_G_MAIN_SPRITE_0x06014000 = 2 | ((3)<<3),
  5.4914 - VRAM_G_TEX_PALETTE = 3,
  5.4915 - VRAM_G_BG_EXT_PALETTE = 4,
  5.4916 - VRAM_G_OBJ_EXT_PALETTE = 5,
  5.4917 -} VRAM_G_TYPE;
  5.4918 -
  5.4919 -typedef enum {
  5.4920 - VRAM_H_LCD = 0,
  5.4921 - VRAM_H_SUB_BG = 1,
  5.4922 - VRAM_H_SUB_BG_EXT_PALETTE = 2,
  5.4923 -} VRAM_H_TYPE;
  5.4924 -
  5.4925 -typedef enum {
  5.4926 - VRAM_I_LCD = 0,
  5.4927 - VRAM_I_SUB_BG = 1,
  5.4928 - VRAM_I_SUB_SPRITE = 2,
  5.4929 - VRAM_I_SUB_SPRITE_EXT_PALETTE = 3,
  5.4930 -}VRAM_I_TYPE;
  5.4931 -
  5.4932 -
  5.4933 -typedef u16 _palette[256];
  5.4934 -typedef _palette _ext_palette[16];
  5.4935 -
  5.4936 -
  5.4937 -
  5.4938 -
  5.4939 -
  5.4940 -
  5.4941 -
  5.4942 -uint32 vramSetMainBanks(VRAM_A_TYPE a, VRAM_B_TYPE b, VRAM_C_TYPE c, VRAM_D_TYPE d);
  5.4943 -void vramRestoreMainBanks(uint32 vramTemp);
  5.4944 -
  5.4945 -void vramSetBankA(VRAM_A_TYPE a);
  5.4946 -void vramSetBankB(VRAM_B_TYPE b);
  5.4947 -void vramSetBankC(VRAM_C_TYPE c);
  5.4948 -void vramSetBankD(VRAM_D_TYPE d);
  5.4949 -void vramSetBankE(VRAM_E_TYPE e);
  5.4950 -void vramSetBankF(VRAM_F_TYPE f);
  5.4951 -void vramSetBankG(VRAM_G_TYPE g);
  5.4952 -void vramSetBankH(VRAM_H_TYPE h);
  5.4953 -void vramSetBankI(VRAM_I_TYPE i);
  5.4954 -# 291 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/video.h"
  5.4955 -static inline
  5.4956 -void videoSetMode( uint32 mode) { (*(vuint32*)0x04000000) = mode; }
  5.4957 -static inline
  5.4958 -void videoSetModeSub( uint32 mode) { (*(vuint32*)0x04001000) = mode; }
  5.4959 -# 366 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/video.h"
  5.4960 -typedef struct {
  5.4961 - u16 x;
  5.4962 - u16 y;
  5.4963 -} bg_scroll;
  5.4964 -
  5.4965 -typedef struct {
  5.4966 -    u16 xdx;
  5.4967 -    u16 xdy;
  5.4968 -    u16 ydx;
  5.4969 -    u16 ydy;
  5.4970 -    u32 centerX;
  5.4971 -    u32 centerY;
  5.4972 -} bg_rotation;
  5.4973 -
  5.4974 -typedef struct {
  5.4975 -    u16 control[4];
  5.4976 -    bg_scroll scroll[4];
  5.4977 -    bg_rotation bg2_rotation;
  5.4978 -    bg_rotation bg3_rotation;
  5.4979 -} bg_attribute;
  5.4980 -# 36 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h" 2
  5.4981 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h" 1
  5.4982 -# 54 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.4983 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/math.h" 1
  5.4984 -# 94 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/math.h"
  5.4985 -static inline int32 divf32(int32 num, int32 den)
  5.4986 -{
  5.4987 - (*(vuint16*)(0x04000280)) = 1;
  5.4988 -
  5.4989 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.4990 -
  5.4991 - (*(vint64*) (0x04000290)) = ((int64)num) << 12;
  5.4992 - (*(vint32*) (0x04000298)) = den;
  5.4993 -
  5.4994 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.4995 -
  5.4996 - return ((*(vint32*) (0x040002A0)));
  5.4997 -}
  5.4998 -
  5.4999 -
  5.5000 -
  5.5001 -
  5.5002 -static inline int32 mulf32(int32 a, int32 b)
  5.5003 -{
  5.5004 - long long result = (long long)a*(long long)b;
  5.5005 - return (int32)(result >> 12);
  5.5006 -}
  5.5007 -
  5.5008 -
  5.5009 -
  5.5010 -
  5.5011 -static inline int32 sqrtf32(int32 a)
  5.5012 -{
  5.5013 - (*(vuint16*)(0x040002B0)) = 1;
  5.5014 -
  5.5015 - while((*(vuint16*)(0x040002B0)) & (1<<15));
  5.5016 -
  5.5017 - (*(vint64*) (0x040002B8)) = ((int64)a) << 12;
  5.5018 -
  5.5019 - while((*(vuint16*)(0x040002B0)) & (1<<15));
  5.5020 -
  5.5021 - return (*(vint32*) (0x040002B4));
  5.5022 -}
  5.5023 -
  5.5024 -
  5.5025 -
  5.5026 -
  5.5027 -
  5.5028 -
  5.5029 -static inline int32 div32(int32 num, int32 den)
  5.5030 -{
  5.5031 - (*(vuint16*)(0x04000280)) = 0;
  5.5032 -
  5.5033 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.5034 -
  5.5035 - (*(vint32*) (0x04000290)) = num;
  5.5036 - (*(vint32*) (0x04000298)) = den;
  5.5037 -
  5.5038 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.5039 -
  5.5040 - return ((*(vint32*) (0x040002A0)));
  5.5041 -}
  5.5042 -
  5.5043 -
  5.5044 -
  5.5045 -
  5.5046 -static inline int32 mod32(int32 num, int32 den)
  5.5047 -{
  5.5048 - (*(vuint16*)(0x04000280)) = 0;
  5.5049 -
  5.5050 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.5051 -
  5.5052 - (*(vint32*) (0x04000290)) = num;
  5.5053 - (*(vint32*) (0x04000298)) = den;
  5.5054 -
  5.5055 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.5056 -
  5.5057 - return ((*(vint32*) (0x040002A8)));
  5.5058 -}
  5.5059 -
  5.5060 -
  5.5061 -
  5.5062 -
  5.5063 -static inline int32 div64(int64 num, int32 den)
  5.5064 -{
  5.5065 - (*(vuint16*)(0x04000280)) = 1;
  5.5066 -
  5.5067 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.5068 -
  5.5069 - (*(vint64*) (0x04000290)) = num;
  5.5070 - (*(vint32*) (0x04000298)) = den;
  5.5071 -
  5.5072 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.5073 -
  5.5074 - return ((*(vint32*) (0x040002A0)));
  5.5075 -}
  5.5076 -
  5.5077 -
  5.5078 -
  5.5079 -
  5.5080 -static inline int32 mod64(int64 num, int32 den)
  5.5081 -{
  5.5082 - (*(vuint16*)(0x04000280)) = 1;
  5.5083 -
  5.5084 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.5085 -
  5.5086 - (*(vint64*) (0x04000290)) = num;
  5.5087 - (*(vint32*) (0x04000298)) = den;
  5.5088 -
  5.5089 - while((*(vuint16*)(0x04000280)) & (1<<15));
  5.5090 -
  5.5091 - return ((*(vint32*) (0x040002A8)));
  5.5092 -}
  5.5093 -
  5.5094 -
  5.5095 -
  5.5096 -
  5.5097 -static inline int32 sqrt32(int a)
  5.5098 -{
  5.5099 - (*(vuint16*)(0x040002B0)) = 0;
  5.5100 -
  5.5101 - while((*(vuint16*)(0x040002B0)) & (1<<15));
  5.5102 -
  5.5103 - (*(vint32*) (0x040002B8)) = a;
  5.5104 -
  5.5105 - while((*(vuint16*)(0x040002B0)) & (1<<15));
  5.5106 -
  5.5107 - return (*(vint32*) (0x040002B4));
  5.5108 -}
  5.5109 -
  5.5110 -
  5.5111 -
  5.5112 -
  5.5113 -
  5.5114 -
  5.5115 -
  5.5116 -static inline void crossf32(int32 *a, int32 *b, int32 *result)
  5.5117 -{
  5.5118 - result[0] = mulf32(a[1], b[2]) - mulf32(b[1], a[2]);
  5.5119 - result[1] = mulf32(a[2], b[0]) - mulf32(b[2], a[0]);
  5.5120 - result[2] = mulf32(a[0], b[1]) - mulf32(b[0], a[1]);
  5.5121 -}
  5.5122 -
  5.5123 -
  5.5124 -
  5.5125 -static inline int32 dotf32(int32 *a, int32 *b)
  5.5126 -{
  5.5127 - return mulf32(a[0], b[0]) + mulf32(a[1], b[1]) + mulf32(a[2], b[2]);
  5.5128 -}
  5.5129 -
  5.5130 -
  5.5131 -
  5.5132 -
  5.5133 -
  5.5134 -static inline void normalizef32(int32* a)
  5.5135 -{
  5.5136 -
  5.5137 - int32 magnitude = sqrtf32( mulf32(a[0], a[0]) + mulf32(a[1], a[1]) + mulf32(a[2], a[2]) );
  5.5138 -
  5.5139 - a[0] = divf32(a[0], magnitude);
  5.5140 - a[1] = divf32(a[1], magnitude);
  5.5141 - a[2] = divf32(a[2], magnitude);
  5.5142 -}
  5.5143 -# 55 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h" 2
  5.5144 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/trig_lut.h" 1
  5.5145 -# 44 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/trig_lut.h"
  5.5146 -extern short COS_bin[];
  5.5147 -extern short SIN_bin[];
  5.5148 -extern short TAN_bin[];
  5.5149 -# 56 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h" 2
  5.5150 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/cache.h" 1
  5.5151 -# 46 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/cache.h"
  5.5152 -void IC_InvalidateAll();
  5.5153 -
  5.5154 -
  5.5155 -
  5.5156 -
  5.5157 -
  5.5158 -
  5.5159 -
  5.5160 -void IC_InvalidateRange(const void *base, u32 size);
  5.5161 -
  5.5162 -
  5.5163 -
  5.5164 -
  5.5165 -
  5.5166 -void DC_FlushAll();
  5.5167 -
  5.5168 -
  5.5169 -
  5.5170 -
  5.5171 -
  5.5172 -
  5.5173 -
  5.5174 -void DC_FlushRange(const void *base, u32 size);
  5.5175 -
  5.5176 -
  5.5177 -
  5.5178 -
  5.5179 -
  5.5180 -void DC_InvalidateAll();
  5.5181 -
  5.5182 -
  5.5183 -
  5.5184 -
  5.5185 -
  5.5186 -
  5.5187 -
  5.5188 -void DC_InvalidateRange(const void *base, u32 size);
  5.5189 -# 57 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h" 2
  5.5190 -# 77 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5191 -typedef uint16 fixed12d3;
  5.5192 -# 90 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5193 -typedef short int t16;
  5.5194 -
  5.5195 -
  5.5196 -
  5.5197 -
  5.5198 -
  5.5199 -
  5.5200 -typedef short int v16;
  5.5201 -
  5.5202 -
  5.5203 -
  5.5204 -
  5.5205 -
  5.5206 -
  5.5207 -typedef short int v10;
  5.5208 -# 113 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5209 -typedef unsigned short rgb;
  5.5210 -
  5.5211 -
  5.5212 -typedef struct {
  5.5213 - int32 m[9];
  5.5214 -} m3x3;
  5.5215 -
  5.5216 -
  5.5217 -typedef struct {
  5.5218 - int32 m[16];
  5.5219 -} m4x4;
  5.5220 -
  5.5221 -
  5.5222 -typedef struct {
  5.5223 - int32 m[12];
  5.5224 -} m4x3;
  5.5225 -
  5.5226 -
  5.5227 -typedef struct {
  5.5228 - int32 x, y, z;
  5.5229 -} GLvector;
  5.5230 -# 143 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5231 -typedef enum {
  5.5232 - GL_TRIANGLES = 0,
  5.5233 - GL_QUADS = 1,
  5.5234 - GL_TRIANGLE_STRIP = 2,
  5.5235 - GL_QUAD_STRIP = 3,
  5.5236 - GL_TRIANGLE = 0,
  5.5237 - GL_QUAD = 1
  5.5238 -} GL_GLBEGIN_ENUM;
  5.5239 -
  5.5240 -
  5.5241 -
  5.5242 -
  5.5243 -typedef enum {
  5.5244 - GL_PROJECTION = 0,
  5.5245 - GL_POSITION = 1,
  5.5246 - GL_MODELVIEW = 2,
  5.5247 - GL_TEXTURE = 3
  5.5248 -} GL_MATRIX_MODE_ENUM;
  5.5249 -
  5.5250 -
  5.5251 -
  5.5252 -
  5.5253 -typedef enum {
  5.5254 - GL_AMBIENT = 0x01,
  5.5255 - GL_DIFFUSE = 0x02,
  5.5256 - GL_AMBIENT_AND_DIFFUSE = 0x03,
  5.5257 - GL_SPECULAR = 0x04,
  5.5258 - GL_SHININESS = 0x08,
  5.5259 - GL_EMISSION = 0x10
  5.5260 -} GL_MATERIALS_ENUM;
  5.5261 -
  5.5262 -
  5.5263 -
  5.5264 -
  5.5265 -enum GL_POLY_FORMAT_ENUM {
  5.5266 - POLY_FORMAT_LIGHT0 = (1<<0),
  5.5267 - POLY_FORMAT_LIGHT1 = (1<<1),
  5.5268 - POLY_FORMAT_LIGHT2 = (1<<2),
  5.5269 - POLY_FORMAT_LIGHT3 = (1<<3),
  5.5270 - POLY_MODULATION = (0<<4),
  5.5271 - POLY_DECAL = (1<<4),
  5.5272 - POLY_TOON_HIGHLIGHT = (2<<4),
  5.5273 - POLY_SHADOW = (3<<4),
  5.5274 - POLY_CULL_FRONT = (1<<6),
  5.5275 - POLY_CULL_BACK = (2<<6),
  5.5276 - POLY_CULL_NONE = (3<<6),
  5.5277 - POLY_FOG = (1<<15)
  5.5278 -};
  5.5279 -
  5.5280 -
  5.5281 -
  5.5282 -enum GL_TEXTURE_SIZE_ENUM {
  5.5283 - TEXTURE_SIZE_8 = 0,
  5.5284 - TEXTURE_SIZE_16 = 1,
  5.5285 - TEXTURE_SIZE_32 = 2,
  5.5286 - TEXTURE_SIZE_64 = 3,
  5.5287 - TEXTURE_SIZE_128 = 4,
  5.5288 - TEXTURE_SIZE_256 = 5,
  5.5289 - TEXTURE_SIZE_512 = 6,
  5.5290 - TEXTURE_SIZE_1024 = 7
  5.5291 -};
  5.5292 -
  5.5293 -
  5.5294 -
  5.5295 -
  5.5296 -enum GL_TEXTURE_PARAM_ENUM {
  5.5297 - GL_TEXTURE_WRAP_S = (1 << 16),
  5.5298 - GL_TEXTURE_WRAP_T = (1 << 17),
  5.5299 - GL_TEXTURE_FLIP_S = (1 << 18),
  5.5300 - GL_TEXTURE_FLIP_T = (1 << 19),
  5.5301 - GL_TEXTURE_COLOR0_TRANSPARENT = (1<<29),
  5.5302 - TEXGEN_OFF = (0<<30),
  5.5303 - TEXGEN_TEXCOORD = (1<<30),
  5.5304 - TEXGEN_NORMAL = (2<<30),
  5.5305 - TEXGEN_POSITION = (3<<30)
  5.5306 -};
  5.5307 -
  5.5308 -
  5.5309 -
  5.5310 -
  5.5311 -typedef enum {
  5.5312 - GL_RGB32_A3 = 1,
  5.5313 - GL_RGB4 = 2,
  5.5314 - GL_RGB16 = 3,
  5.5315 - GL_RGB256 = 4,
  5.5316 - GL_COMPRESSED = 5,
  5.5317 - GL_RGB8_A5 = 6,
  5.5318 - GL_RGBA = 7,
  5.5319 - GL_RGB = 8
  5.5320 -} GL_TEXTURE_TYPE_ENUM;
  5.5321 -
  5.5322 -
  5.5323 -
  5.5324 -
  5.5325 -enum DISP3DCNT_ENUM {
  5.5326 - GL_TEXTURE_2D = (1<<0),
  5.5327 - GL_TOON_HIGHLIGHT = (1<<1),
  5.5328 - GL_ALPHA_TEST = (1<<2),
  5.5329 - GL_BLEND = (1<<3),
  5.5330 - GL_ANTIALIAS = (1<<4),
  5.5331 - GL_OUTLINE = (1<<5),
  5.5332 - GL_FOG_ONLY_ALPHA = (1<<6),
  5.5333 - GL_FOG = (1<<7),
  5.5334 - GL_COLOR_UNDERFLOW = (1<<12),
  5.5335 - GL_POLY_OVERFLOW = (1<<13),
  5.5336 - GL_CLEAR_BMP = (1<<14)
  5.5337 -};
  5.5338 -
  5.5339 -
  5.5340 -
  5.5341 -
  5.5342 -typedef enum {
  5.5343 - GL_GET_VERTEX_RAM_COUNT,
  5.5344 - GL_GET_POLYGON_RAM_COUNT,
  5.5345 - GL_GET_MATRIX_VECTOR,
  5.5346 - GL_GET_MATRIX_POSITION,
  5.5347 - GL_GET_MATRIX_PROJECTION,
  5.5348 - GL_GET_MATRIX_CLIP,
  5.5349 - GL_GET_TEXTURE_WIDTH,
  5.5350 - GL_GET_TEXTURE_HEIGHT
  5.5351 -} GL_GET_ENUM;
  5.5352 -
  5.5353 -
  5.5354 -
  5.5355 -
  5.5356 -
  5.5357 -enum GLFLUSH_ENUM {
  5.5358 - GL_TRANS_MANUALSORT = (1<<0),
  5.5359 - GL_WBUFFERING = (1<<1)
  5.5360 -};
  5.5361 -# 281 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5362 -typedef struct {
  5.5363 - GL_MATRIX_MODE_ENUM matrixMode;
  5.5364 -
  5.5365 -
  5.5366 - uint32 clearColor;
  5.5367 -
  5.5368 -
  5.5369 - uint32 textures[2048];
  5.5370 - uint32 activeTexture;
  5.5371 - uint32* nextBlock;
  5.5372 - uint32 nextPBlock;
  5.5373 - int nameCount;
  5.5374 -
  5.5375 -} gl_hidden_globals;
  5.5376 -
  5.5377 -
  5.5378 -static gl_hidden_globals* glGlob = 0;
  5.5379 -# 344 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5380 -void glRotatef32i(int angle, int32 x, int32 y, int32 z);
  5.5381 -# 355 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5382 -int glTexImage2D(int target, int empty1, GL_TEXTURE_TYPE_ENUM type, int sizeX, int sizeY, int empty2, int param, const uint8* texture);
  5.5383 -
  5.5384 -
  5.5385 -
  5.5386 -
  5.5387 -
  5.5388 -void glTexLoadPal(const u16* pal, u16 count, u32 addr );
  5.5389 -
  5.5390 -
  5.5391 -
  5.5392 -
  5.5393 -
  5.5394 -int gluTexLoadPal(const u16* pal, u16 count, uint8 format);
  5.5395 -
  5.5396 -
  5.5397 -
  5.5398 -
  5.5399 -
  5.5400 -
  5.5401 -
  5.5402 -void glTexParameter( uint8 sizeX, uint8 sizeY,
  5.5403 -      const uint32* addr,
  5.5404 -      GL_TEXTURE_TYPE_ENUM mode,
  5.5405 -      uint32 param) ;
  5.5406 -
  5.5407 -
  5.5408 -u32 glGetTexParameter();
  5.5409 -
  5.5410 -
  5.5411 -
  5.5412 -void* glGetTexturePointer( int name);
  5.5413 -
  5.5414 -
  5.5415 -
  5.5416 -
  5.5417 -void glBindTexture(int target, int name);
  5.5418 -
  5.5419 -
  5.5420 -void glColorTable(uint8 format, uint32 addr);
  5.5421 -
  5.5422 -
  5.5423 -
  5.5424 -
  5.5425 -int glGenTextures(int n, int *names);
  5.5426 -
  5.5427 -
  5.5428 -void glResetTextures(void);
  5.5429 -
  5.5430 -
  5.5431 -
  5.5432 -
  5.5433 -
  5.5434 -void glTexCoord2f32(int32 u, int32 v);
  5.5435 -
  5.5436 -
  5.5437 -
  5.5438 -
  5.5439 -void glMaterialf(GL_MATERIALS_ENUM mode, rgb color);
  5.5440 -
  5.5441 -
  5.5442 -void glInit_C(void);
  5.5443 -
  5.5444 -
  5.5445 -gl_hidden_globals* glGetGlobals();
  5.5446 -# 462 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5447 -static inline uint32 POLY_ALPHA(int n) { return (uint32)((n) << 16); };
  5.5448 -
  5.5449 -
  5.5450 -
  5.5451 -static inline uint32 POLY_ID(int n) { return (uint32)((n)<<24); };
  5.5452 -
  5.5453 -
  5.5454 -
  5.5455 -static inline void glBegin(GL_GLBEGIN_ENUM mode) { (*(vuint32*) 0x04000500) = mode; }
  5.5456 -
  5.5457 -
  5.5458 -static inline void glEnd(void) { (*(vuint32*) 0x04000504) = 0; }
  5.5459 -
  5.5460 -
  5.5461 -
  5.5462 -
  5.5463 -static inline void glClearDepth(fixed12d3 depth) { (*(vuint16*) 0x04000354) = depth; }
  5.5464 -
  5.5465 -
  5.5466 -
  5.5467 -
  5.5468 -
  5.5469 -
  5.5470 -static inline void glColor3b(uint8 red, uint8 green, uint8 blue) { (*(vuint32*) 0x04000480) = (vuint32)((red>>3)|((green>>3)<<5)|((blue>>3)<<10)); }
  5.5471 -
  5.5472 -
  5.5473 -
  5.5474 -static inline void glColor(rgb color) { (*(vuint32*) 0x04000480) = (vuint32)color; }
  5.5475 -
  5.5476 -
  5.5477 -
  5.5478 -
  5.5479 -
  5.5480 -static inline void glVertex3v16(v16 x, v16 y, v16 z) {
  5.5481 - (*(vuint32*) 0x0400048C) = (y << 16) | (x & 0xFFFF);
  5.5482 - (*(vuint32*) 0x0400048C) = ((uint32)(uint16)z);
  5.5483 -}
  5.5484 -
  5.5485 -
  5.5486 -
  5.5487 -
  5.5488 -
  5.5489 -static inline void glTexCoord2t16(t16 u, t16 v) { (*(vuint32*) 0x04000488) = ((u & 0xFFFF) | ((v) << 16)); }
  5.5490 -
  5.5491 -
  5.5492 -
  5.5493 -static inline void glPushMatrix(void) { (*(vuint32*)0x04000444) = 0; }
  5.5494 -
  5.5495 -
  5.5496 -
  5.5497 -
  5.5498 -static inline void glPopMatrix(int32 num) { (*(vuint32*)0x04000448) = num; }
  5.5499 -
  5.5500 -
  5.5501 -
  5.5502 -
  5.5503 -static inline void glRestoreMatrix(int32 index) { (*(vuint32*)0x04000450) = index; }
  5.5504 -
  5.5505 -
  5.5506 -
  5.5507 -
  5.5508 -static inline void glStoreMatrix(int32 index) { (*(vuint32*)0x0400044C) = index; }
  5.5509 -
  5.5510 -
  5.5511 -
  5.5512 -
  5.5513 -static inline void glScalev(const GLvector* v) {
  5.5514 - (*(vint32*) 0x0400046C) = v->x;
  5.5515 - (*(vint32*) 0x0400046C) = v->y;
  5.5516 - (*(vint32*) 0x0400046C) = v->z;
  5.5517 -}
  5.5518 -
  5.5519 -
  5.5520 -
  5.5521 -
  5.5522 -static inline void glTranslatev(const GLvector* v) {
  5.5523 - (*(vint32*) 0x04000470) = v->x;
  5.5524 - (*(vint32*) 0x04000470) = v->y;
  5.5525 - (*(vint32*) 0x04000470) = v->z;
  5.5526 -}
  5.5527 -
  5.5528 -
  5.5529 -
  5.5530 -
  5.5531 -
  5.5532 -
  5.5533 -static inline void glTranslate3f32(int32 x, int32 y, int32 z) {
  5.5534 - (*(vint32*) 0x04000470) = x;
  5.5535 - (*(vint32*) 0x04000470) = y;
  5.5536 - (*(vint32*) 0x04000470) = z;
  5.5537 -}
  5.5538 -
  5.5539 -
  5.5540 -
  5.5541 -
  5.5542 -static inline void glScalef32(int32 factor) {
  5.5543 - (*(vint32*) 0x0400046C) = factor;
  5.5544 - (*(vint32*) 0x0400046C) = factor;
  5.5545 - (*(vint32*) 0x0400046C) = factor;
  5.5546 -}
  5.5547 -# 570 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5548 -static inline void glLight(int id, rgb color, v10 x, v10 y, v10 z) {
  5.5549 - id = (id & 3) << 30;
  5.5550 - (*(vuint32*) 0x040004C8) = id | ((z & 0x3FF) << 20) | ((y & 0x3FF) << 10) | (x & 0x3FF);
  5.5551 - (*(vuint32*) 0x040004CC) = id | color;
  5.5552 -}
  5.5553 -
  5.5554 -
  5.5555 -
  5.5556 -
  5.5557 -
  5.5558 -static inline void glNormal(uint32 normal) { (*(vuint32*) 0x04000484) = normal; }
  5.5559 -
  5.5560 -
  5.5561 -static inline void glLoadIdentity(void) { (*(vuint32*)0x04000454) = 0; }
  5.5562 -
  5.5563 -
  5.5564 -
  5.5565 -
  5.5566 -static inline void glMatrixMode(GL_MATRIX_MODE_ENUM mode) { (*(vuint32*)0x04000440) = mode; }
  5.5567 -
  5.5568 -
  5.5569 -
  5.5570 -
  5.5571 -
  5.5572 -
  5.5573 -
  5.5574 -static inline void glViewport(uint8 x1, uint8 y1, uint8 x2, uint8 y2) { (*(vuint32*) 0x04000580) = (x1) + (y1 << 8) + (x2 << 16) + (y2 << 24); }
  5.5575 -
  5.5576 -
  5.5577 -
  5.5578 -
  5.5579 -static inline void glFlush(uint32 mode) { (*(vuint32*) 0x04000540) = mode; }
  5.5580 -
  5.5581 -
  5.5582 -static inline void glMaterialShinyness(void) {
  5.5583 - uint32 shiny32[128/4];
  5.5584 - uint8 *shiny8 = (uint8*)shiny32;
  5.5585 -
  5.5586 - int i;
  5.5587 -
  5.5588 - for (i = 0; i < 128 * 2; i += 2)
  5.5589 -  shiny8[i>>1] = i;
  5.5590 -
  5.5591 - for (i = 0; i < 128 / 4; i++)
  5.5592 -  (*(vuint32*) 0x040004D0) = shiny32[i];
  5.5593 -}
  5.5594 -
  5.5595 -
  5.5596 -
  5.5597 -
  5.5598 -
  5.5599 -
  5.5600 -static inline void glCallList(const u32* list) {
  5.5601 - u32 count = *list++;
  5.5602 -
  5.5603 -
  5.5604 - DC_FlushRange(list, count*4);
  5.5605 -
  5.5606 -
  5.5607 -
  5.5608 - while(((*(vuint32*)(0x040000B8+(0*12))) & (1 << (31)))||((*(vuint32*)(0x040000B8+(1*12))) & (1 << (31)))||((*(vuint32*)(0x040000B8+(2*12))) & (1 << (31)))||((*(vuint32*)(0x040000B8+(3*12))) & (1 << (31))));
  5.5609 -
  5.5610 -
  5.5611 - (*(vuint32*)(0x040000B0+(0*12))) = (uint32)list;
  5.5612 - (*(vuint32*)(0x040000B4+(0*12))) = 0x4000400;
  5.5613 - (*(vuint32*)(0x040000B8+(0*12))) = ((1 << (31)) | (1 << (26)) | (1 << (22)) | (7<<27)) | count;
  5.5614 - while((*(vuint32*)(0x040000B8+(0*12))) & (1 << (31)));
  5.5615 -}
  5.5616 -
  5.5617 -
  5.5618 -
  5.5619 -
  5.5620 -static inline void glPolyFmt(uint32 params) { (*(vuint32*) 0x040004A4) = params; }
  5.5621 -
  5.5622 -
  5.5623 -
  5.5624 -static inline void glEnable(int bits) { (*(vuint16*) 0x04000060) |= bits; }
  5.5625 -
  5.5626 -
  5.5627 -
  5.5628 -static inline void glDisable(int bits) { (*(vuint16*) 0x04000060) &= ~bits; }
  5.5629 -
  5.5630 -
  5.5631 -
  5.5632 -static inline void glLoadMatrix4x4(const m4x4 *m) {
  5.5633 - (*(vint32*) 0x04000458) = m->m[0];
  5.5634 - (*(vint32*) 0x04000458) = m->m[1];
  5.5635 - (*(vint32*) 0x04000458) = m->m[2];
  5.5636 - (*(vint32*) 0x04000458) = m->m[3];
  5.5637 -
  5.5638 - (*(vint32*) 0x04000458) = m->m[4];
  5.5639 - (*(vint32*) 0x04000458) = m->m[5];
  5.5640 - (*(vint32*) 0x04000458) = m->m[6];
  5.5641 - (*(vint32*) 0x04000458) = m->m[7];
  5.5642 -
  5.5643 - (*(vint32*) 0x04000458) = m->m[8];
  5.5644 - (*(vint32*) 0x04000458) = m->m[9];
  5.5645 - (*(vint32*) 0x04000458) = m->m[10];
  5.5646 - (*(vint32*) 0x04000458) = m->m[11];
  5.5647 -
  5.5648 - (*(vint32*) 0x04000458) = m->m[12];
  5.5649 - (*(vint32*) 0x04000458) = m->m[13];
  5.5650 - (*(vint32*) 0x04000458) = m->m[14];
  5.5651 - (*(vint32*) 0x04000458) = m->m[15];
  5.5652 -}
  5.5653 -
  5.5654 -
  5.5655 -
  5.5656 -static inline void glLoadMatrix4x3(const m4x3 * m) {
  5.5657 - (*(vint32*) 0x0400045C) = m->m[0];
  5.5658 - (*(vint32*) 0x0400045C) = m->m[1];
  5.5659 - (*(vint32*) 0x0400045C) = m->m[2];
  5.5660 - (*(vint32*) 0x0400045C) = m->m[3];
  5.5661 -
  5.5662 - (*(vint32*) 0x0400045C) = m->m[4];
  5.5663 - (*(vint32*) 0x0400045C) = m->m[5];
  5.5664 - (*(vint32*) 0x0400045C) = m->m[6];
  5.5665 - (*(vint32*) 0x0400045C) = m->m[7];
  5.5666 -
  5.5667 - (*(vint32*) 0x0400045C) = m->m[8];
  5.5668 - (*(vint32*) 0x0400045C) = m->m[9];
  5.5669 - (*(vint32*) 0x0400045C) = m->m[10];
  5.5670 - (*(vint32*) 0x0400045C) = m->m[11];
  5.5671 -}
  5.5672 -
  5.5673 -
  5.5674 -
  5.5675 -static inline void glMultMatrix4x4(const m4x4 * m) {
  5.5676 - (*(vint32*) 0x04000460) = m->m[0];
  5.5677 - (*(vint32*) 0x04000460) = m->m[1];
  5.5678 - (*(vint32*) 0x04000460) = m->m[2];
  5.5679 - (*(vint32*) 0x04000460) = m->m[3];
  5.5680 -
  5.5681 - (*(vint32*) 0x04000460) = m->m[4];
  5.5682 - (*(vint32*) 0x04000460) = m->m[5];
  5.5683 - (*(vint32*) 0x04000460) = m->m[6];
  5.5684 - (*(vint32*) 0x04000460) = m->m[7];
  5.5685 -
  5.5686 - (*(vint32*) 0x04000460) = m->m[8];
  5.5687 - (*(vint32*) 0x04000460) = m->m[9];
  5.5688 - (*(vint32*) 0x04000460) = m->m[10];
  5.5689 - (*(vint32*) 0x04000460) = m->m[11];
  5.5690 -
  5.5691 - (*(vint32*) 0x04000460) = m->m[12];
  5.5692 - (*(vint32*) 0x04000460) = m->m[13];
  5.5693 - (*(vint32*) 0x04000460) = m->m[14];
  5.5694 - (*(vint32*) 0x04000460) = m->m[15];
  5.5695 -}
  5.5696 -
  5.5697 -
  5.5698 -
  5.5699 -static inline void glMultMatrix4x3(const m4x3 * m) {
  5.5700 - (*(vint32*) 0x04000464) = m->m[0];
  5.5701 - (*(vint32*) 0x04000464) = m->m[1];
  5.5702 - (*(vint32*) 0x04000464) = m->m[2];
  5.5703 - (*(vint32*) 0x04000464) = m->m[3];
  5.5704 -
  5.5705 - (*(vint32*) 0x04000464) = m->m[4];
  5.5706 - (*(vint32*) 0x04000464) = m->m[5];
  5.5707 - (*(vint32*) 0x04000464) = m->m[6];
  5.5708 - (*(vint32*) 0x04000464) = m->m[7];
  5.5709 -
  5.5710 - (*(vint32*) 0x04000464) = m->m[8];
  5.5711 - (*(vint32*) 0x04000464) = m->m[9];
  5.5712 - (*(vint32*) 0x04000464) = m->m[10];
  5.5713 - (*(vint32*) 0x04000464) = m->m[11];
  5.5714 -
  5.5715 -}
  5.5716 -
  5.5717 -
  5.5718 -
  5.5719 -static inline void glMultMatrix3x3(const m3x3 * m) {
  5.5720 - (*(vint32*) 0x04000468) = m->m[0];
  5.5721 - (*(vint32*) 0x04000468) = m->m[1];
  5.5722 - (*(vint32*) 0x04000468) = m->m[2];
  5.5723 -
  5.5724 - (*(vint32*) 0x04000468) = m->m[3];
  5.5725 - (*(vint32*) 0x04000468) = m->m[4];
  5.5726 - (*(vint32*) 0x04000468) = m->m[5];
  5.5727 -
  5.5728 - (*(vint32*) 0x04000468) = m->m[6];
  5.5729 - (*(vint32*) 0x04000468) = m->m[7];
  5.5730 - (*(vint32*) 0x04000468) = m->m[8];
  5.5731 -}
  5.5732 -
  5.5733 -
  5.5734 -
  5.5735 -static inline void glRotateXi(int angle) {
  5.5736 - int32 sine = SIN_bin[angle & (0x1FF)];
  5.5737 - int32 cosine = COS_bin[angle & (0x1FF)];
  5.5738 -
  5.5739 - (*(vint32*) 0x04000468) = ((1) << 12);
  5.5740 - (*(vint32*) 0x04000468) = 0;
  5.5741 - (*(vint32*) 0x04000468) = 0;
  5.5742 -
  5.5743 - (*(vint32*) 0x04000468) = 0;
  5.5744 - (*(vint32*) 0x04000468) = cosine;
  5.5745 - (*(vint32*) 0x04000468) = sine;
  5.5746 -
  5.5747 - (*(vint32*) 0x04000468) = 0;
  5.5748 - (*(vint32*) 0x04000468) = -sine;
  5.5749 - (*(vint32*) 0x04000468) = cosine;
  5.5750 -}
  5.5751 -
  5.5752 -
  5.5753 -
  5.5754 -static inline void glRotateYi(int angle) {
  5.5755 - int32 sine = SIN_bin[angle & (0x1FF)];
  5.5756 - int32 cosine = COS_bin[angle & (0x1FF)];
  5.5757 -
  5.5758 - (*(vint32*) 0x04000468) = cosine;
  5.5759 - (*(vint32*) 0x04000468) = 0;
  5.5760 - (*(vint32*) 0x04000468) = -sine;
  5.5761 -
  5.5762 - (*(vint32*) 0x04000468) = 0;
  5.5763 - (*(vint32*) 0x04000468) = ((1) << 12);
  5.5764 - (*(vint32*) 0x04000468) = 0;
  5.5765 -
  5.5766 - (*(vint32*) 0x04000468) = sine;
  5.5767 - (*(vint32*) 0x04000468) = 0;
  5.5768 - (*(vint32*) 0x04000468) = cosine;
  5.5769 -}
  5.5770 -
  5.5771 -
  5.5772 -
  5.5773 -static inline void glRotateZi(int angle) {
  5.5774 - int32 sine = SIN_bin[angle & (0x1FF)];
  5.5775 - int32 cosine = COS_bin[angle & (0x1FF)];
  5.5776 -
  5.5777 - (*(vint32*) 0x04000468) = cosine;
  5.5778 - (*(vint32*) 0x04000468) = sine;
  5.5779 - (*(vint32*) 0x04000468) = 0;
  5.5780 -
  5.5781 - (*(vint32*) 0x04000468) = - sine;
  5.5782 - (*(vint32*) 0x04000468) = cosine;
  5.5783 - (*(vint32*) 0x04000468) = 0;
  5.5784 -
  5.5785 - (*(vint32*) 0x04000468) = 0;
  5.5786 - (*(vint32*) 0x04000468) = 0;
  5.5787 - (*(vint32*) 0x04000468) = ((1) << 12);
  5.5788 -}
  5.5789 -# 820 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5790 -static inline void glOrthof32(int32 left, int32 right, int32 bottom, int32 top, int32 zNear, int32 zFar) {
  5.5791 - (*(vint32*) 0x04000460) = divf32(((2) << 12), right - left);
  5.5792 - (*(vint32*) 0x04000460) = 0;
  5.5793 - (*(vint32*) 0x04000460) = 0;
  5.5794 - (*(vint32*) 0x04000460) = 0;
  5.5795 -
  5.5796 - (*(vint32*) 0x04000460) = 0;
  5.5797 - (*(vint32*) 0x04000460) = divf32(((2) << 12), top - bottom);
  5.5798 - (*(vint32*) 0x04000460) = 0;
  5.5799 - (*(vint32*) 0x04000460) = 0;
  5.5800 -
  5.5801 - (*(vint32*) 0x04000460) = 0;
  5.5802 - (*(vint32*) 0x04000460) = 0;
  5.5803 - (*(vint32*) 0x04000460) = divf32(((-2) << 12), zFar - zNear);
  5.5804 - (*(vint32*) 0x04000460) = 0;
  5.5805 -
  5.5806 - (*(vint32*) 0x04000460) = -divf32(right + left, right - left);
  5.5807 - (*(vint32*) 0x04000460) = -divf32(top + bottom, top - bottom);
  5.5808 - (*(vint32*) 0x04000460) = -divf32(zFar + zNear, zFar - zNear);
  5.5809 - (*(vint32*) 0x04000460) = ((int32)((1.0F) * (1 << 12)));
  5.5810 -}
  5.5811 -# 852 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5812 -static inline void gluLookAtf32(int32 eyex, int32 eyey, int32 eyez, int32 lookAtx, int32 lookAty, int32 lookAtz, int32 upx, int32 upy, int32 upz) {
  5.5813 - int32 side[3], forward[3], up[3], eye[3];
  5.5814 -
  5.5815 - forward[0] = eyex - lookAtx;
  5.5816 - forward[1] = eyey - lookAty;
  5.5817 - forward[2] = eyez - lookAtz;
  5.5818 -
  5.5819 - normalizef32(forward);
  5.5820 -
  5.5821 - up[0] = upx;
  5.5822 - up[1] = upy;
  5.5823 - up[2] = upz;
  5.5824 - eye[0] = eyex;
  5.5825 - eye[1] = eyey;
  5.5826 - eye[2] = eyez;
  5.5827 -
  5.5828 - crossf32(up, forward, side);
  5.5829 -
  5.5830 - normalizef32(side);
  5.5831 -
  5.5832 -
  5.5833 - crossf32(forward, side, up);
  5.5834 -
  5.5835 - glMatrixMode(GL_MODELVIEW);
  5.5836 -
  5.5837 -
  5.5838 -
  5.5839 - (*(vint32*) 0x04000464) = side[0];
  5.5840 - (*(vint32*) 0x04000464) = up[0];
  5.5841 - (*(vint32*) 0x04000464) = forward[0];
  5.5842 -
  5.5843 - (*(vint32*) 0x04000464) = side[1];
  5.5844 - (*(vint32*) 0x04000464) = up[1];
  5.5845 - (*(vint32*) 0x04000464) = forward[1];
  5.5846 -
  5.5847 - (*(vint32*) 0x04000464) = side[2];
  5.5848 - (*(vint32*) 0x04000464) = up[2];
  5.5849 - (*(vint32*) 0x04000464) = forward[2];
  5.5850 -
  5.5851 - (*(vint32*) 0x04000464) = -dotf32(eye,side);
  5.5852 - (*(vint32*) 0x04000464) = -dotf32(eye,up);
  5.5853 - (*(vint32*) 0x04000464) = -dotf32(eye,forward);
  5.5854 -
  5.5855 -}
  5.5856 -# 905 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5857 -static inline void glFrustumf32(int32 left, int32 right, int32 bottom, int32 top, int32 near, int32 far) {
  5.5858 -# 928 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.5859 - (*(vint32*) 0x04000460) = divf32(2*near, right - left);
  5.5860 - (*(vint32*) 0x04000460) = 0;
  5.5861 - (*(vint32*) 0x04000460) = 0;
  5.5862 - (*(vint32*) 0x04000460) = 0;
  5.5863 -
  5.5864 - (*(vint32*) 0x04000460) = 0;
  5.5865 - (*(vint32*) 0x04000460) = divf32(2*near, top - bottom);
  5.5866 - (*(vint32*) 0x04000460) = 0;
  5.5867 - (*(vint32*) 0x04000460) = 0;
  5.5868 -
  5.5869 - (*(vint32*) 0x04000460) = divf32(right + left, right - left);
  5.5870 - (*(vint32*) 0x04000460) = divf32(top + bottom, top - bottom);
  5.5871 - (*(vint32*) 0x04000460) = -divf32(far + near, far - near);
  5.5872 - (*(vint32*) 0x04000460) = ((int32)((-1.0F) * (1 << 12)));
  5.5873 -
  5.5874 - (*(vint32*) 0x04000460) = 0;
  5.5875 - (*(vint32*) 0x04000460) = 0;
  5.5876 - (*(vint32*) 0x04000460) = -divf32(2 * mulf32(far, near), far - near);
  5.5877 - (*(vint32*) 0x04000460) = 0;
  5.5878 -
  5.5879 -}
  5.5880 -
  5.5881 -
  5.5882 -
  5.5883 -
  5.5884 -
  5.5885 -
  5.5886 -static inline void gluPerspectivef32(int fovy, int32 aspect, int32 zNear, int32 zFar) {
  5.5887 - int32 xmin, xmax, ymin, ymax;
  5.5888 -
  5.5889 - ymax = mulf32(zNear, TAN_bin[(fovy>>1) & (0x1FF)]);
  5.5890 - ymin = -ymax;
  5.5891 - xmin = mulf32(ymin, aspect);
  5.5892 - xmax = mulf32(ymax, aspect);
  5.5893 -
  5.5894 - glFrustumf32(xmin, xmax, ymin, ymax, zNear, zFar);
  5.5895 -}
  5.5896 -
  5.5897 -
  5.5898 -
  5.5899 -
  5.5900 -
  5.5901 -
  5.5902 -
  5.5903 -static inline void gluPickMatrix(int x, int y, int width, int height, const int viewport[4]) {
  5.5904 - (*(vint32*) 0x04000460) = ((viewport[2]) << 12) / width;
  5.5905 - (*(vint32*) 0x04000460) = 0;
  5.5906 - (*(vint32*) 0x04000460) = 0;
  5.5907 - (*(vint32*) 0x04000460) = 0;
  5.5908 - (*(vint32*) 0x04000460) = 0;
  5.5909 - (*(vint32*) 0x04000460) = ((viewport[3]) << 12) / height;
  5.5910 - (*(vint32*) 0x04000460) = 0;
  5.5911 - (*(vint32*) 0x04000460) = 0;
  5.5912 - (*(vint32*) 0x04000460) = 0;
  5.5913 - (*(vint32*) 0x04000460) = 0;
  5.5914 - (*(vint32*) 0x04000460) = ((1) << 12);
  5.5915 - (*(vint32*) 0x04000460) = 0;
  5.5916 - (*(vint32*) 0x04000460) = ((viewport[2] + ((viewport[0] - x)<<1)) << 12) / width;
  5.5917 - (*(vint32*) 0x04000460) = ((viewport[3] + ((viewport[1] - y)<<1)) << 12) / height;
  5.5918 - (*(vint32*) 0x04000460) = 0;
  5.5919 - (*(vint32*) 0x04000460) = ((1) << 12);
  5.5920 -}
  5.5921 -
  5.5922 -
  5.5923 -static inline void glResetMatrixStack(void) {
  5.5924 -
  5.5925 - while((*(vuint32*) 0x04000600) & (1 << (14))){
  5.5926 -  (*(vuint32*) 0x04000600) |= 1 << 15;
  5.5927 - }
  5.5928 -
  5.5929 -
  5.5930 - if(((*(vuint32*) 0x04000600)&(1<<13))!=0) {
  5.5931 -  glMatrixMode(GL_PROJECTION);
  5.5932 -  glPopMatrix(1);
  5.5933 - }
  5.5934 -
  5.5935 -
  5.5936 - glMatrixMode(GL_MODELVIEW);
  5.5937 - glPopMatrix(((*(vuint32*) 0x04000600) >> 8) & 0x1F);
  5.5938 -
  5.5939 -
  5.5940 - glMatrixMode(GL_MODELVIEW);
  5.5941 - glLoadIdentity();
  5.5942 - glMatrixMode(GL_PROJECTION);
  5.5943 - glLoadIdentity();
  5.5944 - glMatrixMode(GL_TEXTURE);
  5.5945 - glLoadIdentity();
  5.5946 -}
  5.5947 -
  5.5948 -
  5.5949 -
  5.5950 -
  5.5951 -static inline void glSetOutlineColor(int id, rgb color) { ((vuint16*) 0x04000330)[id] = color; }
  5.5952 -
  5.5953 -
  5.5954 -
  5.5955 -static inline void glSetToonTable(const uint16 *table) {
  5.5956 - int i;
  5.5957 - for(i = 0; i < 32; i++ )
  5.5958 -  ((vuint16*) 0x04000380)[i] = table[i];
  5.5959 -}
  5.5960 -
  5.5961 -
  5.5962 -
  5.5963 -
  5.5964 -
  5.5965 -static inline void glSetToonTableRange(int start, int end, rgb color) {
  5.5966 - int i;
  5.5967 - for(i = start; i <= end; i++ )
  5.5968 -  ((vuint16*) 0x04000380)[i] = color;
  5.5969 -}
  5.5970 -
  5.5971 -
  5.5972 -
  5.5973 -
  5.5974 -
  5.5975 -
  5.5976 -static inline void glGetFixed(const GL_GET_ENUM param, int32* f) {
  5.5977 - int i;
  5.5978 - switch (param) {
  5.5979 -  case GL_GET_MATRIX_VECTOR:
  5.5980 -   while(((*(vuint32*) 0x04000600) & (1 << (27))));
  5.5981 -   for(i = 0; i < 9; i++) f[i] = ((vint32*) (0x04000680))[i];
  5.5982 -   break;
  5.5983 -  case GL_GET_MATRIX_CLIP:
  5.5984 -   while(((*(vuint32*) 0x04000600) & (1 << (27))));
  5.5985 -   for(i = 0; i < 16; i++) f[i] = ((vint32*) (0x04000640))[i];
  5.5986 -   break;
  5.5987 -  case GL_GET_MATRIX_PROJECTION:
  5.5988 -   glMatrixMode(GL_POSITION);
  5.5989 -   glPushMatrix();
  5.5990 -   glLoadIdentity();
  5.5991 -   while(((*(vuint32*) 0x04000600) & (1 << (27))));
  5.5992 -    for(i = 0; i < 16; i++) f[i] = ((vint32*) (0x04000640))[i];
  5.5993 -   glPopMatrix(1);
  5.5994 -   break;
  5.5995 -  case GL_GET_MATRIX_POSITION:
  5.5996 -   glMatrixMode(GL_PROJECTION);
  5.5997 -   glPushMatrix();
  5.5998 -   glLoadIdentity();
  5.5999 -   while(((*(vuint32*) 0x04000600) & (1 << (27))));
  5.6000 -    for(i = 0; i < 16; i++) f[i] = ((vint32*) (0x04000640))[i];
  5.6001 -   glPopMatrix(1);
  5.6002 -   break;
  5.6003 -  default:
  5.6004 -   break;
  5.6005 - }
  5.6006 -}
  5.6007 -
  5.6008 -
  5.6009 -
  5.6010 -
  5.6011 -static inline void glAlphaFunc(int alphaThreshold) { (*(vuint16*) 0x04000340) = alphaThreshold; }
  5.6012 -
  5.6013 -
  5.6014 -
  5.6015 -
  5.6016 -static inline void glCutoffDepth(fixed12d3 wVal) { (*(uint16*)0x04000610) = wVal; }
  5.6017 -
  5.6018 -
  5.6019 -static inline void glInit() {
  5.6020 - glGlob = glGetGlobals();
  5.6021 - glInit_C();
  5.6022 -}
  5.6023 -
  5.6024 -
  5.6025 -
  5.6026 -
  5.6027 -
  5.6028 -
  5.6029 -static inline void glClearColor(uint8 red, uint8 green, uint8 blue, uint8 alpha) {
  5.6030 - (*(vuint32*) 0x04000350) = glGlob->clearColor = ( glGlob->clearColor & 0xFFE08000) | (0x7FFF & ((red)|((green)<<5)|((blue)<<10))) | ((alpha & 0x1F) << 16);
  5.6031 -}
  5.6032 -
  5.6033 -
  5.6034 -
  5.6035 -static inline void glClearPolyID(uint8 ID) {
  5.6036 - (*(vuint32*) 0x04000350) = glGlob->clearColor = ( glGlob->clearColor & 0xC0FFFFFF) | (( ID & 0x3F ) << 24 );
  5.6037 -}
  5.6038 -
  5.6039 -
  5.6040 -
  5.6041 -
  5.6042 -static inline void glGetInt(GL_GET_ENUM param, int* i) {
  5.6043 - switch (param) {
  5.6044 -  case GL_GET_POLYGON_RAM_COUNT:
  5.6045 -   *i = (*(uint16*) 0x04000604);
  5.6046 -   break;
  5.6047 -  case GL_GET_VERTEX_RAM_COUNT:
  5.6048 -   *i = (*(uint16*) 0x04000606);
  5.6049 -   break;
  5.6050 -  case GL_GET_TEXTURE_WIDTH:
  5.6051 -   *i = 8 << (((glGlob->textures[glGlob->activeTexture]) >> 20) & 7);
  5.6052 -   break;
  5.6053 -  case GL_GET_TEXTURE_HEIGHT:
  5.6054 -   *i = 8 << (((glGlob->textures[glGlob->activeTexture]) >> 23) & 7);
  5.6055 -   break;
  5.6056 -  default:
  5.6057 -   break;
  5.6058 - }
  5.6059 -}
  5.6060 -# 1142 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.6061 -static inline void glVertex3f(float x, float y, float z) {
  5.6062 - glVertex3v16(((v16)((x) * (1 << 12))), ((v16)((y) * (1 << 12))), ((v16)((z) * (1 << 12))));
  5.6063 -}
  5.6064 -
  5.6065 -
  5.6066 -
  5.6067 -
  5.6068 -
  5.6069 -
  5.6070 -
  5.6071 -static inline void glRotatef32(float angle, int32 x, int32 y, int32 z) {
  5.6072 -    glRotatef32i((int)(angle * (512) / 360.0), x, y, z);
  5.6073 -}
  5.6074 -
  5.6075 -
  5.6076 -
  5.6077 -
  5.6078 -
  5.6079 -
  5.6080 -
  5.6081 -static inline void glRotatef(float angle, float x, float y, float z) {
  5.6082 - glRotatef32(angle, ((int32)((x) * (1 << 12))), ((int32)((y) * (1 << 12))), ((int32)((z) * (1 << 12))));
  5.6083 -}
  5.6084 -
  5.6085 -
  5.6086 -
  5.6087 -
  5.6088 -
  5.6089 -
  5.6090 -static inline void glColor3f(float r, float g, float b) {
  5.6091 - glColor3b((uint8)(r*255), (uint8)(g*255), (uint8)(b*255));
  5.6092 -}
  5.6093 -
  5.6094 -
  5.6095 -
  5.6096 -
  5.6097 -
  5.6098 -
  5.6099 -
  5.6100 -static inline void glScalef(float x, float y, float z) {
  5.6101 - (*(vint32*) 0x0400046C) = ((int32)((x) * (1 << 12)));
  5.6102 - (*(vint32*) 0x0400046C) = ((int32)((y) * (1 << 12)));
  5.6103 - (*(vint32*) 0x0400046C) = ((int32)((z) * (1 << 12)));
  5.6104 -}
  5.6105 -
  5.6106 -
  5.6107 -
  5.6108 -
  5.6109 -
  5.6110 -
  5.6111 -
  5.6112 -static inline void glTranslatef(float x, float y, float z) {
  5.6113 - (*(vint32*) 0x04000470) = ((int32)((x) * (1 << 12)));
  5.6114 - (*(vint32*) 0x04000470) = ((int32)((y) * (1 << 12)));
  5.6115 - (*(vint32*) 0x04000470) = ((int32)((z) * (1 << 12)));
  5.6116 -}
  5.6117 -
  5.6118 -
  5.6119 -
  5.6120 -
  5.6121 -
  5.6122 -
  5.6123 -
  5.6124 -static inline void glNormal3f(float x, float y, float z) {
  5.6125 - glNormal((((((x>.998) ? 0x1FF : ((v10)((x)*(1<<9))))) & 0x3FF) | (((((y>.998) ? 0x1FF : ((v10)((y)*(1<<9))))) & 0x3FF) << 10) | ((((z>.998) ? 0x1FF : ((v10)((z)*(1<<9))))) << 20)));
  5.6126 -}
  5.6127 -
  5.6128 -
  5.6129 -
  5.6130 -
  5.6131 -static inline void glRotateX(float angle) {
  5.6132 - glRotateXi((int)(angle * (512) / 360.0));
  5.6133 -}
  5.6134 -
  5.6135 -
  5.6136 -
  5.6137 -
  5.6138 -static inline void glRotateY(float angle) {
  5.6139 - glRotateYi((int)(angle * (512) / 360.0));
  5.6140 -}
  5.6141 -
  5.6142 -
  5.6143 -
  5.6144 -
  5.6145 -static inline void glRotateZ(float angle) {
  5.6146 - glRotateZi((int)(angle * (512) / 360.0));
  5.6147 -}
  5.6148 -# 1238 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.6149 -static inline void glOrtho(float left, float right, float bottom, float top, float zNear, float zFar) {
  5.6150 - glOrthof32(((int32)((left) * (1 << 12))), ((int32)((right) * (1 << 12))), ((int32)((bottom) * (1 << 12))), ((int32)((top) * (1 << 12))), ((int32)((zNear) * (1 << 12))), ((int32)((zFar) * (1 << 12))));
  5.6151 -}
  5.6152 -# 1253 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.6153 -static inline void gluLookAt( float eyex, float eyey, float eyez,
  5.6154 -        float lookAtx, float lookAty, float lookAtz,
  5.6155 -        float upx, float upy, float upz) {
  5.6156 - gluLookAtf32(((int32)((eyex) * (1 << 12))), ((int32)((eyey) * (1 << 12))), ((int32)((eyez) * (1 << 12))),
  5.6157 -     ((int32)((lookAtx) * (1 << 12))), ((int32)((lookAty) * (1 << 12))), ((int32)((lookAtz) * (1 << 12))),
  5.6158 -     ((int32)((upx) * (1 << 12))), ((int32)((upy) * (1 << 12))), ((int32)((upz) * (1 << 12))));
  5.6159 -}
  5.6160 -# 1269 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
  5.6161 -static inline void glFrustum(float left, float right, float bottom, float top, float near, float far) {
  5.6162 - glFrustumf32(((int32)((left) * (1 << 12))), ((int32)((right) * (1 << 12))), ((int32)((bottom) * (1 << 12))), ((int32)((top) * (1 << 12))), ((int32)((near) * (1 << 12))), ((int32)((far) * (1 << 12))));
  5.6163 -}
  5.6164 -
  5.6165 -
  5.6166 -
  5.6167 -
  5.6168 -
  5.6169 -
  5.6170 -
  5.6171 -static inline void gluPerspective(float fovy, float aspect, float zNear, float zFar) {
  5.6172 - gluPerspectivef32((int)(fovy * (512) / 360.0), ((int32)((aspect) * (1 << 12))), ((int32)((zNear) * (1 << 12))), ((int32)((zFar) * (1 << 12))));
  5.6173 -}
  5.6174 -
  5.6175 -
  5.6176 -
  5.6177 -
  5.6178 -
  5.6179 -
  5.6180 -static inline void glTexCoord2f(float s, float t) {
  5.6181 - int x = ((glGlob->textures[glGlob->activeTexture]) >> 20) & 7;
  5.6182 - int y = ((glGlob->textures[glGlob->activeTexture]) >> 23) & 7;
  5.6183 -
  5.6184 - glTexCoord2t16(((t16)((s*(8 << x)) * (1 << 4))), ((t16)((t*(8<<y)) * (1 << 4))));
  5.6185 -}
  5.6186 -# 37 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h" 2
  5.6187 -# 57 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h"
  5.6188 -int BoxTest(v16 x, v16 y, v16 z, v16 width, v16 height, v16 depth);
  5.6189 -# 70 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h"
  5.6190 -int BoxTestf(float x, float y, float z, float width, float height, float depth);
  5.6191 -# 84 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h"
  5.6192 -void BoxTest_Asynch(v16 x, v16 y, v16 z, v16 height, v16 width, v16 depth);
  5.6193 -# 98 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/boxtest.h"
  5.6194 -void BoxTestf_Asynch(float x, float y, float z, float width, float height, float depth);
  5.6195 -
  5.6196 -
  5.6197 -
  5.6198 -
  5.6199 -
  5.6200 -
  5.6201 -int BoxTestResult(void);
  5.6202 -# 60 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.6203 -
  5.6204 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/console.h" 1
  5.6205 -# 60 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/console.h"
  5.6206 -void consoleInit(u16* font, u16* charBase, u16 numCharacters, u8 charStart, u16* map, u8 pal, u8 bitDepth);
  5.6207 -# 70 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/console.h"
  5.6208 -void consoleInitDefault(u16* map, u16* charBase, u8 bitDepth);
  5.6209 -
  5.6210 -
  5.6211 -
  5.6212 -
  5.6213 -
  5.6214 -
  5.6215 -
  5.6216 -void consoleDemoInit(void);
  5.6217 -
  5.6218 -
  5.6219 -
  5.6220 -void consoleClear(void);
  5.6221 -# 62 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.6222 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/exceptions.h" 1
  5.6223 -# 54 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/exceptions.h"
  5.6224 -extern VoidFunctionPointer exceptionC[] ;
  5.6225 -extern unsigned long exceptionStack ;
  5.6226 -extern signed long exceptionRegisters[];
  5.6227 -
  5.6228 -void enterException(void);
  5.6229 -void setExceptionHandler(VoidFunctionPointer handler);
  5.6230 -void defaultExceptionHandler();
  5.6231 -
  5.6232 -u32 getCPSR();
  5.6233 -# 63 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.6234 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/image.h" 1
  5.6235 -# 51 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/image.h"
  5.6236 - typedef struct
  5.6237 - {
  5.6238 -    unsigned char r,g,b;
  5.6239 - }__attribute__ ((packed)) RGB_24;
  5.6240 -
  5.6241 -
  5.6242 - typedef struct
  5.6243 - {
  5.6244 -    short height,width;
  5.6245 -    int bpp;
  5.6246 -    unsigned short* palette;
  5.6247 -
  5.6248 -    union
  5.6249 -    {
  5.6250 -       unsigned char* data8;
  5.6251 -       unsigned short* data16;
  5.6252 -       unsigned int* data32;
  5.6253 -    } image;
  5.6254 -
  5.6255 - } sImage, *psImage;
  5.6256 -
  5.6257 -
  5.6258 -
  5.6259 -
  5.6260 -
  5.6261 -void image24to16(sImage* img);
  5.6262 -void image8to16(sImage* img);
  5.6263 -void image8to16trans(sImage* img, u8 transperentColor);
  5.6264 -void imageDestroy(sImage* img);
  5.6265 -void imageTileData(sImage* img);
  5.6266 -
  5.6267 -
  5.6268 -
  5.6269 -
  5.6270 -
  5.6271 -
  5.6272 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/pcx.h" 1
  5.6273 -# 41 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/pcx.h"
  5.6274 -typedef struct
  5.6275 -{
  5.6276 -   char manufacturer;
  5.6277 -   char version;
  5.6278 -   char encoding;
  5.6279 -   char bitsPerPixel;
  5.6280 -   short int xmin,ymin;
  5.6281 -   short int xmax,ymax;
  5.6282 -   short int hres;
  5.6283 -   short int vres;
  5.6284 -   char palette16[48];
  5.6285 -   char reserved;
  5.6286 -   char colorPlanes;
  5.6287 -   short int bytesPerLine;
  5.6288 -   short int paletteYype;
  5.6289 -   char filler[58];
  5.6290 -}__attribute__ ((packed)) PCXHeader, *pPCXHeader;
  5.6291 -
  5.6292 -
  5.6293 -
  5.6294 -
  5.6295 -
  5.6296 -int loadPCX(unsigned char* pcx, sImage* image);
  5.6297 -# 88 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/image.h" 2
  5.6298 -# 64 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.6299 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/input.h" 1
  5.6300 -# 104 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/input.h"
  5.6301 -typedef enum KEYPAD_BITS {
  5.6302 -  KEY_A = (1 << (0)),
  5.6303 -  KEY_B = (1 << (1)),
  5.6304 -  KEY_SELECT = (1 << (2)),
  5.6305 -  KEY_START = (1 << (3)),
  5.6306 -  KEY_RIGHT = (1 << (4)),
  5.6307 -  KEY_LEFT = (1 << (5)),
  5.6308 -  KEY_UP = (1 << (6)),
  5.6309 -  KEY_DOWN = (1 << (7)),
  5.6310 -  KEY_R = (1 << (8)),
  5.6311 -  KEY_L = (1 << (9)),
  5.6312 -  KEY_X = (1 << (10)),
  5.6313 -  KEY_Y = (1 << (11)),
  5.6314 -  KEY_TOUCH = (1 << (12)),
  5.6315 -  KEY_LID = (1 << (13))
  5.6316 -} KEYPAD_BITS;
  5.6317 -# 128 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/input.h"
  5.6318 -void scanKeys();
  5.6319 -
  5.6320 -
  5.6321 -uint32 keysHeld(void);
  5.6322 -
  5.6323 -
  5.6324 -uint32 keysDown(void);
  5.6325 -
  5.6326 -
  5.6327 -uint32 keysDownRepeat(void);
  5.6328 -
  5.6329 -
  5.6330 -
  5.6331 -
  5.6332 -
  5.6333 -void keysSetRepeat( u8 setDelay, u8 setRepeat );
  5.6334 -
  5.6335 -
  5.6336 -uint32 keysUp(void);
  5.6337 -
  5.6338 -
  5.6339 -touchPosition touchReadXY();
  5.6340 -# 65 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.6341 -
  5.6342 -
  5.6343 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/rumble.h" 1
  5.6344 -# 50 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/rumble.h"
  5.6345 -typedef enum {
  5.6346 -   RUMBLE,
  5.6347 -   WARIOWARE
  5.6348 -}RUMBLE_TYPE;
  5.6349 -
  5.6350 -
  5.6351 -
  5.6352 -
  5.6353 -
  5.6354 -bool isRumbleInserted(void);
  5.6355 -
  5.6356 -
  5.6357 -
  5.6358 -
  5.6359 -
  5.6360 -void setRumble(bool position);
  5.6361 -# 68 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.6362 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/sound.h" 1
  5.6363 -# 47 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/sound.h"
  5.6364 -void playSound( pTransferSoundData sound);
  5.6365 -void setGenericSound( u32 rate, u8 vol, u8 pan, u8 format);
  5.6366 -void playGenericSound(const void* data, u32 length);
  5.6367 -# 69 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.6368 -
  5.6369 -
  5.6370 -
  5.6371 -# 1 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/sprite.h" 1
  5.6372 -# 82 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/sprite.h"
  5.6373 -typedef enum
  5.6374 -{
  5.6375 - OBJMODE_NORMAL,
  5.6376 - OBJMODE_BLENDED,
  5.6377 - OBJMODE_WINDOWED,
  5.6378 - OBJMODE_BITMAP,
  5.6379 -
  5.6380 -} tObjMode;
  5.6381 -
  5.6382 -
  5.6383 -
  5.6384 -
  5.6385 -
  5.6386 -typedef enum {
  5.6387 - OBJSHAPE_SQUARE,
  5.6388 - OBJSHAPE_WIDE,
  5.6389 - OBJSHAPE_TALL,
  5.6390 - OBJSHAPE_FORBIDDEN,
  5.6391 -} tObjShape;
  5.6392 -
  5.6393 -
  5.6394 -
  5.6395 -
  5.6396 -
  5.6397 -typedef enum {
  5.6398 - OBJSIZE_8,
  5.6399 - OBJSIZE_16,
  5.6400 - OBJSIZE_32,
  5.6401 - OBJSIZE_64,
  5.6402 -} tObjSize;
  5.6403 -
  5.6404 -
  5.6405 -
  5.6406 -
  5.6407 -
  5.6408 -typedef enum {
  5.6409 - OBJCOLOR_16,
  5.6410 - OBJCOLOR_256,
  5.6411 -} tObjColMode;
  5.6412 -
  5.6413 -
  5.6414 -
  5.6415 -
  5.6416 -
  5.6417 -typedef enum {
  5.6418 - OBJPRIORITY_0,
  5.6419 - OBJPRIORITY_1,
  5.6420 - OBJPRIORITY_2,
  5.6421 - OBJPRIORITY_3,
  5.6422 -} tObjPriority;
  5.6423 -
  5.6424 -
  5.6425 -
  5.6426 -typedef union {
  5.6427 - struct {
  5.6428 -
  5.6429 -  struct {
  5.6430 -   u16 posY :8;
  5.6431 -   union {
  5.6432 -    struct {
  5.6433 -     u8 :1;
  5.6434 -     bool isHidden :1;
  5.6435 -     u8 :6;
  5.6436 -    };
  5.6437 -    struct {
  5.6438 -     bool isRotoscale :1;
  5.6439 -     bool rsDouble :1;
  5.6440 -     tObjMode objMode :2;
  5.6441 -     bool isMosaic :1;
  5.6442 -     tObjColMode colMode :1;
  5.6443 -     tObjShape objShape :2;
  5.6444 -    };
  5.6445 -   };
  5.6446 -  };
  5.6447 -
  5.6448 -  union {
  5.6449 -   struct {
  5.6450 -    u16 posX :9;
  5.6451 -    u8 :7;
  5.6452 -   };
  5.6453 -   struct {
  5.6454 -    u8 :8;
  5.6455 -    union {
  5.6456 -     struct {
  5.6457 -      u8 :4;
  5.6458 -      bool hFlip :1;
  5.6459 -      bool vFlip :1;
  5.6460 -      u8 :2;
  5.6461 -     };
  5.6462 -     struct {
  5.6463 -      u8 :1;
  5.6464 -      u8 rsMatrixIdx :5;
  5.6465 -      tObjSize objSize :2;
  5.6466 -     };
  5.6467 -    };
  5.6468 -   };
  5.6469 -  };
  5.6470 -
  5.6471 -  struct {
  5.6472 -   u16 tileIdx :10;
  5.6473 -   tObjPriority objPriority :2;
  5.6474 -   u8 objPal :4;
  5.6475 -  };
  5.6476 -
  5.6477 -  u16 attribute3;
  5.6478 - };
  5.6479 -
  5.6480 - struct {
  5.6481 -  uint16 attribute[3];
  5.6482 -  uint16 filler;
  5.6483 - };
  5.6484 -
  5.6485 -} SpriteEntry, * pSpriteEntry;
  5.6486 -
  5.6487 -
  5.6488 -typedef struct sSpriteRotation {
  5.6489 -  uint16 filler1[3];
  5.6490 -  int16 hdx;
  5.6491 -
  5.6492 -  uint16 filler2[3];
  5.6493 -  int16 hdy;
  5.6494 -
  5.6495 -  uint16 filler3[3];
  5.6496 -  int16 vdx;
  5.6497 -
  5.6498 -  uint16 filler4[3];
  5.6499 -  int16 vdy;
  5.6500 -} SpriteRotation, * pSpriteRotation;
  5.6501 -# 218 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/sprite.h"
  5.6502 -typedef union {
  5.6503 - SpriteEntry spriteBuffer[128];
  5.6504 - SpriteRotation matrixBuffer[32];
  5.6505 -} tOAM;
  5.6506 -# 73 "/home/lifning/hack/devkitPro/libnds/include/nds.h" 2
  5.6507 -# 4 "/home/lifning/hack/nds-test/source/main.c" 2
  5.6508 -
  5.6509 -void delay(int s) {
  5.6510 - while(s-- > 0) {
  5.6511 -  int i = 60;
  5.6512 -  while(--i) swiWaitForVBlank();
  5.6513 - }
  5.6514 -}
  5.6515 -
  5.6516 -int main(void) {
  5.6517 - SDL_Surface *screen;
  5.6518 - SDL_Joystick *stick;
  5.6519 - SDL_Event event;
  5.6520 - SDL_Rect rect = {8,8,240,176};
  5.6521 -
  5.6522 - consoleDemoInit();
  5.6523 - if(SDL_Init(0x00000020|0x00000200) < 0) {
  5.6524 -  puts("# error initializing SDL");
  5.6525 -  puts(SDL_GetError());
  5.6526 -  return 1;
  5.6527 - }
  5.6528 - puts("* initialized SDL\n"); delay(1);
  5.6529 -
  5.6530 - screen = SDL_SetVideoMode(256, 192, 16, 0x00000000);
  5.6531 - if(!screen) {
  5.6532 -  puts("# error setting video mode");
  5.6533 -  puts(SDL_GetError());
  5.6534 -  return 2;
  5.6535 - }
  5.6536 - puts("* set video mode\n"); delay(1);
  5.6537 -
  5.6538 - stick = SDL_JoystickOpen(0);
  5.6539 - if(stick == ((void *)0)) {
  5.6540 -  puts("# error opening joystick");
  5.6541 -  puts(SDL_GetError());
  5.6542 -  return 3;
  5.6543 - }
  5.6544 - puts("* opened joystick"); delay(1);
  5.6545 -
  5.6546 - while(1)
  5.6547 - while(SDL_PollEvent(&event))
  5.6548 - switch(event.type) {
  5.6549 -  case SDL_JOYBUTTONDOWN:
  5.6550 -  switch(event.jbutton.which) {
  5.6551 -   case 0:
  5.6552 -   SDL_FillRect(screen, &rect, ((31)|((0)<<5)|((0)<<10))|0x8000);
  5.6553 -   break;
  5.6554 -   case 1:
  5.6555 -   SDL_FillRect(screen, &rect, ((0)|((31)<<5)|((0)<<10))|0x8000);
  5.6556 -   break;
  5.6557 -   case 2:
  5.6558 -   SDL_FillRect(screen, &rect, ((0)|((0)<<5)|((31)<<10))|0x8000);
  5.6559 -   break;
  5.6560 -   case 3:
  5.6561 -   SDL_FillRect(screen, &rect, ((0)|((0)<<5)|((0)<<10))|0x8000);
  5.6562 -   break;
  5.6563 -   default: break;
  5.6564 -  }
  5.6565 -  SDL_Flip(screen);
  5.6566 -  break;
  5.6567 -  default: break;
  5.6568 - }
  5.6569 -
  5.6570 - return 0;
  5.6571 -}
     6.1 --- a/test/nds-test/build/main.s	Mon Aug 11 04:39:24 2008 +0000
     6.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.3 @@ -1,4198 +0,0 @@
     6.4 -	.cpu arm9tdmi
     6.5 -	.fpu softvfp
     6.6 -	.eabi_attribute 20, 1
     6.7 -	.eabi_attribute 21, 1
     6.8 -	.eabi_attribute 23, 3
     6.9 -	.eabi_attribute 24, 1
    6.10 -	.eabi_attribute 25, 1
    6.11 -	.eabi_attribute 26, 1
    6.12 -	.eabi_attribute 30, 6
    6.13 -	.eabi_attribute 18, 4
    6.14 -	.code	16
    6.15 -	.file	"main.c"
    6.16 -	.section	.debug_abbrev,"",%progbits
    6.17 -.Ldebug_abbrev0:
    6.18 -	.section	.debug_info,"",%progbits
    6.19 -.Ldebug_info0:
    6.20 -	.section	.debug_line,"",%progbits
    6.21 -.Ldebug_line0:
    6.22 -	.text
    6.23 -.Ltext0:
    6.24 -	.bss
    6.25 -	.align	2
    6.26 -glGlob:
    6.27 -	.space	4
    6.28 -	.text
    6.29 -	.align	2
    6.30 -	.global	delay
    6.31 -	.code	16
    6.32 -	.thumb_func
    6.33 -	.type	delay, %function
    6.34 -delay:
    6.35 -.LFB108:
    6.36 -	.file 1 "/home/lifning/hack/nds-test/source/main.c"
    6.37 -	.loc 1 5 0
    6.38 -	push	{r7, lr}
    6.39 -.LCFI0:
    6.40 -	sub	sp, sp, #16
    6.41 -.LCFI1:
    6.42 -	add	r7, sp, #0
    6.43 -.LCFI2:
    6.44 -	str	r0, [r7, #4]
    6.45 -	b	.L2
    6.46 -.L5:
    6.47 -.LBB2:
    6.48 -	.loc 1 7 0
    6.49 -	mov	r3, #60
    6.50 -	str	r3, [r7, #12]
    6.51 -	b	.L3
    6.52 -.L4:
    6.53 -	.loc 1 8 0
    6.54 -	bl	swiWaitForVBlank
    6.55 -.L3:
    6.56 -	ldr	r3, [r7, #12]
    6.57 -	sub	r3, r3, #1
    6.58 -	str	r3, [r7, #12]
    6.59 -	ldr	r3, [r7, #12]
    6.60 -	cmp	r3, #0
    6.61 -	bne	.L4
    6.62 -.L2:
    6.63 -.LBE2:
    6.64 -	.loc 1 6 0
    6.65 -	ldr	r2, [r7, #4]
    6.66 -	asr	r3, r2, #31
    6.67 -	sub	r3, r3, r2
    6.68 -	lsr	r3, r3, #31
    6.69 -	lsl	r3, r3, #24
    6.70 -	lsr	r2, r3, #24
    6.71 -	ldr	r3, [r7, #4]
    6.72 -	sub	r3, r3, #1
    6.73 -	str	r3, [r7, #4]
    6.74 -	cmp	r2, #0
    6.75 -	bne	.L5
    6.76 -	.loc 1 10 0
    6.77 -	mov	sp, r7
    6.78 -	add	sp, sp, #16
    6.79 -	@ sp needed for prologue
    6.80 -	pop	{r7}
    6.81 -	pop	{r0}
    6.82 -	bx	r0
    6.83 -.LFE108:
    6.84 -	.size	delay, .-delay
    6.85 -	.section	.rodata
    6.86 -	.align	2
    6.87 -	.type	C.62.7416, %object
    6.88 -	.size	C.62.7416, 16
    6.89 -C.62.7416:
    6.90 -	.word	8
    6.91 -	.word	8
    6.92 -	.word	240
    6.93 -	.word	176
    6.94 -	.align	2
    6.95 -.LC1:
    6.96 -	.ascii	"# error initializing SDL\000"
    6.97 -	.align	2
    6.98 -.LC3:
    6.99 -	.ascii	"* initialized SDL\012\000"
   6.100 -	.align	2
   6.101 -.LC5:
   6.102 -	.ascii	"# error setting video mode\000"
   6.103 -	.align	2
   6.104 -.LC7:
   6.105 -	.ascii	"* set video mode\012\000"
   6.106 -	.align	2
   6.107 -.LC9:
   6.108 -	.ascii	"# error opening joystick\000"
   6.109 -	.align	2
   6.110 -.LC11:
   6.111 -	.ascii	"* opened joystick\000"
   6.112 -	.text
   6.113 -	.align	2
   6.114 -	.global	main
   6.115 -	.code	16
   6.116 -	.thumb_func
   6.117 -	.type	main, %function
   6.118 -main:
   6.119 -.LFB109:
   6.120 -	.loc 1 12 0
   6.121 -	push	{r4, r7, lr}
   6.122 -.LCFI3:
   6.123 -	sub	sp, sp, #76
   6.124 -.LCFI4:
   6.125 -	add	r7, sp, #0
   6.126 -.LCFI5:
   6.127 -	.loc 1 16 0
   6.128 -	mov	r3, r7
   6.129 -	add	r3, r3, #8
   6.130 -	ldr	r1, .L23
   6.131 -	mov	r2, r3
   6.132 -	mov	r3, r1
   6.133 -	ldmia	r3!, {r0, r1, r4}
   6.134 -	stmia	r2!, {r0, r1, r4}
   6.135 -	ldr	r3, [r3]
   6.136 -	str	r3, [r2]
   6.137 -	.loc 1 18 0
   6.138 -	bl	consoleDemoInit
   6.139 -	.loc 1 19 0
   6.140 -	mov	r3, #136
   6.141 -	lsl	r3, r3, #2
   6.142 -	mov	r0, r3
   6.143 -	bl	SDL_Init
   6.144 -	mov	r3, r0
   6.145 -	cmp	r3, #0
   6.146 -	bge	.L8
   6.147 -	.loc 1 20 0
   6.148 -	ldr	r3, .L23+4
   6.149 -	mov	r0, r3
   6.150 -	bl	puts
   6.151 -	.loc 1 21 0
   6.152 -	bl	SDL_GetError
   6.153 -	mov	r3, r0
   6.154 -	mov	r0, r3
   6.155 -	bl	puts
   6.156 -	.loc 1 22 0
   6.157 -	mov	r0, #1
   6.158 -	str	r0, [r7]
   6.159 -	b	.L9
   6.160 -.L8:
   6.161 -	.loc 1 24 0
   6.162 -	ldr	r3, .L23+8
   6.163 -	mov	r0, r3
   6.164 -	bl	puts
   6.165 -	mov	r0, #1
   6.166 -	bl	delay
   6.167 -	.loc 1 26 0
   6.168 -	mov	r3, #128
   6.169 -	lsl	r3, r3, #1
   6.170 -	mov	r0, r3
   6.171 -	mov	r1, #192
   6.172 -	mov	r2, #16
   6.173 -	mov	r3, #0
   6.174 -	bl	SDL_SetVideoMode
   6.175 -	mov	r3, r0
   6.176 -	str	r3, [r7, #64]
   6.177 -	.loc 1 27 0
   6.178 -	ldr	r3, [r7, #64]
   6.179 -	cmp	r3, #0
   6.180 -	bne	.L10
   6.181 -	.loc 1 28 0
   6.182 -	ldr	r3, .L23+12
   6.183 -	mov	r0, r3
   6.184 -	bl	puts
   6.185 -	.loc 1 29 0
   6.186 -	bl	SDL_GetError
   6.187 -	mov	r3, r0
   6.188 -	mov	r0, r3
   6.189 -	bl	puts
   6.190 -	.loc 1 30 0
   6.191 -	mov	r1, #2
   6.192 -	str	r1, [r7]
   6.193 -	b	.L9
   6.194 -.L10:
   6.195 -	.loc 1 32 0
   6.196 -	ldr	r3, .L23+16
   6.197 -	mov	r0, r3
   6.198 -	bl	puts
   6.199 -	mov	r0, #1
   6.200 -	bl	delay
   6.201 -	.loc 1 34 0
   6.202 -	mov	r0, #0
   6.203 -	bl	SDL_JoystickOpen
   6.204 -	mov	r3, r0
   6.205 -	str	r3, [r7, #68]
   6.206 -	.loc 1 35 0
   6.207 -	ldr	r3, [r7, #68]
   6.208 -	cmp	r3, #0
   6.209 -	bne	.L11
   6.210 -	.loc 1 36 0
   6.211 -	ldr	r3, .L23+20
   6.212 -	mov	r0, r3
   6.213 -	bl	puts
   6.214 -	.loc 1 37 0
   6.215 -	bl	SDL_GetError
   6.216 -	mov	r3, r0
   6.217 -	mov	r0, r3
   6.218 -	bl	puts
   6.219 -	.loc 1 38 0
   6.220 -	mov	r3, #3
   6.221 -	str	r3, [r7]
   6.222 -	b	.L9
   6.223 -.L11:
   6.224 -	.loc 1 40 0
   6.225 -	ldr	r3, .L23+24
   6.226 -	mov	r0, r3
   6.227 -	bl	puts
   6.228 -	mov	r0, #1
   6.229 -	bl	delay
   6.230 -	b	.L12
   6.231 -.L20:
   6.232 -	.loc 1 44 0
   6.233 -	mov	r3, r7
   6.234 -	add	r3, r3, #24
   6.235 -	ldrb	r3, [r3]
   6.236 -	cmp	r3, #12
   6.237 -	bne	.L12
   6.238 -.L13:
   6.239 -	.loc 1 46 0
   6.240 -	mov	r3, r7
   6.241 -	add	r3, r3, #24
   6.242 -	ldrb	r3, [r3, #1]
   6.243 -	str	r3, [r7, #4]
   6.244 -	ldr	r4, [r7, #4]
   6.245 -	cmp	r4, #1
   6.246 -	beq	.L16
   6.247 -	ldr	r0, [r7, #4]
   6.248 -	cmp	r0, #1
   6.249 -	bgt	.L19
   6.250 -	ldr	r1, [r7, #4]
   6.251 -	cmp	r1, #0
   6.252 -	beq	.L15
   6.253 -	b	.L14
   6.254 -.L19:
   6.255 -	ldr	r3, [r7, #4]
   6.256 -	cmp	r3, #2
   6.257 -	beq	.L17
   6.258 -	ldr	r4, [r7, #4]
   6.259 -	cmp	r4, #3
   6.260 -	beq	.L18
   6.261 -	b	.L14
   6.262 -.L15:
   6.263 -	.loc 1 48 0
   6.264 -	ldr	r3, [r7, #64]
   6.265 -	mov	r2, r7
   6.266 -	add	r2, r2, #8
   6.267 -	ldr	r4, .L23+28
   6.268 -	mov	r0, r3
   6.269 -	mov	r1, r2
   6.270 -	mov	r2, r4
   6.271 -	bl	SDL_FillRect
   6.272 -	b	.L14
   6.273 -.L16:
   6.274 -	.loc 1 51 0
   6.275 -	ldr	r3, [r7, #64]
   6.276 -	mov	r2, r7
   6.277 -	add	r2, r2, #8
   6.278 -	ldr	r4, .L23+32
   6.279 -	mov	r0, r3
   6.280 -	mov	r1, r2
   6.281 -	mov	r2, r4
   6.282 -	bl	SDL_FillRect
   6.283 -	b	.L14
   6.284 -.L17:
   6.285 -	.loc 1 54 0
   6.286 -	ldr	r3, [r7, #64]
   6.287 -	mov	r1, r7
   6.288 -	add	r1, r1, #8
   6.289 -	mov	r2, #252
   6.290 -	lsl	r2, r2, #8
   6.291 -	mov	r0, r3
   6.292 -	bl	SDL_FillRect
   6.293 -	b	.L14
   6.294 -.L18:
   6.295 -	.loc 1 57 0
   6.296 -	ldr	r3, [r7, #64]
   6.297 -	mov	r1, r7
   6.298 -	add	r1, r1, #8
   6.299 -	mov	r2, #128
   6.300 -	lsl	r2, r2, #8
   6.301 -	mov	r0, r3
   6.302 -	bl	SDL_FillRect
   6.303 -.L14:
   6.304 -	.loc 1 61 0
   6.305 -	ldr	r3, [r7, #64]
   6.306 -	mov	r0, r3
   6.307 -	bl	SDL_Flip
   6.308 -.L12:
   6.309 -	.loc 1 43 0
   6.310 -	mov	r3, r7
   6.311 -	add	r3, r3, #24
   6.312 -	mov	r0, r3
   6.313 -	bl	SDL_PollEvent
   6.314 -	mov	r3, r0
   6.315 -	cmp	r3, #0
   6.316 -	bne	.L20
   6.317 -	b	.L12
   6.318 -.L9:
   6.319 -	.loc 1 64 0
   6.320 -	ldr	r3, [r7]
   6.321 -	.loc 1 67 0
   6.322 -	mov	r0, r3
   6.323 -	mov	sp, r7
   6.324 -	add	sp, sp, #76
   6.325 -	@ sp needed for prologue
   6.326 -	pop	{r4, r7}
   6.327 -	pop	{r1}
   6.328 -	bx	r1
   6.329 -.L24:
   6.330 -	.align	2
   6.331 -.L23:
   6.332 -	.word	C.62.7416
   6.333 -	.word	.LC1
   6.334 -	.word	.LC3
   6.335 -	.word	.LC5
   6.336 -	.word	.LC7
   6.337 -	.word	.LC9
   6.338 -	.word	.LC11
   6.339 -	.word	32799
   6.340 -	.word	33760
   6.341 -.LFE109:
   6.342 -	.size	main, .-main
   6.343 -	.section	.debug_frame,"",%progbits
   6.344 -.Lframe0:
   6.345 -	.4byte	.LECIE0-.LSCIE0
   6.346 -.LSCIE0:
   6.347 -	.4byte	0xffffffff
   6.348 -	.byte	0x1
   6.349 -	.ascii	"\000"
   6.350 -	.uleb128 0x1
   6.351 -	.sleb128 -4
   6.352 -	.byte	0xe
   6.353 -	.byte	0xc
   6.354 -	.uleb128 0xd
   6.355 -	.uleb128 0x0
   6.356 -	.align	2
   6.357 -.LECIE0:
   6.358 -.LSFDE0:
   6.359 -	.4byte	.LEFDE0-.LASFDE0
   6.360 -.LASFDE0:
   6.361 -	.4byte	.Lframe0
   6.362 -	.4byte	.LFB108
   6.363 -	.4byte	.LFE108-.LFB108
   6.364 -	.byte	0x4
   6.365 -	.4byte	.LCFI0-.LFB108
   6.366 -	.byte	0xe
   6.367 -	.uleb128 0x8
   6.368 -	.byte	0x87
   6.369 -	.uleb128 0x2
   6.370 -	.byte	0x8e
   6.371 -	.uleb128 0x1
   6.372 -	.byte	0x4
   6.373 -	.4byte	.LCFI1-.LCFI0
   6.374 -	.byte	0xe
   6.375 -	.uleb128 0x18
   6.376 -	.byte	0x4
   6.377 -	.4byte	.LCFI2-.LCFI1
   6.378 -	.byte	0xd
   6.379 -	.uleb128 0x7
   6.380 -	.align	2
   6.381 -.LEFDE0:
   6.382 -.LSFDE2:
   6.383 -	.4byte	.LEFDE2-.LASFDE2
   6.384 -.LASFDE2:
   6.385 -	.4byte	.Lframe0
   6.386 -	.4byte	.LFB109
   6.387 -	.4byte	.LFE109-.LFB109
   6.388 -	.byte	0x4
   6.389 -	.4byte	.LCFI3-.LFB109
   6.390 -	.byte	0xe
   6.391 -	.uleb128 0xc
   6.392 -	.byte	0x84
   6.393 -	.uleb128 0x3
   6.394 -	.byte	0x87
   6.395 -	.uleb128 0x2
   6.396 -	.byte	0x8e
   6.397 -	.uleb128 0x1
   6.398 -	.byte	0x4
   6.399 -	.4byte	.LCFI4-.LCFI3
   6.400 -	.byte	0xe
   6.401 -	.uleb128 0x58
   6.402 -	.byte	0x4
   6.403 -	.4byte	.LCFI5-.LCFI4
   6.404 -	.byte	0xd
   6.405 -	.uleb128 0x7
   6.406 -	.align	2
   6.407 -.LEFDE2:
   6.408 -	.text
   6.409 -.Letext0:
   6.410 -	.section	.debug_loc,"",%progbits
   6.411 -.Ldebug_loc0:
   6.412 -.LLST0:
   6.413 -	.4byte	.LFB108-.Ltext0
   6.414 -	.4byte	.LCFI0-.Ltext0
   6.415 -	.2byte	0x1
   6.416 -	.byte	0x5d
   6.417 -	.4byte	.LCFI0-.Ltext0
   6.418 -	.4byte	.LCFI1-.Ltext0
   6.419 -	.2byte	0x2
   6.420 -	.byte	0x7d
   6.421 -	.sleb128 8
   6.422 -	.4byte	.LCFI1-.Ltext0
   6.423 -	.4byte	.LCFI2-.Ltext0
   6.424 -	.2byte	0x2
   6.425 -	.byte	0x7d
   6.426 -	.sleb128 24
   6.427 -	.4byte	.LCFI2-.Ltext0
   6.428 -	.4byte	.LFE108-.Ltext0
   6.429 -	.2byte	0x2
   6.430 -	.byte	0x77
   6.431 -	.sleb128 24
   6.432 -	.4byte	0x0
   6.433 -	.4byte	0x0
   6.434 -.LLST1:
   6.435 -	.4byte	.LFB109-.Ltext0
   6.436 -	.4byte	.LCFI3-.Ltext0
   6.437 -	.2byte	0x1
   6.438 -	.byte	0x5d
   6.439 -	.4byte	.LCFI3-.Ltext0
   6.440 -	.4byte	.LCFI4-.Ltext0
   6.441 -	.2byte	0x2
   6.442 -	.byte	0x7d
   6.443 -	.sleb128 12
   6.444 -	.4byte	.LCFI4-.Ltext0
   6.445 -	.4byte	.LCFI5-.Ltext0
   6.446 -	.2byte	0x3
   6.447 -	.byte	0x7d
   6.448 -	.sleb128 88
   6.449 -	.4byte	.LCFI5-.Ltext0
   6.450 -	.4byte	.LFE109-.Ltext0
   6.451 -	.2byte	0x3
   6.452 -	.byte	0x77
   6.453 -	.sleb128 88
   6.454 -	.4byte	0x0
   6.455 -	.4byte	0x0
   6.456 -	.file 2 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_config_nintendods.h"
   6.457 -	.file 3 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_stdinc.h"
   6.458 -	.file 4 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_pixels.h"
   6.459 -	.file 5 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_rect.h"
   6.460 -	.file 6 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_surface.h"
   6.461 -	.file 7 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_video.h"
   6.462 -	.file 8 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_scancode.h"
   6.463 -	.file 9 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keysym.h"
   6.464 -	.file 10 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_keyboard.h"
   6.465 -	.file 11 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_joystick.h"
   6.466 -	.file 12 "/home/lifning/hack/devkitPro/libnds/include/SDL/SDL_events.h"
   6.467 -	.file 13 "/home/lifning/hack/devkitPro/libnds/include/nds/jtypes.h"
   6.468 -	.file 14 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/videoGL.h"
   6.469 -	.file 15 "/home/lifning/hack/devkitPro/libnds/include/nds/arm9/trig_lut.h"
   6.470 -	.section	.debug_info
   6.471 -	.4byte	0x1325
   6.472 -	.2byte	0x2
   6.473 -	.4byte	.Ldebug_abbrev0
   6.474 -	.byte	0x4
   6.475 -	.uleb128 0x1
   6.476 -	.4byte	.LASF395
   6.477 -	.byte	0x1
   6.478 -	.4byte	.LASF396
   6.479 -	.4byte	.Ltext0
   6.480 -	.4byte	.Letext0
   6.481 -	.4byte	.Ldebug_line0
   6.482 -	.uleb128 0x2
   6.483 -	.byte	0x1
   6.484 -	.byte	0x6
   6.485 -	.4byte	.LASF0
   6.486 -	.uleb128 0x3
   6.487 -	.4byte	.LASF3
   6.488 -	.byte	0x2
   6.489 -	.byte	0x1f
   6.490 -	.4byte	0x33
   6.491 -	.uleb128 0x2
   6.492 -	.byte	0x1
   6.493 -	.byte	0x8
   6.494 -	.4byte	.LASF1
   6.495 -	.uleb128 0x2
   6.496 -	.byte	0x2
   6.497 -	.byte	0x5
   6.498 -	.4byte	.LASF2
   6.499 -	.uleb128 0x3
   6.500 -	.4byte	.LASF4
   6.501 -	.byte	0x2
   6.502 -	.byte	0x21
   6.503 -	.4byte	0x4c
   6.504 -	.uleb128 0x2
   6.505 -	.byte	0x2
   6.506 -	.byte	0x7
   6.507 -	.4byte	.LASF5
   6.508 -	.uleb128 0x3
   6.509 -	.4byte	.LASF6
   6.510 -	.byte	0x2
   6.511 -	.byte	0x22
   6.512 -	.4byte	0x5e
   6.513 -	.uleb128 0x4
   6.514 -	.byte	0x4
   6.515 -	.byte	0x5
   6.516 -	.ascii	"int\000"
   6.517 -	.uleb128 0x3
   6.518 -	.4byte	.LASF7
   6.519 -	.byte	0x2
   6.520 -	.byte	0x23
   6.521 -	.4byte	0x70
   6.522 -	.uleb128 0x2
   6.523 -	.byte	0x4
   6.524 -	.byte	0x7
   6.525 -	.4byte	.LASF8
   6.526 -	.uleb128 0x2
   6.527 -	.byte	0x8
   6.528 -	.byte	0x5
   6.529 -	.4byte	.LASF9
   6.530 -	.uleb128 0x2
   6.531 -	.byte	0x8
   6.532 -	.byte	0x7
   6.533 -	.4byte	.LASF10
   6.534 -	.uleb128 0x2
   6.535 -	.byte	0x4
   6.536 -	.byte	0x5
   6.537 -	.4byte	.LASF11
   6.538 -	.uleb128 0x5
   6.539 -	.byte	0x4
   6.540 -	.byte	0x7
   6.541 -	.uleb128 0x6
   6.542 -	.byte	0x4
   6.543 -	.uleb128 0x2
   6.544 -	.byte	0x4
   6.545 -	.byte	0x7
   6.546 -	.4byte	.LASF12
   6.547 -	.uleb128 0x2
   6.548 -	.byte	0x1
   6.549 -	.byte	0x8
   6.550 -	.4byte	.LASF13
   6.551 -	.uleb128 0x3
   6.552 -	.4byte	.LASF14
   6.553 -	.byte	0x3
   6.554 -	.byte	0x63
   6.555 -	.4byte	0x28
   6.556 -	.uleb128 0x3
   6.557 -	.4byte	.LASF15
   6.558 -	.byte	0x3
   6.559 -	.byte	0x6d
   6.560 -	.4byte	0x41
   6.561 -	.uleb128 0x3
   6.562 -	.4byte	.LASF16
   6.563 -	.byte	0x3
   6.564 -	.byte	0x72
   6.565 -	.4byte	0x53
   6.566 -	.uleb128 0x3
   6.567 -	.4byte	.LASF17
   6.568 -	.byte	0x3
   6.569 -	.byte	0x77
   6.570 -	.4byte	0x65
   6.571 -	.uleb128 0x2
   6.572 -	.byte	0x8
   6.573 -	.byte	0x4
   6.574 -	.4byte	.LASF18
   6.575 -	.uleb128 0x7
   6.576 -	.4byte	.LASF20
   6.577 -	.byte	0x4
   6.578 -	.byte	0x4
   6.579 -	.byte	0xcd
   6.580 -	.4byte	0x111
   6.581 -	.uleb128 0x8
   6.582 -	.ascii	"r\000"
   6.583 -	.byte	0x4
   6.584 -	.byte	0xce
   6.585 -	.4byte	0x9f
   6.586 -	.byte	0x2
   6.587 -	.byte	0x23
   6.588 -	.uleb128 0x0
   6.589 -	.uleb128 0x8
   6.590 -	.ascii	"g\000"
   6.591 -	.byte	0x4
   6.592 -	.byte	0xcf
   6.593 -	.4byte	0x9f
   6.594 -	.byte	0x2
   6.595 -	.byte	0x23
   6.596 -	.uleb128 0x1
   6.597 -	.uleb128 0x8
   6.598 -	.ascii	"b\000"
   6.599 -	.byte	0x4
   6.600 -	.byte	0xd0
   6.601 -	.4byte	0x9f
   6.602 -	.byte	0x2
   6.603 -	.byte	0x23
   6.604 -	.uleb128 0x2
   6.605 -	.uleb128 0x9
   6.606 -	.4byte	.LASF19
   6.607 -	.byte	0x4
   6.608 -	.byte	0xd1
   6.609 -	.4byte	0x9f
   6.610 -	.byte	0x2
   6.611 -	.byte	0x23
   6.612 -	.uleb128 0x3
   6.613 -	.byte	0x0
   6.614 -	.uleb128 0x3
   6.615 -	.4byte	.LASF20
   6.616 -	.byte	0x4
   6.617 -	.byte	0xd2
   6.618 -	.4byte	0xd2
   6.619 -	.uleb128 0x3
   6.620 -	.4byte	.LASF21
   6.621 -	.byte	0x4
   6.622 -	.byte	0xd5
   6.623 -	.4byte	0x127
   6.624 -	.uleb128 0x7
   6.625 -	.4byte	.LASF21
   6.626 -	.byte	0x10
   6.627 -	.byte	0x4
   6.628 -	.byte	0xd5
   6.629 -	.4byte	0x16c
   6.630 -	.uleb128 0x9
   6.631 -	.4byte	.LASF22
   6.632 -	.byte	0x4
   6.633 -	.byte	0xe1
   6.634 -	.4byte	0x5e
   6.635 -	.byte	0x2
   6.636 -	.byte	0x23
   6.637 -	.uleb128 0x0
   6.638 -	.uleb128 0x9
   6.639 -	.4byte	.LASF23
   6.640 -	.byte	0x4
   6.641 -	.byte	0xe2
   6.642 -	.4byte	0x1e0
   6.643 -	.byte	0x2
   6.644 -	.byte	0x23
   6.645 -	.uleb128 0x4
   6.646 -	.uleb128 0x9
   6.647 -	.4byte	.LASF24
   6.648 -	.byte	0x4
   6.649 -	.byte	0xe4
   6.650 -	.4byte	0x5e
   6.651 -	.byte	0x2
   6.652 -	.byte	0x23
   6.653 -	.uleb128 0x8
   6.654 -	.uleb128 0x9
   6.655 -	.4byte	.LASF25
   6.656 -	.byte	0x4
   6.657 -	.byte	0xe5
   6.658 -	.4byte	0x1e6
   6.659 -	.byte	0x2
   6.660 -	.byte	0x23
   6.661 -	.uleb128 0xc
   6.662 -	.byte	0x0
   6.663 -	.uleb128 0x3
   6.664 -	.4byte	.LASF26
   6.665 -	.byte	0x4
   6.666 -	.byte	0xd6
   6.667 -	.4byte	0x177
   6.668 -	.uleb128 0xa
   6.669 -	.byte	0x4
   6.670 -	.4byte	0x17d
   6.671 -	.uleb128 0xb
   6.672 -	.byte	0x1
   6.673 -	.4byte	0x5e
   6.674 -	.4byte	0x192
   6.675 -	.uleb128 0xc
   6.676 -	.4byte	0x8f
   6.677 -	.uleb128 0xc
   6.678 -	.4byte	0x192
   6.679 -	.byte	0x0
   6.680 -	.uleb128 0xa
   6.681 -	.byte	0x4
   6.682 -	.4byte	0x11c
   6.683 -	.uleb128 0x7
   6.684 -	.4byte	.LASF27
   6.685 -	.byte	0xc
   6.686 -	.byte	0x4
   6.687 -	.byte	0xd9
   6.688 -	.4byte	0x1cf
   6.689 -	.uleb128 0x9
   6.690 -	.4byte	.LASF28
   6.691 -	.byte	0x4
   6.692 -	.byte	0xda
   6.693 -	.4byte	0x16c
   6.694 -	.byte	0x2
   6.695 -	.byte	0x23
   6.696 -	.uleb128 0x0
   6.697 -	.uleb128 0x9
   6.698 -	.4byte	.LASF29
   6.699 -	.byte	0x4
   6.700 -	.byte	0xdb
   6.701 -	.4byte	0x8f
   6.702 -	.byte	0x2
   6.703 -	.byte	0x23
   6.704 -	.uleb128 0x4
   6.705 -	.uleb128 0x9
   6.706 -	.4byte	.LASF30
   6.707 -	.byte	0x4
   6.708 -	.byte	0xdc
   6.709 -	.4byte	0x1cf
   6.710 -	.byte	0x2
   6.711 -	.byte	0x23
   6.712 -	.uleb128 0x8
   6.713 -	.byte	0x0
   6.714 -	.uleb128 0xa
   6.715 -	.byte	0x4
   6.716 -	.4byte	0x198
   6.717 -	.uleb128 0x3
   6.718 -	.4byte	.LASF27
   6.719 -	.byte	0x4
   6.720 -	.byte	0xdd
   6.721 -	.4byte	0x198
   6.722 -	.uleb128 0xa
   6.723 -	.byte	0x4
   6.724 -	.4byte	0x111
   6.725 -	.uleb128 0xa
   6.726 -	.byte	0x4
   6.727 -	.4byte	0x1d5
   6.728 -	.uleb128 0x7
   6.729 -	.4byte	.LASF31
   6.730 -	.byte	0x20
   6.731 -	.byte	0x4
   6.732 -	.byte	0xea
   6.733 -	.4byte	0x2cb
   6.734 -	.uleb128 0x9
   6.735 -	.4byte	.LASF32
   6.736 -	.byte	0x4
   6.737 -	.byte	0xeb
   6.738 -	.4byte	0x192
   6.739 -	.byte	0x2
   6.740 -	.byte	0x23
   6.741 -	.uleb128 0x0
   6.742 -	.uleb128 0x9
   6.743 -	.4byte	.LASF33
   6.744 -	.byte	0x4
   6.745 -	.byte	0xec
   6.746 -	.4byte	0x9f
   6.747 -	.byte	0x2
   6.748 -	.byte	0x23
   6.749 -	.uleb128 0x4
   6.750 -	.uleb128 0x9
   6.751 -	.4byte	.LASF34
   6.752 -	.byte	0x4
   6.753 -	.byte	0xed
   6.754 -	.4byte	0x9f
   6.755 -	.byte	0x2
   6.756 -	.byte	0x23
   6.757 -	.uleb128 0x5
   6.758 -	.uleb128 0x9
   6.759 -	.4byte	.LASF35
   6.760 -	.byte	0x4
   6.761 -	.byte	0xee
   6.762 -	.4byte	0x9f
   6.763 -	.byte	0x2
   6.764 -	.byte	0x23
   6.765 -	.uleb128 0x6
   6.766 -	.uleb128 0x9
   6.767 -	.4byte	.LASF36
</