Commit Graph

98 Commits

Author SHA1 Message Date
Aaron Culliney
e161dce3c2 Make app shutdown happen on the GL thread to avoid crashing 2015-10-04 13:39:57 -07:00
Aaron Culliney
d93a91cca8 Tests build and run on Desktop Linux and Android 2015-10-04 13:29:17 -07:00
Aaron Culliney
e6a1182c32 Unstick make clean 2015-10-04 11:02:57 -07:00
Aaron Culliney
7f32e14a6e Compile against android-10 while we still care about Gingerbread ... nom nom nom 2015-09-27 15:04:10 -07:00
Aaron Culliney
286012c991 Blow up early, blow up often
- Expose and trigger a link error with getpagesize() on Gingerbread devices if we have built the software
      incorrectly.
2015-09-27 14:30:20 -07:00
Aaron Culliney
b5de4222c3 Handle Java exceptions within Java to the best of our ability 2015-09-27 13:30:16 -07:00
Aaron Culliney
d90b523440 process crashes in-situ on Android device 2015-09-26 15:20:54 -07:00
Aaron Culliney
88be6086a2 Refactor crash testing/reports into separate class/files 2015-09-26 15:16:30 -07:00
Aaron Culliney
a20b2461b5 Include native symbolication information in APK assets 2015-09-26 15:00:07 -07:00
Aaron Culliney
ad2dbd54b0 Android architecture globals 2015-09-26 14:58:09 -07:00
Aaron Culliney
a6397b22d2 Code to test/exercise Android Breakpad crash handler 2015-09-19 14:52:05 -07:00
Aaron Culliney
79613b49fb Roll back to slightly older target Sdk for sanity 2015-09-19 13:13:11 -07:00
Aaron Culliney
b8921b8441 Integrate Breakpad crash dumper and tools into Android build
- Includes Linux x86_64 binaries dump_syms and minidump_stackwalk
    - Includes adb_sanitize.c tool (gcc -std=gnu11 -o adb_sanitize adb_sanitize.c) for easily pulling local minidumps
2015-09-19 13:11:27 -07:00
Aaron Culliney
43fa597e7d Flip-flopping again on NDK build script options-n-things 2015-09-18 23:05:04 -07:00
Aaron Culliney
ba0b0505e3 Minor nit ... name change 2015-09-18 23:04:30 -07:00
Aaron Culliney
5dadc922fd Simplify mobile lifecycle at the expense of holding onto audio resources
- This does not seem to be a problem with both modern and older Gingerbread devices
2015-09-13 14:24:17 -07:00
Aaron Culliney
f343ad9dbd Get Mockingboard working somewhat better 2015-09-13 12:43:34 -07:00
Aaron Culliney
b2cb35c182 Lifecycle tweaks that get Android building again 2015-09-12 15:33:22 -07:00
Aaron Culliney
bc5559c1b0 Allow graphics thread to self-shutdown to avoid segfault on exit 2015-09-08 23:12:20 -07:00
Aaron Culliney
9c98745099 Remove unnecessary call to pump key handling codepath 2015-09-07 11:08:43 -07:00
Aaron Culliney
fa91a2806d Get testing working on Android again 2015-09-06 23:43:26 -07:00
Aaron Culliney
2c97f7af19 Excise HEADLESS ... it was only being used by testcpu 2015-09-06 17:14:38 -07:00
Aaron Culliney
7d4b63e12d Refactor : move reinitialize() to timing module and make static (mostly) 2015-09-06 14:05:18 -07:00
Aaron Culliney
8666ca3603 Common baseline for CLI and Android Studio builds
- CLI is still super useful for GDB debugging and running emulator testcases
    - Possibly this maintenance of two build systems can all go away when Android Studio has better NDK support
