Commit Graph

178 Commits

Author SHA1 Message Date
Aaron Culliney
2f7f7bd359 Preliminary support for mapping an Android physical gamepad/joystick to emulated Apple //e joystick
- No support for custom joystick/gamepad configurations (yet)
2015-12-19 23:59:02 -08:00
Aaron Culliney
7dd0f0b3cf Avoid another UI race exposed by NVIDIA Shield Portable
- Use AtomicBoolean to avoid spurious extra taps/clicks/presses
2015-12-19 23:24:45 -08:00
Aaron Culliney
3ff877d80c Refactor : move event handling into custom view 2015-12-19 23:13:52 -08:00
Aaron Culliney
1d248c5e22 Whitespace and style changes 2015-12-19 23:13:33 -08:00
Aaron Culliney
e5e2f98835 Avoid nasty UI race manifesting on NVIDIA Shield Portable
- For some reason this device has really slow Java UI, so it exposed a case where spammy touch resulted in two
      save/restore popups and a subsequent assert on the native side if you saved while the emulation was resumed.
2015-12-19 23:12:05 -08:00
Aaron Culliney
e165da72fc Explicitly not supporting older joystick devices 2015-12-19 13:14:10 -08:00
Aaron Culliney
1c50d12963 Source InputManager from AOSP 2015-12-19 13:08:48 -08:00
Aaron Culliney
836044c80b Bump Android version to 1.1.3 2015-12-13 22:48:29 -08:00
Aaron Culliney
f34cf4c384 Band-aid for joystick state corruption after foregrounding 2015-12-13 12:44:03 -08:00
Aaron Culliney
2a51a62127 Avoid NPE when external storage is unavailable 2015-12-13 12:09:49 -08:00
Aaron Culliney
b32a97b6fc Slightly better translation via @stef-pellegrino 2015-12-12 14:50:41 -08:00
Aaron Culliney
6cef33b501 Request and handle external storage permissions on Marshmallow
- Also disentangles exposing APK assets internally and on external storage
2015-12-12 13:38:22 -08:00
Aaron Culliney
ac78e00afa Alter UI only on UI thread 2015-12-12 13:29:50 -08:00
Aaron Culliney
b1b55006be Resetting preferences will also quit to re-trigger any migration code 2015-12-12 13:20:47 -08:00
Aaron Culliney
a761c11382 First cut at support for Android versioning and data migrations 2015-12-12 12:09:14 -08:00
Aaron Culliney
d819220a07 Pass Apple2Activity to out getExternalStorageDirectory() function 2015-12-12 12:03:41 -08:00
Aaron Culliney
22914de79c Enable setting to show/hide disk read/write HUD messages 2015-12-12 12:01:41 -08:00
Aaron Culliney
cdb0f7b06b Shunt disk-state-change information back to the Java/Android menu system 2015-12-12 11:42:33 -08:00
Aaron Culliney
05cb322feb Bump Android version to 1.1.2 2015-12-09 22:46:22 -08:00
stef-pellegrino
791bb91843 French version 2015-12-09 19:55:37 -08:00
Aaron Culliney
b48cfa2084 First cut at French translation for Android (blame Google for this one ;-) 2015-12-08 22:36:10 -08:00
Aaron Culliney
d96db51bd2 Clarify and clean up a number of settings 2015-12-08 22:35:59 -08:00
Aaron Culliney
2e100c9b67 Remove a bunch of unused string resources 2015-12-08 20:46:22 -08:00
Aaron Culliney
74c951f64f Bump Android version to 1.1.1 2015-12-04 23:10:47 -08:00
Aaron Culliney
c7250d860f Send SDK version in crash reports 2015-11-29 21:31:23 -08:00
Aaron Culliney
0d74d21608 Bump Android version to 1.1.10 2015-11-29 14:41:54 -08:00
Aaron Culliney
12b2103a56 Condense reboot/quit main menu item into one popup
- This works better on lo-res devices (ahem, Galaxy Y) and I'd rather not iterate too much on the Java menus for now
      since they appear to be basically working =P
