Commit graph

215 commits

Author SHA1 Message Date
Connor McLaughlin 5fd5d89b23 Android: Include data files in APK 2020-11-28 00:14:45 +10:00
Connor McLaughlin 12caa79178 Android: Use APK assets for HostInterface::OpenPackagePath 2020-11-28 00:14:45 +10:00
Connor McLaughlin bf2e38aed5 CPU/Recompiler: Implement LUT-based fastmem 2020-11-24 14:49:21 +10:00
Connor McLaughlin b49067d165 Build: Fix Android armv8 performance regression 2020-11-22 02:33:02 +10:00
Connor McLaughlin a6529a9537 Android: Enable armeabi-v7a builds 2020-11-21 23:47:12 +10:00
Connor McLaughlin 2d3fd621bf Settings: Add 19:9 aspect ratio 2020-11-11 01:02:40 +10:00
Connor McLaughlin c3526adb69 Android: Fix opening controller menu unpausing 2020-11-09 01:18:44 +10:00
Connor McLaughlin 82ffb1bc81 Android: Implement vibrate-on-press and dualshock vibration 2020-11-09 00:38:19 +10:00
Connor McLaughlin cf2d9b86b0 Android: Bump minimum version to 23 (Android 6.0 Marshmellow)
5.0 seems to have various issues...
2020-11-08 00:35:38 +10:00
Connor McLaughlin 3e6bc0e10d Android: Implement disc changing via playlists 2020-11-08 00:22:35 +10:00
Connor McLaughlin 4701d2480d Android: Display game code in list 2020-11-08 00:22:35 +10:00
Connor McLaughlin c1de8c32c1 Android: Provide game list file title to Java-side 2020-11-08 00:22:35 +10:00
Connor McLaughlin d23b9b508d Android: Add option to force screen rotation 2020-11-08 00:22:35 +10:00
Connor McLaughlin fb4ebabee5 Android: Add option to pause when menu is open 2020-11-08 00:22:35 +10:00
Connor McLaughlin b2c8e9e31e Android: End emulation activity if not valid on returning 2020-11-08 00:22:35 +10:00
Connor McLaughlin 8f74d4718f Android: Fix crash if activity is killed before returning 2020-11-08 00:22:35 +10:00
Connor McLaughlin c18278e664 Android: Support starting emulation activity externally
Should hopefully work for third-party launchers.
2020-11-08 00:22:35 +10:00
Connor McLaughlin 74942443d3 Android: Add patch code (cheat) import 2020-11-08 00:22:35 +10:00
Connor McLaughlin 8cb89636eb Android: Empty audio buffers when returning from activity 2020-11-08 00:22:35 +10:00
Connor McLaughlin f68ad7d0c3 Android: Fix wait for emulation thread returning early 2020-11-08 00:22:35 +10:00
Connor McLaughlin 5635ee1d7c Android: Add 'No Edge Blending' texture filtering modes 2020-11-08 00:22:35 +10:00
Connor McLaughlin a17e15f176 Android: Remove duplicate speed limiter option from settings 2020-11-04 00:49:42 +10:00
Connor McLaughlin f94fef11ac Android: Display version in title 2020-11-04 00:07:56 +10:00
Connor McLaughlin e457d4ca0c Android: Move settings icon to action bar 2020-11-03 22:59:26 +10:00
Connor McLaughlin 8816c5048d Android: Add CPU overclocking option 2020-11-03 22:59:26 +10:00
Connor McLaughlin 2b66492ed8 HostInterface: Add proper turbo speed setting 2020-11-03 22:59:26 +10:00
Connor McLaughlin d5a5969bd4 Revert "Android: Enable sustained performance mode"
This reverts commit 96ff8c87e5.
2020-11-03 17:33:04 +10:00
Connor McLaughlin 5a93760af9 Android: Fix some crashes reported via Play Store 2020-11-03 16:17:45 +10:00
Connor McLaughlin efc0a7391d Android: Add presented frame limit option 2020-11-03 16:17:45 +10:00
Connor McLaughlin 96ff8c87e5 Android: Enable sustained performance mode 2020-11-03 16:17:45 +10:00
Connor McLaughlin 7dc71027cf Android: Add chroma smoothing enhancement 2020-11-03 16:17:45 +10:00
Connor McLaughlin d16b5a6721 Android: Add MSAA to enhancements 2020-11-03 16:17:45 +10:00
Connor McLaughlin 7ce55ca800 Android: Fix race/crash when switching away/back to the emulation activity 2020-10-27 11:58:46 +10:00
Connor McLaughlin 80a377d45a Android: Defer renderer changes to restart
Apparently it doesn't like changing surface types.
2020-10-27 11:58:04 +10:00
Connor McLaughlin 9a7999f158 Android: Format Java code 2020-10-24 16:05:52 +10:00
Connor McLaughlin 076d3d3479 Android: Add Start File to main activity menu 2020-10-24 16:05:52 +10:00
Connor McLaughlin e22c7608e3 Android: Scan on background thread and show progress 2020-10-24 16:05:52 +10:00
Connor McLaughlin 5084c90e08 Android: Rename cheats to patches 2020-10-24 16:05:52 +10:00
Connor McLaughlin de3696be4c Android: Add multiple save slots 2020-10-24 16:05:52 +10:00
Connor McLaughlin 47eede06c8 Android: Move OSD options to Display category 2020-10-18 14:54:38 +10:00
Connor McLaughlin 942df40fe7 Android: Add missing advanced settings tab 2020-10-18 14:54:38 +10:00
Connor McLaughlin 7566c45f64 CPU/Recompiler: Implement fastmem 2020-10-18 14:54:38 +10:00
Connor McLaughlin d950779662 Android: Use alert not toast for BIOS import error 2020-10-14 19:05:20 +10:00
Connor McLaughlin e5cdb7751b Android: Prevent OOM when importing invalid BIOSes 2020-10-14 18:59:50 +10:00
Connor McLaughlin e78ea2b60e Android: Fix crash on startup 2020-10-14 18:50:10 +10:00
Connor McLaughlin 8b6309aff6 Android: Add volume control to settings 2020-10-14 18:09:11 +10:00
Connor McLaughlin ad827155e6 Android: Re-add missing audio options 2020-10-14 18:09:11 +10:00
Connor McLaughlin e7945b422f Android: Split settings into tabs 2020-10-14 15:45:31 +10:00
Connor McLaughlin 2a824751e7 Android: Improve external controller/add auto-hide touch option 2020-10-14 15:45:30 +10:00
Connor McLaughlin 3b6b7007b3 OpenSLESAudioStream: Add additional logging 2020-10-14 15:45:30 +10:00
Connor McLaughlin 8b3db72677 Android: Add logging options to settings 2020-10-14 15:45:30 +10:00
Connor McLaughlin eb89bbd909 Android: Fix right stick/L2/R2 on external controller 2020-10-14 00:48:48 +10:00
Connor McLaughlin 962f3407b4 Android: Add OpenSL ES audio backend 2020-10-14 00:48:48 +10:00
Connor McLaughlin 2ce9baa8ad Android: Fix possible crash in TouchscreenControllerView 2020-10-11 14:51:17 +10:00
Connor McLaughlin 7775774761 Android: Fix game controller input being ignored 2020-10-11 14:39:14 +10:00
Connor McLaughlin 6716b8e8ba Android: Add 16:10 aspect ratio option 2020-10-11 14:39:00 +10:00
Connor McLaughlin d39c9f5d1c Clean up some compiler warnings 2020-10-11 12:21:08 +10:00
Connor McLaughlin 671033fdd2 Android: Fix disabling save state on exit not working 2020-10-10 19:57:58 +10:00
Connor McLaughlin 10d42446f4 Android: Tweak some help text for options, add PGXP precision 2020-10-10 19:42:05 +10:00
Connor McLaughlin b612958daa Android: Add some audio settings 2020-10-10 18:51:25 +10:00
Connor McLaughlin 13a9411b07 Android: Add BIOS importer 2020-10-10 17:42:21 +10:00
Connor McLaughlin 423054e8ac Android: Fix ANR when boot fails 2020-10-10 16:35:36 +10:00
Connor McLaughlin 897f2dadf8 Android: Add analog touchscreen controls 2020-10-10 12:48:19 +10:00
Connor McLaughlin e7bf22c31f Android: Possible fix for multi-touch-stuck issue 2020-10-09 18:34:42 +10:00
Connor McLaughlin ed5527b6d8 Android: Make dpad usable in corners 2020-10-08 18:56:16 +10:00
Connor McLaughlin 51fb174984 Android: Fix multi-touch for touchscreen controller 2020-10-08 18:33:04 +10:00
Connor McLaughlin 0050c52e63 Android: Add some missing settings 2020-10-08 18:32:54 +10:00
Connor McLaughlin db6a9b4ab5 Android: Slightly improve scoped storage error message 2020-10-08 18:32:38 +10:00
Connor McLaughlin 790a117371 Android: Show error for selecting scoped storage directories 2020-10-07 21:12:52 +10:00
Connor McLaughlin 7dce9d4b9b Android: Use automatic build numbers based on Git history 2020-10-07 20:35:50 +10:00
Connor McLaughlin 533722456b Android: Fix logo not displaying during loading 2020-10-07 18:01:20 +10:00
Connor McLaughlin de33c7fa2b Android: Implement cheats 2020-10-07 18:01:20 +10:00
Connor McLaughlin 4b8ae472ab Android: Fix touchscreen controller being limited to touch down/up 2020-10-07 18:01:20 +10:00
Connor McLaughlin 5b1ed7903b Android: Fix settings having indents 2020-09-20 01:36:49 +10:00
Connor McLaughlin a520be5208 Android: Use dialog menu instead of appbar
Fixes it getting messed up in landscape orientation.
2020-09-20 01:36:49 +10:00
Connor McLaughlin a7b85605e2 Ignore existing surface size on Android
Seems to be a race condition here where it's not up to date.
2020-09-20 01:36:49 +10:00
Connor McLaughlin 5aa1b9553f Android: Fix emulation stopping on app switch and UI covering display 2020-09-13 14:37:44 +10:00
Connor McLaughlin c360b41a79 Android: Fix settings activity back button stopping emulation 2020-09-13 14:37:28 +10:00
Connor McLaughlin 4a263e4ec1 Android: Add texture filter options 2020-09-13 14:35:58 +10:00
Connor McLaughlin 9b942de47e Android: Improve handling of portrait mode 2020-09-11 00:18:57 +10:00
Connor McLaughlin 6bbbb96d4b Move GameList to FrontendCommon
Reduces libretro core dependencies further.
2020-09-01 12:46:44 +10:00
Connor McLaughlin 41558f4df3 Android: Sort game list by title 2020-09-01 12:03:59 +10:00
Connor McLaughlin c5044768a8 Android: Hook up game list long press menu 2020-09-01 12:03:51 +10:00
Connor McLaughlin cbbf599e4e Android: Multiple improvements
- Save/resume state when closing/starting.
 - Error reporting - hopefully can figure out why it's not starting on
   some devices.
 - Reduce startup latency.
 - Add more options and descriptions to settings.
