Ryan Houdek
3bc5505272
Merge pull request #2814 from Sonicadvance1/aarch64_faster_fastmem
...
[AArch64] Banish slowmem operations to farcode.
2015-08-14 12:03:46 -05:00
Ryan Houdek
f76a30c9fd
Merge pull request #2845 from degasus/arm
...
JitArm64: Implement dcbt
2015-08-14 12:03:25 -05:00
Ryan Houdek
c80e3089c8
[GLES] Fix real XFB.
...
GLES doesn't support the BGRA texture format type, just use RGBA.
2015-08-12 17:32:05 -05:00
Ryan Houdek
bb39ba1f3a
[AArch64] Banish slowmem operations to farcode.
...
This improves performance pretty much across the board for games.
The increase in performance is mainly from removing some code from the main JIT blocks of code (pushing and popping millions of registers) and
throwing them in farcode where it doesn't pollute the icache.
2015-08-12 13:57:09 -05:00
Ryan Houdek
d5c99a5b48
Add support for a CodeBlock holding a child.
...
This is required to make sure two code spaces are relatively close to one another.
In this case I need the AArch64 JIT codespace and its farcode space to be within 128MB of one another for branches.
2015-08-12 12:57:06 -05:00
Ryan Houdek
cf22d32d0c
[AArch64] Don't do an unnecessary 128bit REV64 operation.
...
We are only using the lower 64bits here, no need to do the full quad register.
2015-08-09 14:56:52 -05:00
Ryan Houdek
922d476dab
[AArch64] Fix FCMGE instruction encoding.
...
Fixes a crash when ps_sel is used (PSO 1&2 intro movies).
2015-08-09 14:54:55 -05:00
Ryan Houdek
14a0b01854
Merge pull request #2812 from Tilka/typos
...
Gekko: fix typos in HID2
2015-08-07 10:56:22 -05:00
Ryan Houdek
0326bf7164
On unknown_instruction dump the full guest GPR state.
2015-08-07 02:45:05 -05:00
Ryan Houdek
d9037d6c4a
Remove perf_dir Dolphin WX option.
...
Move the option for the directory to the Dolphin.ini
This way more than DolphinWX can take advantage of it.
2015-08-07 01:59:29 -05:00
Ryan Houdek
c5a7243eb2
[AArch64] Add support for JitRegister to the dispatcher and paired loadstores
2015-08-07 01:58:40 -05:00
Ryan Houdek
eefe710571
Merge pull request #2806 from sigmabeta/android-ui-quickfixes
...
Android: Prevent MainActivity toolbar from rendering behind status bar.
2015-08-06 16:00:06 -05:00
Ryan Houdek
c1fcb23b03
Merge pull request #2783 from degasus/arm
...
JitArm64: fix lfd
2015-07-27 17:18:02 -05:00
Ryan Houdek
6cd8ee9e4e
Merge pull request #2782 from degasus/arm
...
JitArm64: fix stfsux
2015-07-27 16:10:03 -05:00
Ryan Houdek
e805e05ff5
Merge pull request #2773 from sigmabeta/android_wiimote_main
...
Android: Add Wiimote support, including configuration UI.
2015-07-26 16:54:45 -05:00
Ryan Houdek
0ba970008f
Merge pull request #2758 from sigmabeta/android-tv-game-picker
...
Android TV: Implement new UI for Main Activity.
2015-07-26 16:54:27 -05:00
Ryan Houdek
e264df0fd4
Merge pull request #2779 from sigmabeta/android-sys-rq
...
Android: Add system requirements to Readme.md
2015-07-25 22:59:26 -05:00
Ryan Houdek
8bd108426e
Merge pull request #2759 from Sonicadvance1/pvr_workaround2
...
Work around PowerVR's shader compiler.
2015-07-22 16:51:48 -05:00
Ryan Houdek
6ee5ce32cf
Merge pull request #2757 from Sonicadvance1/pvr_workaround
...
Work around slow glBufferSubData on PowerVR.
2015-07-22 16:48:40 -05:00
Ryan Houdek
c81bd32720
Merge pull request #2764 from Sonicadvance1/pvr_workaround3
...
Work around devices that choose to only return the default EGL_RENDERABLE_TYPE
2015-07-22 16:47:11 -05:00
Ryan Houdek
c4f0515141
Work around devices that choose to only return the default EGL_RENDERABLE_TYPE
...
The default EGL_RENDERABLE_TYPE is GLES1, so vendors have the ability to choose between returning only the bits requested, or all of the bits
supported in addition to the one requested.
PowerVR chose to take the route where they only return the bits requested, everyone else returns all of the bits supported.
Instead of letting the vendor have control of this, let's incrementally go through each renderable type and make sure it supports everything we want.
This will cover all devices for now, and for the future.
2015-07-22 11:11:23 -05:00
Ryan Houdek
a8227ad9b1
Add Wiimote support to the Android backend.
...
Not actually wired up to the Android UI for configuration.
2015-07-21 21:33:23 -05:00
Ryan Houdek
03f45fd3f5
Merge pull request #2763 from endrift/update-gtest
...
Externals: Update gtest to r733
2015-07-21 21:16:50 -05:00
Ryan Houdek
c8d1824eb0
Merge pull request #2754 from sigmabeta/readme-reword
...
Change "Installation' headers to say 'Building' in Readme.md
2015-07-21 12:56:30 -05:00
Ryan Houdek
3163602157
Merge pull request #2688 from sigmabeta/android-tv-ingame-menu
...
Android TV: Replace toolbar on EmulationActivity with a full-screen menu
2015-07-21 12:52:21 -05:00
Ryan Houdek
53bc147b45
Merge pull request #2756 from Sonicadvance1/fix_glextensions
...
Fix an oversight in GLExtensions
2015-07-21 10:30:06 -05:00
Ryan Houdek
c1df6d7b4e
Work around PowerVR's shader compiler.
...
This bug has been reported to IMGTec at https://pvrsupport.imgtec.com/ticket/472
The basic idea of the bug is that if you're doing a bitwise and of a constant value vector with a constant scalar value, this causes PowerVR's shader
compiler to fail out with a very non-descriptive message.
Working around the issue by making the value a vector that it is being masked by.
2015-07-20 22:04:16 -05:00
Ryan Houdek
012a9afdb6
Work around slow glBufferSubData on PowerVR.
...
As with all tiled renderers, glBufferSubData is terribly slow.
Use glBufferData as typical.
2015-07-20 22:02:58 -05:00
Ryan Houdek
dc46ae0380
Fix an oversight in GLExtensions
...
I only wanted to erase the first character in the string, not the entire thing.
Fixes Qualcomm and PowerVR devices crashing out immediately.
2015-07-20 22:01:23 -05:00
Ryan Houdek
cd95a53ff4
Merge pull request #2737 from sigmabeta/android-how-to
...
Android: Improve build instructions, fix bugs in build scripts.
2015-07-20 12:39:33 -05:00
Ryan Houdek
c0f80ca524
Merge pull request #2736 from degasus/farcache
...
JitArm64: Farcache
2015-07-15 08:41:58 -05:00
Ryan Houdek
7b7d1b0dcf
Merge pull request #2718 from phire/1way-icache
...
Interpreter: Fix bug with icache emulation.
2015-07-08 07:29:46 -05:00
Ryan Houdek
48ac522b5c
Merge pull request #2715 from degasus/aarch64
...
JitArm64: Implement EXCEPTION_FPU_UNAVAILABLE support.
2015-07-06 21:43:56 -05:00
Ryan Houdek
e9921044b5
Merge pull request #2671 from degasus/jitarmbranch
...
JitArm64: branching fallbacks
2015-07-01 11:40:07 -05:00
Ryan Houdek
b174f99b17
Merge pull request #2662 from Tilka/interpreter
...
Interpreter: turn SNaNs into QNaNs
2015-07-01 01:09:43 -05:00
Ryan Houdek
68d8d784ee
Merge pull request #2670 from endrift/dolphinbar-osx
...
WiimoteReal: Add IOHIDDevice support for OS X
2015-06-30 23:33:13 -05:00
Ryan Houdek
605ce3788d
Merge pull request #2664 from sigmabeta/android-load-animation
...
Android: Show transition animations on game start / end.
2015-06-30 22:19:25 -05:00
Ryan Houdek
a0f5bd51f1
Merge pull request #2678 from Sonicadvance1/aarch64_implement_rlwimix
...
[Aarch64] implement rlwimix.
2015-06-30 22:18:00 -05:00
Ryan Houdek
2cddaa09f0
[AArch64] Implement rlwimix.
2015-06-30 19:49:10 -05:00
Ryan Houdek
afc3d30f5c
[AArch64] Implement BFI & UBFIZ in the emitter.
...
Also fixes a bug in the UBFX instruction emitter. Naughty Naughty PPSSPP, not testing emitter functions you add.
2015-06-29 19:00:22 -05:00
Ryan Houdek
6818f2e092
Merge pull request #2661 from Sonicadvance1/aarch64_slwx
...
[AArch64] Implement slwx in the recompiler.
2015-06-26 01:28:06 -05:00
Ryan Houdek
63a2180c1f
[AArch64] Implement slwx in the recompiler.
...
I streamed this implementation earlier today to get people to have a feel for implementing instructions in the AArch64 recompiler.
This one was a fairly simple one to implement.
2015-06-26 00:51:06 -05:00
Ryan Houdek
521f6e89c3
Merge pull request #2624 from sigmabeta/android-save-screenshot
...
Android: Save screenshot at end of an emulation session.
2015-06-24 21:39:47 -05:00
Ryan Houdek
3c5122e963
Merge pull request #2654 from Tilka/assert
...
Logging: trigger _assert_() in release builds
2015-06-24 11:14:08 -05:00
Ryan Houdek
2cea910431
Merge pull request #2644 from sigmabeta/android-material-design
...
Android: Numerous Material Design additions to the UI.
2015-06-23 21:00:35 -05:00
Ryan Houdek
bb89a81053
Merge pull request #2635 from sigmabeta/android-seriously-now
...
Android: Remove Low and Medium DPI versions of all images.
2015-06-23 20:47:16 -05:00
Ryan Houdek
52aa9c05bd
Merge pull request #2633 from sigmabeta/android-emulation-menu
...
Android: Add Quicksave/Load functionality, and cleanup in-game menu.
2015-06-23 20:47:10 -05:00
Ryan Houdek
c9a0e7d35b
Merge pull request #2650 from Tilka/fix_warnings
...
Fix some warnings
2015-06-23 20:41:58 -05:00
Ryan Houdek
3f0f3c36fa
Merge pull request #2627 from sigmabeta/android-non-games
...
Android: Have non-games use their filename as a Game ID.
2015-06-21 15:06:49 -05:00
Ryan Houdek
b0bc60d58a
Merge pull request #2638 from Sonicadvance1/aarch64_fix_vertexloader_colour
...
[AArch64] Fix a couple of bugs in the vertex loader
2015-06-21 12:52:36 -05:00
Ryan Houdek
a811370329
[AArch64] Fix a couple of bugs in the vertex loader
...
In particular this fixes the 6666 colour format
We were loading from the wrong location and it was causing /terrible/ colour changes.
This also fixes a bug in the all the colour formats(except 888) where the unaligned path was loading in to the wrong register.
2015-06-20 21:12:31 -05:00
Ryan Houdek
7662b30d0b
Merge pull request #2616 from sigmabeta/android-whoops-overlay
...
Android: Fix a bug making Input Overlay config screen only work in debug builds.
2015-06-16 14:49:41 -05:00
Ryan Houdek
22e7024da5
Merge pull request #2614 from endrift/fix-gdbstub-build
...
PowerPC: Fix GDBStub build
2015-06-16 02:15:21 -05:00
Ryan Houdek
87b45de634
Merge pull request #2606 from Sonicadvance1/aarch64_optimize_psq_st
...
[AArch64] Optimize paired quantized stores.
2015-06-14 19:03:50 -05:00
Ryan Houdek
73d213142f
Merge pull request #2611 from Sonicadvance1/aarch64_fix_register_cache
...
[AArch64] Fix a few bugs in the FPR cache.
2015-06-14 19:03:40 -05:00
Ryan Houdek
094c6bf5bc
Merge pull request #2601 from Sonicadvance1/android_fix_user_directory
...
[Android] Make sure we are setting the default user directory.
2015-06-14 17:03:55 -05:00
Ryan Houdek
96058c5de1
[AArch64] Reenable psq_l.
...
The bug was due to issues in the FPR cache.
2015-06-14 04:11:59 -05:00
Ryan Houdek
282282aafc
[AArch64] Fix a few bugs in the FPR cache.
2015-06-14 04:11:26 -05:00
Ryan Houdek
5ea66369f8
[AArch64] Optimize paired quantized stores.
...
Uses {S,U}QXTN to saturate the value to the maximum sizes instead of manually clamping using FMIX + FMAX.
2015-06-13 23:16:56 -05:00
Ryan Houdek
5dc148159f
[AArch64] Implement {U, S}QXTN{,2}
...
Also split out XTN to XTN and XTN2.
2015-06-13 23:16:17 -05:00
Ryan Houdek
c981f6407e
Merge pull request #2597 from endrift/android-allow-ndk-override
...
Android: Allow NDK location to be specified manually
2015-06-13 13:56:53 -05:00
Ryan Houdek
1c1282fddc
Merge pull request #2604 from lioncash/var
...
Arm64Emitter: Remove unused variable from EncodeLoadStoreRegisterOffset
2015-06-13 13:33:04 -05:00
Ryan Houdek
7c4e6c7eb9
[Android] Make sure we are setting the default user directory.
...
This fixes an issue where the settings aren't being saved correctly because the user directory is never set before a run of the game.
2015-06-13 08:37:56 -05:00
Ryan Houdek
467f351f79
[Android] Remove dialog telling individuals that their drivers are terrible.
...
There aren't any AArch64 devices with v14 Qualcomm drivers. So it is dead code.
2015-06-13 08:18:42 -05:00
Ryan Houdek
0af5bdcf1d
[AArch64] Clean up our CPUDetect.
...
Drops ARMv7 feature detection.
2015-06-13 08:04:23 -05:00
Ryan Houdek
bcc8c78e4a
Merge pull request #2582 from Sonicadvance1/aarch64_fix_thp_videos
...
[WIP] [AArch64] Clamp quantized store ranges.
2015-06-12 18:07:24 -05:00
Ryan Houdek
113c2dcd74
[AArch64] Clamp quantized store ranges.
...
Fixes block dots in THP videos.
Nintendo's THP video uses paired U8 stores to write their THP videos after decoding with floating point operations.
Paired stores clamp the range to the minimum and maximum values(0 - 255 in this case).
In some instances the resulting float will be larger than what a U8 can fit(Typically white) and results in black dots due to how AArch64 handles
quantizing.
2015-06-09 18:11:27 -05:00
Ryan Houdek
3d2b116323
[AArch64] Implement a couple instructions in the emitter.
...
Implements LD2R.
Implements LD1R/LD2R with post-indexing support.
Implements vector min/max instructions.
2015-06-09 18:10:56 -05:00
Ryan Houdek
7b0a65e295
Merge pull request #2576 from sigmabeta/android-controls
...
Android: Persist previously-set controller bindings on the Settings menu.
2015-06-09 16:56:34 -05:00
Ryan Houdek
0047ea8852
Merge pull request #2501 from sigmabeta/android-kill-old-ui
...
Android: Remove the old UI, and remove support for pre-5.0 devices.
2015-06-09 03:57:47 -04:00
Ryan Houdek
ffe085f5ea
[AArch64] Implement CRC32 texture hashing.
...
In a particular hashing heavy scene in Crazy Taxi the Murmur3 hash used 3.11% CPU time.
The new CRC32 hash in the same scene used 1.86%
This was tested on a Nvidia SHIELD Android TV with Cortex-A57s.
This will be a bit slower on the Nexus 9, the Denver CPU core is a bit slower with CRC32 texture hashing than Murmur3 texture hashing.
2015-06-08 19:16:50 -05:00
Ryan Houdek
a91c152b86
Merge pull request #2572 from sigmabeta/android-show-version
...
Android: Show the version name as a subtitle in the GameGridActivity.
2015-06-08 19:37:33 -04:00
Ryan Houdek
2282be3265
Merge pull request #2573 from sigmabeta/android-show-filenames
...
Android: Show filenames for games with an empty title.
2015-06-08 19:35:17 -04:00
Ryan Houdek
881f6db2ab
Merge pull request #2509 from comex/fix-ar-codes
...
Fix subdialogs of the ISO props dialog... sort of
2015-06-08 04:13:16 -04:00
Ryan Houdek
21b1d143bc
Merge pull request #2566 from sigmabeta/android-tv-back
...
Android TV: Show the in-game menu when back button is pushed.
2015-06-08 04:02:22 -04:00
Ryan Houdek
3a3b782f3c
[AArch64] Detect AES/SHA1/SHA2/CRC32 in CPUDetect.
2015-06-08 01:20:24 -05:00
Ryan Houdek
1b6969ca67
Merge pull request #2567 from Sonicadvance1/remove_armv7
...
Remove ARMv7 support.
2015-06-08 02:19:11 -04:00
Ryan Houdek
59e2225f7d
Remove ARMv7 support.
2015-06-07 22:44:13 -05:00
Ryan Houdek
499478bcad
Merge pull request #2550 from Armada651/d3d-pokes
...
D3D: Implement Z pokes.
2015-06-07 23:25:16 -04:00
Ryan Houdek
9969273994
Merge pull request #2557 from AdmiralCurtiss/gc-sram-checksum
...
GameCube SRAM: Recalculate checksums after setting language.
2015-06-07 23:24:06 -04:00
Ryan Houdek
e8ae0f8c3c
Merge pull request #2562 from Sonicadvance1/aarch64_optimize_gatherpipe
...
[AArch64] Optimize gatherpipe stores
2015-06-07 23:23:11 -04:00
Ryan Houdek
8c2e5e2860
Merge pull request #2555 from Sonicadvance1/aarch64_rebase_ppsspp_emitter
...
[AArch64] Upstream PPSSPP's emitter changes.
2015-06-07 23:23:04 -04:00
Ryan Houdek
a81d1c250a
Merge pull request #2512 from JosJuice/bnr-size-match
...
VolumeGC: Check that opening.bnr size matches type
2015-06-07 23:20:54 -04:00
Ryan Houdek
51b440fbcf
Merge pull request #2449 from sigmabeta/android-decouple-surfaceview
...
\Android: Decouple SurfaceView initialization and emulation start.
2015-06-07 23:18:56 -04:00
Ryan Houdek
49a0adb2e9
Merge pull request #2506 from comex/enet-build-fixes
...
ENet fixes (build fixes, upgrade)
2015-06-07 23:16:42 -04:00
Ryan Houdek
9521bc1fc6
Merge pull request #2558 from sigmabeta/android-panic-alerts
...
Android: Display Panic Alerts on-screen as a Toast message.
2015-06-07 23:14:34 -04:00
Ryan Houdek
c79dd40e72
Merge pull request #2529 from JosJuice/ini-skip-bom
...
Skip reading UTF-8 BOM at the beginning of INI files
2015-06-07 23:13:53 -04:00
Ryan Houdek
daf9492072
Merge pull request #2561 from Sonicadvance1/gles_fix
...
Fix OpenGL ES shader compilation.
2015-06-07 23:12:57 -04:00
Ryan Houdek
444d112df5
Merge pull request #2563 from Sonicadvance1/aarch64_disable_psql
...
[AArch64] Disable psq_l again.
2015-06-07 23:12:50 -04:00
Ryan Houdek
c8068e26fb
Merge pull request #2527 from Sonicadvance1/aarch_multi_loadstore
...
[AArch64] Implement lmw/stmw.
2015-06-07 23:12:42 -04:00
Ryan Houdek
d29fd84249
[AArch64] Disable psq_l again.
...
Still causing issues with games.
Disable it again until I can spend enough time debugging it.
2015-06-07 19:55:27 -05:00
Ryan Houdek
46c3a11d01
[AArch64] Optimize gatherpipe stores
...
This can be even more optimized in the future when the register cache supports constant caching.
2015-06-07 19:53:40 -05:00
Ryan Houdek
8ae12d8005
[AArch64] Add ASIMD LDR/STR with register offset
2015-06-07 19:53:05 -05:00
Ryan Houdek
05b72c5d31
[AArch64] Upstream PPSSPP's emitter changes.
...
Requires a minor change to in the JIT to make sure everything still works.
2015-06-07 19:50:21 -05:00
Ryan Houdek
3f46491255
Fix OpenGL ES shader compilation.
2015-06-07 19:44:44 -05:00
Ryan Houdek
588de63f9c
Merge pull request #2141 from Tilka/position_cache
...
zfreeze: cache vertex positions
2015-06-07 16:44:40 -04:00
Ryan Houdek
10bd68936c
[AArch64] Implement ZFreeze cache
2015-06-07 12:13:01 +02:00
Ryan Houdek
63f41ce54e
Merge pull request #2514 from sigmabeta/android-tv-support
...
Android TV: Allow the app to be launched from an Android TV launcher.
2015-06-05 18:30:32 -04:00
Ryan Houdek
7b9565c4e6
[AArch64] Implement lmw/stmw.
2015-06-04 23:54:50 -05:00
Ryan Houdek
17e1f644b0
Merge pull request #2504 from ds84182/master
...
Fix invalid enums on OpenGLES
2015-06-02 12:17:12 -04:00