2015-11-25 23:13:43 -08:00
Aaron Culliney
b9d6d38b17 First cut at save/restore emulator state feature
- This adds to overall UX ... (you can finally finish some very difficult arcade games by strategically leveraging
      this feature)
    - Currently enabled for Android, but not Android-specific
2015-11-22 18:22:01 -10:00
Aaron Culliney
3bdbe50f0f Bump Android version to 1.0.4 2015-11-08 22:03:22 -08:00
Aaron Culliney
0cefd912b5 Build against API 23 now that text relocs appear to be solved 2015-11-08 21:13:13 -08:00
Aaron Culliney
e9bae19e9e Bump Android version to 1.0.3 2015-11-04 21:15:12 -08:00
Aaron Culliney
bc96417091 DO NOT use API 23 yet ... we need to fix text relocations first!
- This prevents crashing on Marshmallow (for the time being)
2015-11-04 20:03:28 -08:00
Aaron Culliney
fb4d6f466b Splash screen is not dismissable during first time initialization or crash reporting 2015-11-03 22:47:35 -08:00
Aaron Culliney
a6ac111707 lightly refactor two-phase first-time launch 2015-11-03 22:42:24 -08:00
Aaron Culliney
d0319bd2ff Splash screen may be dismissable (or not) 2015-11-03 22:41:50 -08:00
Aaron Culliney
871762975a Bump Android version to 1.0.2 2015-11-01 22:03:39 -08:00
Aaron Culliney
646d64cd92 Don't forget to clean up crash spam ;-) 2015-11-01 19:33:39 -08:00
Aaron Culliney
6de1cae478 Move nativeOnCreate back to proper position as first native call
- This runs discovery of CPU family
    - This sets up native crash handling
2015-11-01 19:26:34 -08:00
Aaron Culliney
4999471ade Work around black screen if someone went to joystick calibration from splash screen 2015-11-01 14:19:40 -08:00
Aaron Culliney
933e99c927 Bugfix Gingerbread GLSurfaceView lifecycle 2015-11-01 14:17:10 -08:00
Aaron Culliney
9a2044f75e Apparently not possible to query this early on Gingerbread devices 2015-11-01 13:43:09 -08:00
Aaron Culliney
3d634004cf Avoid reinitializing preferences every resume of GLView 2015-11-01 13:42:05 -08:00
Aaron Culliney
bf54615198 Refactor menu ownership and dismissal
- Fix incorrect iteration in dismissAll() that could lead to restarting CPU too early
    - Semi-lazy-loaded Apple2MainMenu (which depends on GLSurfaceView/Apple2View as main content) no longer owns
      Apple2SettingsMenu and Apple2DisksMenu
2015-11-01 12:44:31 -08:00
Aaron Culliney
521d1daccf Refactor app startup
- Make sure crash checking is performed as early as possible
    - Minimize calling complex native functions until after splash screen is dimissed
    - Do not attempt to setup/resume OpenGL until after splash screen is dimissed
2015-11-01 10:14:40 -08:00
Aaron Culliney
6c959a030c Remove unused public methods 2015-10-31 14:03:53 -07:00
Aaron Culliney
acdc8da64f Refactor pause/resume functions to be strictly CPU thread pause/resume 2015-10-31 14:01:47 -07:00
Aaron Culliney
e52f753bf3 Remove commented code 2015-10-31 10:35:24 -07:00
Aaron Culliney
d4adabda93 SNEAKY BUGFIX race condition between UI thread and CPU thread on disk insertion
- Previously we would start the CPU thread and then insert, which has been a long standing race condition, but
      possibly better exposed since the recent disk.c rephactor to use mmap I/O
    - This directly manifested on a Kindle Fire 1st Gen as a crash, and, anecdotally on other devices as a "stalled"
      disk read requiring a reboot of the virtual machine.  Yay for crappy devices helping to expose crappy code! (git
      blame me). =P
2015-10-30 23:19:33 -07:00
Aaron Culliney
5c4ab06612 Hopefully improve crash reporting on older devices by sending a crash summary (possibly in addition to the attachment) 2015-10-30 00:13:14 -07:00
Aaron Culliney
dcd77a4650 Allow and gracefully handle case when external files directory is null 2015-10-28 23:52:54 -07:00