diff options
author | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
---|---|---|
committer | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
commit | 709c4d66e0b107ca606941b988bad717c0b45d9b (patch) | |
tree | 37ee08b1eb308f3b2b6426d5793545c38396b838 /packages/supertux | |
parent | fa6cd5a3b993f16c27de4ff82b42684516d433ba (diff) |
rename packages/ to recipes/ per earlier agreement
See links below for more details:
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816
Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Acked-by: Mike Westerhof <mwester@dls.net>
Acked-by: Philip Balister <philip@balister.org>
Acked-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Marcin Juszkiewicz <hrw@openembedded.org>
Acked-by: Koen Kooi <koen@openembedded.org>
Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'packages/supertux')
-rw-r--r-- | packages/supertux/files/gp2x.patch | 2614 | ||||
-rw-r--r-- | packages/supertux/files/img-resize.sh | 28 | ||||
-rw-r--r-- | packages/supertux/files/supertux-smallsize-data.tar.bz2 | bin | 41782 -> 0 bytes | |||
-rw-r--r-- | packages/supertux/files/supertux.desktop | 20 | ||||
-rw-r--r-- | packages/supertux/files/supertux.png | bin | 4097 -> 0 bytes | |||
-rw-r--r-- | packages/supertux/supertux-qvga_0.1.3.bb | 57 | ||||
-rw-r--r-- | packages/supertux/supertux_0.1.2.bb | 18 | ||||
-rw-r--r-- | packages/supertux/supertux_0.1.3.bb | 22 |
8 files changed, 0 insertions, 2759 deletions
diff --git a/packages/supertux/files/gp2x.patch b/packages/supertux/files/gp2x.patch deleted file mode 100644 index 9d5d9a6d02..0000000000 --- a/packages/supertux/files/gp2x.patch +++ /dev/null @@ -1,2614 +0,0 @@ -Only in supertux-0.1.3: aclocal.m4 -diff -ur supertux-0.1.3/AUTHORS supertux-0.1.3-gp2x/AUTHORS ---- supertux-0.1.3/AUTHORS 2005-07-02 14:37:30.000000000 +0300 -+++ supertux-0.1.3-gp2x/AUTHORS 2006-04-13 06:11:02.000000000 +0300 -@@ -91,6 +91,12 @@ - - Royalty free CDROMs and FTP sites sounds - -+Port to GP2X -+----------- -+ Ingo Arndt -+ scachi@gmx.de -+ http://www.bitmage.de -+ - More information and contacts - ============================= - -Only in supertux-0.1.3: autom4te.cache -Only in supertux-0.1.3-gp2x: autoscan.log -Only in supertux-0.1.3-gp2x: COMPILE4GP2X -Only in supertux-0.1.3: config.guess -Only in supertux-0.1.3: config.log -Only in supertux-0.1.3: config.status -Only in supertux-0.1.3: config.sub -Only in supertux-0.1.3: configure -diff -ur supertux-0.1.3/configure.ac supertux-0.1.3-gp2x/configure.ac ---- supertux-0.1.3/configure.ac 2005-07-06 12:26:15.000000000 +0300 -+++ supertux-0.1.3-gp2x/configure.ac 2006-04-19 22:29:05.000000000 +0300 -@@ -76,13 +76,33 @@ - CFLAGS="$CFLAGS $SDL_CFLAGS" - LIBS="$LIBS $SDL_LIBS" - -+AM_PATH_LIBMIKMOD(, -+ :, -+ AC_MSG_ERROR([*** mikmod not found!])) -+CXXFLAGS="$CXXFLAGS $LIBMIKMOD_CFLAGS" -+CFLAGS="$CFLAGS $LIBMIKMOD_CFLAGS" -+LIBS="$LIBS $LIBMIKMOD_LIBS" -+ - dnl Checks for additional libraries. -+AC_CHECK_LIB(smpeg, SMPEG_status) -+ -+AC_CHECK_LIB(mikmod, MikMod_Init) -+ - AC_CHECK_LIB(SDL_mixer, Mix_OpenAudio,, - AC_MSG_ERROR([SDL_mixer library required])) - -+AC_CHECK_LIB(jpeg,jpeg_abort) -+ -+AC_CHECK_LIB(z,compress) -+ -+AC_CHECK_LIB(png,png_free) -+ - AC_CHECK_LIB(SDL_image, IMG_Load,, - AC_MSG_ERROR([SDL_image library required])) - -+AC_CHECK_LIB(SDL_gfx, rotozoomSurface,, -+ AC_MSG_ERROR([SDL_gfx library required])) -+ - if test "x${enable_opengl}" != "xno"; then - AX_CHECK_GL - fi -@@ -95,7 +115,30 @@ - LIBS="$LIBS $GL_LIBS" - fi - --AC_CHECK_LIB(z, gzopen,, AC_MSG_ERROR([*** zlib is missing])) -+# compile for the testing the 320x240 resolution -+# compile for the gp2x -+AC_ARG_ENABLE(gp2x, -+[ --enable-gp2x Build the gp2x version [default=no]], -+ , enable_gp2x=no) -+if test x$enable_gp2x = xyes; then -+ CXXFLAGS="$CXXFLAGS -DGP2X" -+fi -+ -+AC_ARG_ENABLE(320x240, -+[ --enable-320x240 Test the 320x240 resolution [default=no]], -+ , enable_320x240=no) -+if test x$enable_320x240 = xyes; then -+ CXXFLAGS="$CXXFLAGS -DRES320X240" -+fi -+ -+# compile static -+AC_ARG_ENABLE(static, -+[ --enable-static Build the static version [default=no]], -+ , enable_static=no) -+if test x$enable_static = xyes; then -+ CXXFLAGS="$CXXFLAGS -static" -+fi -+ - - CXXFLAGS="$CXXFLAGS -DDATA_PREFIX='\"$datadir/supertux\"'" - -@@ -110,6 +153,9 @@ - echo " Profile Mode: $enable_gprof" - echo " Debug Mode: $enable_debug" - echo " OpenGL Support: $enable_opengl" -+echo " 320x240 Resolution: $enable_320x240" -+echo " GP2X Build (+320x240): $enable_gp2x" -+echo " Static Build: $enable_static" - echo "" - - # EOF # -Only in supertux-0.1.3/data: CREDITS -Only in supertux-0.1.3/data: extro-bonus2.txt -Only in supertux-0.1.3/data: extro-bonus.txt -Only in supertux-0.1.3/data: extro.txt -Only in supertux-0.1.3/data: images -Only in supertux-0.1.3/data: intro.txt -Only in supertux-0.1.3/data: levels -Only in supertux-0.1.3/data: Makefile -Only in supertux-0.1.3/data: Makefile.in -Only in supertux-0.1.3/data: music -Only in supertux-0.1.3/data: sounds -Only in supertux-0.1.3/data: supertux.strf -Only in supertux-0.1.3: depcomp -Only in supertux-0.1.3: install-sh -Only in supertux-0.1.3: m4 -Only in supertux-0.1.3: Makefile -Only in supertux-0.1.3: Makefile.in -Only in supertux-0.1.3: missing -Only in supertux-0.1.3: mkinstalldirs -Only in supertux-0.1.3: patches -diff -ur supertux-0.1.3/src/badguy.cpp supertux-0.1.3-gp2x/src/badguy.cpp ---- supertux-0.1.3/src/badguy.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/badguy.cpp 2006-04-20 21:32:23.000000000 +0300 -@@ -250,7 +250,11 @@ - tux.kick_timer.start(KICKING_TIME); - set_sprite(img_mriceblock_flat_left, img_mriceblock_flat_right); - physic.set_velocity_x((dir == LEFT) ? -3.5 : 3.5); -+#ifndef GP2X - play_sound(sounds[SND_KICK],SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_KICK); -+#endif - } - } - -@@ -260,6 +264,7 @@ - check_horizontal_bump(); - if(mode == KICK && changed != dir) - { -+#ifndef GP2X - /* handle stereo sound (number 10 should be tweaked...)*/ - if (base.x < scroll_x + screen->w/2 - 10) - play_sound(sounds[SND_RICOCHET], SOUND_LEFT_SPEAKER); -@@ -267,6 +272,9 @@ - play_sound(sounds[SND_RICOCHET], SOUND_RIGHT_SPEAKER); - else - play_sound(sounds[SND_RICOCHET], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_RICOCHET); -+#endif - } - } - -@@ -455,11 +463,15 @@ - - /* play explosion sound */ // FIXME: is the stereo all right? maybe we should use player cordinates... - if (base.x < scroll_x + screen->w/2 - 10) -+#ifndef GP2X - play_sound(sounds[SND_EXPLODE], SOUND_LEFT_SPEAKER); - else if (base.x > scroll_x + screen->w/2 + 10) - play_sound(sounds[SND_EXPLODE], SOUND_RIGHT_SPEAKER); - else - play_sound(sounds[SND_EXPLODE], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_EXPLODE); -+#endif - - } else if(mode == BOMB_EXPLODE) { - remove_me(); -@@ -677,13 +689,21 @@ - } - - // BadGuy fall below the ground -+#ifndef RES320X240 - if (base.y > screen->h) { -+#else -+ if (base.y > 640) { -+#endif - remove_me(); - return; - } - - // Once it's on screen, it's activated! -+#ifndef RES320X240 - if (base.x <= scroll_x + screen->w + OFFSCREEN_DISTANCE) -+#else -+ if (base.x <= scroll_x + 640 + OFFSCREEN_DISTANCE) -+#endif - seen = true; - - if(!seen) -@@ -743,7 +763,11 @@ - BadGuy::draw() - { - // Don't try to draw stuff that is outside of the screen -+#ifndef RES320X240 - if(base.x <= scroll_x - base.width || base.x >= scroll_x + screen->w) -+#else -+ if(base.x <= scroll_x - base.width || base.x >= scroll_x + 640) -+#endif - return; - - if(sprite_left == 0 || sprite_right == 0) -@@ -811,7 +835,11 @@ - - World::current()->add_score(base.x - scroll_x, - base.y, 50 * player_status.score_multiplier); -+#ifndef GP2X - play_sound(sounds[SND_SQUISH], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_SQUISH); -+#endif - player_status.score_multiplier++; - - dying = DYING_SQUISHED; -@@ -830,7 +858,11 @@ - - player->jump_of_badguy(this); - World::current()->add_score(base.x - scroll_x, base.y, 50 * player_status.score_multiplier); -+#ifndef GP2X - play_sound(sounds[SND_SQUISH], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_SQUISH); -+#endif - player_status.score_multiplier++; - remove_me(); - return; -@@ -839,7 +871,11 @@ - if (mode == NORMAL || mode == KICK) - { - /* Flatten! */ -+#ifndef GP2X - play_sound(sounds[SND_STOMP], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_STOMP); -+#endif - mode = FLAT; - set_sprite(img_mriceblock_flat_left, img_mriceblock_flat_right); - physic.set_velocity_x(0); -@@ -847,7 +883,11 @@ - timer.start(4000); - } else if (mode == FLAT) { - /* Kick! */ -+#ifndef GP2X - play_sound(sounds[SND_KICK], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_KICK); -+#endif - - if (player->base.x < base.x + (base.width/2)) { - physic.set_velocity_x(5); -@@ -925,7 +965,11 @@ - score * player_status.score_multiplier); - - /* Play death sound: */ -+#ifndef GP2X - play_sound(sounds[SND_FALL], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_FALL); -+#endif - } - - void BadGuy::explode(BadGuy *badguy) -@@ -1053,7 +1097,11 @@ - /* Get kicked if were flat */ - if (mode == FLAT && !dying) - { -+#ifndef GP2X - play_sound(sounds[SND_KICK], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_KICK); -+#endif - - // Hit from left side - if (player->base.x < base.x) { -diff -ur supertux-0.1.3/src/configfile.cpp supertux-0.1.3-gp2x/src/configfile.cpp ---- supertux-0.1.3/src/configfile.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/configfile.cpp 2006-04-10 13:32:19.000000000 +0300 -@@ -92,12 +92,22 @@ - else - use_joystick = true; - -+#ifndef GP2X - reader.read_int ("joystick-x", &joystick_keymap.x_axis); - reader.read_int ("joystick-y", &joystick_keymap.y_axis); - reader.read_int ("joystick-a", &joystick_keymap.a_button); - reader.read_int ("joystick-b", &joystick_keymap.b_button); - reader.read_int ("joystick-start", &joystick_keymap.start_button); - reader.read_int ("joystick-deadzone", &joystick_keymap.dead_zone); -+#else -+ reader.read_int ("joystick-up", &joystick_keymap.up_button); -+ reader.read_int ("joystick-down", &joystick_keymap.down_button); -+ reader.read_int ("joystick-right", &joystick_keymap.right_button); -+ reader.read_int ("joystick-left", &joystick_keymap.left_button); -+ reader.read_int ("joystick-a", &joystick_keymap.a_button); -+ reader.read_int ("joystick-b", &joystick_keymap.b_button); -+ reader.read_int ("joystick-start", &joystick_keymap.start_button); -+#endif - - reader.read_int ("keyboard-jump", &keymap.jump); - reader.read_int ("keyboard-duck", &keymap.duck); -@@ -130,12 +140,22 @@ - fprintf(config, "\n\t;; joystick number (-1 means no joystick):\n"); - fprintf(config, "\t(joystick %d)\n", use_joystick ? joystick_num : -1); - -+#ifndef GP2X - fprintf(config, "\t(joystick-x %d)\n", joystick_keymap.x_axis); - fprintf(config, "\t(joystick-y %d)\n", joystick_keymap.y_axis); - fprintf(config, "\t(joystick-a %d)\n", joystick_keymap.a_button); - fprintf(config, "\t(joystick-b %d)\n", joystick_keymap.b_button); - fprintf(config, "\t(joystick-start %d)\n", joystick_keymap.start_button); - fprintf(config, "\t(joystick-deadzone %d)\n", joystick_keymap.dead_zone); -+#else -+ fprintf(config, "\t(joystick-up %d)\n", joystick_keymap.up_button); -+ fprintf(config, "\t(joystick-down %d)\n", joystick_keymap.down_button); -+ fprintf(config, "\t(joystick-right %d)\n", joystick_keymap.right_button); -+ fprintf(config, "\t(joystick-left %d)\n", joystick_keymap.left_button); -+ fprintf(config, "\t(joystick-a %d)\n", joystick_keymap.a_button); -+ fprintf(config, "\t(joystick-b %d)\n", joystick_keymap.b_button); -+ fprintf(config, "\t(joystick-start %d)\n", joystick_keymap.start_button); -+#endif - - fprintf(config, "\t(keyboard-jump %d)\n", keymap.jump); - fprintf(config, "\t(keyboard-duck %d)\n", keymap.duck); -diff -ur supertux-0.1.3/src/defines.h supertux-0.1.3-gp2x/src/defines.h ---- supertux-0.1.3/src/defines.h 2005-07-07 02:05:03.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/defines.h 2006-04-11 22:02:05.000000000 +0300 -@@ -91,7 +91,11 @@ - - /* Scrolling text speed */ - -+#ifndef RES320X240 - #define SCROLL_SPEED_CREDITS 1.2 -+#else -+#define SCROLL_SPEED_CREDITS 2.4 -+#endif - #define SCROLL_SPEED_MESSAGE 1.0 - - /* Debugging */ -Only in supertux-0.1.3/src: .deps -diff -ur supertux-0.1.3/src/gameloop.cpp supertux-0.1.3-gp2x/src/gameloop.cpp ---- supertux-0.1.3/src/gameloop.cpp 2005-07-02 15:16:08.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/gameloop.cpp 2006-05-05 23:22:58.000000000 +0300 -@@ -288,6 +288,7 @@ - - switch(event.type) - { -+#ifndef GP2X - case SDL_QUIT: /* Quit event - quit: */ - st_abort("Received window close", ""); - break; -@@ -434,22 +435,60 @@ - tux.input.down = UP; - } - break; -- -+#endif - case SDL_JOYBUTTONDOWN: -+#ifndef GP2X -+ if (event.jbutton.button == joystick_keymap.a_button) -+ tux.input.up = DOWN; -+ else if (event.jbutton.button == joystick_keymap.b_button) -+ tux.input.fire = DOWN; -+ else if (event.jbutton.button == joystick_keymap.start_button) -+ on_escape_press(); -+ break; -+#else - if (event.jbutton.button == joystick_keymap.a_button) - tux.input.up = DOWN; - else if (event.jbutton.button == joystick_keymap.b_button) - tux.input.fire = DOWN; - else if (event.jbutton.button == joystick_keymap.start_button) - on_escape_press(); -+ else if (event.jbutton.button == joystick_keymap.up_button) -+ tux.input.up = DOWN; -+ else if (event.jbutton.button == joystick_keymap.down_button) -+ tux.input.down = DOWN; -+ else if (event.jbutton.button == joystick_keymap.right_button) -+ tux.input.right = DOWN; -+ else if (event.jbutton.button == joystick_keymap.left_button) -+ tux.input.left = DOWN; -+ else if (event.jbutton.button == joystick_keymap.voldown_button) -+ decreaseSoundVolume(); -+ else if (event.jbutton.button == joystick_keymap.volup_button) -+ increaseSoundVolume(); - break; -+#endif -+ - case SDL_JOYBUTTONUP: -+#ifndef GP2X - if (event.jbutton.button == joystick_keymap.a_button) - tux.input.up = UP; - else if (event.jbutton.button == joystick_keymap.b_button) - tux.input.fire = UP; - break; -- -+#else -+ if (event.jbutton.button == joystick_keymap.a_button) -+ tux.input.up = UP; -+ else if (event.jbutton.button == joystick_keymap.b_button) -+ tux.input.fire = UP; -+ else if (event.jbutton.button == joystick_keymap.up_button) -+ tux.input.up = UP; -+ else if (event.jbutton.button == joystick_keymap.down_button) -+ tux.input.down = UP; -+ else if (event.jbutton.button == joystick_keymap.right_button) -+ tux.input.right = UP; -+ else if (event.jbutton.button == joystick_keymap.left_button) -+ tux.input.left = UP; -+ break; -+#endif - default: - break; - } /* switch */ -@@ -464,7 +503,7 @@ - Player* tux = world->get_tux(); - - /* End of level? */ -- int endpos = (World::current()->get_level()->width-5) * 32; -+ int endpos = (World::current()->get_level()->width-5) * (32); - Tile* endtile = collision_goal(tux->base); - - // fallback in case the other endpositions don't trigger -@@ -545,7 +584,7 @@ - Menu::current()->draw(); - mouse_cursor->draw(); - } -- -+ //updateSound(); - updatescreen(); - } - -@@ -599,6 +638,7 @@ - - while (exit_status == ES_NONE) - { -+ SDL_Delay(10); - /* Calculate the movement-factor */ - double frame_ratio = ((double)(update_time-last_update_time))/((double)FRAME_RATE); - -@@ -686,6 +726,7 @@ - fps_cnt = 0; - } - } -+ //updateSound(); - } - - return exit_status; -@@ -694,21 +735,32 @@ - /* Bounce a brick: */ - void bumpbrick(float x, float y) - { -- World::current()->add_bouncy_brick(((int)(x + 1) / 32) * 32, -- (int)(y / 32) * 32); -+ World::current()->add_bouncy_brick(((int)(x + 1) / (32)) * (32), -+ (int)(y / (32)) * (32)); - -+#ifndef GP2X - play_sound(sounds[SND_BRICK], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_BRICK); -+#endif - } - - /* (Status): */ - void - GameSession::drawstatus() - { -+ int xdiv; -+#ifdef RES320X240 -+ xdiv=2; -+#else -+ xdiv=1; -+#endif -+ - char str[60]; - - sprintf(str, "%d", player_status.score); - white_text->draw("SCORE", 0, 0, 1); -- gold_text->draw(str, 96, 0, 1); -+ gold_text->draw(str, 96/xdiv, 0, 1); - - if(st_gl_mode == ST_GL_TEST) - { -@@ -716,28 +768,33 @@ - } - - if(!time_left.check()) { -- white_text->draw("TIME'S UP", 224, 0, 1); -+ white_text->draw("TIME'S UP", 224/xdiv, 0, 1); - } else if (time_left.get_left() > TIME_WARNING || (global_frame_counter % 10) < 5) { - sprintf(str, "%d", time_left.get_left() / 1000 ); -- white_text->draw("TIME", 224, 0, 1); -- gold_text->draw(str, 304, 0, 1); -+ white_text->draw("TIME", 224/xdiv, 0, 1); -+ gold_text->draw(str, 304/xdiv, 0, 1); - } - - sprintf(str, "%d", player_status.distros); - white_text->draw("COINS", screen->h, 0, 1); -- gold_text->draw(str, 608, 0, 1); -+ gold_text->draw(str, 608/xdiv, 0, 1); - -- white_text->draw("LIVES", 480, 20); -+ white_text->draw("LIVES", 480/xdiv, 20); - if (player_status.lives >= 5) - { - sprintf(str, "%dx", player_status.lives); -+#ifdef RES320X240 -+ gold_text->draw_align(str, 617/xdiv-5, 20, A_RIGHT, A_TOP); -+ tux_life->draw(565+(18*3)/xdiv+10, 20); -+#else - gold_text->draw_align(str, 617, 20, A_RIGHT, A_TOP); - tux_life->draw(565+(18*3), 20); -+#endif - } - else - { - for(int i= 0; i < player_status.lives; ++i) -- tux_life->draw(565+(18*i),20); -+ tux_life->draw(565+(18*i)/xdiv,20); - } - - if(show_fps) -@@ -746,6 +803,7 @@ - white_text->draw("FPS", screen->h, 40, 1); - gold_text->draw(str, screen->h + 60, 40, 1); - } -+// updateSound(); - } - - void -@@ -824,4 +882,3 @@ - return tmp; - } - -- -diff -ur supertux-0.1.3/src/gameobjs.cpp supertux-0.1.3-gp2x/src/gameobjs.cpp ---- supertux-0.1.3/src/gameobjs.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/gameobjs.cpp 2006-04-11 21:52:52.000000000 +0300 -@@ -98,6 +98,9 @@ - src.h = 16; - - dest.x = (int)(base.x - scroll_x); -+#ifdef RES320X240 -+ dest.x=dest.x/2; -+#endif - dest.y = (int)base.y; - dest.w = 16; - dest.h = 16; -@@ -143,8 +146,13 @@ - { - SDL_Rect dest; - -+#ifndef RES320X240 - if (base.x >= scroll_x - 32 && - base.x <= scroll_x + screen->w) -+#else -+ if (base.x >= scroll_x - 32 && -+ base.x <= scroll_x + 640) -+#endif - { - dest.x = (int)(base.x - scroll_x); - dest.y = (int)base.y; -@@ -165,8 +173,14 @@ - else - { - int s = ((int)scroll_x / 2)%640; -+ -+#ifdef RES320X240 -+ plevel->img_bkgd->draw_part(dest.x/2 + s/2, dest.y/2, -+ dest.x/2, dest.y,dest.w/2,dest.h/2); -+#else - plevel->img_bkgd->draw_part(dest.x + s, dest.y, - dest.x, dest.y,dest.w,dest.h); -+#endif - } - - Tile::draw(base.x - scroll_x, -diff -ur supertux-0.1.3/src/globals.cpp supertux-0.1.3-gp2x/src/globals.cpp ---- supertux-0.1.3/src/globals.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/globals.cpp 2006-04-11 22:39:03.000000000 +0300 -@@ -25,6 +25,7 @@ - - JoystickKeymap::JoystickKeymap() - { -+#ifndef GP2X - a_button = 0; - b_button = 1; - start_button = 2; -@@ -33,6 +34,17 @@ - y_axis = 1; - - dead_zone = 4096; -+#else -+ a_button = GP2X_BUTTON_A; -+ b_button = GP2X_BUTTON_X; -+ start_button = GP2X_BUTTON_START; -+ up_button = GP2X_BUTTON_UP; -+ down_button = GP2X_BUTTON_DOWN; -+ left_button = GP2X_BUTTON_LEFT; -+ right_button = GP2X_BUTTON_RIGHT; -+ volup_button = GP2X_BUTTON_VOLUP; -+ voldown_button = GP2X_BUTTON_VOLDOWN; -+#endif - } - - JoystickKeymap joystick_keymap; -diff -ur supertux-0.1.3/src/globals.h supertux-0.1.3-gp2x/src/globals.h ---- supertux-0.1.3/src/globals.h 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/globals.h 2006-04-11 23:45:27.000000000 +0300 -@@ -28,10 +28,33 @@ - #include "menu.h" - #include "mousecursor.h" - -+#ifdef GP2X -+#define GP2X_BUTTON_UP (0) -+#define GP2X_BUTTON_DOWN (4) -+#define GP2X_BUTTON_LEFT (2) -+#define GP2X_BUTTON_RIGHT (6) -+#define GP2X_BUTTON_UPLEFT (1) -+#define GP2X_BUTTON_UPRIGHT (7) -+#define GP2X_BUTTON_DOWNLEFT (3) -+#define GP2X_BUTTON_DOWNRIGHT (5) -+#define GP2X_BUTTON_CLICK (18) -+#define GP2X_BUTTON_A (12) -+#define GP2X_BUTTON_B (13) -+#define GP2X_BUTTON_X (15) -+#define GP2X_BUTTON_Y (14) -+#define GP2X_BUTTON_L (10) -+#define GP2X_BUTTON_R (11) -+#define GP2X_BUTTON_START (8) -+#define GP2X_BUTTON_SELECT (9) -+#define GP2X_BUTTON_VOLUP (16) -+#define GP2X_BUTTON_VOLDOWN (17) -+#endif -+ - extern std::string datadir; - - struct JoystickKeymap - { -+#ifndef GP2X - int a_button; - int b_button; - int start_button; -@@ -42,6 +65,19 @@ - int dead_zone; - - JoystickKeymap(); -+#else -+ int a_button; -+ int b_button; -+ int start_button; -+ int up_button; -+ int down_button; -+ int left_button; -+ int right_button; -+ int volup_button; -+ int voldown_button; -+ -+ JoystickKeymap(); -+#endif - }; - - extern JoystickKeymap joystick_keymap; -diff -ur supertux-0.1.3/src/lispreader.h supertux-0.1.3-gp2x/src/lispreader.h -Only in supertux-0.1.3/src: Makefile -diff -ur supertux-0.1.3/src/Makefile.am supertux-0.1.3-gp2x/src/Makefile.am ---- supertux-0.1.3/src/Makefile.am 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/Makefile.am 2006-04-19 21:55:54.000000000 +0300 -@@ -77,3 +77,5 @@ - musicref.h - - # EOF # -+ -+#supertux_LDADD = libmikmod -Only in supertux-0.1.3/src: Makefile.in -diff -ur supertux-0.1.3/src/menu.cpp supertux-0.1.3-gp2x/src/menu.cpp ---- supertux-0.1.3/src/menu.cpp 2005-06-29 15:44:13.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/menu.cpp 2006-05-04 23:59:29.000000000 +0300 -@@ -53,6 +53,8 @@ - Menu* options_menu = 0; - Menu* options_keys_menu = 0; - Menu* options_joystick_menu = 0; -+Menu* options_joystick_axis_menu = 0; -+Menu* options_joystick_button_menu = 0; - Menu* highscore_menu = 0; - Menu* load_game_menu = 0; - Menu* save_game_menu = 0; -@@ -240,8 +242,10 @@ - } - - /* Set ControlField a key */ -+//TODO: get joystick in here somehow - void Menu::get_controlfield_key_into_input(MenuItem *item) - { -+#ifndef GP2X - switch(*item->int_p) - { - case SDLK_UP: -@@ -288,6 +292,11 @@ - } - break; - } -+#else -+ char tmp[64]; -+ snprintf(tmp, 64, "%d", *item->int_p); -+ item->change_input(tmp); -+#endif - } - - /* Free a menu and all its items */ -@@ -497,8 +506,13 @@ - int menu_height) - { - MenuItem& pitem = item[index]; -- -+ -+#ifndef RES320X240 - int font_width = 16; -+#else -+ int font_width = 16/2; -+#endif -+ - int effect_offset = 0; - { - int effect_time = 0; -@@ -510,7 +524,7 @@ - } - - int x_pos = pos_x; -- int y_pos = pos_y + 24*index - menu_height/2 + 12 + effect_offset; -+ int y_pos = pos_y + (int)(24)*index - menu_height/2 + 12 + effect_offset; - int shadow_size = 2; - int text_width = strlen(pitem.text) * font_width; - int input_width = (strlen(pitem.input)+ 1) * font_width; -@@ -518,7 +532,7 @@ - Text* text_font = white_text; - - if (arrange_left) -- x_pos += 24 - menu_width/2 + (text_width + input_width + list_width)/2; -+ x_pos += (int)(24) - menu_width/2 + (text_width + input_width + list_width)/2; - - if(index == active_item) - { -@@ -538,7 +552,11 @@ - - case MN_HL: - { -+#ifndef RES320X240 - int x = pos_x - menu_width/2; -+#else -+ int x = pos_x - menu_width/4; -+#endif - int y = y_pos - 12 - effect_offset; - /* Draw a horizontal line with a little 3d effect */ - fillrect(x, y + 6, -@@ -551,9 +569,15 @@ - } - case MN_LABEL: - { -+#ifndef RES320X240 - white_big_text->draw_align(pitem.text, - x_pos, y_pos, - A_HMIDDLE, A_VMIDDLE, 2); -+#else -+ white_text->draw_align(pitem.text, -+ x_pos, y_pos, -+ A_HMIDDLE, A_VMIDDLE, 2); -+#endif - break; - } - case MN_TEXTFIELD: -@@ -570,8 +594,9 @@ - input_width + font_width, 18, - 0,0,0,128); - -- if(pitem.kind == MN_CONTROLFIELD) -+ if(pitem.kind == MN_CONTROLFIELD) { - get_controlfield_key_into_input(&pitem); -+ } - - if(pitem.kind == MN_TEXTFIELD || pitem.kind == MN_NUMFIELD) - { -@@ -663,7 +688,7 @@ - menu_width += 2; - } - } -- -+ - return (menu_width * 16 + 24); - } - -@@ -680,10 +705,17 @@ - int menu_width = get_width(); - - /* Draw a transparent background */ -+#ifndef RES320X240 - fillrect(pos_x - menu_width/2, - pos_y - 24*item.size()/2 - 10, - menu_width,menu_height + 20, - 150,180,200,125); -+#else -+ fillrect(pos_x - menu_width/4, -+ pos_y - 24*item.size()/2 - 10, -+ menu_width,menu_height + 20, -+ 150,180,200,125); -+#endif - - for(unsigned int i = 0; i < item.size(); ++i) - { -@@ -723,6 +755,8 @@ - SDLKey key; - switch(event.type) - { -+ -+#ifndef GP2X - case SDL_KEYDOWN: - key = event.key.keysym.sym; - SDLMod keymod; -@@ -754,7 +788,6 @@ - return; - } - -- - switch(key) - { - case SDLK_UP: /* Menu Up */ -@@ -800,12 +833,14 @@ - break; - } - break; -+ - case SDL_JOYHATMOTION: - if(event.jhat.value == SDL_HAT_UP) - menuaction = MENU_ACTION_UP; - if(event.jhat.value == SDL_HAT_DOWN) - menuaction = MENU_ACTION_DOWN; - break; -+ - case SDL_JOYAXISMOTION: - if(event.jaxis.axis == joystick_keymap.y_axis) - { -@@ -815,9 +850,88 @@ - menuaction = MENU_ACTION_UP; - } - break; -+#endif -+ - case SDL_JOYBUTTONDOWN: -+#ifndef GP2X - menuaction = MENU_ACTION_HIT; - break; -+#else -+ -+ if(item[active_item].kind == MN_CONTROLFIELD) -+ { -+ if( event.jbutton.button == joystick_keymap.start_button ) -+ { -+ Menu::pop_current(); -+ return; -+ } -+ -+ static int save[8]={-1,-1,-1,-1,-1,-1,-1,-1}; -+ int itemid=get_active_item_id(); -+ int inputkey; -+ switch ( itemid ) { -+ case 11 : inputkey=joystick_keymap.up_button; -+ break; -+ case 12 : inputkey=joystick_keymap.down_button; -+ break; -+ case 13 : inputkey=joystick_keymap.left_button; -+ break; -+ case 14 : inputkey=joystick_keymap.right_button; -+ break; -+ case 15 : inputkey=joystick_keymap.a_button; -+ break; -+ case 16 : inputkey=joystick_keymap.b_button; -+ break; -+ default : break; -+ } -+ -+ *item[active_item].int_p = event.jbutton.button; -+ -+ bool okay=true; -+ -+ save[itemid-11]=event.jbutton.button; -+ -+ int i; -+ for ( i=0;i<itemid-11;i++ ) { -+ if ( save[i] == event.jbutton.button ) okay=false; -+ } -+ if ( okay == true ) menuaction = MENU_ACTION_DOWN; -+ else menuaction = MENU_ACTION_NONE; -+ -+ return; -+ } -+ -+ if (event.jbutton.button == joystick_keymap.a_button) -+ menuaction = MENU_ACTION_HIT; -+ else if (event.jbutton.button == joystick_keymap.b_button) -+ menuaction = MENU_ACTION_HIT; -+ else if (event.jbutton.button == joystick_keymap.start_button) -+ menuaction = MENU_ACTION_HIT; -+ else if (event.jbutton.button == joystick_keymap.up_button) -+ menuaction = MENU_ACTION_UP; -+ else if (event.jbutton.button == joystick_keymap.down_button) -+ menuaction = MENU_ACTION_DOWN; -+ else if (event.jbutton.button == joystick_keymap.right_button) -+ menuaction = MENU_ACTION_RIGHT; -+ else if (event.jbutton.button == joystick_keymap.left_button) -+ menuaction = MENU_ACTION_LEFT; -+ else if (event.jbutton.button == joystick_keymap.volup_button) -+#ifdef GP2X -+ increaseSoundVolume(); -+#else -+ sound_volume(2); -+#endif -+ else if (event.jbutton.button == joystick_keymap.voldown_button) -+#ifdef GP2X -+ decreaseSoundVolume(); -+#else -+ sound_volume(1); -+#endif -+ break; -+ -+#endif -+ -+#ifndef GP2X - case SDL_MOUSEBUTTONDOWN: - x = event.motion.x; - y = event.motion.y; -@@ -847,6 +961,7 @@ - break; - default: - break; -+#endif - } - } - -diff -ur supertux-0.1.3/src/menu.h supertux-0.1.3-gp2x/src/menu.h ---- supertux-0.1.3/src/menu.h 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/menu.h 2006-05-04 23:48:30.000000000 +0300 -@@ -236,6 +236,8 @@ - extern Menu* options_menu; - extern Menu* options_keys_menu; - extern Menu* options_joystick_menu; -+extern Menu* options_joystick_axis_menu; -+extern Menu* options_joystick_button_menu; - extern Menu* highscore_menu; - extern Menu* load_game_menu; - extern Menu* save_game_menu; -diff -ur supertux-0.1.3/src/music_manager.cpp supertux-0.1.3-gp2x/src/music_manager.cpp ---- supertux-0.1.3/src/music_manager.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/music_manager.cpp 2006-04-22 13:16:32.000000000 +0300 -@@ -59,7 +59,14 @@ - return true; - } - -+#ifndef GP2X - Mix_Music* song = Mix_LoadMUS(file.c_str()); -+#else -+ char mfile[100]; -+ snprintf(mfile,sizeof(mfile),"%s",file.c_str()); -+ MODULE *song=Player_Load(mfile, 64, 0); -+#endif -+ - if(song == 0) - return false; - -@@ -84,6 +91,8 @@ - void - MusicManager::play_music(const MusicRef& musicref, int loops) - { -+// printf("loop: %d, musicref: %d\n",loops,musicref.music); -+ - if(!audio_device) - return; - -@@ -97,7 +106,16 @@ - current_music->refcount++; - - if(music_enabled) -+#ifndef GP2X - Mix_PlayMusic(current_music->music, loops); -+#else -+ { -+ if ( loops == -1 ) current_music->music->wrap=1; -+ Player_Stop(); -+ Player_Start(current_music->music); -+ Player_SetPosition(0); -+ } -+#endif - } - - void -@@ -106,13 +124,17 @@ - if(!audio_device) - return; - -+#ifndef GP2X - Mix_HaltMusic(); -+#else -+ Player_Stop(); -+#endif - - if(current_music) { - current_music->refcount--; - if(current_music->refcount == 0) - free_music(current_music); -- current_music = 0; -+ current_music = 0; - } - } - -@@ -127,9 +149,17 @@ - - music_enabled = enable; - if(music_enabled == false) { -+#ifndef GP2X - Mix_HaltMusic(); -+#else -+ Player_Stop(); -+#endif - } else { -+#ifndef GP2X - Mix_PlayMusic(current_music->music, -1); -+#else -+ Player_Start(current_music->music); -+#endif - } - } - -diff -ur supertux-0.1.3/src/music_manager.h supertux-0.1.3-gp2x/src/music_manager.h ---- supertux-0.1.3/src/music_manager.h 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/music_manager.h 2006-04-22 04:51:32.000000000 +0300 -@@ -20,6 +20,10 @@ - #ifndef HEADER_MUSIC_MANAGER_H - #define HEADER_MUSIC_MANAGER_H - -+#ifdef GP2X -+#include "mikmod.h" -+#endif -+ - #include <SDL_mixer.h> - #include <string> - #include <map> -@@ -51,7 +55,12 @@ - ~MusicResource(); - - MusicManager* manager; -+#ifndef GP2X - Mix_Music* music; -+#else -+ MODULE *music; -+#endif -+ - int refcount; - }; - -diff -ur supertux-0.1.3/src/particlesystem.cpp supertux-0.1.3-gp2x/src/particlesystem.cpp ---- supertux-0.1.3/src/particlesystem.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/particlesystem.cpp 2006-04-12 22:20:41.000000000 +0300 -@@ -28,8 +28,13 @@ - - ParticleSystem::ParticleSystem() - { -+#ifndef RES320X240 - virtual_width = screen->w; - virtual_height = screen->h; -+#else -+ virtual_width = 640; -+ virtual_height = 480; -+#endif - } - - ParticleSystem::~ParticleSystem() -@@ -57,13 +62,24 @@ - float ymax = fmodf(y + particle->texture->h, virtual_height); - - // particle on screen -+#ifndef RES320X240 - if(x >= screen->w && xmax >= screen->w) - continue; - if(y >= screen->h && ymax >= screen->h) - continue; -- -+ - if(x > screen->w) x -= virtual_width; - if(y > screen->h) y -= virtual_height; -+#else -+ if(x >= 640 && xmax >= 640) -+ continue; -+ if(y >= 480 && ymax >= 480) -+ continue; -+ -+ if(x > 640) x -= virtual_width; -+ if(y > 480) y -= virtual_height; -+#endif -+ - particle->texture->draw(x, y); - } - } -@@ -74,14 +90,21 @@ - snowimages[1] = new Surface(datadir+"/images/shared/snow1.png", USE_ALPHA); - snowimages[2] = new Surface(datadir+"/images/shared/snow2.png", USE_ALPHA); - -+#ifndef RES320X240 - virtual_width = screen->w * 2; -- -+#else -+ virtual_width = 640 * 2; -+#endif - // create some random snowflakes - size_t snowflakecount = size_t(virtual_width/10.0); - for(size_t i=0; i<snowflakecount; ++i) { - SnowParticle* particle = new SnowParticle; - particle->x = rand() % int(virtual_width); -+#ifndef RES320X240 - particle->y = rand() % screen->h; -+#else -+ particle->y = rand() % 480; -+#endif - particle->layer = i % 2; - int snowsize = rand() % 3; - particle->texture = snowimages[snowsize]; -@@ -106,7 +129,11 @@ - for(i = particles.begin(); i != particles.end(); ++i) { - SnowParticle* particle = (SnowParticle*) *i; - particle->y += particle->speed * elapsed_time; -+#ifndef RES320X240 - if(particle->y > screen->h) { -+#else -+ if(particle->y > 480) { -+#endif - particle->y = fmodf(particle->y , virtual_height); - particle->x = rand() % int(virtual_width); - } -diff -ur supertux-0.1.3/src/player.cpp supertux-0.1.3-gp2x/src/player.cpp ---- supertux-0.1.3/src/player.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/player.cpp 2006-05-05 22:59:52.000000000 +0300 -@@ -261,6 +261,7 @@ - } - } - } -+// updateSound(); - - /* ---- DONE HANDLING TUX! --- */ - -@@ -337,7 +338,11 @@ - if(on_ground() && ((vx < 0 && dirsign >0) || (vx>0 && dirsign<0))) { - if(fabs(vx)>SKID_XM && !skidding_timer.check()) { - skidding_timer.start(SKID_TIME); -+#ifndef GP2X - play_sound(sounds[SND_SKID], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_SKID); -+#endif - ax *= 2.5; - } else { - ax *= 2; -@@ -391,9 +396,17 @@ - jumping = true; - can_jump = false; - if (size == SMALL) -+#ifndef GP2X - play_sound(sounds[SND_JUMP], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_JUMP); -+#endif - else -+#ifndef GP2X - play_sound(sounds[SND_BIGJUMP], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_BIGJUMP); -+#endif - } - } - // Let go of jump key -@@ -533,7 +546,11 @@ - if(player_status.lives < MAX_LIVES) - ++player_status.lives; - /*We want to hear the sound even, if MAX_LIVES is reached*/ -+#ifndef GP2X - play_sound(sounds[SND_LIFEUP], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_LIFEUP); -+#endif - } - } - -@@ -665,7 +682,11 @@ - else - { - pbad_c->dying = DYING_FALLING; -+#ifndef GP2X - play_sound(sounds[SND_FALL], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_FALL); -+#endif - World::current()->add_score(pbad_c->base.x - scroll_x, - pbad_c->base.y, - 25 * player_status.score_multiplier); -@@ -696,7 +717,12 @@ - void - Player::kill(HurtMode mode) - { -+#ifndef GP2X - play_sound(sounds[SND_HURT], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_HURT); -+ updateSound(); -+#endif - - physic.set_velocity_x(0); - -@@ -734,7 +760,11 @@ - - bool Player::is_dead() - { -+#ifndef RES320X240 - if(base.y > screen->h || base.x < scroll_x - AUTOSCROLL_DEAD_INTERVAL) // last condition can happen in auto-scrolling -+#else -+ if(base.y > 640 || base.x < scroll_x - AUTOSCROLL_DEAD_INTERVAL) // last condition can happen in auto-scrolling -+#endif - return true; - else - return false; -@@ -760,9 +790,20 @@ - } - - /* Keep in-bounds, vertically: */ -+#ifndef RES320X240 - if (base.y > screen->h) -+#else -+ if (base.y > 640) -+#endif - { - kill(KILL); -+#ifdef GP2X -+ float wait=SDL_GetTicks()+800; -+ while ( wait > SDL_GetTicks()) { -+ updateSound(); -+ } -+#endif -+ - } - - if(base.x < scroll_x && (!back_scrolling || hor_autoscroll)) // can happen if back scrolling is disabled -@@ -777,7 +818,6 @@ - if(base.x + base.width > scroll_x + screen->w) - base.x = scroll_x + screen->w - base.width; - } -- - } - - // EOF // -diff -ur supertux-0.1.3/src/resources.cpp supertux-0.1.3-gp2x/src/resources.cpp ---- supertux-0.1.3/src/resources.cpp 2005-07-02 15:20:14.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/resources.cpp 2006-04-22 13:14:01.000000000 +0300 -@@ -18,6 +18,7 @@ - // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - - #include "globals.h" -+#include "sound.h" - #include "scene.h" - #include "player.h" - #include "badguy.h" -@@ -187,11 +188,13 @@ - // This is also true with if (use_music) - Send a mail to me: neoneurone@users.sf.net, if you have another opinion. :) - */ -+#ifndef GP2X - for (i = 0; i < NUM_SOUNDS; i++) - sounds[i] = load_sound(datadir + soundfilenames[i]); -+#endif - - /* Herring song */ -- herring_song = music_manager->load_music(datadir + "/music/SALCON.MOD"); -+ herring_song = music_manager->load_music(datadir + "/music/SALCON.MOD"); - level_end_song = music_manager->load_music(datadir + "/music/leveldone.mod"); - } - -@@ -223,8 +226,10 @@ - - delete tux_life; - -+#ifndef GP2X - for (i = 0; i < NUM_SOUNDS; i++) - free_chunk(sounds[i]); -+#endif - - delete sprite_manager; - sprite_manager = 0; -diff -ur supertux-0.1.3/src/screen.cpp supertux-0.1.3-gp2x/src/screen.cpp ---- supertux-0.1.3/src/screen.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/screen.cpp 2006-04-14 18:18:47.000000000 +0300 -@@ -81,7 +81,6 @@ - else - { - #endif -- - for(float y = 0; y < 480; y += 2) - fillrect(0, (int)y, 640, 2, - (int)(((float)(top_clr.red-bot_clr.red)/(0-480)) * y + top_clr.red), -@@ -199,11 +198,23 @@ - SDL_UnlockSurface(screen); - } - /* Update just the part of the display that we've changed */ -+#ifndef RES320X240 - SDL_UpdateRect(screen, x, y, 1, 1); -+#else -+ SDL_UpdateRect(screen, x/2, y/2, 1, 1); -+#endif - } - - void drawline(int x1, int y1, int x2, int y2, int r, int g, int b, int a) - { -+ -+#ifdef RES320X240 -+ x1=x1/2; -+ x2=x2/2; -+ y1=y1/2; -+ y2=y2/2; -+#endif -+ - #ifndef NOOPENGL - if(use_gl) - { -@@ -280,6 +291,13 @@ - y += h; - h = -h; - } -+ -+#ifdef RES320X240 -+ x=x; -+ y=y/2; -+ w=w/2; -+ h=h/2; -+#endif - - #ifndef NOOPENGL - if(use_gl) -@@ -367,6 +385,9 @@ - void update_rect(SDL_Surface *scr, Sint32 x, Sint32 y, Sint32 w, Sint32 h) - { - if(!use_gl) -+#ifndef RES320X240 -+ SDL_UpdateRect(scr, x, y, w, h); -+#else - SDL_UpdateRect(scr, x, y, w, h); -+#endif - } -- -diff -ur supertux-0.1.3/src/setup.cpp supertux-0.1.3-gp2x/src/setup.cpp ---- supertux-0.1.3/src/setup.cpp 2005-07-08 15:19:17.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/setup.cpp 2006-05-03 23:32:49.000000000 +0300 -@@ -62,10 +62,19 @@ - #define DATA_PREFIX "./data/" - #endif - --/* Screen proprities: */ -+/* Screen properties: */ - /* Don't use this to test for the actual screen sizes. Use screen->w/h instead! */ -+#ifndef RES320X240 - #define SCREEN_W 640 - #define SCREEN_H 480 -+#else -+#define SCREEN_W 320 -+#define SCREEN_H 240 -+#endif -+ -+#ifdef GP2X -+#define DATA_PREFIX "data/" -+#endif - - /* Local function prototypes: */ - -@@ -308,10 +317,14 @@ - char str[1024]; - /* Get home directory (from $HOME variable)... if we can't determine it, - use the current directory ("."): */ -+#ifndef GP2X - if (getenv("HOME") != NULL) - home = getenv("HOME"); - else - home = "."; -+#else -+ home = "."; -+#endif - - st_dir = (char *) malloc(sizeof(char) * (strlen(home) + - strlen("/.supertux") + 1)); -@@ -340,9 +353,10 @@ - // User has not that a datadir, so we try some magic - if (datadir.empty()) - { --#ifndef WIN32 - // Detect datadir - char exe_file[PATH_MAX]; -+ -+#ifndef WIN32 - if (readlink("/proc/self/exe", exe_file, PATH_MAX) < 0) - { - puts("Couldn't read /proc/self/exe, using default path: " DATA_PREFIX); -@@ -358,7 +372,12 @@ - datadir = exedir + "../share/supertux"; // SuperTux run from PATH - if (access(datadir.c_str(), F_OK) != 0) - { // If all fails, fall back to compiled path -- datadir = DATA_PREFIX; -+ datadir = exedir + "./data"; // SuperTux run with data in same path as executable -+ if (access(datadir.c_str(), F_OK) != 0) -+ { -+ // If all fails, fall back to compiled path -+ datadir = DATA_PREFIX; -+ } - } - } - } -@@ -375,7 +394,8 @@ - main_menu = new Menu(); - options_menu = new Menu(); - options_keys_menu = new Menu(); -- options_joystick_menu = new Menu(); -+ options_joystick_axis_menu = new Menu(); -+ options_joystick_button_menu = new Menu(); - load_game_menu = new Menu(); - save_game_menu = new Menu(); - game_menu = new Menu(); -@@ -384,22 +404,27 @@ - contrib_subset_menu = new Menu(); - worldmap_menu = new Menu(); - -- main_menu->set_pos(screen->w/2, 335); -+ main_menu->set_pos(screen->w/2, (int)(335)+20); - main_menu->additem(MN_GOTO, "Start Game",0,load_game_menu, MNID_STARTGAME); - main_menu->additem(MN_GOTO, "Bonus Levels",0,contrib_menu, MNID_CONTRIB); - main_menu->additem(MN_GOTO, "Options",0,options_menu, MNID_OPTIONMENU); -+ -+#ifndef GP2X - main_menu->additem(MN_ACTION,"Level Editor",0,0, MNID_LEVELEDITOR); -+#endif - main_menu->additem(MN_ACTION,"Credits",0,0, MNID_CREDITS); - main_menu->additem(MN_ACTION,"Quit",0,0, MNID_QUITMAINMENU); - - options_menu->additem(MN_LABEL,"Options",0,0); - options_menu->additem(MN_HL,"",0,0); -+#ifndef GP2X - #ifndef NOOPENGL - options_menu->additem(MN_TOGGLE,"OpenGL",use_gl,0, MNID_OPENGL); - #else - options_menu->additem(MN_DEACTIVE,"OpenGL (not supported)",use_gl, 0, MNID_OPENGL); - #endif - options_menu->additem(MN_TOGGLE,"Fullscreen",use_fullscreen,0, MNID_FULLSCREEN); -+#endif - if(audio_device) - { - options_menu->additem(MN_TOGGLE,"Sound ", use_sound,0, MNID_SOUND); -@@ -411,10 +436,15 @@ - options_menu->additem(MN_DEACTIVE,"Music ", false,0, MNID_MUSIC); - } - options_menu->additem(MN_TOGGLE,"Show FPS ",show_fps,0, MNID_SHOWFPS); -+#ifndef GP2X - options_menu->additem(MN_GOTO,"Keyboard Setup",0,options_keys_menu); -+#endif - - //if(use_joystick) -- // options_menu->additem(MN_GOTO,"Joystick Setup",0,options_joystick_menu); -+#ifdef GP2X -+ options_menu->additem(MN_GOTO,"Joystick Move Setup",0,options_joystick_axis_menu); -+ options_menu->additem(MN_GOTO,"Joystick Action Setup",0,options_joystick_button_menu); -+#endif - - options_menu->additem(MN_HL,"",0,0); - options_menu->additem(MN_BACK,"Back",0,0); -@@ -429,6 +459,7 @@ - options_keys_menu->additem(MN_HL,"",0,0); - options_keys_menu->additem(MN_BACK,"Back",0,0); - -+#ifndef GP2X - if(use_joystick) - { - options_joystick_menu->additem(MN_LABEL,"Joystick Setup",0,0); -@@ -442,6 +473,20 @@ - options_joystick_menu->additem(MN_HL,"",0,0); - options_joystick_menu->additem(MN_BACK,"Back",0,0); - } -+#else -+ options_joystick_axis_menu->additem(MN_LABEL,"Joystick Move Setup",0,0); -+ options_joystick_axis_menu->additem(MN_CONTROLFIELD,"Up", 0,0, 11,&joystick_keymap.up_button); -+ options_joystick_axis_menu->additem(MN_CONTROLFIELD,"Down", 0,0, 12,&joystick_keymap.down_button); -+ options_joystick_axis_menu->additem(MN_CONTROLFIELD,"Left", 0,0, 13,&joystick_keymap.left_button); -+ options_joystick_axis_menu->additem(MN_CONTROLFIELD,"Right", 0,0, 14,&joystick_keymap.right_button); -+ options_joystick_axis_menu->additem(MN_BACK,"Back",0,0); -+ -+ options_joystick_button_menu->additem(MN_LABEL,"Joystick Action Setup",0,0); -+ options_joystick_button_menu->additem(MN_CONTROLFIELD,"Jump", 0,0, 15,&joystick_keymap.a_button); -+ options_joystick_button_menu->additem(MN_CONTROLFIELD,"Shoot/Run", 0,0, 16,&joystick_keymap.b_button); -+ options_joystick_button_menu->additem(MN_BACK,"Back",0,0); -+#endif -+ - - load_game_menu->additem(MN_LABEL,"Start Game",0,0); - load_game_menu->additem(MN_HL,"",0,0); -@@ -576,9 +621,10 @@ - - srand(SDL_GetTicks()); - -+#ifndef GP2X - /* Set icon image: */ -- - seticon(); -+#endif - - /* Unicode needed for input handling: */ - -@@ -586,13 +632,32 @@ - - /* Load global images: */ - -+#ifndef RES320X240 -+ white_text = new Text(datadir + "/images/status/letters-white.png", TEXT_TEXT, 16,18); -+#else -+ white_text = new Text(datadir + "/images/status/letters-white-small.png", TEXT_TEXT, 8,9); -+ fadeout(); -+#endif -+ -+ -+#ifndef RES320X240 - black_text = new Text(datadir + "/images/status/letters-black.png", TEXT_TEXT, 16,18); -+#else -+ black_text = new Text(datadir + "/images/status/letters-black.png", TEXT_TEXT, 8,9); -+#endif -+#ifndef RES320X240 - gold_text = new Text(datadir + "/images/status/letters-gold.png", TEXT_TEXT, 16,18); -+#else -+ gold_text = new Text(datadir + "/images/status/letters-gold.png", TEXT_TEXT, 8,9); -+#endif - silver_text = new Text(datadir + "/images/status/letters-silver.png", TEXT_TEXT, 16,18); -+#ifndef RES320X240 - blue_text = new Text(datadir + "/images/status/letters-blue.png", TEXT_TEXT, 16,18); -+#else -+ blue_text = new Text(datadir + "/images/status/letters-blue.png", TEXT_TEXT, 8,9); -+#endif - red_text = new Text(datadir + "/images/status/letters-red.png", TEXT_TEXT, 16,18); - green_text = new Text(datadir + "/images/status/letters-green.png", TEXT_TEXT, 16,18); -- white_text = new Text(datadir + "/images/status/letters-white.png", TEXT_TEXT, 16,18); - white_small_text = new Text(datadir + "/images/status/letters-white-small.png", TEXT_TEXT, 8,9); - white_big_text = new Text(datadir + "/images/status/letters-white-big.png", TEXT_TEXT, 20,22); - yellow_nums = new Text(datadir + "/images/status/numbers.png", TEXT_NUM, 32,32); -@@ -665,14 +736,22 @@ - Surface::reload_all(); - - /* Set window manager stuff: */ -+#ifndef GP2X_VERSION
- SDL_WM_SetCaption("SuperTux " VERSION, "SuperTux"); -+#endif
- } - - void st_video_setup_sdl(void) - { - if (use_fullscreen) - { -+#ifndef GP2X - screen = SDL_SetVideoMode(SCREEN_W, SCREEN_H, 0, SDL_FULLSCREEN ) ; /* | SDL_HWSURFACE); */ -+#else -+// screen = SDL_SetVideoMode(SCREEN_W, SCREEN_H, 16, SDL_HWSURFACE | SDL_DOUBLEBUF ) ; /* GP2X */ -+ printf("screen width: %d, height: %d\n",SCREEN_W, SCREEN_H); -+ screen = SDL_SetVideoMode(SCREEN_W, SCREEN_H, 16, SDL_SWSURFACE ) ; /* GP2X */ -+#endif - if (screen == NULL) - { - fprintf(stderr, -@@ -685,14 +764,22 @@ - } - else - { -+#ifndef GP2X - screen = SDL_SetVideoMode(SCREEN_W, SCREEN_H, 0, SDL_HWSURFACE | SDL_DOUBLEBUF ); -- -+#else -+// screen = SDL_SetVideoMode(SCREEN_W, SCREEN_H, 16, SDL_HWSURFACE | SDL_DOUBLEBUF ) ; /* GP2X */ -+ screen = SDL_SetVideoMode(SCREEN_W, SCREEN_H, 16, SDL_SWSURFACE ) ; /* GP2X */ -+#endif - if (screen == NULL) - { - fprintf(stderr, - "\nError: I could not set up video for 640x480 mode.\n" - "The Simple DirectMedia error that occured was:\n" - "%s\n\n", SDL_GetError()); -+#ifdef GP2X_VERSION
-+ chdir("/usr/gp2x");
-+ execl("/usr/gp2x/gp2xmenu", "/usr/gp2x/gp2xmenu", NULL);
-+#endif
- exit(1); - } - } -@@ -790,6 +877,7 @@ - - use_joystick = false; - } -+#ifndef GP2X - else - { - if (SDL_JoystickNumAxes(js) < 2) -@@ -811,6 +899,7 @@ - } - } - } -+#endif - } - } - } -@@ -844,12 +933,17 @@ - } - } - -- -+ audio_device = true; -+ - /* Open sound silently regarless the value of "use_sound": */ - - if (audio_device) - { -+#ifndef GP2X - if (open_audio(44100, AUDIO_S16, 2, 2048) < 0) -+#else -+ if (open_audio(44100, AUDIO_S16, 1, 1024) < 0) -+#endif - { - /* only print out message if sound or music - was not disabled at command-line -@@ -878,6 +972,12 @@ - close_audio(); - SDL_Quit(); - saveconfig(); -+ -+#ifdef GP2X
-+ chdir("/usr/gp2x");
-+ execl("/usr/gp2x/gp2xmenu", "/usr/gp2x/gp2xmenu", NULL);
-+#endif
-+ - } - - /* --- ABORT! --- */ -@@ -893,6 +993,7 @@ - - void seticon(void) - { -+#ifndef GP2X - // int masklen; - // Uint8 * mask; - SDL_Surface * icon; -@@ -927,6 +1028,7 @@ - - // free(mask); - SDL_FreeSurface(icon); -+#endif - } - - -@@ -956,6 +1058,7 @@ - } - else if (strcmp(argv[i], "--joymap") == 0) - { -+#ifndef GP2X - assert(i+1 < argc); - if (sscanf(argv[++i], - "%d:%d:%d:%d:%d", -@@ -976,6 +1079,7 @@ - << " B-Button: " << joystick_keymap.b_button << "\n" - << " Start-Button: " << joystick_keymap.start_button << std::endl; - } -+#endif - } - else if (strcmp(argv[i], "--leveleditor") == 0) - { -diff -ur supertux-0.1.3/src/sound.cpp supertux-0.1.3-gp2x/src/sound.cpp ---- supertux-0.1.3/src/sound.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/sound.cpp 2006-04-22 02:07:57.000000000 +0300 -@@ -22,6 +22,9 @@ - #include "globals.h" - #include "sound.h" - #include "setup.h" -+#ifdef GP2X -+#include <string.h> -+#endif - - /*global variable*/ - bool use_sound = true; /* handle sound on/off menu and command-line option */ -@@ -54,12 +57,21 @@ - - #include <SDL_mixer.h> - -+#ifndef GP2X - Mix_Chunk * sounds[NUM_SOUNDS]; -+#else - --/* --- OPEN THE AUDIO DEVICE --- */ -+#include <mikmod.h> -+static MODULE *music=NULL; -+static SAMPLE *chunk[NUM_SOUNDS]; -+static int chunkFlag[NUM_SOUNDS]; -+#endif - -+/* --- OPEN THE AUDIO DEVICE --- */ - int open_audio (int frequency, Uint16 format, int channels, int chunksize) - { -+// close_audio(); -+#ifndef GP2X - if (Mix_OpenAudio( frequency, format, channels, chunksize ) < 0) - return -1; - -@@ -74,20 +86,93 @@ - /* prepare the spanning effects */ - Mix_SetPanning( SOUND_LEFT_SPEAKER, 230, 24 ); - Mix_SetPanning( SOUND_RIGHT_SPEAKER, 24, 230 ); -+#else -+ if (drv_oss.Name) // Valid OSS driver -+ { -+ if (drv_oss.CommandLine) // Valid Commandline -+ { -+ drv_oss.CommandLine("buffer=14,count=2"); -+ } -+ MikMod_RegisterDriver(&drv_oss); -+ } -+ if (drv_alsa.Name) // Valid ALSA driver -+ { -+ if (drv_alsa.CommandLine) // Valid Commandline -+ { -+ drv_alsa.CommandLine("buffer=14"); -+ } -+ MikMod_RegisterDriver(&drv_alsa); -+ } -+ MikMod_RegisterDriver(&drv_nos); -+ -+ // register standard tracker -+ MikMod_RegisterAllLoaders(); -+ -+ // Note, the md_mode flags are already set by default -+ md_mode |= DMODE_SOFT_SNDFX | DMODE_SOFT_MUSIC; -+ -+ if (MikMod_Init("")) // Command paramenters are ignored as all drivers are registered -+ { -+ printf("mikmod init war frn arsch\n"); -+ return 1; -+ } -+ -+ load_sounds(); -+ -+ // get ready to play -+ MikMod_EnableOutput(); -+ md_volume =64; -+ md_sndfxvolume = 64; -+ //md_musicvolume = md_sndfxvolume = 64; -+ -+ use_sound = true; -+ audio_device=true; -+ -+#endif - return 0; --} - -+} - - /* --- CLOSE THE AUDIO DEVICE --- */ - - void close_audio( void ) - { -+#ifndef GP2X - if (audio_device) { - Mix_UnregisterAllEffects( SOUND_LEFT_SPEAKER ); - Mix_UnregisterAllEffects( SOUND_RIGHT_SPEAKER ); - Mix_CloseAudio(); - } -+#else -+ int i; -+ if (! audio_device) return; -+ -+ MikMod_DisableOutput(); -+ Player_Stop(); -+ MikMod_Update(); -+ -+ if (music) { -+ Player_Free(music); -+ music = NULL; -+ } -+ -+ for ( i=0 ; i<NUM_SOUNDS ; i++ ) { -+ if ( chunk[i] ) { -+ Sample_Free(chunk[i]); -+ } -+ } -+ -+ MikMod_Update(); -+ MikMod_Exit(); -+#endif -+} -+ -+#ifdef GP2X -+void updateSound ( void ) { -+ if (! audio_device) return; -+ MikMod_Update(); - } -+#endif - - - /* --- LOAD A SOUND --- */ -@@ -105,6 +190,30 @@ - return(snd); - } - -+#ifdef GP2X -+static void load_sounds() { -+ int i; -+ std::string name; -+ char file[100]; -+ -+ for ( i=0 ; i<NUM_SOUNDS ; i++ ) { -+ name = datadir + soundfilenames[i]; -+ printf("loading: %s\n",name.c_str()); -+ snprintf(file,sizeof(file),"%s",name.c_str()); -+ if ( NULL == (chunk[i] = Sample_Load(file)) ) { -+ fprintf(stderr, "Couldn't load: %s\n", file); -+ use_sound = 0; -+ return; -+ } -+ chunkFlag[i] = 0; -+ } -+ -+ // reserve voices for sound effects -+ MikMod_SetNumVoices(-1, 4); -+} -+#endif -+ -+ - /* --- PLAY A SOUND ON LEFT OR RIGHT OR CENTER SPEAKER --- */ - - void play_sound(Mix_Chunk * snd, enum Sound_Speaker whichSpeaker) -@@ -130,8 +239,45 @@ - } - } - -+ -+#ifdef GP2X -+void play_chunk(int idx) -+{ -+ int cid; -+// if (use_sound) return; -+ cid = Sample_Play (chunk[idx], 0, 0); -+ Voice_SetPanning(cid, PAN_CENTER); -+ Voice_SetVolume(cid, 1000); -+} -+#endif -+ -+ - void free_chunk(Mix_Chunk *chunk) - { - Mix_FreeChunk( chunk ); - } - -+void sound_volume ( int vol ) -+{ -+#ifndef GP2X -+ static int volume = 10; -+ -+ if ( vol == 1 ) volume-=5; -+ else if ( vol == 2 ) volume+=5; -+ Mix_Volume(-1,volume); -+#endif -+} -+ -+#ifdef GP2X -+void increaseSoundVolume(void) -+{ -+ if (md_volume > (256 - 13)) md_volume = 256; -+ else md_volume += 13; -+} -+ -+void decreaseSoundVolume(void) -+{ -+ if (md_volume < 13) md_volume = 0; -+ else md_volume -= 13; -+} -+#endif -diff -ur supertux-0.1.3/src/sound.h supertux-0.1.3-gp2x/src/sound.h ---- supertux-0.1.3/src/sound.h 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/sound.h 2006-04-21 00:17:09.000000000 +0300 -@@ -75,14 +75,27 @@ - #include <SDL_mixer.h> - - /* variables for stocking the sound and music */ -+#ifndef GP2X - extern Mix_Chunk* sounds[NUM_SOUNDS]; -+#endif - - /* functions handling the sound and music */ - int open_audio(int frequency, Uint16 format, int channels, int chunksize); - void close_audio( void ); - -+#ifndef GP2X - Mix_Chunk * load_sound(const std::string& file); -+#endif - void free_chunk(Mix_Chunk*chunk); - void play_sound(Mix_Chunk * snd, enum Sound_Speaker whichSpeaker); -+void sound_volume ( int vol ); - - #endif /*SUPERTUX_SOUND_H*/ -+ -+#ifdef GP2X -+void play_chunk(int idx); -+static void load_sounds(); -+void updateSound ( void ); -+void increaseSoundVolume(void); -+void decreaseSoundVolume(void); -+#endif -diff -ur supertux-0.1.3/src/special.cpp supertux-0.1.3-gp2x/src/special.cpp ---- supertux-0.1.3/src/special.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/special.cpp 2006-04-20 21:39:41.000000000 +0300 -@@ -105,12 +105,21 @@ - - base.ym = base.ym + 0.5 * frame_ratio; - -+#ifndef RES320X240 - if (base.x < scroll_x || - base.x > scroll_x + screen->w || - base.y > screen->h || - issolid(base.x + 4, base.y + 2) || - issolid(base.x, base.y + 2) || - life_count <= 0) -+#else -+ if (base.x < scroll_x || -+ base.x > scroll_x + 640 || -+ base.y > 480 || -+ issolid(base.x + 4, base.y + 2) || -+ issolid(base.x, base.y + 2) || -+ life_count <= 0) -+#endif - { - remove_me(); - } -@@ -120,8 +129,13 @@ - void - Bullet::draw() - { -+#ifndef RES320X240 - if (base.x >= scroll_x - base.width && - base.x <= scroll_x + screen->w) -+#else -+ if (base.x >= scroll_x - base.width && -+ base.x <= scroll_x + 640) -+#endif - { - img_bullet->draw(base.x - scroll_x, base.y); - } -@@ -140,7 +154,7 @@ - { - kind = kind_; - dir = dir_; -- -+ - base.width = 32; - base.height = 0; - base.x = x_; -@@ -197,7 +211,11 @@ - remove_me(); - return; - } -+#ifndef RES320X240 - if(base.y > screen->h) { -+#else -+ if(base.y > 640) { -+#endif - remove_me(); - return; - } -@@ -252,7 +270,12 @@ - { - /* Rising up... */ - -+ -+#ifndef RES320X240 - dest.x = (int)(base.x - scroll_x); -+#else -+ dest.x = (int)(base.x - scroll_x)/2; -+#endif - dest.y = (int)(base.y + 32 - base.height); - dest.w = 32; - dest.h = (int)base.height; -@@ -297,7 +320,11 @@ - if(kind != UPGRADE_GROWUP) - return; - -+#ifndef GP2X - play_sound(sounds[SND_BUMP_UPGRADE], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_BUMP_UPGRADE); -+#endif - - // do a little jump and change direction - physic.set_velocity(-physic.get_velocity_x(), 3); -@@ -329,18 +356,30 @@ - - if (kind == UPGRADE_GROWUP) - { -+#ifndef GP2X - play_sound(sounds[SND_EXCELLENT], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_EXCELLENT); -+#endif - pplayer->grow(); - } - else if (kind == UPGRADE_ICEFLOWER) - { -+#ifndef GP2X - play_sound(sounds[SND_COFFEE], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_COFFEE); -+#endif - pplayer->grow(); - pplayer->got_coffee = true; - } - else if (kind == UPGRADE_HERRING) - { -+#ifndef GP2X - play_sound(sounds[SND_HERRING], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_HERRING); -+#endif - pplayer->invincible_timer.start(TUX_INVINCIBLE_TIME); - World::current()->play_music(HERRING_MUSIC); - } -@@ -348,7 +387,11 @@ - { - if(player_status.lives < MAX_LIVES) { - player_status.lives++; -+#ifndef GP2X - play_sound(sounds[SND_LIFEUP], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_LIFEUP); -+#endif - } - } - -diff -ur supertux-0.1.3/src/text.cpp supertux-0.1.3-gp2x/src/text.cpp ---- supertux-0.1.3/src/text.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/text.cpp 2006-04-22 01:59:36.000000000 +0300 -@@ -24,6 +24,7 @@ - #include "defines.h" - #include "screen.h" - #include "text.h" -+#include "sound.h" - - Text::Text(const std::string& file, int kind_, int w_, int h_) - { -@@ -79,6 +80,7 @@ - void - Text::draw(const char* text, int x, int y, int shadowsize, int update) - { -+ - if(text != NULL) - { - if(shadowsize != 0) -@@ -116,6 +118,9 @@ - else if ( text[i] == '\n') - { - y += h + 2; -+#ifdef RES320X240 -+ y+=6; -+#endif - j = 0; - } - } -@@ -129,6 +134,9 @@ - else if ( text[i] == '\n') - { - y += h + 2; -+#ifdef RES320X240 -+ y+=6; -+#endif - j = 0; - } - } -@@ -306,6 +314,24 @@ - break; - } - break; -+ -+#ifdef GP2X -+ case SDL_JOYBUTTONDOWN: -+ if ( event.jbutton.button == joystick_keymap.down_button ) { -+ speed += SPEED_INC; -+ } -+ if ( event.jbutton.button == joystick_keymap.up_button ) { -+ speed -= SPEED_INC; -+ } -+ if ( event.jbutton.button == joystick_keymap.b_button ) { -+ done = 1; -+ } -+ if ( event.jbutton.button == joystick_keymap.a_button ) { -+ scroll += SCROLL; -+ } -+ break; -+#endif -+ - case SDL_QUIT: - done = 1; - break; -@@ -330,21 +356,36 @@ - white_small_text->drawf(names.item[i]+1, 0, screen->h+y-int(scroll), - A_HMIDDLE, A_TOP, 1); - y += white_small_text->h+ITEMS_SPACE; -+#ifdef RES320X240 -+ y += 6; -+#endif - break; - case ' ': - white_text->drawf(names.item[i]+1, 0, screen->h+y-int(scroll), - A_HMIDDLE, A_TOP, 1); - y += white_text->h+ITEMS_SPACE; -+#ifdef RES320X240 -+ y += 6; -+#endif - break; - case '-': -- white_big_text->drawf(names.item[i]+1, 0, screen->h+y-int(scroll), -- A_HMIDDLE, A_TOP, 3); -+#ifdef RES320X240 -+ white_text->drawf(names.item[i]+1, 0, screen->h+y-int(scroll), A_HMIDDLE, A_TOP, 3); -+#else -+ white_big_text->drawf(names.item[i]+1, 0, screen->h+y-int(scroll), A_HMIDDLE, A_TOP, 3); -+#endif - y += white_big_text->h+ITEMS_SPACE; -+#ifdef RES320X240 -+ y += 6; -+#endif - break; - default: - blue_text->drawf(names.item[i], 0, screen->h+y-int(scroll), - A_HMIDDLE, A_TOP, 1); - y += blue_text->h+ITEMS_SPACE; -+#ifdef RES320X240 -+ y += 6; -+#endif - break; - } - } -@@ -360,7 +401,13 @@ - if(scroll < 0) - scroll = 0; - -- SDL_Delay(10); -+#ifndef GP2X -+ SDL_Delay(10); -+#else -+ SDL_Delay(2); -+ updateSound(); -+#endif -+ - } - string_list_free(&names); - -diff -ur supertux-0.1.3/src/texture.cpp supertux-0.1.3-gp2x/src/texture.cpp ---- supertux-0.1.3/src/texture.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/texture.cpp 2006-04-10 14:29:03.000000000 +0300 -@@ -211,7 +211,8 @@ - { - if (impl) - { -- if (impl->draw(x, y, alpha, update) == -2) -+// if (impl->draw(x, y, alpha, update) == -2) -+ if (impl->draw(x/2, y/2, alpha, update) == -2) - reload(); - } - } -@@ -231,7 +232,8 @@ - { - if (impl) - { -- if (impl->draw_part(sx, sy, x, y, w, h, alpha, update) == -2) -+// if (impl->draw_part(sx, sy, x, y, w, h, alpha, update) == -2) -+ if (impl->draw_part(sx, sy, x, y/2, w, h, alpha, update) == -2) - reload(); - } - } -@@ -241,7 +243,8 @@ - { - if (impl) - { -- if (impl->draw_stretched(x, y, w, h, alpha, update) == -2) -+// if (impl->draw_stretched(x, y, w, h, alpha, update) == -2) -+ if (impl->draw_stretched(x/2, y/2, w, h, alpha, update) == -2) - reload(); - } - } -diff -ur supertux-0.1.3/src/title.cpp supertux-0.1.3-gp2x/src/title.cpp ---- supertux-0.1.3/src/title.cpp 2005-07-08 15:19:17.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/title.cpp 2006-04-22 01:29:08.000000000 +0300 -@@ -51,6 +51,7 @@ - #include "tile.h" - #include "resources.h" - #include "worldmap.h" -+#include "sound.h" - - static Surface* bkg_title; - static Surface* logo; -@@ -80,6 +81,10 @@ - - void generate_contrib_menu() - { -+#ifdef RES320X240 -+ fadeout(); -+#endif -+ - string_list_type level_subsets = dsubdirs("/levels", "info"); - - free_contrib_menu(); -@@ -208,7 +213,7 @@ - } - - // Wrap around at the end of the level back to the beginnig -- if(plevel->width * 32 - 320 < tux->base.x) -+ if((plevel->width * 32) - 320 < tux->base.x) - { - tux->level_begin(); - scroll_x = 0; -@@ -226,7 +231,6 @@ - { - walking = false; - } -- - world->draw(); - } - -@@ -301,13 +305,26 @@ - - if (Menu::current() == main_menu) - logo->draw( 160, 30); -- -+ -+#ifndef RES320X240 - white_small_text->draw(" SuperTux " VERSION "\n" - "Copyright (c) 2003 SuperTux Devel Team\n" - "This game comes with ABSOLUTELY NO WARRANTY. This is free software, and you\n" - "are welcome to redistribute it under certain conditions; see the file COPYING\n" - "for details.\n", - 0, 420, 0); -+#else -+ white_small_text->draw(" SuperTux " VERSION "\n" -+ "Copyright (c) 2003 SuperTux Devel Team\n" -+ "This game comes with ABSOLUTELY NO \n" -+ "WARRANTY. This is free software, and\n" -+ "you are welcome to redistribute it\n" -+ "under certain conditions; see the file\n" -+ "COPYING for details.\n", -+ 0, 360, 0); -+#endif -+ -+ //updateSound(); - - /* Don't draw menu, if quit is true */ - Menu* menu = Menu::current(); -@@ -337,10 +354,10 @@ - break; - case MNID_CREDITS: - music_manager = new MusicManager(); -- menu_song = music_manager->load_music(datadir + "/music/credits.ogg"); -+ menu_song = music_manager->load_music(datadir + "/music/credits.mod"); - music_manager->halt_music(); - music_manager->play_music(menu_song,0); -- display_text_file("CREDITS", bkg_title, SCROLL_SPEED_CREDITS); -+ display_text_file("CREDITS", bkg_title, SCROLL_SPEED_CREDITS); - music_manager->halt_music(); - menu_song = music_manager->load_music(datadir + "/music/theme.mod"); - music_manager->play_music(menu_song); -diff -ur supertux-0.1.3/src/world.cpp supertux-0.1.3-gp2x/src/world.cpp ---- supertux-0.1.3/src/world.cpp 2005-06-22 00:16:07.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/world.cpp 2006-05-05 23:16:47.000000000 +0300 -@@ -206,6 +206,7 @@ - } - } - -+ - /* Draw interactive tiles: */ - for (y = 0; y < 15; ++y) - { -@@ -255,6 +256,8 @@ - { - (*p)->draw(scroll_x, 0, 1); - } -+ -+ //updateSound(); - } - - void -@@ -312,7 +315,12 @@ - - // the space that it takes for the screen to start scrolling, regarding - // screen bounds (in pixels) -+#ifndef RES320X240 - #define X_SPACE (400-16) -+#else -+#define X_SPACE (80-16) -+#endif -+ - // the time it takes to move the camera (in ms) - #define CHANGE_DIR_SCROLL_SPEED 2000 - -@@ -388,8 +396,13 @@ - // this code prevent the screen to scroll before the start or after the level's end - if(scroll_x < 0) - scroll_x = 0; -+#ifndef RES320X240 - if(scroll_x > level->width * 32 - screen->w) - scroll_x = level->width * 32 - screen->w; -+#else -+ if(scroll_x > level->width * 32 - 640) -+ scroll_x = level->width * 32 - 640; -+#endif - } - - void -@@ -481,6 +494,10 @@ - void - World::add_score(float x, float y, int s) - { -+#ifdef RES320X240 -+ x=x/2; -+#endif -+ - player_status.score += s; - - FloatingScore* new_floating_score = new FloatingScore(); -@@ -547,8 +564,11 @@ - Bullet new_bullet; - new_bullet.init(x,y,xm,dir); - bullets.push_back(new_bullet); -- -+#ifndef GP2X - play_sound(sounds[SND_SHOOT], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_SHOOT); -+#endif - } - - void -@@ -608,8 +628,11 @@ - counting_distros = false; - plevel->change(x, y, TM_IA, tile->next_tile); - } -- -+#ifndef GP2X - play_sound(sounds[SND_DISTRO], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_DISTRO); -+#endif - player_status.score = player_status.score + SCORE_DISTRO; - player_status.distros++; - } -@@ -622,9 +645,13 @@ - add_broken_brick(tile, - ((int)(x + 1) / 32) * 32, - (int)(y / 32) * 32); -- -+ - /* Get some score: */ -+#ifndef GP2X - play_sound(sounds[SND_BRICK], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_BRICK); -+#endif - player_status.score = player_status.score + SCORE_BRICK; - } - } -@@ -652,7 +679,11 @@ - { - case 1: // Box with a distro! - add_bouncy_distro(posx, posy); -+#ifndef GP2X - play_sound(sounds[SND_DISTRO], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_DISTRO); -+#endif - player_status.score = player_status.score + SCORE_DISTRO; - player_status.distros++; - break; -@@ -662,7 +693,11 @@ - add_upgrade(posx, posy, col_side, UPGRADE_GROWUP); - else /* Tux is big, add an iceflower: */ - add_upgrade(posx, posy, col_side, UPGRADE_ICEFLOWER); -+#ifndef GP2X - play_sound(sounds[SND_UPGRADE], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_UPGRADE); -+#endif - break; - - case 3: // Add a golden herring -@@ -688,7 +723,11 @@ - if (tile && tile->distro) - { - level->change(x, y, TM_IA, tile->next_tile); -+#ifndef GP2X - play_sound(sounds[SND_DISTRO], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_DISTRO); -+#endif - - if (bounciness == BOUNCE) - { -diff -ur supertux-0.1.3/src/worldmap.cpp supertux-0.1.3-gp2x/src/worldmap.cpp ---- supertux-0.1.3/src/worldmap.cpp 2005-07-08 15:19:17.000000000 +0300 -+++ supertux-0.1.3-gp2x/src/worldmap.cpp 2006-05-05 22:54:04.000000000 +0300 -@@ -376,11 +376,11 @@ - { - tile_manager = new TileManager(); - -- width = 20; -- height = 15; -+ width = (int)(20); -+ height = (int)(15); - -- start_x = 4; -- start_y = 5; -+ start_x = int(4); -+ start_y = int(5); - - passive_message_timer.init(true); - -@@ -395,7 +395,7 @@ - enter_level = false; - - name = "<no file>"; -- music = "SALCON.MOD"; -+ music = "salcon.mod"; - } - - WorldMap::~WorldMap() -@@ -589,7 +589,8 @@ - break; - } - break; -- -+ -+#ifndef GP2X - case SDL_JOYAXISMOTION: - if (event.jaxis.axis == joystick_keymap.x_axis) - { -@@ -617,13 +618,29 @@ - if (event.jhat.value == SDL_HAT_RIGHT) - input_direction = D_EAST; - break; -- -+#endif - case SDL_JOYBUTTONDOWN: -+#ifndef GP2X - if (event.jbutton.button == joystick_keymap.b_button) - enter_level = true; - else if (event.jbutton.button == joystick_keymap.start_button) - on_escape_press(); - break; -+#else -+ if (event.jbutton.button == joystick_keymap.a_button) -+ enter_level = true; -+ else if (event.jbutton.button == joystick_keymap.start_button) -+ on_escape_press(); -+ else if (event.jbutton.button == joystick_keymap.up_button) -+ input_direction = D_NORTH; -+ else if (event.jbutton.button == joystick_keymap.down_button) -+ input_direction = D_SOUTH; -+ else if (event.jbutton.button == joystick_keymap.right_button) -+ input_direction = D_EAST; -+ else if (event.jbutton.button == joystick_keymap.left_button) -+ input_direction = D_WEST; -+ break; -+#endif - - default: - break; -@@ -769,13 +786,13 @@ - { - MusicRef theme = - music_manager->load_music(datadir + "/music/theme.mod"); -- MusicRef credits = music_manager->load_music(datadir + "/music/credits.ogg"); -+ MusicRef credits = music_manager->load_music(datadir + "/music/credits.xm"); - music_manager->play_music(theme); - // Display final credits and go back to the main menu - display_text_file(level->extro_filename, - "/images/background/extro.jpg", SCROLL_SPEED_MESSAGE); - music_manager->play_music(credits,0); -- display_text_file("CREDITS", -+ display_text_file("CREDITS", - "/images/background/oiltux.jpg", SCROLL_SPEED_CREDITS); - music_manager->play_music(theme); - quit = true; -@@ -812,7 +829,12 @@ - if (level->x == tux->get_tile_pos().x && - level->y == tux->get_tile_pos().y) - { -+#ifndef GP2X - play_sound(sounds[SND_TELEPORT], SOUND_CENTER_SPEAKER); -+#else -+ play_chunk(SND_TELEPORT); -+ updateSound(); -+#endif - tux->back_direction = D_NONE; - tux->set_tile_pos(Point(level->teleport_dest_x, level->teleport_dest_y)); - SDL_Delay(1000); -@@ -914,26 +936,39 @@ - void - WorldMap::draw_status() - { -+ int xdiv; -+ -+#ifdef RES320X240 -+ xdiv=2; -+#else -+ xdiv=1; -+#endif -+ - char str[80]; - sprintf(str, "%d", player_status.score); - white_text->draw("SCORE", 0, 0); -- gold_text->draw(str, 96, 0); -+ gold_text->draw(str, (int)(96)/xdiv, 0); - - sprintf(str, "%d", player_status.distros); -- white_text->draw_align("COINS", 320-64, 0, A_LEFT, A_TOP); -- gold_text->draw_align(str, 320+64, 0, A_RIGHT, A_TOP); -+ white_text->draw_align("COINS", (int)(320-64)/xdiv, 0, A_LEFT, A_TOP); -+ gold_text->draw_align(str, (int)(320+64)/xdiv, 0, A_RIGHT, A_TOP); - -- white_text->draw("LIVES", 480, 0); -+ white_text->draw("LIVES", (int)(480)/xdiv, 0); - if (player_status.lives >= 5) - { - sprintf(str, "%dx", player_status.lives); -- gold_text->draw_align(str, 617, 0, A_RIGHT, A_TOP); -- tux_life->draw(565+(18*3), 0); -+#ifdef RES320X240 -+ gold_text->draw_align(str, (int)(617)/xdiv-5, 0, A_RIGHT, A_TOP); -+ tux_life->draw((int)((565-12+(18*3))), 0); -+#else -+ gold_text->draw_align(str, (int)(617), 0, A_RIGHT, A_TOP); -+ tux_life->draw((int)((565+(18*3))), 0); -+#endif - } - else - { - for(int i= 0; i < player_status.lives; ++i) -- tux_life->draw(565+(18*i),0); -+ tux_life->draw((565+(18/xdiv*i)),0); - } - - if (!tux->is_moving()) -@@ -945,7 +980,11 @@ - { - if(!i->name.empty()) - { -+#ifndef RES320X240 - white_text->draw_align(i->title.c_str(), screen->w/2, screen->h, A_HMIDDLE, A_BOTTOM); -+#else -+ white_text->draw_align(i->title.c_str(), screen->w/2, 470, A_HMIDDLE, A_BOTTOM); -+#endif - } - else if (i->teleport_dest_x != -1) { - if(!i->teleport_message.empty()) -@@ -955,7 +994,7 @@ - /* Display a message in the map, if any as been selected */ - if(!i->display_map_message.empty() && !i->passive_message) - gold_text->draw_align(i->display_map_message.c_str(), -- screen->w/2, screen->h - 30,A_HMIDDLE, A_BOTTOM); -+ screen->w/2, screen->h - (int)(30),A_HMIDDLE, A_BOTTOM); - break; - } - } -@@ -964,7 +1003,7 @@ - /* Display a passive message in the map, if needed */ - if(passive_message_timer.check()) - gold_text->draw_align(passive_message.c_str(), -- screen->w/2, screen->h - 30,A_HMIDDLE, A_BOTTOM); -+ screen->w/2, screen->h - (int)(30),A_HMIDDLE, A_BOTTOM); - } - - void -@@ -997,6 +1036,7 @@ - Point tux_pos = tux->get_pos(); - if (1) - { -+#ifndef GP2X - offset.x = -tux_pos.x + screen->w/2; - offset.y = -tux_pos.y + screen->h/2; - -@@ -1005,6 +1045,16 @@ - - if (offset.x < screen->w - width*32) offset.x = screen->w - width*32; - if (offset.y < screen->h - height*32) offset.y = screen->h - height*32; -+#else -+ offset.x = -tux_pos.x + 640/2; -+ offset.y = -tux_pos.y + 480/2; -+ -+ if (offset.x > 0) offset.x = 0; -+ if (offset.y > 0) offset.y = 0; -+ -+ if (offset.x < 640 - width*32) offset.x = 640 - width*32; -+ if (offset.y < 480 - height*32) offset.y = 480 - height*32; -+#endif - } - - draw(offset); diff --git a/packages/supertux/files/img-resize.sh b/packages/supertux/files/img-resize.sh deleted file mode 100644 index 0197964193..0000000000 --- a/packages/supertux/files/img-resize.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -conv() { - -if [ ! -d org ]; then - mkdir org - mv *.jpg *.png org/ -fi - -for i in org/*; do - b=`basename $i` - ext=`expr "x$b" : 'x.*\.\(.*\)'` - if [ "$ext" == "png" ]; then - if [ $b == "tux-life.png" ]; then - cp $i _.png - else - convert $i -resize 50% -colors 64 _.png - fi - pngcrush -q _.png $b - elif [ "$ext" == "jpg" ]; then - convert $i -resize 50% -quality 60 $b - fi -done -rm _.png - -} - -conv diff --git a/packages/supertux/files/supertux-smallsize-data.tar.bz2 b/packages/supertux/files/supertux-smallsize-data.tar.bz2 Binary files differdeleted file mode 100644 index 740e4f4473..0000000000 --- a/packages/supertux/files/supertux-smallsize-data.tar.bz2 +++ /dev/null diff --git a/packages/supertux/files/supertux.desktop b/packages/supertux/files/supertux.desktop deleted file mode 100644 index 8677a71301..0000000000 --- a/packages/supertux/files/supertux.desktop +++ /dev/null @@ -1,20 +0,0 @@ -[Desktop Entry] -Type=Application -Version=1.0 -Name=SuperTux -Name[en]=SuperTux -Name[de]=SuperTux -Name[cs]=SuperTux -GenericName=A Platform Game -GenericName[en]=A Platform Game -GenericName[de]=Ein Jump&Run Spiel -GenericName[cs]=Plošinová hra -Comment=A Super Mario inspired penguin platform game -Comment[en]=A Super Mario inspired penguin platform game -Comment[de]=Ein von Super Mario inspiriertes Pinguin Jump&Run Spiel -Comment[cs]=Plošinovka inspirovaná SuperMariem s tučňákem Tuxem v hlavní roli -Icon=supertux -Exec=supertux -Terminal=false -StartupNotify=false -Categories=Application;Game;ArcadeGame; diff --git a/packages/supertux/files/supertux.png b/packages/supertux/files/supertux.png Binary files differdeleted file mode 100644 index 82ac69642c..0000000000 --- a/packages/supertux/files/supertux.png +++ /dev/null diff --git a/packages/supertux/supertux-qvga_0.1.3.bb b/packages/supertux/supertux-qvga_0.1.3.bb deleted file mode 100644 index a38b8efbec..0000000000 --- a/packages/supertux/supertux-qvga_0.1.3.bb +++ /dev/null @@ -1,57 +0,0 @@ -DESCRIPTION = "SuperTux is a classic 2D jump'n'run sidescroller game \ -in a style similar to the original SuperMario games (QVGA, size-optimized version)" -SECTION = "games" -PRIORITY = "optional" -LICENSE = "GPL" -DEPENDS = "libsdl-gfx imagemagick-native pngcrush-native" -PR = "r0.20" - -APPIMAGE = "${WORKDIR}/supertux.png" -APPDESKTOP = "${WORKDIR}/supertux.desktop" - -PACKAGES_prepend = " ${PN}-levels-bonus1 ${PN}-levels-bonus2 " - -SRC_URI = "${SOURCEFORGE_MIRROR}/super-tux/supertux-${PV}.tar.bz2 \ -# file://supertux-qvga-gfx.tar.bz2 \ - file://supertux-smallsize-data.tar.bz2 \ - file://gp2x.patch;patch=1 \ - file://img-resize.sh \ - file://supertux.png \ - file://supertux.desktop \ -# file://letters-black.png \ -# file://letters-blue.png \ -# file://letters-gold.png \ -# file://mousecursor.png \ -# file://credits.mod \ - " -S = "${WORKDIR}/supertux-${PV}" - -export SDL_CONFIG = "${STAGING_BINDIR_CROSS}/sdl-config" -EXTRA_OECONF = "--enable-320x240 --disable-opengl" - -inherit autotools sdl - -do_compile_prepend() { -# for f in letters-black.png letters-blue.png letters-gold.png mousecursor.png; do -# cp ${WORKDIR}/$f ${S}/data/images/status/ -# done - for d in background shared tilesets title worldmap; do - cd ${S}/data/images/$d - sh ${WORKDIR}/img-resize.sh - done -} - -do_install_prepend() { - # *-fast.* music plays when time for a level is running out - # byte-wise, it's the same file with few bytes changes (for .mod's). - # Well, seller feature, what to say, but we won't waste megabytes on - # that. Folks should learn to control tempo in there player lib. - rm -f ${S}/data/music/*-fast.* - # ogg is too heavy for embedded systems - rm -f ${S}/data/music/*.ogg -# cp ${WORKDIR}/*.mod ${S}/data/music/ -} - -FILES_${PN}-levels-bonus1 = "${datadir}/supertux/levels/bonus1 ${datadir}/supertux/levels/worldmaps/bonusisland1.stwm" -FILES_${PN}-levels-bonus2 = "${datadir}/supertux/levels/bonus2 ${datadir}/supertux/levels/worldmaps/bonusisland2.stwm" -FILES_${PN} += "${datadir}/supertux" diff --git a/packages/supertux/supertux_0.1.2.bb b/packages/supertux/supertux_0.1.2.bb deleted file mode 100644 index 3afa425f1a..0000000000 --- a/packages/supertux/supertux_0.1.2.bb +++ /dev/null @@ -1,18 +0,0 @@ -DESCRIPTION = "SuperTux is a classic 2D jump'n'run sidescroller game \ -in a style similar to the original SuperMario games." -SECTION = "games" -PRIORITY = "optional" -LICENSE = "GPL" -PR = "r4" - -APPIMAGE = "${WORKDIR}/supertux.png" -APPDESKTOP = "${WORKDIR}/supertux.desktop" - -SRC_URI = "${SOURCEFORGE_MIRROR}/super-tux/supertux-${PV}.tar.bz2 \ - http://ssel.vub.ac.be/Members/DennisWagelaar/download/zaurus/supertux-0.1.2-fp.patch.gz;patch=1 \ - file://supertux.png" - -export SDL_CONFIG = "${STAGING_BINDIR_CROSS}/sdl-config" -EXTRA_OECONF = "--disable-opengl" - -inherit autotools sdl diff --git a/packages/supertux/supertux_0.1.3.bb b/packages/supertux/supertux_0.1.3.bb deleted file mode 100644 index f90670738a..0000000000 --- a/packages/supertux/supertux_0.1.3.bb +++ /dev/null @@ -1,22 +0,0 @@ -DESCRIPTION = "SuperTux is a classic 2D jump'n'run sidescroller game \ -in a style similar to the original SuperMario games." -SECTION = "games" -PRIORITY = "optional" -LICENSE = "GPL" -PR = "r1" - -APPIMAGE = "${WORKDIR}/supertux.png" -APPDESKTOP = "${WORKDIR}/supertux.desktop" - -SRC_URI = "${SOURCEFORGE_MIRROR}/super-tux/supertux-${PV}.tar.bz2 \ -# http://ssel.vub.ac.be/Members/DennisWagelaar/download/zaurus/supertux-0.1.2-fp.patch.gz;patch=1 \ - file://supertux.png \ - file://supertux.desktop \ - " - -export SDL_CONFIG = "${STAGING_BINDIR_CROSS}/sdl-config" -EXTRA_OECONF = "--disable-opengl" - -inherit autotools sdl - -DEFAULT_PREFERENCE = "-1" |