2020-08-30 15:35:01 +10:00
Connor McLaughlin c3ce9135bf Fix recompiler not auto-disabling with PGXP-CPU mode 2020-08-21 00:09:37 +10:00
Connor McLaughlin 4137c9775e Android: Fix crash in main activity 2020-08-02 03:06:23 +10:00
Connor McLaughlin 60e44c232b Android: Fix broken crop mode setting 2020-08-02 00:25:14 +10:00
Connor McLaughlin 7b384ad300 Android: Use getExternalStorageDirectory() rather than hardcoding to /sdcard 2020-08-02 00:25:12 +10:00
Connor McLaughlin 0c1b637549 PGXP: Add initial implementation 2020-08-02 00:25:07 +10:00
Connor McLaughlin e9882a10aa System: Move restore/reset graphics API state to System
Fixes frame stepping.
2020-08-01 16:45:07 +10:00
Connor McLaughlin b6f871d2b9
JIT optimizations and refactoring (#675)
* CPU/Recompiler: Use rel32 call where possible for no-args

* JitCodeBuffer: Support using preallocated buffer

* CPU/Recompiler/AArch64: Use bl instead of blr for short branches

* CPU/CodeCache: Allocate recompiler buffer in program space

This means we don't need 64-bit moves for every call out of the
recompiler.

* GTE: Don't store as u16 and load as u32

* CPU/Recompiler: Add methods to emit global load/stores

* GTE: Convert class to namespace

* CPU/Recompiler: Call GTE functions directly

* Settings: Turn into a global variable

* GPU: Replace local pointers with global

* InterruptController: Turn into a global pointer

* System: Replace local pointers with global

* Timers: Turn into a global instance

* DMA: Turn into a global instance

* SPU: Turn into a global instance

* CDROM: Turn into a global instance

* MDEC: Turn into a global instance

* Pad: Turn into a global instance

* SIO: Turn into a global instance

* CDROM: Move audio FIFO to the heap

* CPU/Recompiler: Drop ASMFunctions

No longer needed since we have code in the same 4GB window.

* CPUCodeCache: Turn class into namespace

* Bus: Local pointer -> global pointers

* CPU: Turn class into namespace

* Bus: Turn into namespace

* GTE: Store registers in CPU state struct

Allows relative addressing on ARM.

* CPU/Recompiler: Align code storage to page size

* CPU/Recompiler: Fix relative branches on A64

* HostInterface: Local references to global

* System: Turn into a namespace, move events out

* Add guard pages

* Android: Fix build
2020-07-31 17:09:18 +10:00
Connor McLaughlin 73c9a31b86 Android: Expose more settings via UI 2020-07-31 03:40:27 +10:00
Connor McLaughlin d406c03ba9 Android: Add memory card mode settings 2020-07-30 02:00:39 +10:00
Connor McLaughlin 24ffe6f67e Android: Multiple fixes
- Fix possible crash when applying settings worker thread (no JNIEnv).
 - Fix settings not applying until restarting the app.
 - Support analog controller - auto-binding of axixes. Currently no
   touchscreen controller for the joysticks.
 - Add option to auto-hide the touchscreen controller.
2020-07-29 02:38:04 +10:00
Connor McLaughlin a7e24da7fe Android: Multiple changes
- Fix game list display of NTSC-J region
 - Hook up quick load/save/reset options in emulation view.
 - Add speed limiter toggle to emulation view.
 - Add game list scanning options to main menu.
 - Add resume button (not yet hooked up to save states, it'll start the
   BIOS shell)
2020-07-27 00:05:18 +10:00
Albert Liu bf597aab44 Settings: Specify GPU resolution scale as VRAM size 2020-07-23 01:03:18 -07:00
Connor McLaughlin 0398c6cb4a Android: Fix build 2020-07-21 20:25:40 +10:00
Connor McLaughlin 68d98af497 Qt: Remove usage of QString where possible for settings 2020-07-21 20:10:06 +10:00
Connor McLaughlin 9833bfddf3 Android: Add Vulkan renderer to options 2020-07-12 23:28:18 +10:00
Connor McLaughlin f9cbc3acfb Android: Hook up settings interface 2020-07-11 03:29:15 +10:00
Connor McLaughlin a451e7f177 Android: Get it running again
Currently settings are not changable.
2020-07-07 00:59:56 +10:00
Connor McLaughlin e91d760175 HostInterface: Fix crash on startup with controller connected 2020-04-06 12:18:33 +10:00
Connor McLaughlin b418f880ab Android: It builds again, but needs a lot more work 2020-04-06 00:25:40 +10:00
Connor McLaughlin ad21f48a67 Fix Android build after controller changes 2019-12-16 16:46:43 +10:00
Connor McLaughlin b6aa2a6496 Android: Add Game List settings 2019-12-09 22:53:28 +10:00
Connor McLaughlin c136ec5930 Android: Update app icon 2019-12-09 22:53:19 +10:00
Connor McLaughlin 6592b59597 Android: Add touchscreen controller toggle 2019-12-09 22:34:08 +10:00
Connor McLaughlin 9321fcb627 Android: Basic game controller input forwarding 2019-12-09 22:18:18 +10:00
Connor McLaughlin 35bbde6d71 Android: Finish basic overlay controller implementation 2019-12-09 21:42:07 +10:00
Connor McLaughlin 5d91c011a6 Android: Basic touchscreen controller implementation 2019-12-09 01:43:37 +10:00
Connor McLaughlin 737bec0e7d Android: Get storage permissions before populating game list 2019-12-04 21:54:37 +10:00
Connor McLaughlin 8c33163ef1 Android: Add type to game list (disc/psexe) 2019-12-04 21:54:14 +10:00
Connor McLaughlin 6da9e23d3b Android: Implementation of basic game list 2019-12-02 01:09:25 +10:00
Connor McLaughlin adc3a2fac1 Android: Support GLES3 and hardware renderers 2019-12-01 21:57:27 +10:00
Connor McLaughlin ea35c5f3bc Import initial work on Android frontend 2019-11-29 00:17:24 +10:00