Ongoing video render work; initial work on NDS Timers. gsoc2008_nds
authorDarren Alton <dalton@stevens.edu>
Fri, 08 Aug 2008 08:22:08 +0000
branchgsoc2008_nds
changeset 2683e858ac8868b6
parent 2682 f7594fc66bda
child 2684 a4f143d187dd
Ongoing video render work; initial work on NDS Timers.
src/timer/nds/SDL_systimer.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 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/src/timer/nds/SDL_systimer.c	Fri Aug 08 08:22:08 2008 +0000
     1.3 @@ -0,0 +1,116 @@
     1.4 +/*
     1.5 +    SDL - Simple DirectMedia Layer
     1.6 +    Copyright (C) 1997-2006 Sam Lantinga
     1.7 +
     1.8 +    This library is free software; you can redistribute it and/or
     1.9 +    modify it under the terms of the GNU Lesser General Public
    1.10 +    License as published by the Free Software Foundation; either
    1.11 +    version 2.1 of the License, or (at your option) any later version.
    1.12 +
    1.13 +    This library is distributed in the hope that it will be useful,
    1.14 +    but WITHOUT ANY WARRANTY; without even the implied warranty of
    1.15 +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    1.16 +    Lesser General Public License for more details.
    1.17 +
    1.18 +    You should have received a copy of the GNU Lesser General Public
    1.19 +    License along with this library; if not, write to the Free Software
    1.20 +    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
    1.21 +
    1.22 +    Sam Lantinga
    1.23 +    slouken@libsdl.org
    1.24 +*/
    1.25 +#include "SDL_config.h"
    1.26 +
    1.27 +#ifdef SDL_TIMER_NDS
    1.28 +
    1.29 +#include <nds.h>
    1.30 +#include <nds/timers.h>
    1.31 +
    1.32 +#include "SDL_timer.h"
    1.33 +#include "../SDL_timer_c.h"
    1.34 +
    1.35 +static Uint32 timer_ticks;
    1.36 +
    1.37 +void
    1.38 +SDL_StartTicks(void)
    1.39 +{
    1.40 +    if(!timer_alive) {
    1.41 +        SDL_SYS_TimerInit();
    1.42 +        SDL_SYS_StartTimer();
    1.43 +    }
    1.44 +
    1.45 +    timer_ticks = 0;
    1.46 +}
    1.47 +
    1.48 +Uint32
    1.49 +SDL_GetTicks(void)
    1.50 +{
    1.51 +    return timer_ticks;
    1.52 +}
    1.53 +
    1.54 +void
    1.55 +SDL_Delay(Uint32 ms)
    1.56 +{
    1.57 +    Uint32 start = SDL_GetTicks();
    1.58 +    while(timer_alive) {
    1.59 +        if((SDL_GetTicks() - start) >= ms) break;
    1.60 +    }
    1.61 +}
    1.62 +
    1.63 +/* Data to handle a single periodic alarm */
    1.64 +static int timer_alive = 0;
    1.65 +static int timer_ticks = 0;
    1.66 +
    1.67 +static int
    1.68 +RunTimer(void *unused)
    1.69 +{
    1.70 +    while (timer_alive) {
    1.71 +        if (SDL_timer_running) {
    1.72 +        }
    1.73 +        SDL_Delay(1);
    1.74 +    }
    1.75 +    return (0);
    1.76 +}
    1.77 +
    1.78 +void NDS_TimerInterrupt() {
    1.79 +    printf("timer irq\n");
    1.80 +}
    1.81 +
    1.82 +/* This is only called if the event thread is not running */
    1.83 +int
    1.84 +SDL_SYS_TimerInit(void)
    1.85 +{
    1.86 +    timer_alive = 1;
    1.87 +    timer_ticks = 0;
    1.88 +    TIMER_CR(0) = TIMER_DIV_1024 | TIMER_IRQ_REQ;
    1.89 +    TIMER_DATA(0) = TIMER_FREQ_1024(1000);
    1.90 +    irqSet(IRQ_TIMER1, NDS_TimerInterrupt);
    1.91 +    return 0;
    1.92 +}
    1.93 +
    1.94 +void
    1.95 +SDL_SYS_TimerQuit(void)
    1.96 +{
    1.97 +    if (timer_alive) {
    1.98 +        TIMER_CR(0) = 0;
    1.99 +    }
   1.100 +    timer_alive = 0;
   1.101 +}
   1.102 +
   1.103 +int
   1.104 +SDL_SYS_StartTimer(void)
   1.105 +{
   1.106 +    TIMER_CR(0) |= TIMER_ENABLE;
   1.107 +    return 0;
   1.108 +}
   1.109 +
   1.110 +void
   1.111 +SDL_SYS_StopTimer(void)
   1.112 +{
   1.113 +    TIMER_CR(0) &= ~TIMER_ENABLE;
   1.114 +    return;
   1.115 +}
   1.116 +
   1.117 +
   1.118 +#endif /* SDL_TIMER_NDS */
   1.119 +/* vi: set ts=4 sw=4 expandtab: */
     2.1 --- a/src/video/nds/SDL_ndsrender.c	Sat Jul 26 05:52:59 2008 +0000
     2.2 +++ b/src/video/nds/SDL_ndsrender.c	Fri Aug 08 08:22:08 2008 +0000
     2.3 @@ -460,7 +460,7 @@
     2.4      if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) {
     2.5          SDL_SetError("Unsupported texture format");
     2.6      }
     2.7 -printf("!NDS_UnlockTexture\n");
     2.8 +printf("+NDS_UnlockTexture\n-NDS_UnlockTexture\n");
     2.9  }
    2.10  
    2.11  static void
    2.12 @@ -502,9 +502,9 @@
    2.13  //    SDL_VideoDisplay *display = SDL_GetDisplayFromWindow(window);
    2.14      int i;
    2.15  printf("+NDS_RenderCopy\n");
    2.16 -    for(i = 0; i <= 0xFFFF; ++i) {
    2.17 +    /*for(i = 0; i <= 0xFFFF; ++i) {
    2.18          txdat->vram[i] = 0x8000|i;
    2.19 -    }
    2.20 +    }*/
    2.21      printf("/txdat->hw_index = %d\n", txdat->hw_index);
    2.22  #if 0
    2.23      if (txdat->dirty.list) {
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/test/nds-test/Makefile	Fri Aug 08 08:22:08 2008 +0000
     3.3 @@ -0,0 +1,132 @@
     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 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/test/nds-test/build/main.d	Fri Aug 08 08:22:08 2008 +0000
     4.3 @@ -0,0 +1,172 @@
     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 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/test/nds-test/build/main.i	Fri Aug 08 08:22:08 2008 +0000
     5.3 @@ -0,0 +1,6568 @@
     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 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/test/nds-test/build/main.s	Fri Aug 08 08:22:08 2008 +0000
     6.3 @@ -0,0 +1,4198 @@
     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
   6.768 +	.byte	0x4
   6.769 +	.byte	0xef
   6.770 +	.4byte	0x9f
   6.771 +	.byte	0x2
   6.772 +	.byte	0x23
   6.773 +	.uleb128 0x7
   6.774 +	.uleb128 0x9
   6.775 +	.4byte	.LASF37
   6.776 +	.byte	0x4
   6.777 +	.byte	0xf0
   6.778 +	.4byte	0x9f
   6.779 +	.byte	0x2
   6.780 +	.byte	0x23
   6.781 +	.uleb128 0x8
   6.782 +	.uleb128 0x9
   6.783 +	.4byte	.LASF38
   6.784 +	.byte	0x4
   6.785 +	.byte	0xf1
   6.786 +	.4byte	0x9f
   6.787 +	.byte	0x2
   6.788 +	.byte	0x23
   6.789 +	.uleb128 0x9
   6.790 +	.uleb128 0x9
   6.791 +	.4byte	.LASF39
   6.792 +	.byte	0x4
   6.793 +	.byte	0xf2
   6.794 +	.4byte	0x9f
   6.795 +	.byte	0x2
   6.796 +	.byte	0x23
   6.797 +	.uleb128 0xa
   6.798 +	.uleb128 0x9
   6.799 +	.4byte	.LASF40
   6.800 +	.byte	0x4
   6.801 +	.byte	0xf3
   6.802 +	.4byte	0x9f
   6.803 +	.byte	0x2
   6.804 +	.byte	0x23
   6.805 +	.uleb128 0xb
   6.806 +	.uleb128 0x9
   6.807 +	.4byte	.LASF41
   6.808 +	.byte	0x4
   6.809 +	.byte	0xf4
   6.810 +	.4byte	0x9f
   6.811 +	.byte	0x2
   6.812 +	.byte	0x23
   6.813 +	.uleb128 0xc
   6.814 +	.uleb128 0x9
   6.815 +	.4byte	.LASF42
   6.816 +	.byte	0x4
   6.817 +	.byte	0xf5
   6.818 +	.4byte	0x9f
   6.819 +	.byte	0x2
   6.820 +	.byte	0x23
   6.821 +	.uleb128 0xd
   6.822 +	.uleb128 0x9
   6.823 +	.4byte	.LASF43
   6.824 +	.byte	0x4
   6.825 +	.byte	0xf6
   6.826 +	.4byte	0xc0
   6.827 +	.byte	0x2
   6.828 +	.byte	0x23
   6.829 +	.uleb128 0x10
   6.830 +	.uleb128 0x9
   6.831 +	.4byte	.LASF44
   6.832 +	.byte	0x4
   6.833 +	.byte	0xf7
   6.834 +	.4byte	0xc0
   6.835 +	.byte	0x2
   6.836 +	.byte	0x23
   6.837 +	.uleb128 0x14
   6.838 +	.uleb128 0x9
   6.839 +	.4byte	.LASF45
   6.840 +	.byte	0x4
   6.841 +	.byte	0xf8
   6.842 +	.4byte	0xc0
   6.843 +	.byte	0x2
   6.844 +	.byte	0x23
   6.845 +	.uleb128 0x18
   6.846 +	.uleb128 0x9
   6.847 +	.4byte	.LASF46
   6.848 +	.byte	0x4
   6.849 +	.byte	0xf9
   6.850 +	.4byte	0xc0
   6.851 +	.byte	0x2
   6.852 +	.byte	0x23
   6.853 +	.uleb128 0x1c
   6.854 +	.byte	0x0
   6.855 +	.uleb128 0x3
   6.856 +	.4byte	.LASF31
   6.857 +	.byte	0x4
   6.858 +	.byte	0xfa
   6.859 +	.4byte	0x1ec
   6.860 +	.uleb128 0x7
   6.861 +	.4byte	.LASF47
   6.862 +	.byte	0x10
   6.863 +	.byte	0x5
   6.864 +	.byte	0x39
   6.865 +	.4byte	0x313
   6.866 +	.uleb128 0x8
   6.867 +	.ascii	"x\000"
   6.868 +	.byte	0x5
   6.869 +	.byte	0x3a
   6.870 +	.4byte	0x5e
   6.871 +	.byte	0x2
   6.872 +	.byte	0x23
   6.873 +	.uleb128 0x0
   6.874 +	.uleb128 0x8
   6.875 +	.ascii	"y\000"
   6.876 +	.byte	0x5
   6.877 +	.byte	0x3a
   6.878 +	.4byte	0x5e
   6.879 +	.byte	0x2
   6.880 +	.byte	0x23
   6.881 +	.uleb128 0x4
   6.882 +	.uleb128 0x8
   6.883 +	.ascii	"w\000"
   6.884 +	.byte	0x5
   6.885 +	.byte	0x3b
   6.886 +	.4byte	0x5e
   6.887 +	.byte	0x2
   6.888 +	.byte	0x23
   6.889 +	.uleb128 0x8
   6.890 +	.uleb128 0x8
   6.891 +	.ascii	"h\000"
   6.892 +	.byte	0x5
   6.893 +	.byte	0x3b
   6.894 +	.4byte	0x5e
   6.895 +	.byte	0x2
   6.896 +	.byte	0x23
   6.897 +	.uleb128 0xc
   6.898 +	.byte	0x0
   6.899 +	.uleb128 0x3
   6.900 +	.4byte	.LASF47
   6.901 +	.byte	0x5
   6.902 +	.byte	0x3c
   6.903 +	.4byte	0x2d6
   6.904 +	.uleb128 0x7
   6.905 +	.4byte	.LASF48
   6.906 +	.byte	0x40
   6.907 +	.byte	0x6
   6.908 +	.byte	0x3e
   6.909 +	.4byte	0x3dd
   6.910 +	.uleb128 0x9
   6.911 +	.4byte	.LASF49
   6.912 +	.byte	0x6
   6.913 +	.byte	0x3f
   6.914 +	.4byte	0xc0
   6.915 +	.byte	0x2
   6.916 +	.byte	0x23
   6.917 +	.uleb128 0x0
   6.918 +	.uleb128 0x9
   6.919 +	.4byte	.LASF50
   6.920 +	.byte	0x6
   6.921 +	.byte	0x40
   6.922 +	.4byte	0x3dd
   6.923 +	.byte	0x2
   6.924 +	.byte	0x23
   6.925 +	.uleb128 0x4
   6.926 +	.uleb128 0x8
   6.927 +	.ascii	"w\000"
   6.928 +	.byte	0x6
   6.929 +	.byte	0x41
   6.930 +	.4byte	0x5e
   6.931 +	.byte	0x2
   6.932 +	.byte	0x23
   6.933 +	.uleb128 0x8
   6.934 +	.uleb128 0x8
   6.935 +	.ascii	"h\000"
   6.936 +	.byte	0x6
   6.937 +	.byte	0x41
   6.938 +	.4byte	0x5e
   6.939 +	.byte	0x2
   6.940 +	.byte	0x23
   6.941 +	.uleb128 0xc
   6.942 +	.uleb128 0x9
   6.943 +	.4byte	.LASF51
   6.944 +	.byte	0x6
   6.945 +	.byte	0x42
   6.946 +	.4byte	0x5e
   6.947 +	.byte	0x2
   6.948 +	.byte	0x23
   6.949 +	.uleb128 0x10
   6.950 +	.uleb128 0x9
   6.951 +	.4byte	.LASF52
   6.952 +	.byte	0x6
   6.953 +	.byte	0x43
   6.954 +	.4byte	0x8f
   6.955 +	.byte	0x2
   6.956 +	.byte	0x23
   6.957 +	.uleb128 0x14
   6.958 +	.uleb128 0x9
   6.959 +	.4byte	.LASF29
   6.960 +	.byte	0x6
   6.961 +	.byte	0x46
   6.962 +	.4byte	0x8f
   6.963 +	.byte	0x2
   6.964 +	.byte	0x23
   6.965 +	.uleb128 0x18
   6.966 +	.uleb128 0x9
   6.967 +	.4byte	.LASF53
   6.968 +	.byte	0x6
   6.969 +	.byte	0x49
   6.970 +	.4byte	0x5e
   6.971 +	.byte	0x2
   6.972 +	.byte	0x23
   6.973 +	.uleb128 0x1c
   6.974 +	.uleb128 0x9
   6.975 +	.4byte	.LASF54
   6.976 +	.byte	0x6
   6.977 +	.byte	0x4a
   6.978 +	.4byte	0x8f
   6.979 +	.byte	0x2
   6.980 +	.byte	0x23
   6.981 +	.uleb128 0x20
   6.982 +	.uleb128 0x9
   6.983 +	.4byte	.LASF55
   6.984 +	.byte	0x6
   6.985 +	.byte	0x4d
   6.986 +	.4byte	0x313
   6.987 +	.byte	0x2
   6.988 +	.byte	0x23
   6.989 +	.uleb128 0x24
   6.990 +	.uleb128 0x8
   6.991 +	.ascii	"map\000"
   6.992 +	.byte	0x6
   6.993 +	.byte	0x50
   6.994 +	.4byte	0x3e9
   6.995 +	.byte	0x2
   6.996 +	.byte	0x23
   6.997 +	.uleb128 0x34
   6.998 +	.uleb128 0x9
   6.999 +	.4byte	.LASF56
  6.1000 +	.byte	0x6
  6.1001 +	.byte	0x53
  6.1002 +	.4byte	0x70
  6.1003 +	.byte	0x2
  6.1004 +	.byte	0x23
  6.1005 +	.uleb128 0x38
  6.1006 +	.uleb128 0x9
  6.1007 +	.4byte	.LASF24
  6.1008 +	.byte	0x6
  6.1009 +	.byte	0x56
  6.1010 +	.4byte	0x5e
  6.1011 +	.byte	0x2
  6.1012 +	.byte	0x23
  6.1013 +	.uleb128 0x3c
  6.1014 +	.byte	0x0
  6.1015 +	.uleb128 0xa
  6.1016 +	.byte	0x4
  6.1017 +	.4byte	0x2cb
  6.1018 +	.uleb128 0xd
  6.1019 +	.4byte	.LASF304
  6.1020 +	.byte	0x1
  6.1021 +	.uleb128 0xa
  6.1022 +	.byte	0x4
  6.1023 +	.4byte	0x3e3
  6.1024 +	.uleb128 0x3
  6.1025 +	.4byte	.LASF48
  6.1026 +	.byte	0x6
  6.1027 +	.byte	0x57
  6.1028 +	.4byte	0x31e
  6.1029 +	.uleb128 0x3
  6.1030 +	.4byte	.LASF57
  6.1031 +	.byte	0x7
  6.1032 +	.byte	0x5e
  6.1033 +	.4byte	0xc0
  6.1034 +	.uleb128 0xe
  6.1035 +	.byte	0x2
  6.1036 +	.byte	0x8
  6.1037 +	.byte	0x2d
  6.1038 +	.4byte	0xa61
  6.1039 +	.uleb128 0xf
  6.1040 +	.4byte	.LASF58
  6.1041 +	.sleb128 0
  6.1042 +	.uleb128 0xf
  6.1043 +	.4byte	.LASF59
  6.1044 +	.sleb128 4
  6.1045 +	.uleb128 0xf
  6.1046 +	.4byte	.LASF60
  6.1047 +	.sleb128 5
  6.1048 +	.uleb128 0xf
  6.1049 +	.4byte	.LASF61
  6.1050 +	.sleb128 6
  6.1051 +	.uleb128 0xf
  6.1052 +	.4byte	.LASF62
  6.1053 +	.sleb128 7
  6.1054 +	.uleb128 0xf
  6.1055 +	.4byte	.LASF63
  6.1056 +	.sleb128 8
  6.1057 +	.uleb128 0xf
  6.1058 +	.4byte	.LASF64
  6.1059 +	.sleb128 9
  6.1060 +	.uleb128 0xf
  6.1061 +	.4byte	.LASF65
  6.1062 +	.sleb128 10
  6.1063 +	.uleb128 0xf
  6.1064 +	.4byte	.LASF66
  6.1065 +	.sleb128 11
  6.1066 +	.uleb128 0xf
  6.1067 +	.4byte	.LASF67
  6.1068 +	.sleb128 12
  6.1069 +	.uleb128 0xf
  6.1070 +	.4byte	.LASF68
  6.1071 +	.sleb128 13
  6.1072 +	.uleb128 0xf
  6.1073 +	.4byte	.LASF69
  6.1074 +	.sleb128 14
  6.1075 +	.uleb128 0xf
  6.1076 +	.4byte	.LASF70
  6.1077 +	.sleb128 15
  6.1078 +	.uleb128 0xf
  6.1079 +	.4byte	.LASF71
  6.1080 +	.sleb128 16
  6.1081 +	.uleb128 0xf
  6.1082 +	.4byte	.LASF72
  6.1083 +	.sleb128 17
  6.1084 +	.uleb128 0xf
  6.1085 +	.4byte	.LASF73
  6.1086 +	.sleb128 18
  6.1087 +	.uleb128 0xf
  6.1088 +	.4byte	.LASF74
  6.1089 +	.sleb128 19
  6.1090 +	.uleb128 0xf
  6.1091 +	.4byte	.LASF75
  6.1092 +	.sleb128 20
  6.1093 +	.uleb128 0xf
  6.1094 +	.4byte	.LASF76
  6.1095 +	.sleb128 21
  6.1096 +	.uleb128 0xf
  6.1097 +	.4byte	.LASF77
  6.1098 +	.sleb128 22
  6.1099 +	.uleb128 0xf
  6.1100 +	.4byte	.LASF78
  6.1101 +	.sleb128 23
  6.1102 +	.uleb128 0xf
  6.1103 +	.4byte	.LASF79
  6.1104 +	.sleb128 24
  6.1105 +	.uleb128 0xf
  6.1106 +	.4byte	.LASF80
  6.1107 +	.sleb128 25
  6.1108 +	.uleb128 0xf
  6.1109 +	.4byte	.LASF81
  6.1110 +	.sleb128 26
  6.1111 +	.uleb128 0xf
  6.1112 +	.4byte	.LASF82
  6.1113 +	.sleb128 27
  6.1114 +	.uleb128 0xf
  6.1115 +	.4byte	.LASF83
  6.1116 +	.sleb128 28
  6.1117 +	.uleb128 0xf
  6.1118 +	.4byte	.LASF84
  6.1119 +	.sleb128 29
  6.1120 +	.uleb128 0xf
  6.1121 +	.4byte	.LASF85
  6.1122 +	.sleb128 30
  6.1123 +	.uleb128 0xf
  6.1124 +	.4byte	.LASF86
  6.1125 +	.sleb128 31
  6.1126 +	.uleb128 0xf
  6.1127 +	.4byte	.LASF87
  6.1128 +	.sleb128 32
  6.1129 +	.uleb128 0xf
  6.1130 +	.4byte	.LASF88
  6.1131 +	.sleb128 33
  6.1132 +	.uleb128 0xf
  6.1133 +	.4byte	.LASF89
  6.1134 +	.sleb128 34
  6.1135 +	.uleb128 0xf
  6.1136 +	.4byte	.LASF90
  6.1137 +	.sleb128 35
  6.1138 +	.uleb128 0xf
  6.1139 +	.4byte	.LASF91
  6.1140 +	.sleb128 36
  6.1141 +	.uleb128 0xf
  6.1142 +	.4byte	.LASF92
  6.1143 +	.sleb128 37
  6.1144 +	.uleb128 0xf
  6.1145 +	.4byte	.LASF93
  6.1146 +	.sleb128 38
  6.1147 +	.uleb128 0xf
  6.1148 +	.4byte	.LASF94
  6.1149 +	.sleb128 39
  6.1150 +	.uleb128 0xf
  6.1151 +	.4byte	.LASF95
  6.1152 +	.sleb128 40
  6.1153 +	.uleb128 0xf
  6.1154 +	.4byte	.LASF96
  6.1155 +	.sleb128 41
  6.1156 +	.uleb128 0xf
  6.1157 +	.4byte	.LASF97
  6.1158 +	.sleb128 42
  6.1159 +	.uleb128 0xf
  6.1160 +	.4byte	.LASF98
  6.1161 +	.sleb128 43
  6.1162 +	.uleb128 0xf
  6.1163 +	.4byte	.LASF99
  6.1164 +	.sleb128 44
  6.1165 +	.uleb128 0xf
  6.1166 +	.4byte	.LASF100
  6.1167 +	.sleb128 45
  6.1168 +	.uleb128 0xf
  6.1169 +	.4byte	.LASF101
  6.1170 +	.sleb128 46
  6.1171 +	.uleb128 0xf
  6.1172 +	.4byte	.LASF102
  6.1173 +	.sleb128 47
  6.1174 +	.uleb128 0xf
  6.1175 +	.4byte	.LASF103
  6.1176 +	.sleb128 48