59 lines
2.1 KiB
Text
59 lines
2.1 KiB
Text
================================================================================
|
|
Simple DirectMedia Layer for Nintendo DS
|
|
================================================================================
|
|
|
|
-Requirements-
|
|
* The devkitpro SDK available at http://devkitpro.org.
|
|
Read the information at http://devkitpro.org/wiki/Getting_Started/devkitARM
|
|
The necessary packages are devkitARM, libnds, libfat and default arm7.
|
|
* The hardware renderer is using the libgl2d abstraction library that can be found at:
|
|
http://rel.phatcode.net/junk.php?id=117
|
|
Build it, and install the library and the header where SDL can find them (ie. in
|
|
the libnds/lib and libnds/include directories).
|
|
|
|
|
|
-Building SDL-
|
|
|
|
After setting the devkitpro environment, cd into your SDL directory and type:
|
|
make -f Makefile.ds
|
|
|
|
This will compile and install the library and headers into the
|
|
devkitpro's portlibs directory. Additionnaly it will compile several
|
|
tests that you can run either on the DS or with desmume. For instance:
|
|
desmume test/nds-test-progs/general/general.nds
|
|
|
|
-Notes-
|
|
* The renderer code is based on the gl like engine. It's not using the sprite engine.
|
|
* The port is very basic and incomplete:
|
|
- SDL currently has to be compiled for either framebuffer mode or render mode.
|
|
See USE_HW_RENDERER in Makefile.ds.
|
|
- some optional renderer functions are not implemented.
|
|
|
|
-Limitations-
|
|
* in hardware renderer mode, don't load too many textures. The internal format is
|
|
2 bytes per pixel. And there is only 256KB reserved for the textures. For instance,
|
|
testscale won't display sample.bmp, unless it's resized to a smaller picture.
|
|
* the screen size is 256 x 384. Anything else won't work.
|
|
* there is no 8 bits/pixel mode because SDL 1.3 doesn't support palettes.
|
|
|
|
-Joystick mapping-
|
|
The Joystick presented to SDL has 2 axes and 8 buttons
|
|
|
|
KEY | Code
|
|
A | 0
|
|
B | 1
|
|
X | 2
|
|
Y | 3
|
|
L | 4
|
|
R | 5
|
|
select | 6
|
|
start | 7
|
|
|
|
Left-right is axe 0.
|
|
Up-down is axe 1.
|
|
|
|
-Mouse mapping-
|
|
todo
|
|
|
|
-Examples-
|
|
Due to memory limitations, to be able to successfully run the testscale example, sample.bmp must be resized to 256x105.
|