2015-09-05 14:40:44 -07:00
Aaron Culliney
c3702c54b5 Remove build variants because they are confusing and incompatible with CLI ant builds which I still want to maintain 2015-09-05 14:08:21 -07:00
Aaron Culliney
e4a849e6ae Allow choosing alternate keyboard.kbd.json file from /sdcard (or internal dataDir) 2015-08-28 22:23:43 -07:00
Aaron Culliney
59cb3e49f9 Enable various GL Touch Keyboard settings 2015-08-23 11:42:45 -07:00
Aaron Culliney
ebe7f82f22 Persist settings for currently inserted disks, and provide a way to eject disks 2015-08-22 14:44:31 -07:00
Aaron Culliney
5df1e2400e Add ability to hide joystick controls overlay 2015-08-22 11:05:18 -07:00
Aaron Culliney
704c381ea8 Logging should automatically print function 2015-08-21 23:43:19 -07:00
Aaron Culliney
3f934ecd3f Fix cycling between different touch devices in the GL touch menu 2015-08-21 23:33:08 -07:00
Aaron Culliney
d2b526783a Improve joystick calibration modes and keypad menus 2015-08-21 20:34:19 -07:00
Aaron Culliney
5c3791f5dc Refactor GL Touch Joystick (PART I Native changes)
- Move touch-handling code for "regular" touch joystick into separate file
    - Add new touch-handling code for "keypad" touch joystick.  This is a somewhat complex state-machine to determine
      which key to press depending on a full keypad rosette.
    - Adds a callback to vm.c to hook into keyboard read callback.  Allows us to immediately queue the next key if the
      keypad touch joystick is long-pressed for either axis or button keys.
2015-08-18 21:59:41 -07:00
Aaron Culliney
7344cadfbd More joystick settings including calibration mode 2015-08-02 14:29:34 -07:00
Aaron Culliney
324d900c35 First cut at Android touch joystick configuration 2015-08-01 17:33:29 -07:00
Aaron Culliney
92f4f698db Actually change the cpu timing 2015-07-31 20:30:30 -07:00
Aaron Culliney
0d658932b6 Expose particular settings back to Android so we can persist the values 2015-07-30 23:12:00 -07:00
Aaron Culliney
0bc8869627 nativeOnTouch() now returns various state flags
- Allows playing of a key click sound if a keyboard item tapped
    - Improves stovepiping the native request to show the Android main menu
2015-07-30 22:05:21 -07:00
Aaron Culliney
7067d10949 Android touch menu configurations 2015-07-28 22:22:25 -07:00
Aaron Culliney
25b9f3d3f3 Android lifecycle cleanups
- Differentiate between cpu_pause() when going to menu (and app is still foregrounded, and cpu_pauseBackground()
      when a system backgrounding event has occurred.
    - Destroy/free audio resources owned by CPU thread when background is requested, put CPU thread into waiting upon
      pthread condition to resume.
    - Mobile device now always signals pthread condition to force CPU thread resume from background
2015-07-27 22:36:39 -07:00
Aaron Culliney
a0cadc83c6 Refactor timing locking behavior
- Do not start CPU thread until after splash screen
    - Insure that only CPU thread can actually create/destroy the audio interfaces
2015-07-26 13:48:24 -07:00
Aaron Culliney
fcd367bd9e Moar Android configuration menus 2015-07-25 14:51:37 -07:00
Aaron Culliney
36baaa04d5 Allow dynamic configuration of audio latency
- This allows for user-configured device-specific tuning (which makes sense in the Android world with 10,000+
      different devices out there ;-)
2015-07-25 12:57:16 -07:00
Aaron Culliney
37a8985f79 First cut at audio settings menu 2015-07-24 22:39:46 -07:00
Aaron Culliney
a60ffb8eb9 Beginning of Android persistent settings 2015-07-21 21:38:28 -07:00
Aaron Culliney
87d7d8a115 Compile Android variant with optimization and debugging symbols 2015-07-12 15:38:28 -07:00
Aaron Culliney
7ca4a2646d Optimize video drawing and API cleanup
- Enforces synchronized access to video dirty bit
2015-07-12 14:13:13 -07:00
Aaron Culliney
da301ded7c Android build tweaks
- Build in ARM mode, not Thumb mode (cpu.S is written in common ARM dialect)
    - Include various ABIs (phat APK)
2015-07-12 13:12:44 -07:00
Aaron Culliney
5f4bf6b1a7 Use single buffer queue callback for OpenSLES/Android
- OpenSLES Callback now performs simple mix of 2 sources (speaker and mockingboard)
    - Avoids multiple callbacks which was a performance penalty especially for low-end droids
2015-07-12 12:59:49 -07:00
Aaron Culliney
66978056c9 Build system tweaks 2015-07-07 21:40:48 -07:00