Commit Graph

372 Commits

Author SHA1 Message Date
Aaron Culliney
7607126f7c Avoid resetting joystick buttons too soon (to allow for ClosedApple-Reset to trigger) 2016-04-17 12:51:23 -07:00
Aaron Culliney
76f29d0865 Allow emulator shutdown state to be queried as needed 2016-04-17 12:18:48 -07:00
Aaron Culliney
3ed159dd0b Lightly refactor joystick and button handling during reset
- Remove unused button2 variable
    - Remake little-used backend joystick reset function as function pointer
    - Allow soft reset and self-test on Android (although there is still a race condition due to code that directly sets
      joy_button[12] values
2016-04-17 11:42:13 -07:00
Aaron Culliney
04f22686fa Do not hide touchmenu for portrait calibration 2016-04-13 21:22:26 -07:00
Aaron Culliney
fd7578a862 Always show touch joystick azimuth (if we're rendering the joystick axis) 2016-04-13 19:50:03 -07:00
Aaron Culliney
2a405f028f Streamline and fix test codepaths on Desktop Linux and Android 2016-04-13 19:33:08 -07:00
Aaron Culliney
9c1cfedf7d Fix some envvars on Android 2016-04-12 22:16:01 -07:00
Aaron Culliney
db816ad502 Refactor Android variant to use common shared JSON preferences
- Eliminates a whole bunch of boilerplate setter/getter code in various places
    - Accesses preferences directly from JSON data through custom json_parse.h API
    - Improves code locality for Java menus/settings
2016-04-11 22:01:30 -07:00
Aaron Culliney
b87273e742 Expand coverage of heap memory checking of debug builds and simplify FREE() calls 2016-02-26 21:26:57 -08:00
Aaron Culliney
b5dfd86310 Changes insited upon by Android Studio 2016-02-23 00:10:41 -08:00
Aaron Culliney
3120b75e00 Enforce module ctor priorities 2016-02-22 22:41:37 -08:00
Aaron Culliney
c5ed0bb5c6 Switch Android toolchain to stable Clang 2016-02-20 13:48:00 -08:00
Aaron Culliney
44b9c4c408 Bump Android version to 1.1.7 2016-02-20 13:39:59 -08:00
Aaron Culliney
03930d6acb Add missing (nontranslated) strings to get release build "lint" check passing
- Sweeps the problem under the rug, but contributions from native speakers are always welcome =)
2016-02-20 11:59:57 -08:00
Aaron Culliney
15d64cf24e Render thread will actually eject the disks through emulator_shutdown() 2016-02-20 11:09:24 -08:00
Aaron Culliney
dcbf1ace18 Remove an assertion that can be wrong if user is spamming app lifecycle backgrounding/foregrounding
- Unlikely to be a real problem if CPU thread is not paused when we are initializing the render thread
2016-02-20 11:07:29 -08:00
Aaron Culliney
89d12ce29d Misc fixes for Android portrait/landscape mode settings 2016-02-15 14:10:29 -08:00
Aaron Culliney
545376b1be Improve testcpu on desktop and fix it on Android 2016-02-15 13:32:05 -08:00
Aaron Culliney
829291feba Refactor all drawing to run on video thread in one scanner pass
- Moves extra work off CPU/audio thread
    - Prepares the way to possibly remove the vestigal intermediate indexed framebuffer and do direct RGBA_8888 writes
      to XImage or OpenGL texture
    - Prepares the ground for possible better emulation of video scanner hardware

Conflicts:
	src/display.c
	src/video/glvideo.c
	src/video/video.h
2016-02-15 13:29:58 -08:00
Aaron Culliney
bd9b38cd65 Allow calibration of portrait mode on Android 2016-02-14 20:40:51 -08:00
Aaron Culliney
261ae2efae Refactor to not use video_backend in so many places 2016-02-07 14:42:32 -08:00
Aaron Culliney
5fec80a33a Refactor video_shutdown() to appease Valgrind
- This likely breaks Darwin ports ... will fix soon[ish]
2016-02-07 14:42:28 -08:00
Aaron Culliney
edaae0bc89 Refactor glvideo to be the root glnode, begin to privatize video_backend APIs 2016-02-07 14:42:16 -08:00
Aaron Culliney
51fb905260 Upgrade Android Studio stuff-n-things 2016-02-07 13:20:15 -08:00
Aaron Culliney
c5298eb6f0 Mockingboard is now default enabled on Android ... temporarily force this upgrade in version 16 2016-01-30 14:46:03 -08:00
Aaron Culliney
1358a52eee Add but disable CPU trace on Android 2016-01-24 09:47:57 -08:00
Aaron Culliney
dfbccaeb7f Changes insisted upon by new AndroidStudio 2016-01-23 13:08:44 -08:00
Aaron Culliney
c6503021c2 Bump Android version to 1.1.6 2016-01-09 22:45:48 -08:00
Aaron Culliney
b2824e9145 Improve tap responsiveness in GL touch joystick 2016-01-08 00:28:57 -08:00
Aaron Culliney
9bbfca3193 Take into account device screen small axis when calculating button switch threshold 2016-01-07 22:41:50 -08:00
Aaron Culliney
94882c48bc Send app version in crash report 2016-01-05 20:58:57 -08:00
Aaron Culliney
40129d9a14 Bump Android version to 1.1.5 2016-01-04 20:41:46 -08:00
Aaron Culliney
0b7f3a75b5 deal with short writes 2016-01-04 20:33:35 -08:00
Aaron Culliney
0bb0df0960 Support building Android version in release mode (without -g and with -DNDEBUG=1) 2016-01-03 13:59:52 -08:00
Aaron Culliney
64338d30c3 German translation from Guido Lehwalder 2016-01-03 13:50:55 -08:00
Aaron Culliney
bda8efeb45 Slight tweak to custom keyboard 2016-01-03 13:09:57 -08:00
Aaron Culliney
c89ee87bd4 Tweak heuristic calculation of when to use 2x glyphs 2016-01-03 12:58:12 -08:00
Aaron Culliney
d8fc04ec2e Expose ability to set azimuth visibility on Android 2016-01-03 12:49:23 -08:00
Aaron Culliney
42feeb1bd3 Remove new English strings
- Native speakers are encouraged to send me a pull req for these ;-)
2016-01-03 12:48:01 -08:00
Aaron Culliney
c2014e2cde Add simple display of touch joystick azimuth 2016-01-03 12:36:13 -08:00
Aaron Culliney
2ec88ad433 Iterate on GLTouchJoystick
- Use smaller models/textures
    - Slightly change the joystick/kpad glyphs
