Commit Graph

27310 Commits

Author SHA1 Message Date
eb33d7af64 Core: Call InitBackendInfo before loading config 2018-09-28 21:44:41 +10:00
93923e2b29 Don't fill backend info when core is running
The current approach results in the UI thread creating a graphics device
whilst the core is running, leading to races on function pointers, and
potentially crashing.
2018-09-28 21:43:22 +10:00
a1db82a72e Merge pull request #7411 from JosJuice/wii-metadata-unencrypted
Read Wii disc metadata from the unencrypted header
2018-09-28 00:44:25 -04:00
a877d5f6dc Remove unused Host_ShowVideoConfig 2018-09-28 14:05:53 +10:00
a5c74cd6d1 Merge pull request #7382 from stenzek/drop-vk-nv-glsl
Vulkan: Drop usage of VK_NV_glsl extension
2018-09-27 21:56:22 -04:00
3cee297c87 Merge pull request #7331 from booto/si_buffer
SI: Add 16bit accessors for SI IO buffer
2018-09-27 21:50:50 -04:00
d0b2f04539 Merge pull request #7421 from JosJuice/qt-sd-hotplug
DolphinQt: Allow inserting/ejecting SD cards during emulation
2018-09-27 21:48:16 -04:00
62b88f890d Merge pull request #7422 from JosJuice/scrub-unencrypted
Fix scrubbing unencrypted Wii disc images
2018-09-27 21:47:49 -04:00
4a7715927e Merge pull request #7392 from weihuoya/android-menu-fx
Menu show action fx for android
2018-09-26 19:54:36 +02:00
5eefd0482a Fix issue with breakpoint type loaded from settings not propogating to MemoryWindow 2018-09-25 17:45:18 -05:00
54bd16e753 Fix typo causing "Remove from Watch" in Cheat Manager to crash Dolphin 2018-09-24 23:01:24 -05:00
04969f94b6 Fix some Cheat Manager comparisons being wrong 2018-09-24 21:34:48 -05:00
67902a7091 Android: Layout for emulation when phone is portrait
This sets the surfaceview to the top half of the screen instead of it sitting in the middle which gives more room for onscreen controls.
2018-09-21 17:20:13 -04:00
f05d85dfe4 Android: add reset touch overlay 2018-09-21 17:20:13 -04:00
ab46f0cb82 Android: Add default portrait touch overlays 2018-09-21 17:18:30 -04:00
afe59c50c4 Android: add profile for portrait touch overlay 2018-09-21 17:18:30 -04:00
85961f996e Merge pull request #7400 from zackhow/phone-rumble
Android: Add rumble for phone
2018-09-21 17:05:46 +02:00
facaeb615e Fix scrubbing unencrypted Wii disc images
Untested with unencrypted Wii disc images, because I don't have any.
I tested that normal Wii disc images still work, though.
2018-09-20 23:23:10 +02:00
ce3e0fc091 Refactor DiscScrubber::MarkAsUsedE 2018-09-20 23:23:06 +02:00
5db27b8e7e DolphinQt: Allow inserting/ejecting SD cards during emulation
This is possible on real hardware and was possible in DolphinWX.
2018-09-20 18:41:37 +02:00
8a93dd0105 x64EmitterTest: Fix linting issues 2018-09-16 19:52:12 +02:00
58a0d0f117 x64EmitterTest: test MOV with 64-bit immediates 2018-09-16 19:52:12 +02:00
53a947749a x64Emitter: short MOV for 64bit immediates (2)
Prior to this commit, the emitter would unconditionally emit a 10-byte
instruction known as MOVABS when loading a 64-bit immediate to a
register.

0:  48 b8 ef be ad de 00    movabs rax,0xdeadbeef
7:  00 00 00

With this change, it will instead rely on the fact that on x64 writes to
32-bit registers are automatically zero extended to 64-bits, allowing
us to emit a 5 or 6-bytes instruction with the same effect for certain
immediates.

0:  b8 ef be ad de          mov    eax,0xdeadbeef
2018-09-16 19:52:03 +02:00
e90bd035cb Merge pull request #7262 from lioncash/force
ControlGroup: Return state data via GetState() by value where applicable
2018-09-16 16:04:21 +02:00
5a289de27a Fix BT passthrough by sending larger packets
Fixes a critical regression from 8bb08d1ca6.

In that commit, I replaced a 1024 byte buffer with a SHCIEventCommand.
However, it looks like some Bluetooth adapters actually require such
a large buffer, so this change needs to be reverted.
2018-09-16 15:36:58 +02:00
40b7fab235 Merge pull request #7261 from lioncash/static
WiimoteReal: Make functions internally linked where applicable
2018-09-16 15:30:25 +02:00
3ecc4ed1c4 Merge pull request #7390 from Techjar/qt-save-grid-scale
Qt/GameList: Make grid view scale persistent
2018-09-16 15:21:00 +02:00
c49eb2d249 Merge pull request #7398 from Techjar/emu-speed-skip-vsync
VideoCommon: Skip vsync if configured emulation speed is not 100%
2018-09-16 15:19:45 +02:00
80c402e1ad Merge pull request #7161 from lioncash/disasm
CMake: Only link in Bochs on x86 platforms
2018-09-16 15:16:00 +02:00
3a16c0d47e Merge pull request #7401 from JosJuice/translation-fixes
Translation fixes
2018-09-16 15:09:26 +02:00
e3a52b3361 Merge pull request #7415 from JosJuice/korean-shop-channel-check
Include the Korean Wii Shop Channel when checking default credentials
2018-09-15 17:37:35 +02:00
b5bb445f21 Include the Korean Wii Shop Channel when checking default credentials 2018-09-15 17:28:23 +02:00
f2fa63783b Do not consider XFB copies for invalidating textures when loading a new texture.
This fixes severe image flickering in some cutscenes of Twin Snakes. The game appears to sometimes load a previously made XFB copy as a texture before it is actually rendered to the screen, which we took as an invitation to invalidate the XFB copy.
2018-09-15 13:56:45 +02:00
575f1b309a x64Emitter: short MOV for 64bit immediates (1)
Prior to this commit, the emitter would unconditionally emit a 10-byte
instruction known as MOVABS when loading a 64-bit immediate to a
register.

