From f886f788e5e719d5f87751983d70261cd3ead154 Mon Sep 17 00:00:00 2001 From: pelya Date: Sun, 20 Jan 2013 19:49:33 +0200 Subject: [PATCH] Updated UQM to the point it actually runs --- .../application/sc2/AndroidAppSettings.cfg | 4 +- .../jni/application/sc2/AndroidData/logo.png | Bin 0 -> 130078 bytes project/jni/application/sc2/android.diff | 1473 ++++++++--------- 3 files changed, 728 insertions(+), 749 deletions(-) create mode 100644 project/jni/application/sc2/AndroidData/logo.png diff --git a/project/jni/application/sc2/AndroidAppSettings.cfg b/project/jni/application/sc2/AndroidAppSettings.cfg index b2f939146..f4068a369 100644 --- a/project/jni/application/sc2/AndroidAppSettings.cfg +++ b/project/jni/application/sc2/AndroidAppSettings.cfg @@ -42,9 +42,9 @@ AppVersionCode=07023 AppVersionName="0.7.0.23" ResetSdlConfigForThisVersion=y DeleteFilesOnUpgrade="%" -CompiledLibraries="sdl_image tremor ogg mikmod" +CompiledLibraries="sdl_image tremor ogg" CustomBuildScript=n -AppCflags='-O3 -DGFXMODULE_SDL -DOVCODEC_TREMOR -DNETPLAY=NETPLAY_FULL -DHAVE_JOYSTICK -DHAVE_ZIP=1 -DTHREADLIB_SDL' +AppCflags='-O3 -DGFXMODULE_SDL -DOVCODEC_TREMOR -DNETPLAY=NETPLAY_FULL -DHAVE_JOYSTICK -DHAVE_ZIP=1 -DTHREADLIB_SDL -DUSE_INTERNAL_MIKMOD' AppLdflags='' AppOverlapsSystemHeaders=y AppSubdirsBuild='src src/libs/* src/uqm/*' diff --git a/project/jni/application/sc2/AndroidData/logo.png b/project/jni/application/sc2/AndroidData/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b6df3d25f0bcf4efcd3331c27980a9957ba7c283 GIT binary patch literal 130078 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 z�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 literal 0 HcmV?d00001 diff --git a/project/jni/application/sc2/android.diff b/project/jni/application/sc2/android.diff index 8971ebeef..487b065a8 100644 --- a/project/jni/application/sc2/android.diff +++ b/project/jni/application/sc2/android.diff @@ -1,3 +1,490 @@ +Index: libs/md5/md5.c +=================================================================== +--- libs/md5/md5.c (revision 3779) ++++ libs/md5/md5.c (working copy) +@@ -21,7 +21,7 @@ + + /* Written by Ulrich Drepper , 1995. */ + +-#include ++#include "config.h" + + #include "md5.h" + +Index: libs/resource/filecntl.c +=================================================================== +--- libs/resource/filecntl.c (revision 3779) ++++ libs/resource/filecntl.c (working copy) +@@ -26,6 +26,7 @@ + #include "port.h" + #include "resintrn.h" + #include "libs/uio.h" ++#include "libs/log.h" + + uio_Stream * + res_OpenResFile (uio_DirHandle *dir, const char *filename, const char *mode) +@@ -34,7 +35,10 @@ + struct stat sb; + + if (uio_stat (dir, filename, &sb) == 0 && S_ISDIR(sb.st_mode)) ++ { ++ log_add (log_Debug, "res_OpenResFile('%s', '%s') - cannot open dir as file", filename, mode); + return ((uio_Stream *) ~0); ++ } + + fp = uio_fopen (dir, filename, mode); + +Index: libs/sound/decoders/oggaud.c +=================================================================== +--- libs/sound/decoders/oggaud.c (revision 3779) ++++ libs/sound/decoders/oggaud.c (working copy) +@@ -270,7 +270,7 @@ + // this is the closest to a frame there is in ogg vorbis stream + // doesn't seem to be a func to retrive it + #ifdef OVCODEC_TREMOR +- return ova->vf.os->pageno; ++ return ova->vf.os.pageno; + #else + return ova->vf.os.pageno; + #endif /* OVCODEC_TREMOR */ +Index: libs/network/netmanager/netmanager_win.c +=================================================================== +--- libs/network/netmanager/netmanager_win.c (revision 3779) ++++ libs/network/netmanager/netmanager_win.c (working copy) +@@ -16,6 +16,8 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#ifdef WIN32 ++ + #define PORT_WANT_ERRNO + #include "port.h" + #include "../netport.h" +@@ -461,4 +463,4 @@ + return 0; + } + +- ++#endif +Index: libs/network/network_win.c +=================================================================== +--- libs/network/network_win.c (revision 3779) ++++ libs/network/network_win.c (working copy) +@@ -16,6 +16,8 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#ifdef WIN32 ++ + #include "netport.h" + + #include "network.h" +@@ -72,4 +74,4 @@ + } + } + +- ++#endif +Index: libs/network/socket/socket_win.c +=================================================================== +--- libs/network/socket/socket_win.c (revision 3779) ++++ libs/network/socket/socket_win.c (working copy) +@@ -18,6 +18,8 @@ + + // Socket functions for Winsock sockets. + ++#ifdef WIN32 ++ + #define PORT_WANT_ERRNO + #include "port.h" + #include "../netport.h" +@@ -311,4 +313,4 @@ + return 0; + } + +- ++#endif +Index: libs/graphics/sdl/pure.c +=================================================================== +--- libs/graphics/sdl/pure.c (revision 3779) ++++ libs/graphics/sdl/pure.c (working copy) +@@ -20,6 +20,10 @@ + #include "scalers.h" + #include "libs/log.h" + ++#ifdef ANDROID ++#include ++#endif ++ + static SDL_Surface *fade_color_surface = NULL; + static SDL_Surface *fade_temp = NULL; + static SDL_Surface *scaled_display = NULL; +@@ -104,6 +108,7 @@ + { + int i, videomode_flags; + SDL_PixelFormat conv_fmt; ++ int BPP = 32; + + GraphicsDriver = driver; + +@@ -128,6 +133,20 @@ + "under pure SDL, using 640x480", width, height); + } + ++#ifdef ANDROID ++ videomode_flags = SDL_SWSURFACE; ++ ScreenWidthActual = 320; ++ ScreenHeightActual = 240; ++ graphics_backend = &pure_unscaled_backend; ++ BPP = 16; ++ /* Make the on-screen buttons slightly overlap, so we can hit them with one finger */ ++ SDL_Rect b0; ++ SDL_ANDROID_GetScreenKeyboardButtonPos(SDL_ANDROID_SCREENKEYBOARD_BUTTON_0, &b0); ++ b0.x -= b0.w * 0.2; ++ b0.w += b0.w * 0.2; ++ SDL_ANDROID_SetScreenKeyboardButtonPos(SDL_ANDROID_SCREENKEYBOARD_BUTTON_0, &b0); ++#endif ++ + videomode_flags |= SDL_ANYFORMAT; + if (flags & TFB_GFXFLAGS_FULLSCREEN) + videomode_flags |= SDL_FULLSCREEN; +@@ -135,7 +154,7 @@ + /* We'll ask for a 32bpp frame, but it doesn't really matter, because we've set + SDL_ANYFORMAT */ + SDL_Video = SDL_SetVideoMode (ScreenWidthActual, ScreenHeightActual, +- 32, videomode_flags); ++ BPP, videomode_flags); + + if (SDL_Video == NULL) + { +Index: libs/cdp/cdpapi.c +=================================================================== +--- libs/cdp/cdpapi.c (revision 3779) ++++ libs/cdp/cdpapi.c (working copy) +@@ -20,6 +20,8 @@ + * the API is used by both the engine and modules + */ + ++#ifndef ANDROID ++ + #include "cdp.h" + #include "port.h" + #include "cdpint.h" +@@ -862,3 +864,5 @@ + } + return ret; + } ++ ++#endif +Index: libs/cdp/cdp.c +=================================================================== +--- libs/cdp/cdp.c (revision 3779) ++++ libs/cdp/cdp.c (working copy) +@@ -19,6 +19,8 @@ + * CDP library definitions + */ + ++#ifndef ANDROID ++ + #include + #include + #include "cdp.h" +@@ -435,3 +437,5 @@ + cdp_FreeModule (cdp); + } + } ++ ++#endif +Index: libs/cdp/windl.c +=================================================================== +--- libs/cdp/windl.c (revision 3779) ++++ libs/cdp/windl.c (working copy) +@@ -19,6 +19,8 @@ + * CDP dlopen() & Co. WIN32 implementation + */ + ++#ifdef WIN32 ++ + #include "windl.h" + #include "port.h" + #define WIN32_LEAN_AND_MEAN +@@ -74,3 +76,5 @@ + else + return NULL; + } ++ ++#endif +Index: libs/input/sdl/input.c +=================================================================== +--- libs/input/sdl/input.c (revision 3779) ++++ libs/input/sdl/input.c (working copy) +@@ -186,6 +186,13 @@ + directory. */ + LoadResourceIndex (contentDir, "uqm.key", "keys."); + } ++ ++#ifdef ANDROID // TODO: hacky ++ res_PutString("keys.1.up.2", "joystick 0 axis 1 negative"); ++ res_PutString("keys.1.down.2", "joystick 0 axis 1 positive"); ++ res_PutString("keys.1.left.2", "joystick 0 axis 0 negative"); ++ res_PutString("keys.1.right.2", "joystick 0 axis 0 positive"); ++#endif + + register_flight_controls (); + +Index: libs/input/sdl/vcontrol.c +=================================================================== +--- libs/input/sdl/vcontrol.c (revision 3779) ++++ libs/input/sdl/vcontrol.c (working copy) +@@ -46,6 +46,7 @@ + typedef struct vcontrol_joystick_axis { + keybinding *neg, *pos; + int polarity; ++ int value; + } axis_type; + + typedef struct vcontrol_joystick_hat { +@@ -66,7 +67,7 @@ + + #endif /* HAVE_JOYSTICK */ + +-static unsigned int joycount; ++static unsigned int joycount = 0; + static unsigned int num_sdl_keys = 0; + static keybinding **bindings = NULL; + +@@ -818,6 +819,7 @@ + int t; + if (!joysticks[port].stick) + return; ++ joysticks[port].axes[axis].value = value; + t = joysticks[port].threshold; + if (value > t) + { +@@ -894,6 +896,25 @@ + #endif /* HAVE_JOYSTICK */ + } + ++int ++VControl_GetJoyAxis(int port, int axis) ++{ ++#ifdef HAVE_JOYSTICK ++ if( joycount <= port ) ++ return 0; ++ if (!joysticks[port].stick || joysticks[port].numaxes <= axis ) ++ return 0; ++ return joysticks[port].axes[axis].value; ++#else ++ return 0; ++#endif /* HAVE_JOYSTICK */ ++}; ++ ++int VControl_GetJoysticksAmount() ++{ ++ return joycount; ++}; ++ + void + VControl_ResetInput (void) + { +Index: libs/input/sdl/vcontrol.h +=================================================================== +--- libs/input/sdl/vcontrol.h (revision 3779) ++++ libs/input/sdl/vcontrol.h (working copy) +@@ -76,6 +76,9 @@ + void VControl_ProcessJoyAxis (int port, int axis, int value); + void VControl_ProcessJoyHat (int port, int which, Uint8 value); + ++int VControl_GetJoyAxis(int port, int axis); ++int VControl_GetJoysticksAmount(); ++ + /* Force the input into the blank state. For preventing "sticky" keys. */ + void VControl_ResetInput (void); + +Index: libs/log/msgbox_stub.c +=================================================================== +--- libs/log/msgbox_stub.c (revision 3779) ++++ libs/log/msgbox_stub.c (working copy) +@@ -16,6 +16,9 @@ + + #include "msgbox.h" + #include "loginternal.h" ++#ifdef ANDROID ++#include ++#endif + + void + log_displayBox (const /*UTF-8*/char *title, int isError, +@@ -26,6 +29,9 @@ + // So just inform the user of our predicament + fprintf (streamOut, "Do not know how to display %s box\n", + isError ? "an error" : "a"); ++#ifdef ANDROID ++ __android_log_print( isError ? ANDROID_LOG_FATAL : ANDROID_LOG_INFO, "Ur-Quan Masters", "%s: %s", title, msg ); ++#endif + + // Suppress the compiler warnings in any case. + (void)title; +Index: libs/log/uqmlog.c +=================================================================== +--- libs/log/uqmlog.c (revision 3779) ++++ libs/log/uqmlog.c (working copy) +@@ -23,6 +23,9 @@ + #include + #include + #include ++#ifdef ANDROID ++#include ++#endif + #include "libs/threadlib.h" + + #ifndef MAX_LOG_ENTRY_SIZE +@@ -191,6 +194,9 @@ + if ((int)level <= maxStreamLevel) + { + fprintf (streamOut, "%s\n", full_msg); ++#ifdef ANDROID ++ __android_log_print( ANDROID_LOG_INFO, "Ur-Quan Masters", "%s", full_msg ); ++#endif + } + + if ((int)level <= maxLevel) +@@ -227,6 +233,9 @@ + if ((int)level <= maxStreamLevel) + { + fprintf (streamOut, "%s\n", full_msg); ++#ifdef ANDROID ++ __android_log_print( ANDROID_LOG_INFO, "Ur-Quan Masters", "%s", full_msg ); ++#endif + } + + if ((int)level <= maxLevel) +Index: libs/log/msgbox_win.c +=================================================================== +--- libs/log/msgbox_win.c (revision 3779) ++++ libs/log/msgbox_win.c (working copy) +@@ -14,6 +14,7 @@ + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + ++#ifndef ANDROID + #include "msgbox.h" + #define WIN32_LEAN_AND_MEAN + #include +@@ -64,4 +65,4 @@ + free (swTitle); + free (swMsg); + } +- ++#endif +Index: libs/uio/match.c +=================================================================== +--- libs/uio/match.c (revision 3779) ++++ libs/uio/match.c (working copy) +@@ -506,7 +506,7 @@ + return match_ENOTINIT; + } + if (context->errorString) { +- uio_free(context->errorString); ++ uio_free(context->errorString); //TODO: why does it crash here on Android? + context->errorString = NULL; + } + retval = regexec(&context->native, string, 0, NULL, 0); +Index: libs/uio/match.h +=================================================================== +--- libs/uio/match.h (revision 3779) ++++ libs/uio/match.h (working copy) +@@ -79,7 +79,7 @@ + + #include + #ifdef HAVE_REGEX +-# include ++#include + #endif + + #include "uioport.h" +Index: libs/uio/io.c +=================================================================== +--- libs/uio/io.c (revision 3779) ++++ libs/uio/io.c (working copy) +@@ -35,6 +35,7 @@ + #include "mem.h" + #include "uioutils.h" + #include "uioport.h" ++#include "../log.h" + #ifdef uio_MEM_DEBUG + # include "memdebug.h" + #endif +@@ -193,6 +194,7 @@ + errno = EINVAL; + return NULL; + } ++ log_add (log_Info, "uio_open %s", sourcePath); + handle = uio_open(sourceDir, sourcePath, + ((flags & uio_MOUNT_RDONLY) == uio_MOUNT_RDONLY ? + O_RDONLY : O_RDWR) +@@ -201,12 +203,14 @@ + #endif + , 0); + if (handle == NULL) { ++ log_add (log_Info, "uio_open failed for %s", sourcePath); + // errno is set + return NULL; + } + } + + handler = uio_getFileSystemHandler(fsType); ++ log_add (log_Info, "uio_getFileSystemHandler %p", handler); + if (handler == NULL) { + if (handle) + uio_close(handle); +@@ -800,6 +804,7 @@ + &readMountInfo, &readPDirHandle, NULL, + &writeMountInfo, &writePDirHandle, NULL, &name) == -1) { + // errno is set ++ log_add (log_Info, "uio_open: uio_getPhysicalAccess failed for '%s'", path); + return NULL; + } + +@@ -826,6 +831,7 @@ + uio_PDirHandle_unref(readPDirHandle); + uio_PDirHandle_unref(writePDirHandle); + errno = EEXIST; ++ log_add (log_Info, "uio_open: O_CREAT | O_EXCL: file already exists '%s'", name); + return NULL; + } + if ((flags & O_TRUNC) == O_TRUNC) { +@@ -842,6 +848,7 @@ + uio_PDirHandle_unref(readPDirHandle); + uio_PDirHandle_unref(writePDirHandle); + errno = savedErrno; ++ log_add (log_Info, "uio_open: uio_copyFilePhysical failed '%s'", name); + return NULL; + } + } +@@ -863,6 +870,7 @@ + handle = (pDirHandle->pRoot->handler->open)(pDirHandle, name, flags, mode); + // Also adds a new entry to the physical dir if appropriate. + if (handle == NULL) { ++ log_add (log_Info, "uio_open: open file failed '%s'", name); + int savedErrno = errno; + uio_free(name); + uio_PDirHandle_unref(pDirHandle); +Index: libs/uio/zip/zip.c +=================================================================== +--- libs/uio/zip/zip.c (revision 3779) ++++ libs/uio/zip/zip.c (working copy) +@@ -1366,6 +1366,10 @@ + gPFileData->gid = (uid_t) makeUInt16(buf[12], buf[13]); + break; + } ++ case 0x7875: // 'Unix string UID/GID' ++ // Just skip it ++ break; ++ + default: + #ifdef DEBUG + fprintf(stderr, "Debug: Extra field 0x%04x unsupported, " Index: config_unix.h =================================================================== --- config_unix.h (revision 0) @@ -66,6 +553,140 @@ Index: config_unix.h + +#endif /* _CONFIG_UNIX_H */ + +Index: uqm/confirm.c +=================================================================== +--- uqm/confirm.c (revision 3779) ++++ uqm/confirm.c (working copy) +@@ -36,22 +36,29 @@ + #define CONFIRM_WIN_HEIGHT 22 + + static void +-DrawConfirmationWindow (BOOLEAN answer) ++DrawConfirmationWindow (int answer) + { + Color oldfg = SetContextForeGroundColor (MENU_TEXT_COLOR); + FONT oldfont = SetContextFont (StarConFont); + FRAME oldFontEffect = SetContextFontEffect (NULL); + RECT r; + TEXT t; ++ int textOffset; + + BatchGraphics (); + r.corner.x = (SCREEN_WIDTH - CONFIRM_WIN_WIDTH) >> 1; + r.corner.y = (SCREEN_HEIGHT - CONFIRM_WIN_HEIGHT) >> 1; + r.extent.width = CONFIRM_WIN_WIDTH; + r.extent.height = CONFIRM_WIN_HEIGHT; ++ textOffset = r.extent.width >> 1; ++ if (GLOBAL (CurrentActivity) & IN_BATTLE) ++ { ++ r.corner.x -= CONFIRM_WIN_WIDTH; ++ r.extent.width += CONFIRM_WIN_WIDTH * 2; ++ textOffset = r.extent.width / 3; ++ } + DrawShadowedBox (&r, SHADOWBOX_BACKGROUND_COLOR, + SHADOWBOX_DARK_COLOR, SHADOWBOX_MEDIUM_COLOR); +- + t.baseline.x = r.corner.x + (r.extent.width >> 1); + t.baseline.y = r.corner.y + 8; + t.pStr = GAME_STRING (QUITMENU_STRING_BASE); // "Really Quit?" +@@ -59,14 +66,21 @@ + t.CharCount = (COUNT)~0; + font_DrawText (&t); + t.baseline.y += 10; +- t.baseline.x = r.corner.x + (r.extent.width >> 2); ++ t.baseline.x = r.corner.x + (textOffset >> 1); + t.pStr = GAME_STRING (QUITMENU_STRING_BASE + 1); // "Yes" +- SetContextForeGroundColor (answer ? MENU_HIGHLIGHT_COLOR : MENU_TEXT_COLOR); ++ SetContextForeGroundColor (answer == 1 ? MENU_HIGHLIGHT_COLOR : MENU_TEXT_COLOR); + font_DrawText (&t); +- t.baseline.x += (r.extent.width >> 1); ++ t.baseline.x += textOffset; + t.pStr = GAME_STRING (QUITMENU_STRING_BASE + 2); // "No" +- SetContextForeGroundColor (answer ? MENU_TEXT_COLOR : MENU_HIGHLIGHT_COLOR); ++ SetContextForeGroundColor (answer == 0 ? MENU_HIGHLIGHT_COLOR : MENU_TEXT_COLOR); + font_DrawText (&t); ++ if (GLOBAL (CurrentActivity) & IN_BATTLE) ++ { ++ t.baseline.x += textOffset; ++ t.pStr = "Escape unit"; // GAME_STRING (QUITMENU_STRING_BASE + 3); // TODO: modify gamestrings.txt ++ SetContextForeGroundColor (answer == 2 ? MENU_HIGHLIGHT_COLOR : MENU_TEXT_COLOR); ++ font_DrawText (&t); ++ } + + UnbatchGraphics (); + +@@ -75,6 +89,8 @@ + SetContextForeGroundColor (oldfg); + } + ++BOOLEAN EmergencyEscapeWarpUnitActivatedFromMenu = FALSE; ++ + BOOLEAN + DoConfirmExit (void) + { +@@ -91,7 +107,11 @@ + RECT ctxRect; + CONTEXT oldContext; + RECT oldRect; +- BOOLEAN response = FALSE, done; ++ int response = 0; ++ BOOLEAN done; ++ int responseMax = 1; ++ if (GLOBAL (CurrentActivity) & IN_BATTLE) ++ responseMax = 2; + + oldContext = SetContext (ScreenContext); + GetContextClipRect (&oldRect); +@@ -119,7 +139,7 @@ + if (GLOBAL (CurrentActivity) & CHECK_ABORT) + { // something else triggered an exit + done = TRUE; +- response = TRUE; ++ response = 1; + } + else if (PulsedInputState.menu[KEY_MENU_SELECT]) + { +@@ -129,11 +149,16 @@ + else if (PulsedInputState.menu[KEY_MENU_CANCEL]) + { + done = TRUE; +- response = FALSE; ++ response = 0; + } + else if (PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_RIGHT]) + { +- response = !response; ++ ++ response += PulsedInputState.menu[KEY_MENU_LEFT] ? 1 : -1; ++ if(response < 0) ++ response = responseMax; ++ if( response > responseMax ) ++ response = 0; + DrawConfirmationWindow (response); + PlayMenuSound (MENU_SOUND_MOVE); + } +@@ -144,15 +169,19 @@ + DrawStamp (&s); + DestroyDrawable (ReleaseDrawable (s.frame)); + ClearSystemRect (); +- if (response || (GLOBAL (CurrentActivity) & CHECK_ABORT)) ++ if (response == 1 || (GLOBAL (CurrentActivity) & CHECK_ABORT)) + { + result = TRUE; + GLOBAL (CurrentActivity) |= CHECK_ABORT; +- } ++ } + else + { + result = FALSE; + } ++ if( response == 2 ) ++ { ++ EmergencyEscapeWarpUnitActivatedFromMenu = TRUE; ++ } + ExitRequested = FALSE; + GamePaused = FALSE; + FlushInput (); Index: uqm/battle.c =================================================================== --- uqm/battle.c (revision 3779) @@ -113,6 +734,53 @@ Index: uqm/battle.c } } +Index: uqm/intel.c +=================================================================== +--- uqm/intel.c (revision 3779) ++++ uqm/intel.c (working copy) +@@ -45,10 +45,10 @@ + // Allow a player to warp-escape in cyborg mode + if (StarShipPtr->playerNr == RPG_PLAYER_NUM) + InputState |= CurrentInputToBattleInput ( +- context->playerNr) & BATTLE_ESCAPE; ++ context->playerNr, -1) & BATTLE_ESCAPE; + } + else +- InputState = CurrentInputToBattleInput (context->playerNr); ++ InputState = CurrentInputToBattleInput (context->playerNr, -1); + } + else if (!(PlayerControl[context->playerNr] & PSYTRON_CONTROL)) + InputState = 0; +Index: uqm/controls.h +=================================================================== +--- uqm/controls.h (revision 3779) ++++ uqm/controls.h (working copy) +@@ -90,13 +90,14 @@ + #define BATTLE_ESCAPE ((BATTLE_INPUT_STATE)(1 << 5)) + #define BATTLE_DOWN ((BATTLE_INPUT_STATE)(1 << 6)) + +-BATTLE_INPUT_STATE CurrentInputToBattleInput (COUNT player); ++BATTLE_INPUT_STATE CurrentInputToBattleInput (COUNT player, int direction /* = -1 for no directional input */); + BATTLE_INPUT_STATE PulsedInputToBattleInput (COUNT player); + + extern CONTROLLER_INPUT_STATE CurrentInputState; + extern CONTROLLER_INPUT_STATE PulsedInputState; + extern volatile CONTROLLER_INPUT_STATE ImmediateInputState; + extern CONTROL_TEMPLATE PlayerControls[]; ++extern BOOLEAN EmergencyEscapeWarpUnitActivatedFromMenu; + + void UpdateInputState (void); + extern void FlushInput (void); +@@ -116,6 +117,9 @@ + BOOLEAN WaitForNoInput (TimePeriod duration, BOOLEAN resetInput); + BOOLEAN WaitForNoInputUntil (TimeCount timeOut, BOOLEAN resetInput); + ++/* TODO: only joystick #0 and player #0 supported currently */ ++extern BATTLE_INPUT_STATE GetDirectionalJoystickInput(int direction); ++ + void DoPopupWindow(const char *msg); + + typedef void (InputFrameCallback) (void); Index: uqm/planets/solarsys.c =================================================================== --- uqm/planets/solarsys.c (revision 3779) @@ -263,36 +931,6 @@ Index: uqm/setupmenu.h OPT_CONSOLETYPE menu, text, cscan, scroll, intro, meleezoom, shield; CONTROL_TEMPLATE player1, player2; int speechvol, musicvol, sfxvol; -Index: uqm/controls.h -=================================================================== ---- uqm/controls.h (revision 3779) -+++ uqm/controls.h (working copy) -@@ -90,13 +90,14 @@ - #define BATTLE_ESCAPE ((BATTLE_INPUT_STATE)(1 << 5)) - #define BATTLE_DOWN ((BATTLE_INPUT_STATE)(1 << 6)) - --BATTLE_INPUT_STATE CurrentInputToBattleInput (COUNT player); -+BATTLE_INPUT_STATE CurrentInputToBattleInput (COUNT player, int direction /* = -1 for no directional input */); - BATTLE_INPUT_STATE PulsedInputToBattleInput (COUNT player); - - extern CONTROLLER_INPUT_STATE CurrentInputState; - extern CONTROLLER_INPUT_STATE PulsedInputState; - extern volatile CONTROLLER_INPUT_STATE ImmediateInputState; - extern CONTROL_TEMPLATE PlayerControls[]; -+extern BOOLEAN EmergencyEscapeWarpUnitActivatedFromMenu; - - void UpdateInputState (void); - extern void FlushInput (void); -@@ -116,6 +117,9 @@ - BOOLEAN WaitForNoInput (TimePeriod duration, BOOLEAN resetInput); - BOOLEAN WaitForNoInputUntil (TimeCount timeOut, BOOLEAN resetInput); - -+/* TODO: only joystick #0 and player #0 supported currently */ -+extern BATTLE_INPUT_STATE GetDirectionalJoystickInput(int direction); -+ - void DoPopupWindow(const char *msg); - - typedef void (InputFrameCallback) (void); Index: uqm/gameinp.c =================================================================== --- uqm/gameinp.c (revision 3779) @@ -456,213 +1094,6 @@ Index: uqm/gameinp.c + } + return InputState; +} -Index: uqm/confirm.c -=================================================================== ---- uqm/confirm.c (revision 3779) -+++ uqm/confirm.c (working copy) -@@ -36,22 +36,29 @@ - #define CONFIRM_WIN_HEIGHT 22 - - static void --DrawConfirmationWindow (BOOLEAN answer) -+DrawConfirmationWindow (int answer) - { - Color oldfg = SetContextForeGroundColor (MENU_TEXT_COLOR); - FONT oldfont = SetContextFont (StarConFont); - FRAME oldFontEffect = SetContextFontEffect (NULL); - RECT r; - TEXT t; -+ int textOffset; - - BatchGraphics (); - r.corner.x = (SCREEN_WIDTH - CONFIRM_WIN_WIDTH) >> 1; - r.corner.y = (SCREEN_HEIGHT - CONFIRM_WIN_HEIGHT) >> 1; - r.extent.width = CONFIRM_WIN_WIDTH; - r.extent.height = CONFIRM_WIN_HEIGHT; -+ textOffset = r.extent.width >> 1; -+ if (GLOBAL (CurrentActivity) & IN_BATTLE) -+ { -+ r.corner.x -= CONFIRM_WIN_WIDTH; -+ r.extent.width += CONFIRM_WIN_WIDTH * 2; -+ textOffset = r.extent.width / 3; -+ } - DrawShadowedBox (&r, SHADOWBOX_BACKGROUND_COLOR, - SHADOWBOX_DARK_COLOR, SHADOWBOX_MEDIUM_COLOR); -- - t.baseline.x = r.corner.x + (r.extent.width >> 1); - t.baseline.y = r.corner.y + 8; - t.pStr = GAME_STRING (QUITMENU_STRING_BASE); // "Really Quit?" -@@ -59,14 +66,21 @@ - t.CharCount = (COUNT)~0; - font_DrawText (&t); - t.baseline.y += 10; -- t.baseline.x = r.corner.x + (r.extent.width >> 2); -+ t.baseline.x = r.corner.x + (textOffset >> 1); - t.pStr = GAME_STRING (QUITMENU_STRING_BASE + 1); // "Yes" -- SetContextForeGroundColor (answer ? MENU_HIGHLIGHT_COLOR : MENU_TEXT_COLOR); -+ SetContextForeGroundColor (answer == 1 ? MENU_HIGHLIGHT_COLOR : MENU_TEXT_COLOR); - font_DrawText (&t); -- t.baseline.x += (r.extent.width >> 1); -+ t.baseline.x += textOffset; - t.pStr = GAME_STRING (QUITMENU_STRING_BASE + 2); // "No" -- SetContextForeGroundColor (answer ? MENU_TEXT_COLOR : MENU_HIGHLIGHT_COLOR); -+ SetContextForeGroundColor (answer == 0 ? MENU_HIGHLIGHT_COLOR : MENU_TEXT_COLOR); - font_DrawText (&t); -+ if (GLOBAL (CurrentActivity) & IN_BATTLE) -+ { -+ t.baseline.x += textOffset; -+ t.pStr = "Escape unit"; // GAME_STRING (QUITMENU_STRING_BASE + 3); // TODO: modify gamestrings.txt -+ SetContextForeGroundColor (answer == 2 ? MENU_HIGHLIGHT_COLOR : MENU_TEXT_COLOR); -+ font_DrawText (&t); -+ } - - UnbatchGraphics (); - -@@ -75,6 +89,8 @@ - SetContextForeGroundColor (oldfg); - } - -+BOOLEAN EmergencyEscapeWarpUnitActivatedFromMenu = FALSE; -+ - BOOLEAN - DoConfirmExit (void) - { -@@ -91,7 +107,11 @@ - RECT ctxRect; - CONTEXT oldContext; - RECT oldRect; -- BOOLEAN response = FALSE, done; -+ int response = 0; -+ BOOLEAN done; -+ int responseMax = 1; -+ if (GLOBAL (CurrentActivity) & IN_BATTLE) -+ responseMax = 2; - - oldContext = SetContext (ScreenContext); - GetContextClipRect (&oldRect); -@@ -119,7 +139,7 @@ - if (GLOBAL (CurrentActivity) & CHECK_ABORT) - { // something else triggered an exit - done = TRUE; -- response = TRUE; -+ response = 1; - } - else if (PulsedInputState.menu[KEY_MENU_SELECT]) - { -@@ -129,11 +149,16 @@ - else if (PulsedInputState.menu[KEY_MENU_CANCEL]) - { - done = TRUE; -- response = FALSE; -+ response = 0; - } - else if (PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_RIGHT]) - { -- response = !response; -+ -+ response += PulsedInputState.menu[KEY_MENU_LEFT] ? 1 : -1; -+ if(response < 0) -+ response = responseMax; -+ if( response > responseMax ) -+ response = 0; - DrawConfirmationWindow (response); - PlayMenuSound (MENU_SOUND_MOVE); - } -@@ -144,15 +169,19 @@ - DrawStamp (&s); - DestroyDrawable (ReleaseDrawable (s.frame)); - ClearSystemRect (); -- if (response || (GLOBAL (CurrentActivity) & CHECK_ABORT)) -+ if (response == 1 || (GLOBAL (CurrentActivity) & CHECK_ABORT)) - { - result = TRUE; - GLOBAL (CurrentActivity) |= CHECK_ABORT; -- } -+ } - else - { - result = FALSE; - } -+ if( response == 2 ) -+ { -+ EmergencyEscapeWarpUnitActivatedFromMenu = TRUE; -+ } - ExitRequested = FALSE; - GamePaused = FALSE; - FlushInput (); -Index: uqm/intel.c -=================================================================== ---- uqm/intel.c (revision 3779) -+++ uqm/intel.c (working copy) -@@ -45,10 +45,10 @@ - // Allow a player to warp-escape in cyborg mode - if (StarShipPtr->playerNr == RPG_PLAYER_NUM) - InputState |= CurrentInputToBattleInput ( -- context->playerNr) & BATTLE_ESCAPE; -+ context->playerNr, -1) & BATTLE_ESCAPE; - } - else -- InputState = CurrentInputToBattleInput (context->playerNr); -+ InputState = CurrentInputToBattleInput (context->playerNr, -1); - } - else if (!(PlayerControl[context->playerNr] & PSYTRON_CONTROL)) - InputState = 0; -Index: uqm/comm/slyland/slyland.c -=================================================================== ---- uqm/comm/slyland/slyland.c (revision 3779) -+++ uqm/comm/slyland/slyland.c (working copy) -@@ -16,10 +16,10 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -+#include "../slyland/strings.h" -+#include - #include "../commall.h" --#include - #include "resinst.h" --#include "strings.h" - - #include "options.h" - #include "uqm/battle.h" -Index: uqm/comm/thradd/thraddc.c -=================================================================== ---- uqm/comm/thradd/thraddc.c (revision 3779) -+++ uqm/comm/thradd/thraddc.c (working copy) -@@ -18,7 +18,7 @@ - - #include "../commall.h" - #include "resinst.h" --#include "strings.h" -+#include "../thradd/strings.h" - - #include "uqm/build.h" - #include "uqm/gameev.h" -Index: uqm/comm/chmmr/chmmrc.c -=================================================================== ---- uqm/comm/chmmr/chmmrc.c (revision 3779) -+++ uqm/comm/chmmr/chmmrc.c (working copy) -@@ -18,7 +18,7 @@ - - #include "../commall.h" - #include "resinst.h" --#include "strings.h" -+#include "../chmmr/strings.h" - - #include "uqm/build.h" - #include "uqm/hyper.h" -Index: uqm/comm/ilwrath/ilwrathc.c -=================================================================== ---- uqm/comm/ilwrath/ilwrathc.c (revision 3779) -+++ uqm/comm/ilwrath/ilwrathc.c (working copy) -@@ -18,7 +18,7 @@ - - #include "../commall.h" - #include "resinst.h" --#include "strings.h" -+#include "../ilwrath/strings.h" - - #include "uqm/gameev.h" - Index: uqm/comm/urquan/urquanc.c =================================================================== --- uqm/comm/urquan/urquanc.c (revision 3779) @@ -962,6 +1393,62 @@ Index: uqm/comm/arilou/arilouc.c #include "uqm/gameev.h" +Index: uqm/comm/slyland/slyland.c +=================================================================== +--- uqm/comm/slyland/slyland.c (revision 3779) ++++ uqm/comm/slyland/slyland.c (working copy) +@@ -16,10 +16,10 @@ + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + ++#include "../slyland/strings.h" ++#include + #include "../commall.h" +-#include + #include "resinst.h" +-#include "strings.h" + + #include "options.h" + #include "uqm/battle.h" +Index: uqm/comm/thradd/thraddc.c +=================================================================== +--- uqm/comm/thradd/thraddc.c (revision 3779) ++++ uqm/comm/thradd/thraddc.c (working copy) +@@ -18,7 +18,7 @@ + + #include "../commall.h" + #include "resinst.h" +-#include "strings.h" ++#include "../thradd/strings.h" + + #include "uqm/build.h" + #include "uqm/gameev.h" +Index: uqm/comm/chmmr/chmmrc.c +=================================================================== +--- uqm/comm/chmmr/chmmrc.c (revision 3779) ++++ uqm/comm/chmmr/chmmrc.c (working copy) +@@ -18,7 +18,7 @@ + + #include "../commall.h" + #include "resinst.h" +-#include "strings.h" ++#include "../chmmr/strings.h" + + #include "uqm/build.h" + #include "uqm/hyper.h" +Index: uqm/comm/ilwrath/ilwrathc.c +=================================================================== +--- uqm/comm/ilwrath/ilwrathc.c (revision 3779) ++++ uqm/comm/ilwrath/ilwrathc.c (working copy) +@@ -18,7 +18,7 @@ + + #include "../commall.h" + #include "resinst.h" +-#include "strings.h" ++#include "../ilwrath/strings.h" + + #include "uqm/gameev.h" + Index: options.c =================================================================== --- options.c (revision 3779) @@ -1014,28 +1501,7 @@ Index: uqm.c }; struct options_struct defaults = options; int optionsResult; -@@ -270,6 +272,20 @@ - int gfxFlags; - int i; - -+#ifdef ANDROID -+ // Remove save and config files from my previous Andorid releases, where I've messed up save paths, so users will be able to overwrite saves -+ unlink("melee.cfg"); -+ unlink("uqm.cfg"); -+ unlink("flight.cfg"); -+ -+ for(i = 0; i < 50; i++) -+ { -+ char buf[64]; -+ sprintf(buf, "save/starcon2.%02d", i); -+ unlink(buf); -+ }; -+#endif -+ - // NOTE: we cannot use the logging facility yet because we may have to - // log to a file, and we'll only get the log file name after parsing - // the options. -@@ -390,6 +406,7 @@ +@@ -390,6 +392,7 @@ sfxVolumeScale = options.sfxVolumeScale.value; speechVolumeScale = options.speechVolumeScale.value; optAddons = options.addons; @@ -1043,7 +1509,7 @@ Index: uqm.c prepareContentDir (options.contentDir, options.addonDir, argv[0]); prepareMeleeDir (); -@@ -637,6 +654,7 @@ +@@ -637,6 +640,7 @@ getBoolConfigValue (&options->fullscreen, "config.fullscreen"); getBoolConfigValue (&options->scanlines, "config.scanlines"); getBoolConfigValue (&options->showFps, "config.showfps"); @@ -1051,490 +1517,3 @@ Index: uqm.c getBoolConfigValue (&options->keepAspectRatio, "config.keepaspectratio"); getGammaConfigValue (&options->gamma, "config.gamma"); -Index: libs/graphics/sdl/pure.c -=================================================================== ---- libs/graphics/sdl/pure.c (revision 3779) -+++ libs/graphics/sdl/pure.c (working copy) -@@ -20,6 +20,10 @@ - #include "scalers.h" - #include "libs/log.h" - -+#ifdef ANDROID -+#include -+#endif -+ - static SDL_Surface *fade_color_surface = NULL; - static SDL_Surface *fade_temp = NULL; - static SDL_Surface *scaled_display = NULL; -@@ -104,6 +108,7 @@ - { - int i, videomode_flags; - SDL_PixelFormat conv_fmt; -+ int BPP = 32; - - GraphicsDriver = driver; - -@@ -128,6 +133,20 @@ - "under pure SDL, using 640x480", width, height); - } - -+#ifdef ANDROID -+ videomode_flags = SDL_SWSURFACE; -+ ScreenWidthActual = 320; -+ ScreenHeightActual = 240; -+ graphics_backend = &pure_unscaled_backend; -+ BPP = 16; -+ /* Make the on-screen buttons slightly overlap, so we can hit them with one finger */ -+ SDL_Rect b0; -+ SDL_ANDROID_GetScreenKeyboardButtonPos(SDL_ANDROID_SCREENKEYBOARD_BUTTON_0, &b0); -+ b0.x -= b0.w * 0.2; -+ b0.w += b0.w * 0.2; -+ SDL_ANDROID_SetScreenKeyboardButtonPos(SDL_ANDROID_SCREENKEYBOARD_BUTTON_0, &b0); -+#endif -+ - videomode_flags |= SDL_ANYFORMAT; - if (flags & TFB_GFXFLAGS_FULLSCREEN) - videomode_flags |= SDL_FULLSCREEN; -@@ -135,7 +154,7 @@ - /* We'll ask for a 32bpp frame, but it doesn't really matter, because we've set - SDL_ANYFORMAT */ - SDL_Video = SDL_SetVideoMode (ScreenWidthActual, ScreenHeightActual, -- 32, videomode_flags); -+ BPP, videomode_flags); - - if (SDL_Video == NULL) - { -Index: libs/log/msgbox_win.c -=================================================================== ---- libs/log/msgbox_win.c (revision 3779) -+++ libs/log/msgbox_win.c (working copy) -@@ -14,6 +14,7 @@ - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -+#ifndef ANDROID - #include "msgbox.h" - #define WIN32_LEAN_AND_MEAN - #include -@@ -64,4 +65,4 @@ - free (swTitle); - free (swMsg); - } -- -+#endif -Index: libs/log/msgbox_stub.c -=================================================================== ---- libs/log/msgbox_stub.c (revision 3779) -+++ libs/log/msgbox_stub.c (working copy) -@@ -16,6 +16,9 @@ - - #include "msgbox.h" - #include "loginternal.h" -+#ifdef ANDROID -+#include -+#endif - - void - log_displayBox (const /*UTF-8*/char *title, int isError, -@@ -26,6 +29,9 @@ - // So just inform the user of our predicament - fprintf (streamOut, "Do not know how to display %s box\n", - isError ? "an error" : "a"); -+#ifdef ANDROID -+ __android_log_print( isError ? ANDROID_LOG_FATAL : ANDROID_LOG_INFO, "Ur-Quan Masters", "%s: %s", title, msg ); -+#endif - - // Suppress the compiler warnings in any case. - (void)title; -Index: libs/log/uqmlog.c -=================================================================== ---- libs/log/uqmlog.c (revision 3779) -+++ libs/log/uqmlog.c (working copy) -@@ -23,6 +23,9 @@ - #include - #include - #include -+#ifdef ANDROID -+#include -+#endif - #include "libs/threadlib.h" - - #ifndef MAX_LOG_ENTRY_SIZE -@@ -191,6 +194,9 @@ - if ((int)level <= maxStreamLevel) - { - fprintf (streamOut, "%s\n", full_msg); -+#ifdef ANDROID -+ __android_log_print( ANDROID_LOG_INFO, "Ur-Quan Masters", "%s", full_msg ); -+#endif - } - - if ((int)level <= maxLevel) -@@ -227,6 +233,9 @@ - if ((int)level <= maxStreamLevel) - { - fprintf (streamOut, "%s\n", full_msg); -+#ifdef ANDROID -+ __android_log_print( ANDROID_LOG_INFO, "Ur-Quan Masters", "%s", full_msg ); -+#endif - } - - if ((int)level <= maxLevel) -Index: libs/uio/match.c -=================================================================== ---- libs/uio/match.c (revision 3779) -+++ libs/uio/match.c (working copy) -@@ -506,7 +506,7 @@ - return match_ENOTINIT; - } - if (context->errorString) { -- uio_free(context->errorString); -+ uio_free(context->errorString); //TODO: why does it crash here on Android? - context->errorString = NULL; - } - retval = regexec(&context->native, string, 0, NULL, 0); -Index: libs/uio/match.h -=================================================================== ---- libs/uio/match.h (revision 3779) -+++ libs/uio/match.h (working copy) -@@ -79,7 +79,7 @@ - - #include - #ifdef HAVE_REGEX --# include -+#include - #endif - - #include "uioport.h" -Index: libs/uio/io.c -=================================================================== ---- libs/uio/io.c (revision 3779) -+++ libs/uio/io.c (working copy) -@@ -35,6 +35,7 @@ - #include "mem.h" - #include "uioutils.h" - #include "uioport.h" -+#include "../log.h" - #ifdef uio_MEM_DEBUG - # include "memdebug.h" - #endif -@@ -193,6 +194,7 @@ - errno = EINVAL; - return NULL; - } -+ log_add (log_Info, "uio_open %s", sourcePath); - handle = uio_open(sourceDir, sourcePath, - ((flags & uio_MOUNT_RDONLY) == uio_MOUNT_RDONLY ? - O_RDONLY : O_RDWR) -@@ -201,12 +203,14 @@ - #endif - , 0); - if (handle == NULL) { -+ log_add (log_Info, "uio_open failed for %s", sourcePath); - // errno is set - return NULL; - } - } - - handler = uio_getFileSystemHandler(fsType); -+ log_add (log_Info, "uio_getFileSystemHandler %p", handler); - if (handler == NULL) { - if (handle) - uio_close(handle); -@@ -800,6 +804,7 @@ - &readMountInfo, &readPDirHandle, NULL, - &writeMountInfo, &writePDirHandle, NULL, &name) == -1) { - // errno is set -+ log_add (log_Info, "uio_open: uio_getPhysicalAccess failed for '%s'", path); - return NULL; - } - -@@ -826,6 +831,7 @@ - uio_PDirHandle_unref(readPDirHandle); - uio_PDirHandle_unref(writePDirHandle); - errno = EEXIST; -+ log_add (log_Info, "uio_open: O_CREAT | O_EXCL: file already exists '%s'", name); - return NULL; - } - if ((flags & O_TRUNC) == O_TRUNC) { -@@ -842,6 +848,7 @@ - uio_PDirHandle_unref(readPDirHandle); - uio_PDirHandle_unref(writePDirHandle); - errno = savedErrno; -+ log_add (log_Info, "uio_open: uio_copyFilePhysical failed '%s'", name); - return NULL; - } - } -@@ -863,6 +870,7 @@ - handle = (pDirHandle->pRoot->handler->open)(pDirHandle, name, flags, mode); - // Also adds a new entry to the physical dir if appropriate. - if (handle == NULL) { -+ log_add (log_Info, "uio_open: open file failed '%s'", name); - int savedErrno = errno; - uio_free(name); - uio_PDirHandle_unref(pDirHandle); -Index: libs/uio/zip/zip.c -=================================================================== ---- libs/uio/zip/zip.c (revision 3779) -+++ libs/uio/zip/zip.c (working copy) -@@ -1366,6 +1366,10 @@ - gPFileData->gid = (uid_t) makeUInt16(buf[12], buf[13]); - break; - } -+ case 0x7875: // 'Unix string UID/GID' -+ // Just skip it -+ break; -+ - default: - #ifdef DEBUG - fprintf(stderr, "Debug: Extra field 0x%04x unsupported, " -Index: libs/md5/md5.c -=================================================================== ---- libs/md5/md5.c (revision 3779) -+++ libs/md5/md5.c (working copy) -@@ -21,7 +21,7 @@ - - /* Written by Ulrich Drepper , 1995. */ - --#include -+#include "config.h" - - #include "md5.h" - -Index: libs/network/netmanager/netmanager_win.c -=================================================================== ---- libs/network/netmanager/netmanager_win.c (revision 3779) -+++ libs/network/netmanager/netmanager_win.c (working copy) -@@ -16,6 +16,8 @@ - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -+#ifdef WIN32 -+ - #define PORT_WANT_ERRNO - #include "port.h" - #include "../netport.h" -@@ -461,4 +463,4 @@ - return 0; - } - -- -+#endif -Index: libs/network/network_win.c -=================================================================== ---- libs/network/network_win.c (revision 3779) -+++ libs/network/network_win.c (working copy) -@@ -16,6 +16,8 @@ - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -+#ifdef WIN32 -+ - #include "netport.h" - - #include "network.h" -@@ -72,4 +74,4 @@ - } - } - -- -+#endif -Index: libs/network/socket/socket_win.c -=================================================================== ---- libs/network/socket/socket_win.c (revision 3779) -+++ libs/network/socket/socket_win.c (working copy) -@@ -18,6 +18,8 @@ - - // Socket functions for Winsock sockets. - -+#ifdef WIN32 -+ - #define PORT_WANT_ERRNO - #include "port.h" - #include "../netport.h" -@@ -311,4 +313,4 @@ - return 0; - } - -- -+#endif -Index: libs/input/sdl/vcontrol.c -=================================================================== ---- libs/input/sdl/vcontrol.c (revision 3779) -+++ libs/input/sdl/vcontrol.c (working copy) -@@ -46,6 +46,7 @@ - typedef struct vcontrol_joystick_axis { - keybinding *neg, *pos; - int polarity; -+ int value; - } axis_type; - - typedef struct vcontrol_joystick_hat { -@@ -66,7 +67,7 @@ - - #endif /* HAVE_JOYSTICK */ - --static unsigned int joycount; -+static unsigned int joycount = 0; - static unsigned int num_sdl_keys = 0; - static keybinding **bindings = NULL; - -@@ -818,6 +819,7 @@ - int t; - if (!joysticks[port].stick) - return; -+ joysticks[port].axes[axis].value = value; - t = joysticks[port].threshold; - if (value > t) - { -@@ -894,6 +896,25 @@ - #endif /* HAVE_JOYSTICK */ - } - -+int -+VControl_GetJoyAxis(int port, int axis) -+{ -+#ifdef HAVE_JOYSTICK -+ if( joycount <= port ) -+ return 0; -+ if (!joysticks[port].stick || joysticks[port].numaxes <= axis ) -+ return 0; -+ return joysticks[port].axes[axis].value; -+#else -+ return 0; -+#endif /* HAVE_JOYSTICK */ -+}; -+ -+int VControl_GetJoysticksAmount() -+{ -+ return joycount; -+}; -+ - void - VControl_ResetInput (void) - { -Index: libs/input/sdl/vcontrol.h -=================================================================== ---- libs/input/sdl/vcontrol.h (revision 3779) -+++ libs/input/sdl/vcontrol.h (working copy) -@@ -76,6 +76,9 @@ - void VControl_ProcessJoyAxis (int port, int axis, int value); - void VControl_ProcessJoyHat (int port, int which, Uint8 value); - -+int VControl_GetJoyAxis(int port, int axis); -+int VControl_GetJoysticksAmount(); -+ - /* Force the input into the blank state. For preventing "sticky" keys. */ - void VControl_ResetInput (void); - -Index: libs/input/sdl/input.c -=================================================================== ---- libs/input/sdl/input.c (revision 3779) -+++ libs/input/sdl/input.c (working copy) -@@ -186,6 +186,13 @@ - directory. */ - LoadResourceIndex (contentDir, "uqm.key", "keys."); - } -+ -+#ifdef ANDROID // TODO: hacky -+ res_PutString("keys.1.up.2", "joystick 0 axis 1 negative"); -+ res_PutString("keys.1.down.2", "joystick 0 axis 1 positive"); -+ res_PutString("keys.1.left.2", "joystick 0 axis 0 negative"); -+ res_PutString("keys.1.right.2", "joystick 0 axis 0 positive"); -+#endif - - register_flight_controls (); - -Index: libs/resource/filecntl.c -=================================================================== ---- libs/resource/filecntl.c (revision 3779) -+++ libs/resource/filecntl.c (working copy) -@@ -26,6 +26,7 @@ - #include "port.h" - #include "resintrn.h" - #include "libs/uio.h" -+#include "libs/log.h" - - uio_Stream * - res_OpenResFile (uio_DirHandle *dir, const char *filename, const char *mode) -@@ -34,7 +35,10 @@ - struct stat sb; - - if (uio_stat (dir, filename, &sb) == 0 && S_ISDIR(sb.st_mode)) -+ { -+ log_add (log_Debug, "res_OpenResFile('%s', '%s') - cannot open dir as file", filename, mode); - return ((uio_Stream *) ~0); -+ } - - fp = uio_fopen (dir, filename, mode); - -Index: libs/cdp/cdpapi.c -=================================================================== ---- libs/cdp/cdpapi.c (revision 3779) -+++ libs/cdp/cdpapi.c (working copy) -@@ -20,6 +20,8 @@ - * the API is used by both the engine and modules - */ - -+#ifndef ANDROID -+ - #include "cdp.h" - #include "port.h" - #include "cdpint.h" -@@ -862,3 +864,5 @@ - } - return ret; - } -+ -+#endif -Index: libs/cdp/cdp.c -=================================================================== ---- libs/cdp/cdp.c (revision 3779) -+++ libs/cdp/cdp.c (working copy) -@@ -19,6 +19,8 @@ - * CDP library definitions - */ - -+#ifndef ANDROID -+ - #include - #include - #include "cdp.h" -@@ -435,3 +437,5 @@ - cdp_FreeModule (cdp); - } - } -+ -+#endif -Index: libs/cdp/windl.c -=================================================================== ---- libs/cdp/windl.c (revision 3779) -+++ libs/cdp/windl.c (working copy) -@@ -19,6 +19,8 @@ - * CDP dlopen() & Co. WIN32 implementation - */ - -+#ifdef WIN32 -+ - #include "windl.h" - #include "port.h" - #define WIN32_LEAN_AND_MEAN -@@ -74,3 +76,5 @@ - else - return NULL; - } -+ -+#endif -Index: libs/sound/decoders/oggaud.c -=================================================================== ---- libs/sound/decoders/oggaud.c (revision 3779) -+++ libs/sound/decoders/oggaud.c (working copy) -@@ -270,7 +270,7 @@ - // this is the closest to a frame there is in ogg vorbis stream - // doesn't seem to be a func to retrive it - #ifdef OVCODEC_TREMOR -- return ova->vf.os->pageno; -+ return ova->vf.os.pageno; - #else - return ova->vf.os.pageno; - #endif /* OVCODEC_TREMOR */