2016-01-02 15:08:06 -08:00
Aaron Culliney
b59672815f Allow setting keyboard and HUD menu glyph scale 2016-01-02 00:14:21 -08:00
Aaron Culliney
904d89aff8 Get touch menu min/max alpha matching touch keyboard 2016-01-01 21:38:35 -08:00
Aaron Culliney
39c654ae9d Simplify and coalesce touch menu settings into keyboard settings for now 2016-01-01 21:35:49 -08:00
Aaron Culliney
b1cbe44a05 Placeholder menu strings 2016-01-01 19:58:46 -08:00
Aaron Culliney
abae59767c Enable simple heap memory fencing/scribbling in debug builds 2015-12-31 22:50:43 -08:00
Aaron Culliney
fce1f010b0 Bump Android version to 1.1.4 2015-12-28 19:01:34 -08:00
Aaron Culliney
20278ca91e Migration to 1.1.3+ should remove disks that were excised 2015-12-24 22:17:29 -08:00
Aaron Culliney
b996083a42 tweaks for Spanish localizations 2015-12-24 21:12:24 -08:00
Aaron Culliney
3e777477e2 Wish profuse apologies to native speakers, first cut at Spanish translation 2015-12-22 21:54:18 -08:00
Aaron Culliney
4d9eda4862 Work around another UI race exposed by NVIDIA Shield Portable 2015-12-22 21:53:14 -08:00
Aaron Culliney
4deedb2215 Move main menu dialog code into Apple2MainMenu 2015-12-20 16:45:59 -08:00
Aaron Culliney
bf3ef3ae18 GZIP the supplied disk images to help cut down on app space 2015-12-20 15:18:09 -08:00
Aaron Culliney
abe1346051 Remove unused method 2015-12-20 15:04:06 -08:00
Aaron Culliney
145b6a6cef Refactor JNI plumbing for consistency 2015-12-20 12:54:27 -08:00
Aaron Culliney
22b1bc9ad8 Move key handling back to the Activity, otherwise we don't seem to receive onKeyUp() for the Android back button 2015-12-20 12:11:12 -08:00
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
13de08f8cb map L1 and R1 keys to joy buttons 2015-12-19 23:13:44 -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
1e573c34ad Meager support for Android joystick/gamepad keys 2015-12-19 13:14:46 -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
a1fbc63f98 Semi-inscrutible changes insisted upon by Android Studio 2015-12-19 12:59:40 -08:00
Aaron Culliney
c7c209907b Allow for keyboard to completely own/cover screen
- Includes updated alternate/custom keyboards
2015-12-19 12:56:24 -08:00
Aaron Culliney
72fb577166 Update misc Android assets 2015-12-16 22:14:29 -08:00
Aaron Culliney
2c8284d41f Start running tests on Android after first resume
- This allows for a more consistent test environment (test disks copied out of APK and available, etc) and also
      mimics main app behavior
2015-12-16 20:59:20 -08:00
Aaron Culliney
870a24ced6 Fix test compilation on Android 2015-12-15 22:24:43 -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
651ac246e3 Flush disk IO on backgrounding 2015-12-11 23:42:57 -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
ad7902b41f First cut at Moebius keyboard
- Takes a bit getting used to, but I successfully completed Earth level employing finger-muscle-memory strategies
      from the '80s ;-)
2015-12-07 23:05:03 -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
e1629095b6 Get crash symbolication working for x86 build 2015-11-29 14:35:01 -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
ad5a6e8061 Get NDK debugging working from script: './apple2ix debug' 2015-11-10 22:08:32 -08:00
Aaron Culliney
e4c669f016 x86 builds and basically works on Android x86 devices 2015-11-09 22:45:52 -08: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
456f9a14e4 Build PIC without relocations in TEXT section 2015-11-08 21:11:03 -08:00
Aaron Culliney
e9bae19e9e Bump Android version to 1.0.3 2015-11-04 21:15:12 -08:00