From cc52affa6b24fb5dfa4ffce7b4e4ba4cde0151dc Mon Sep 17 00:00:00 2001 From: lubomyr Date: Sun, 13 Mar 2016 21:38:19 +0200 Subject: [PATCH 1/6] changed library extension .so.2 to .so. It prevent some error in application which use that library --- project/jni/iconv/lib/armeabi-v7a/libiconv.so | Bin 922812 -> 922812 bytes project/jni/iconv/lib/armeabi/libiconv.so | Bin 898228 -> 898228 bytes project/jni/iconv/lib/mips/libiconv.so | Bin 988396 -> 988396 bytes project/jni/iconv/lib/x86/libiconv.so | Bin 931048 -> 931048 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/project/jni/iconv/lib/armeabi-v7a/libiconv.so b/project/jni/iconv/lib/armeabi-v7a/libiconv.so index df977f723161ba7dbf7758052134b227182361c0..28adb01bc181661005b0a2fffb41fa845dacd598 100644 GIT binary patch delta 73 zcmdn9(qhj_iw!zFObiUodOYoVJdEvnJWTC+Jk0HSJS^>cJgn_{JZ$ZHJnZdyJRI$M aJe=)%JY4O1JlySiJRtSF+x2+(`ZxfmCJ>(h delta 73 zcmdn9(qhj_iw!zFOnOGmdOYoVJdEvnJWTC+Jk0HSJS^>cJgn_{JZ$ZHJnZdyJRI$M aJe=)%JY4O1JlySiJRtSF+x2+(`Zxf-lo0;_ diff --git a/project/jni/iconv/lib/armeabi/libiconv.so b/project/jni/iconv/lib/armeabi/libiconv.so index 17821691d71c7110a4e68bb2b0096836d3bdc669..038aeca551756581ff833b6778b971c378b03ffe 100644 GIT binary patch delta 69 zcmdn;(rn91vkm#YObiUog}m*Byo~LIyiDzdyv*%|ye#d7ysYhoylm}-yzK3Tyd3R? ZyqxWYyj<;tyxi@Dygb_rd3l|e0{{ja6pR1> delta 69 zcmdn;(rn91vkm#YOnOGmg}m*Byo~LIyiDzdyv*%|ye#d7ysYhoylm}-yzK3Tyd3R? ZyqxWYyj<;tyxi@Dygb_rd3l|e0{|Qe6zl*1 diff --git a/project/jni/iconv/lib/mips/libiconv.so b/project/jni/iconv/lib/mips/libiconv.so index 98e23beb462474e03cdf70dad7c8c6dd58e2cced..6cd9bea05556d456787b4483f78e7d8dfb91e8b5 100644 GIT binary patch delta 77 zcmaE}(&o)dn+?qDObiUotnBTq?2PTK>`d*f?9A<~>@4l9?5ypq>}>6<>>xRgc2;)I ec2;(-c2;)oc2;(tc2;)Yc2;)2?X2wl&v^lvnGYub delta 77 zcmaE}(&o)dn+?qDOnOGmtnBTq?2PTK>`d*f?9A<~>@4l9?5ypq>}>6<>>xRgc2;)I ec2;(-c2;)oc2;(tc2;)Yc2;)2?X2wl&v^l|hYyDU diff --git a/project/jni/iconv/lib/x86/libiconv.so b/project/jni/iconv/lib/x86/libiconv.so index 09cfd0c92eb18199e41197966666aa1c4576ec35..34e1d1a7620c09b24852297c2c1a8fa8c2b474cd 100644 GIT binary patch delta 73 zcmaFy(&EKSiw!2MObiUoW~}XItc>kutW51@tjz6ZtSs$jtROMAb~9G?b~9Fvb~9Ga ab~9G4b~9G)b~9FkutW51@tjz6ZtSs$jtROMAb~9G?b~9Fvb~9Ga ab~9G4b~9G)b~9FuH From aee68aefb3a4e820ec6d375df54d8d55e7f7cdf8 Mon Sep 17 00:00:00 2001 From: lubomyr Date: Sun, 13 Mar 2016 21:39:35 +0200 Subject: [PATCH 2/6] glshim updated, added latest changes by ptitSeb --- project/jni/glshim/src/gl/gl.c | 4 ++-- project/jni/glshim/src/gl/pixel.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/project/jni/glshim/src/gl/gl.c b/project/jni/glshim/src/gl/gl.c index 59297bb27..5bad5838f 100755 --- a/project/jni/glshim/src/gl/gl.c +++ b/project/jni/glshim/src/gl/gl.c @@ -700,7 +700,7 @@ void glshim_glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid list = glstate.list.active; normalize_indices(sindices, &max, &min, count); - list = arrays_to_renderlist(list, mode, 0, max + 1 - min); + list = arrays_to_renderlist(list, mode, min, max + 1); list->indices = sindices; list->ilen = count; list->indice_cap = count; @@ -715,7 +715,7 @@ void glshim_glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid GLsizei min, max; normalize_indices(sindices, &max, &min, count); - list = arrays_to_renderlist(list, mode, 0, max + 1 - min); + list = arrays_to_renderlist(list, mode, min, max + 1); list->indices = sindices; list->ilen = count; list->indice_cap = count; diff --git a/project/jni/glshim/src/gl/pixel.c b/project/jni/glshim/src/gl/pixel.c index e1aca880e..c5fb82251 100755 --- a/project/jni/glshim/src/gl/pixel.c +++ b/project/jni/glshim/src/gl/pixel.c @@ -755,7 +755,7 @@ bool pixel_convert(const GLvoid *src, GLvoid **dst, } return true; } - if ((src_format == GL_BGR) && (dst_format == GL_RGB) && (dst_type = GL_UNSIGNED_SHORT_5_6_5) && ((src_type == GL_UNSIGNED_BYTE)||(src_type == GL_UNSIGNED_INT_8_8_8_8_REV))) { + if (((src_format == GL_BGR) || (src_format == GL_BGRA)) && (dst_format == GL_RGB) && (dst_type = GL_UNSIGNED_SHORT_5_6_5) && ((src_type == GL_UNSIGNED_BYTE)||(src_type == GL_UNSIGNED_INT_8_8_8_8_REV))) { GLuint tmp; for (int i = 0; i < height; i++) { for (int j = 0; j < width; j++) { From 87bb39a074632931e62e3c524fd2acf8b98434fc Mon Sep 17 00:00:00 2001 From: Sergii Pylypenko Date: Wed, 16 Mar 2016 18:29:47 +0200 Subject: [PATCH 3/6] SDL: NDK r11: more fixes to setEnvironemnt build scripts --- project/jni/application/openarena/engine | 2 +- project/jni/application/openarena/vm | 2 +- project/jni/application/setEnvironment-armeabi-v7a-hard.sh | 2 -- project/jni/application/setEnvironment-armeabi-v7a.sh | 2 -- project/jni/application/setEnvironment-mips.sh | 2 -- project/jni/application/setEnvironment-x86.sh | 2 -- project/jni/application/setEnvironment.sh | 2 -- 7 files changed, 2 insertions(+), 12 deletions(-) diff --git a/project/jni/application/openarena/engine b/project/jni/application/openarena/engine index a6c6f13f9..f19d8ca37 160000 --- a/project/jni/application/openarena/engine +++ b/project/jni/application/openarena/engine @@ -1 +1 @@ -Subproject commit a6c6f13f936bce7fc710253e7482f4357f9b23d7 +Subproject commit f19d8ca37da75cfb44105d035bafb712e1c40354 diff --git a/project/jni/application/openarena/vm b/project/jni/application/openarena/vm index 7d7214e76..601fb2c76 160000 --- a/project/jni/application/openarena/vm +++ b/project/jni/application/openarena/vm @@ -1 +1 @@ -Subproject commit 7d7214e76a08d870499823226921bac5d88f19c9 +Subproject commit 601fb2c762db37009892833cb36aee7a926aac0b diff --git a/project/jni/application/setEnvironment-armeabi-v7a-hard.sh b/project/jni/application/setEnvironment-armeabi-v7a-hard.sh index 237db8586..5c4601b3f 100755 --- a/project/jni/application/setEnvironment-armeabi-v7a-hard.sh +++ b/project/jni/application/setEnvironment-armeabi-v7a-hard.sh @@ -18,8 +18,6 @@ NDK=`which ndk-build` NDK=`dirname $NDK` NDK=`readlink -f $NDK` -grep "64.bit" "$NDK/RELEASE.TXT" >/dev/null 2>&1 && MYARCH="${MYARCH}_64" - #echo NDK $NDK GCCPREFIX=arm-linux-androideabi [ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9 diff --git a/project/jni/application/setEnvironment-armeabi-v7a.sh b/project/jni/application/setEnvironment-armeabi-v7a.sh index 1dddc6e4e..d86237743 100755 --- a/project/jni/application/setEnvironment-armeabi-v7a.sh +++ b/project/jni/application/setEnvironment-armeabi-v7a.sh @@ -18,8 +18,6 @@ NDK=`which ndk-build` NDK=`dirname $NDK` NDK=`readlink -f $NDK` -grep "64.bit" "$NDK/RELEASE.TXT" >/dev/null 2>&1 && MYARCH="${MYARCH}_64" - #echo NDK $NDK GCCPREFIX=arm-linux-androideabi [ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9 diff --git a/project/jni/application/setEnvironment-mips.sh b/project/jni/application/setEnvironment-mips.sh index 287d82d14..27d85e13e 100755 --- a/project/jni/application/setEnvironment-mips.sh +++ b/project/jni/application/setEnvironment-mips.sh @@ -18,8 +18,6 @@ NDK=`which ndk-build` NDK=`dirname $NDK` NDK=`readlink -f $NDK` -grep "64.bit" "$NDK/RELEASE.TXT" >/dev/null 2>&1 && MYARCH="${MYARCH}_64" - #echo NDK $NDK GCCPREFIX=mipsel-linux-android [ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9 diff --git a/project/jni/application/setEnvironment-x86.sh b/project/jni/application/setEnvironment-x86.sh index e6862409c..f9a9fa91e 100755 --- a/project/jni/application/setEnvironment-x86.sh +++ b/project/jni/application/setEnvironment-x86.sh @@ -18,8 +18,6 @@ NDK=`which ndk-build` NDK=`dirname $NDK` NDK=`readlink -f $NDK` -grep "64.bit" "$NDK/RELEASE.TXT" >/dev/null 2>&1 && MYARCH="${MYARCH}_64" - #echo NDK $NDK GCCPREFIX=i686-linux-android [ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9 diff --git a/project/jni/application/setEnvironment.sh b/project/jni/application/setEnvironment.sh index f4976d1ee..8b51f02c5 100755 --- a/project/jni/application/setEnvironment.sh +++ b/project/jni/application/setEnvironment.sh @@ -18,8 +18,6 @@ NDK=`which ndk-build` NDK=`dirname $NDK` NDK=`readlink -f $NDK` -grep "64.bit" "$NDK/RELEASE.TXT" >/dev/null 2>&1 && MYARCH="${MYARCH}_64" - #echo NDK $NDK GCCPREFIX=arm-linux-androideabi [ -z "$NDK_TOOLCHAIN_VERSION" ] && NDK_TOOLCHAIN_VERSION=4.9 From bcfd019efec3e1b755b357cdd97ab36290583179 Mon Sep 17 00:00:00 2001 From: Sergii Pylypenko Date: Wed, 16 Mar 2016 20:18:41 +0200 Subject: [PATCH 4/6] Added bochs submodule --- .gitmodules | 3 +++ project/jni/application/bochs/.gitignore | 1 + project/jni/application/bochs/AndroidAppSettings.cfg | 1 + project/jni/application/bochs/AndroidBuild.sh | 1 + project/jni/application/bochs/AndroidData | 1 + project/jni/application/bochs/bochs | 1 + project/jni/application/bochs/icon.png | 1 + todo.txt | 2 +- 8 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 project/jni/application/bochs/.gitignore create mode 120000 project/jni/application/bochs/AndroidAppSettings.cfg create mode 120000 project/jni/application/bochs/AndroidBuild.sh create mode 120000 project/jni/application/bochs/AndroidData create mode 160000 project/jni/application/bochs/bochs create mode 120000 project/jni/application/bochs/icon.png diff --git a/.gitmodules b/.gitmodules index 66b3fa917..8cb714ad2 100644 --- a/.gitmodules +++ b/.gitmodules @@ -71,3 +71,6 @@ [submodule "project/jni/application/xserver/pulseaudio"] path = project/jni/application/xserver/pulseaudio url = git@github.com:pelya/pulseaudio-android.git +[submodule "project/jni/application/bochs/bochs"] + path = project/jni/application/bochs/bochs + url = git@github.com:lubomyr/bochs.git diff --git a/project/jni/application/bochs/.gitignore b/project/jni/application/bochs/.gitignore new file mode 100644 index 000000000..a70e5d2a6 --- /dev/null +++ b/project/jni/application/bochs/.gitignore @@ -0,0 +1 @@ +/*.so diff --git a/project/jni/application/bochs/AndroidAppSettings.cfg b/project/jni/application/bochs/AndroidAppSettings.cfg new file mode 120000 index 000000000..6a48054af --- /dev/null +++ b/project/jni/application/bochs/AndroidAppSettings.cfg @@ -0,0 +1 @@ +bochs/android/bochs/AndroidAppSettings.cfg \ No newline at end of file diff --git a/project/jni/application/bochs/AndroidBuild.sh b/project/jni/application/bochs/AndroidBuild.sh new file mode 120000 index 000000000..bb9455efc --- /dev/null +++ b/project/jni/application/bochs/AndroidBuild.sh @@ -0,0 +1 @@ +bochs/android/bochs/AndroidBuild.sh \ No newline at end of file diff --git a/project/jni/application/bochs/AndroidData b/project/jni/application/bochs/AndroidData new file mode 120000 index 000000000..63de56800 --- /dev/null +++ b/project/jni/application/bochs/AndroidData @@ -0,0 +1 @@ +bochs/android/bochs/AndroidData \ No newline at end of file diff --git a/project/jni/application/bochs/bochs b/project/jni/application/bochs/bochs new file mode 160000 index 000000000..708b76591 --- /dev/null +++ b/project/jni/application/bochs/bochs @@ -0,0 +1 @@ +Subproject commit 708b765915235f3cfed51d0d67892b22343e7228 diff --git a/project/jni/application/bochs/icon.png b/project/jni/application/bochs/icon.png new file mode 120000 index 000000000..17bdbb5c3 --- /dev/null +++ b/project/jni/application/bochs/icon.png @@ -0,0 +1 @@ +bochs/android/bochs/icon.png \ No newline at end of file diff --git a/todo.txt b/todo.txt index 937779faf..f6937ea8f 100644 --- a/todo.txt +++ b/todo.txt @@ -7,7 +7,7 @@ TODO, which will get actually done - TeeWorlds: aiming with gyroscope. -- OpenArena: fix aiming angles jumping at random after the first zoom and after respawn, publish to Android TV. +- OpenArena: publish to Android TV. - OpenArena: fix VR mode, add settings for eye separation and focus angle. From 751a7a3cae7f1990262cdf6ba18b134af3d8bf16 Mon Sep 17 00:00:00 2001 From: Sergii Pylypenko Date: Wed, 16 Mar 2016 21:59:15 +0200 Subject: [PATCH 5/6] SDL: better menu to edit commandline parameters --- project/java/SettingsMenu.java | 1 + project/java/SettingsMenuMisc.java | 75 +++++++++++++++++------------ project/jni/application/bochs/bochs | 2 +- project/jni/sdl_main/sdl_main.c | 6 +++ 4 files changed, 51 insertions(+), 33 deletions(-) diff --git a/project/java/SettingsMenu.java b/project/java/SettingsMenu.java index c0a8705f0..c1ceddf12 100644 --- a/project/java/SettingsMenu.java +++ b/project/java/SettingsMenu.java @@ -247,6 +247,7 @@ class SettingsMenu new SettingsMenuKeyboard.RemapHwKeysConfig(), new SettingsMenuKeyboard.ScreenGesturesConfig(), new SettingsMenuMisc.VideoSettingsConfig(), + new SettingsMenuMisc.CommandlineConfig(), new SettingsMenuMisc.ResetToDefaultsConfig(), new OkButton(), }; diff --git a/project/java/SettingsMenuMisc.java b/project/java/SettingsMenuMisc.java index 521ca44b6..db950bd23 100644 --- a/project/java/SettingsMenuMisc.java +++ b/project/java/SettingsMenuMisc.java @@ -74,6 +74,7 @@ import android.hardware.SensorEventListener; import android.hardware.SensorEvent; import android.hardware.Sensor; import android.widget.Toast; +import android.text.InputType; class SettingsMenuMisc extends SettingsMenu @@ -148,38 +149,6 @@ class SettingsMenuMisc extends SettingsMenu { Globals.DataDir = edit.getText().toString(); dialog.dismiss(); - showCommandLineConfig(p); - } - }); - builder.setOnCancelListener(new DialogInterface.OnCancelListener() - { - public void onCancel(DialogInterface dialog) - { - goBack(p); - } - }); - AlertDialog alert = builder.create(); - alert.setOwnerActivity(p); - alert.show(); - } - static void showCommandLineConfig(final MainActivity p) - { - AlertDialog.Builder builder = new AlertDialog.Builder(p); - builder.setTitle(p.getResources().getString(R.string.storage_commandline)); - - final EditText edit = new EditText(p); - edit.setFocusableInTouchMode(true); - edit.setFocusable(true); - edit.setText(Globals.CommandLine); - builder.setView(edit); - - builder.setPositiveButton(p.getResources().getString(R.string.ok), new DialogInterface.OnClickListener() - { - public void onClick(DialogInterface dialog, int item) - { - Globals.CommandLine = edit.getText().toString(); - dialog.dismiss(); - goBack(p); } }); builder.setOnCancelListener(new DialogInterface.OnCancelListener() @@ -569,6 +538,48 @@ class SettingsMenuMisc extends SettingsMenu } } + static class CommandlineConfig extends Menu + { + String title(final MainActivity p) + { + return p.getResources().getString(R.string.storage_commandline); + } + void run (final MainActivity p) + { + AlertDialog.Builder builder = new AlertDialog.Builder(p); + builder.setTitle(p.getResources().getString(R.string.storage_commandline)); + + final EditText edit = new EditText(p); + edit.setFocusableInTouchMode(true); + edit.setFocusable(true); + edit.setText(Globals.CommandLine.replace(" ", "\n").replace(" ", " ")); + edit.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS); + edit.setMinLines(2); + //edit.setMaxLines(100); + builder.setView(edit); + + builder.setPositiveButton(p.getResources().getString(R.string.ok), new DialogInterface.OnClickListener() + { + public void onClick(DialogInterface dialog, int item) + { + Globals.CommandLine = edit.getText().toString().replace(" ", " ").replace("\n", " "); + dialog.dismiss(); + goBack(p); + } + }); + builder.setOnCancelListener(new DialogInterface.OnCancelListener() + { + public void onCancel(DialogInterface dialog) + { + goBack(p); + } + }); + AlertDialog alert = builder.create(); + alert.setOwnerActivity(p); + alert.show(); + } + } + static class ResetToDefaultsConfig extends Menu { String title(final MainActivity p) diff --git a/project/jni/application/bochs/bochs b/project/jni/application/bochs/bochs index 708b76591..b8c3ab277 160000 --- a/project/jni/application/bochs/bochs +++ b/project/jni/application/bochs/bochs @@ -1 +1 @@ -Subproject commit 708b765915235f3cfed51d0d67892b22343e7228 +Subproject commit b8c3ab2779e8e29ce5156eae589070a56d100a0c diff --git a/project/jni/sdl_main/sdl_main.c b/project/jni/sdl_main/sdl_main.c index 66619aabb..310e62ef5 100644 --- a/project/jni/sdl_main/sdl_main.c +++ b/project/jni/sdl_main/sdl_main.c @@ -129,6 +129,12 @@ JAVA_EXPORT_NAME(DemoRenderer_nativeInit) ( JNIEnv* env, jobject thiz, jstring } } + for (i = 0; i < argc; i++) + { + while( strchr(argv[i], '\t') != NULL ) + strchr(argv[i], '\t')[0] = ' '; + } + __android_log_print(ANDROID_LOG_INFO, "libSDL", "Calling SDL_main(\"%s\")", str); (*env)->ReleaseStringUTFChars(env, cmdline, jstr); From d0be1c1ce16d4f2f766b9be85ce00c9e1ac320a6 Mon Sep 17 00:00:00 2001 From: Sergii Pylypenko Date: Wed, 16 Mar 2016 22:48:13 +0200 Subject: [PATCH 6/6] SDL: truncate .obb file if Google Play downloads it again, happens all the time during updates --- project/java/DataDownloader.java | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/project/java/DataDownloader.java b/project/java/DataDownloader.java index ef78fa037..a66b417e7 100644 --- a/project/java/DataDownloader.java +++ b/project/java/DataDownloader.java @@ -265,6 +265,20 @@ class DataDownloader extends Thread if( ! matched ) throw new IOException(); Status.setText( res.getString(R.string.download_unneeded) ); + for( int i = 1; i < downloadUrls.length; i++ ) + { + if( downloadUrls[i].indexOf("obb:") == 0 ) // APK expansion file provided by Google Play + { + String url = getObbFilePath(downloadUrls[i]); + if (new File(url).length() > 256) + { + Writer writer = new OutputStreamWriter(new FileOutputStream(url), "UTF-8"); + writer.write("Extracted and truncated\n"); + writer.close(); + Log.i("SDL", "Truncated file from expansion: " + url); + } + } + } return true; } catch ( IOException e ) { forceOverwrite = true; @@ -322,9 +336,7 @@ class DataDownloader extends Thread Status.setText( downloadCount + "/" + downloadTotal + ": " + res.getString(R.string.connecting_to, url) ); if( url.indexOf("obb:") == 0 ) // APK expansion file provided by Google Play { - url = url.substring("obb:".length()); - url = Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/obb/" + - Parent.getPackageName() + "/" + url + "." + Parent.getPackageName() + ".obb"; + url = getObbFilePath(url); InputStream stream1 = null; try { stream1 = new FileInputStream(url); @@ -764,7 +776,13 @@ class DataDownloader extends Thread { return outFilesDir + "/" + filename; }; - + + private String getObbFilePath(final String url) + { + return Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/obb/" + + Parent.getPackageName() + "/" + url.substring("obb:".length()) + "." + Parent.getPackageName() + ".obb"; + } + private static DefaultHttpClient HttpWithDisabledSslCertCheck() { return new DefaultHttpClient();