0:  48 b8 ef be ad de ff    movabs rax,0xffffffffdeadbeef
7:  ff ff ff

With this change, it will instead emit a 7-byte instruction when it is
possible to express the 64-bit immediate using a signed 32-bit value.

0:  48 c7 c0 ef be ad de    mov    rax,0xffffffffdeadbeef
2018-09-14 23:11:26 +02:00
3e95d3c477 Stitch together overlapping XFB regions in order of XFB copy creation. 2018-09-14 19:41:27 +02:00
1311f84706 Android: Run Directory Initialization as a thread instead of service
Two reasons for this change. First, it appears that some android launchers do some sort of call into
the application when long pressing the app icon, which in turn calls the DirectoryInit service. This
was ok to do prior to Oreo but will cause crashes with the new restrictions on services running
in the background. Which leads to the second reason that DirectoryInit doesn't need to be a service
at all since these actions are required for dolphin to function and shouldn't be a scheduled action.
So we instead just kick this off in a new thread and send the broadcast when done.
2018-09-14 09:54:36 -04:00
d97bc0d359 Correctly adjust the rendered XFB region at non-native internal resolutions when XFB was loaded from console RAM.
If, for whatever reason, the XFB has to be loaded from console memory, it's possible that the texture is returned at native resolution instead of EFB-scaled resolution. In this case, our xfb_rect.right adjustment must also happen at native resolution instead of scaled resolution.
2018-09-13 19:39:49 +02:00
cec601f1fb Read Wii disc metadata from the unencrypted header
The header of a Wii disc can be read from two places: The
unencrypted area at the beginning of the disc, or the beginning of
the game partition. The two copies are usually identical (except
for 0x60 and 0x61), but there are exceptions. For most of Dolphin's
history, we have been reading from the header inside the game
partition when getting metadata. This was however not the case
starting with 4.0-4901 and ending with 5.0-3762. This commit once
again makes Dolphin read metadata from the unencrypted header,
because of the following reasons that I recently was informed about:

- The "pink fish" disc has the game ID 410E01 in the unencrypted
  header but the placeholder game ID RELSAB in the partition header.
- The revisions of some games differ between the two headers,
  with the unencrypted one making more sense.
  (See https://bugs.dolphin-emu.org/issues/11387)

For better or worse, this also means that sloppily hacked games where
only the game ID in the unencrypted header has been changed now will
use that modified game ID. And unlike with the partition header,
there is no signing or hashing that can tell us whether the
unencrypted header has been modified by someone other than Nintendo.
2018-09-12 13:41:30 +02:00
3825e2e5ff SI: Add 16bit accessors for SI IO buffer
Dolphin has traditionally treated the SI IO buffer (128 bytes) as a set of
32 little endian u32s. This works out fine if you only ever read/write
using aligned 32bit accesses. Different sized accesses or misaligned reads
will mess it up. Byte swapping reads/writes will fix this up, but all the
SI devices that use the SI IO buffer need to be adjusted.
2018-09-11 22:19:13 -04:00
fb6b31bba8 Re-add i18n comments that were lost in the DolphinWX removal 2018-09-08 15:58:15 +02:00
e0cb56edb9 Reword some translatable strings
We've decided to use the term "Usage Statistics Reporting"
instead of "Analytics" in user-facing strings.
2018-09-08 15:19:01 +02:00
5f35edf505 Remove unused function and translatable strings 2018-09-08 15:18:31 +02:00
a4f950ee86 Fix a string not getting translated 2018-09-08 15:16:39 +02:00
1f34471130 Fix lint 2018-09-07 08:56:05 -04:00
126ff8dc5f Android: Add rumble for phone
This currently only supports using the internal vibrate on a phone for rumble.
2018-09-07 08:54:03 -04:00
e9046f8eec VideoCommon: Skip vsync if configured emulation speed is not 100%
It doesn't make much sense to try to vsync at weird framerates, and
vsync actually causes the speed setting to not work as expected.
2018-09-05 05:40:22 -04:00
c062258719 use app:showAsAction 2018-09-03 16:07:45 +08:00
bb598529be Qt/GameList: Make grid view scale persistent 2018-09-02 18:22:44 -04:00
95c2a92f26 Revert "ShaderGen: Drop broken fragment shader index workaround for Vulkan" 2018-09-01 05:32:56 +02:00
4a34dba001 Merge pull request #7387 from zackhow/covers-nostretch
Android: Fix cover stretching and show more games per row
2018-08-31 19:29:49 -07:00