README.ds
author Ryan C. Gordon <icculus@icculus.org>
Fri, 03 Jun 2011 16:03:10 -0400
changeset 5547 4ccecd0901e2
parent 5515 0fcf231a6e74
child 6251 3e8c673cad58
permissions -rw-r--r--
Assert code's stdio interface was reading from the wrong variable.

Thanks to Frank Zago for the catch.
     1 ================================================================================
     2 Simple DirectMedia Layer for Nintendo DS
     3 ================================================================================
     4 
     5 -Requirements-
     6 * The devkitpro SDK available at http://devkitpro.org.
     7   Read the information at http://devkitpro.org/wiki/Getting_Started/devkitARM
     8   The necessary packages are devkitARM, libnds, libfat and default arm7.
     9 * The hardware renderer is using the libgl2d abstraction library that can be found at:
    10     http://rel.phatcode.net/junk.php?id=117
    11   Build it, and install the library and the header where SDL can find them (ie. in
    12   the libnds/lib and libnds/include directories).
    13 
    14 
    15 -Building SDL-
    16 
    17 After setting the devkitpro environment, cd into your SDL directory and type:
    18   make -f Makefile.ds
    19 
    20 This will compile and install the library and headers into the
    21 devkitpro's portlibs directory. Additionnaly it will compile several
    22 tests that you can run either on the DS or with desmume. For instance:
    23   desmume test/nds-test-progs/general/general.nds
    24 
    25 -Notes-
    26 * The renderer code is based on the gl like engine. It's not using the sprite engine.
    27 * The port is very basic and incomplete:
    28   - SDL currently has to be compiled for either framebuffer mode or render mode.
    29      See USE_HW_RENDERER in Makefile.ds.
    30   - some optional renderer functions are not implemented.
    31 
    32 -Limitations-
    33 * in hardware renderer mode, don't load too many textures. The internal format is
    34   2 bytes per pixel. And there is only 256KB reserved for the textures. For instance,
    35   testscale won't display sample.bmp, unless it's resized to a smaller picture.
    36 * the screen size is 256 x 384. Anything else won't work.
    37 * there is no 8 bits/pixel mode because SDL 1.3 doesn't support palettes.
    38 
    39 -Joystick mapping-
    40 The Joystick presented to SDL has 2 axes and 8 buttons
    41 
    42  KEY      | Code
    43   A       |   0
    44   B       |   1
    45   X       |   2
    46   Y       |   3
    47   L       |   4
    48   R       |   5
    49   select  |   6
    50   start   |   7
    51 
    52  Left-right is axe 0.
    53  Up-down is axe 1.
    54 
    55 -Mouse mapping-
    56 todo
    57 
    58 -Examples-
    59 Due to memory limitations, to be able to successfully run the testscale example, sample.bmp must be resized to 256x105.