Commit graph

16232 commits

Author SHA1 Message Date
Pierre Bourdon
a8810e8778 Zelda HLE: Add support for the Zelda: FSA UCode. 2015-08-14 16:01:32 +02:00
Pierre Bourdon
01ab40fc6e Zelda HLE: NTSC IPL provides the volume stepping explicitly.
Support that through a new behavior flag. Now the only remaining known bug in
the NTSC IPL is the reverb not fading out.
2015-08-14 16:01:32 +02:00
Pierre Bourdon
43882f3e6e Zelda HLE: Handle the smaller VPBs used by the NTSC IPL.
Damn you, Nintendo.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
1807c113b5 Zelda HLE: Support both NTSC and PAL IPL.
Add a flag for UCodes that only have four non-Dolby mixing destinations
(instead of the standard six destinations).

NTSC IPL is still hopelessly broken.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
4ace79024d Zelda HLE: Add a missing mixing buffer used by GC IPL.
Not completely sure what it's used for yet, but TWW has references to it so
I'll get to it at some point.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
8c85a8c8d9 Zelda HLE: Fix reverb in the GC IPL.
Adds a missing destination buffer, and support post-filtering.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
13ea54628d Zelda HLE: Add support for the light protocol.
Used by a few titles (Luigi's Mansion, Animal Crossing) as well as the GameCube
IPL/BIOS.

Note that the IPL does not work yet because it mixes to unknown buffers.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
c033395e28 Zelda HLE: Introduce behavior flags to handle UCode version differences.
MAKE_DOLBY_LOUDER solves some of the volume issues that were happening in Zelda
Twilight Princess and SMG1.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
8b9b9f033a Zelda HLE: Fix and genericize PCM ARAM loading functions.
Now also handles PCM16, and works for longer sounds. SMG1 main menu outputs
some sensible audio now, though volume seems slightly off.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
0dc5a925b0 Zelda HLE: Add initial support for Wii DAC and SMG1.
SMG1 boots but quickly PanicAlerts due to an unimplemented sample source.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
ea1ac5f596 Zelda HLE: Add save state support.
Also fix an inconsistency in the spelling of "coeffs".
2015-08-14 16:01:30 +02:00
Pierre Bourdon
bfff0a72df Zelda HLE: Implement sample sources 4, 7, 11 and 12.
Just 4 different versions of the same sample source, using a different constant
pattern uploaded to the DSP during command 01.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
6c61ee6278 Zelda HLE: Initial support for Zelda Twilight Princess (GC)
Very close to the TWW version of the UCode, haven't determined any differences
yet (but I'm sure that will come soon). Works well enough to reach ingame
without any errors other than a few volume issues.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
b672788548 Zelda HLE: Skip command words that are not commands.
Zelda Twilight Princess (GC) seems to push null words into the command buffer.
The command handler in the UCode ignores initial command mails that do not have
the MSB set.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
9944731516 Zelda HLE: Add reverb emulation. 2015-08-14 16:01:29 +02:00
Pierre Bourdon
c58aece9ad Zelda HLE: Implement the PCM8 sample source.
Reorder some things in the source code to match the sample source definition
order. Add and remove some TODOs.
2015-08-14 16:01:29 +02:00
Pierre Bourdon
58fd39d57a Zelda HLE: Value-initialize the std::arrays.
I was under the wrong impression that std::array's default constructor
performed value initialization. Turns out it does not, so an array of POD will
not be initialized.
2015-08-14 16:01:29 +02:00
Pierre Bourdon
34341af17d Zelda HLE: Implement saw wave generation (sample source 0001).
Fixes issue 7961.
2015-08-14 16:01:29 +02:00
Pierre Bourdon
91fade5e89 Zelda HLE: Properly implement the square wave generation.
Zelda TWW magic meter works properly now.
2015-08-14 16:01:29 +02:00
Pierre Bourdon
63712e58fd Zelda HLE: Convert some ERROR_LOG to PanicAlert.
While these are not really unrecoverable errors, while Zelda HLE is in a
testing / development phase it is useful to notice these "unexpected" cases (or
expected without known ways to reproduce) by making them as hard as possible to
ignore.
2015-08-14 16:01:29 +02:00
Pierre Bourdon
2bb3daf027 Zelda HLE: Implement square wave sample source.
Also fix Windows build.
2015-08-14 16:01:29 +02:00
Pierre Bourdon
580fe12c5b Zelda HLE: Implement HQ AFC samples decoding. 2015-08-14 16:01:28 +02:00
Pierre Bourdon
33c29d8aab ZeldaHLE: fix windows build again 2015-08-14 16:01:28 +02:00
Pierre Bourdon
b62f1ed453 ZeldaHLE: fix windows build 2015-08-14 16:01:28 +02:00
Pierre Bourdon
e35b83fabf ZeldaHLE: Implement more infrastructure and one sample source.
Now renders some of the cutscene audio in Zelda TWW. Most of the work around
sample sources is in a good enough state, even though it is still missing
features like Dolby mixing, IIR, etc.
2015-08-14 16:01:28 +02:00
Pierre Bourdon
d9188f1245 Zelda HLE: Rewrite the control flow.
Now accurate control flow for DAC. Voice rendering is not implemented yet, but
framing seems correct. Not expected to work for anything than DAC UCode games.
2015-08-14 16:01:28 +02:00
Pierre Bourdon
d5e177d3f9 INIT UCode: reduce DSP initialization time
Push the mail at UCode boot time, not after the first update. This avoids a lot
of crazy busy-looping on the CPU side while waiting for the DSP to be
initialized.
2015-08-14 16:01:28 +02:00
Pierre Bourdon
a770cc0778 DSPHLE MailHandler: Synchronize reads and interrupts
This change is meant to solve the following problem: how to translate the
following snippet to DSPHLE:
    SendInterruptAndWaitRead(MAIL_A);
    SendAndWaitRead(MAIL_B);

    SendInterruptAndWaitRead(MAIL_C);

This should cause the following actions on the CPU side:
    ---> Woken up by interrupt
    Reads MAIL_A
    Reads MAIL_B
    <--- Exits interrupt handler

    ---> Woken up by interrupt
    Reads MAIL_C
    <---

But with the current DSPHLE mail support, the following would happen because
the "AndWaitRead" part is not supported:
    ---> Woken up by interrupt
    Reads MAIL_A
    Reads MAIL_B
    <--- Exits interrupt handler

    [Never gets the second interrupt since it was triggered at the same time as
    the first one! Misses MAIL_C.]

This changes fixes the issue by storing two values in the mail queue on the DSP
side: the value of the mail itself, and whether a read of that mail should
trigger a DSP interrupt. If nothing is in the queue yet and an interrupt is
requested, just trigger the interrupt. In the present example, the queue will
look like this:
    Mail value       Interrupt requested
     MAIL_A                  No           <-- Interrupt was triggered when
                                              pushing the mail to the queue.
     MAIL_B                  Yes
     MAIL_C                  No

When the CPU will read MAIL_B, this will cause MailHandler to trigger the
interrupt, which will be handled by the CPU when coming back from the exception
handler. MAIL_C is then successfully read.
2015-08-14 16:01:27 +02:00
Pierre Bourdon
8f3302419b ZeldaHLE: Rip out more code, only keep normal version support and one CRC 2015-08-14 15:21:08 +02:00
Pierre Bourdon
22ec258194 ZeldaHLE: Rip out the whole voice processing code. Still boots games, but no sound at all. 2015-08-14 15:20:29 +02:00
Pierre Bourdon
a92727e862 DSPHLE: Add a config parameter to dump UCode to disk 2015-08-14 15:19:57 +02:00
degasus
fc23380f6b JitArm64: Implement dcbt
This is a 1:1 copy&paste from Jit64.
2015-08-14 14:47:00 +02:00
Tillmann Karras
f9129c0e08 Jit64: use BMI1's ANDN for andcx 2015-08-14 05:51:31 +02:00
zeroZshadow
8925b828aa Ignore all writes to BBA_TXFIFOCNT 2015-08-13 22:45:29 +02:00
zeroZshadow
798365846d Improve TAP_Win32 error logging 2015-08-13 18:25:17 +02:00
degasus
4ef2962055 JitArm64: optimize addzex
So on the general case, we don't need a tempory register.
2015-08-13 13:40:53 +02:00
degasus
f7fa22a053 JitArm64: fix addzex
CMP don't update the carry flag, so we have to use an addition.
2015-08-13 13:36:21 +02:00
degasus
de3ce74b48 JitArm64: disable addzex 2015-08-13 12:22:48 +02:00
degasus
b9f5bfb2bd JitArm64: zero extend RC for cmpli
Patch written by HdkR
2015-08-13 12:22:48 +02:00
Markus Wick
4c5fec4772 Merge pull request #2838 from Sonicadvance1/fix_gles_xfb
[GLES] Fix real XFB.
2015-08-13 08:29:42 +02: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
Lioncash
5aa5a100fa CheatSearchTab: Simplify functionality
With auto-updating lists, searching for the previous value isn't
necessary. Also, this breaks out specific functionality into their own
functions, which helps separate UI code from the data processing code.

	modified:   Source/Core/DolphinWX/Cheats/CheatSearchTab.h
2015-08-12 17:49:21 -04:00
Lioncash
00a4184893 CheatSearchTab: Make the search results list auto update address values 2015-08-12 17:49:20 -04:00
Ryan Houdek
1e024e7011 [AArch64] Implement fcmp{u,o} 2015-08-12 14:44:58 -05:00
Markus Wick
40818c4aad Merge pull request #2835 from degasus/master
Wiimotes: Initialize all atomic<bool> globally.
2015-08-12 21:14:04 +02: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
shuffle2
90e05f7bea Merge pull request #2832 from zeroZshadow/master
Properly scan for OpenVPN TAP adapters
2015-08-12 10:56:50 -07:00
Rohit Nirmal
703892e845 Fix building with PCH disabled. 2015-08-12 12:01:17 -05:00
degasus
6b9eba5761 Wiimotes: Initialize all atomic<bool> globally.
This fixes an issue with broken real wiimotes on linux.
2015-08-12 18:39:38 +02:00
Lioncash
2c3025e8af Merge pull request #2822 from aserna3/master
Specified the type of AA in OGL AA settings
2015-08-12 01:35:22 -04:00
Jeffrey Pfau
adf6e46200 DolphinWX: Ensure TASInputDlg only gets modified on the main thread 2015-08-11 22:05:18 -07:00
zeroZshadow
7ed894484e Added for loop end condition 2015-08-12 01:18:27 +02:00
zeroZshadow
8e33891593 Properly scan for OpenVPN TAP adapters
Handle errors correctly in SendFrame
2015-08-11 23:34:49 +02:00
Moncef Mechri
333f998123 Don't busy wait in the audio thread (ALSA)
When the emulation is paused and the ALSA backend is used, make the audio
thread wait on a condition variable instead of busy-waiting. This commit
fixes bug #7729

Since the ALSA API is not thread-safe, calls to snd_pcm_drop() and snd_pcm_prepare()
in AlsaSound::Clear() are protected by the same mutex as the condition variable in AlsaSound::SoundLoop()
to make sure that we do not call these functions while a call to
snd_pcm_writei() is ongoing.
2015-08-11 03:54:54 +02:00
Moncef Mechri
a0c5247743 Initialize ALSA before starting the audio thread
This fixes a race condition:

Before this commit, there was a race condition when starting a game:

Core::EmuThread(), after having started (but not necessarily completed)
the initialization of the audio thread, calls Core::SetState() which calls
CCPU::EnableStepping(), which in turns calls AudioCommon::ClearAudioBuffer().

This means that SoundStream::Clear() can be called before
AlsaSound::AlsaInit() has completed.
2015-08-11 03:54:54 +02:00
Lioncash
144ea9f4aa Arm64Emitter: Fix encoding of '2-reg misc' variant of FCMEQ 2015-08-10 19:48:36 -04:00
Tillmann Karras
0e725c0860 USBGecko: don't needlessly call StringFromFormat() 2015-08-10 12:33:49 +02:00
Markus Wick
e297e3e666 Merge pull request #2825 from lioncash/log
AudioCommon: Log to AUDIO, not DSPHLE
2015-08-10 10:25:51 +02:00
Moncef Mechri
8b767a1189 Use dummy audio backend if the selected backend fails to start
If the selected audio backend fails to Start() (which could happen for
example if there is no audio device), we currently still use the backend
anyway. This can lead to crashes on some platforms (such as Windows) and
is outright wrong anyway.

This commit fallbacks to the Null audio backend if the selected backend
couldn't be started.

This fixes bug #6001
2015-08-10 03:46:45 +02:00
Lioncash
4c6930d36c AudioCommon: Remove unused code from XAudio streams 2015-08-09 21:37:34 -04:00
Lioncash
3f78d74fc1 AudioCommon: Log to AUDIO, not DSPHLE
This code is not related to DSPHLE.
2015-08-09 21:36:03 -04: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
Anthony Serna
ca250f6b71 Specified the type of AA in OGL AA settings 2015-08-09 09:59:20 -07:00
Lioncash
ccca2982df Merge pull request #2819 from degasus/fix
PPCAnalyst: Mark function as static
2015-08-09 10:09:15 -04:00
degasus
bceab37801 PPCAnalyst: Mark function as static 2015-08-09 11:15:44 +02:00
Markus Wick
68a54daec3 Merge pull request #2817 from comex/clientca-typo
Forgot to add a slash in one bit of code I switched from D_WIIUSER_IDX to D_SESSION_WIIROOT_IDX.
2015-08-09 11:08:54 +02:00
flacs
6f2400ebc0 Merge pull request #2807 from aserna3/master
Removed audio shortcut from toolbar
2015-08-09 07:55:37 +02:00
comex
e20db1b2e3 Forgot to add a slash in one bit of code I switched from D_WIIUSER_IDX to D_SESSION_WIIROOT_IDX.
Fix that.
2015-08-08 23:16:29 -04:00
Lioncash
a488ab7a70 Merge pull request #2811 from Sonicadvance1/interpreter_dump
On unknown_instruction dump the full guest GPR state.
2015-08-08 14:57:06 -04:00
Tillmann Karras
145494144c Jit64: duplicate fres result into ps1
And since frD is completely overwritten now, avoid loading it at all.
2015-08-08 06:17:47 +02:00
Ryan Houdek
14a0b01854 Merge pull request #2812 from Tilka/typos
Gekko: fix typos in HID2
2015-08-07 10:56:22 -05:00
Markus Wick
59e48e0fcf Merge pull request #2801 from Tilka/stuff
x64Emitter: add MOVSLDUP/MOVSHDUP
2015-08-07 10:37:38 +02:00
Tillmann Karras
829a949708 Gekko: fix typos in HID2 2015-08-07 09:54:13 +02:00
Ryan Houdek
0326bf7164 On unknown_instruction dump the full guest GPR state. 2015-08-07 02:45:05 -05:00
Ryan Houdek
988c4f1de8 Have the disassembler show the PC next to host instructions. 2015-08-07 02:43:54 -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
Anthony Serna
d51267d13c Removed audio shortcut from toolbar
Removed audio.png
2015-08-06 22:35:59 -07: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
Lioncash
f79855ab46 Merge pull request #2803 from lioncash/fp
CheatSearchTab: Show floating point value equivalent
2015-08-06 14:23:11 -04:00
degasus
d3cf4034de DriverDetails: Disable GL_ARB_copy_image on mesa. 2015-08-06 19:41:36 +02:00
degasus
e2f42f8fd0 OGL: Move copy_image variable into backend. 2015-08-06 19:41:36 +02:00
Lioncash
bef7af1158 CheatSearchTab: Display floating point equivalent results 2015-08-06 10:09:12 -04:00
Lioncash
5882d76a6c CheatSearchTab: Convert wxListBox into a wxListView
Allows us to give the list view columns. This allows removal of monospace font use, as it's now a properly formatted list.
2015-08-06 10:09:00 -04:00
sigmabeta
6d6cb12b15 Android: Remove "fitSystemWindows" flag from MainActivity layout 2015-08-06 08:34:21 -04:00
sigmabeta
dc1f7aeb66 Android: Include newer versions of support libraries, which contain bugfixes 2015-08-06 08:26:31 -04:00
Tillmann Karras
439fb26b9b x64Emitter: add MOVSLDUP/MOVSHDUP 2015-08-06 10:39:43 +02:00
Tillmann Karras
f5a10bddee Jit64: use overloaded IsSimpleReg() where useful 2015-08-06 10:39:43 +02:00
Tillmann Karras
a3476415f6 JitRegCache: mark derived classes as final 2015-08-06 10:39:43 +02:00
Tillmann Karras
0d3acbd9c7 PPCAnalyst: drop needless forward declarations 2015-08-06 10:39:43 +02:00
Tillmann Karras
8adca82cc6 JitInterface: fix disassembly entry point
This adds the downcount check code to the disassembly text and removes the
bogus instructions at the end.
2015-08-06 10:18:46 +02:00
flacs
0821607b2f Merge pull request #2800 from lioncash/leak
UICommon: Fix a leak/bug in Disassembler retrieval
2015-08-04 20:36:01 +02:00
Lioncash
7387914529 UICommon: Fix a leak/bug in Disassembler retrieval 2015-08-04 14:28:32 -04:00
Rohit Nirmal
ac54bbe02d Fix building with PCH disabled. 2015-08-04 12:59:34 -05:00
flacs
0aad44c980 Merge pull request #2753 from Tilka/fix_warnings
Fix some warnings
2015-08-04 18:54:31 +02:00
Markus Wick
972faf42ed Merge pull request #2785 from lioncash/def
GeckoCode: Remove GetAddress function prototype
2015-08-04 17:44:15 +02:00
Markus Wick
19af6e0d93 Merge pull request #2787 from lioncash/memset
CPUDetect: Remove a memset call on the this pointer
2015-08-04 17:43:36 +02:00
Tillmann Karras
5a05187b3b Fix some warnings
reorder, sign-compare, pessimizing-move
2015-08-04 10:58:24 +02:00
comex
3ee302df75 Fix wording of invalid read/write message 2015-08-03 01:57:59 -04:00
Scott Mansell
5097a22844 Merge pull request #2794 from randomstuff/evdev-stable
Stable device identifier for evdev
2015-08-02 21:40:49 +12:00
Scott Mansell
8dd9d35689 Merge pull request #2653 from AdmiralCurtiss/netplay-video-mode-sync
Netplay: Sync Video Mode settings. (Progressive Scan and PAL60)
2015-08-02 12:42:21 +12:00
Gabriel Corona
2722f3f337 Stable device identifier for evdev 2015-08-02 01:51:06 +02:00
Scott Mansell
a1df1f5ae4 Widescreen Heuristic: Cleanup code. 2015-08-01 14:39:34 +12:00
Scott Mansell
615e5db0cb Make the GameCube game widescreen heuristic smarter.
The last heuristic wasn't quite smart enough and had a few
false positives in Mario Kart: Double Dash and Metroid prime 2.

Now we only activate if the game is rendering a 16:9
projection to a 4:3 viewport.
2015-08-01 13:21:53 +12:00
unknown
739ede2242 Fix code to comply with coding style 2015-07-31 20:00:36 -04:00
mirrorbender
0faba3b018 Changed the aspect ratio settings to account for NTSC/PAL pixel aspect ratios and VI scaling. 2015-07-31 19:58:02 -04:00
Admiral H. Curtiss
244e5224a7 Wiimote: Extend emulated Wiimote reconnect-on-button-press to attachments. 2015-07-30 20:06:27 +02:00
Lioncash
7ee0e75633 Remove unnecessary virtual keywords 2015-07-30 10:33:08 -04:00
Scott Mansell
567d0b20fa Merge pull request #2769 from phire/autodetect_widescreen
Heuristic to detect if a gamecube game is rendering 16:9 widescreen.
2015-07-29 18:23:35 +12:00
Lioncash
3a450f72f8 CPUDetect: Remove a memset call on the this pointer 2015-07-28 23:44:18 -04:00
Lioncash
df30910b06 UICommon: Pass string by const reference for HostDisassemblerLLVM 2015-07-28 22:32:34 -04:00
Lioncash
44e7a7bf91 GeckoCode: Remove GetAddress function prototype
GetAddress didn't have a definition for its prototype.
Also shortened the construction of the Code struct.
2015-07-28 22:10:39 -04:00
sigmabeta
6f27ad67e7 Android: Allow usage of Cached Interpreter core. 2015-07-28 17:16:14 -04:00
Markus Wick
f800a5b93f Merge pull request #2695 from degasus/jit64
Jit64: Fallback support of branching instructions
2015-07-28 16:37:41 +02:00
Markus Wick
0c4209a0f9 Merge pull request #2716 from degasus/jitgeneric
CachedInterpreter: New kind of jit which always fallback to interpreter.
2015-07-28 16:37:25 +02:00
degasus
ec0582ee5b JitArm64: fix lfd
Bug found by HdkR.
2015-07-28 00:13:50 +02:00
degasus
b7c4886d66 JitArm64: fix stfsux 2015-07-27 23:07:38 +02:00
Anthony Serna
7e8cfff3c0 Optimized addx()
Removed some code duplication

Fixed whitespace

Moved else condition
2015-07-27 11:40:15 -07:00
booto
86dce8b0f7 VideoCommon: reduce level of debug output 2015-07-27 10:22:40 +08:00
Scott Mansell
bb60bcc42d Heuristic to detect if a gamecube game is rendering 16:9 widescreen.
Someone suggested on IRC that we should make a database of memory
locations in GameCube games which contain the 'Widescreen' setting
so we can automatically detect if the game is in 4:3 or 16:9 mode.

But that's hardly optimal, when the game actually tells the gpu
what aspect ratio to render in. 10 min and 6 lines of code later,
this is the result. Not only does it detect the correct aspect ratio
it does so on the fly.

I'm a little suprised nobody thought about doing this before.
2015-07-27 10:40:41 +12: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
sigmabeta
e7f98c7f95 Android TV: Add first-run copy operations to TvMainActivity. 2015-07-25 14:09:58 -04:00
booto
9d055ba5f2 Video: Trying to fix D3D/XFB disabled regression 2015-07-26 00:59:00 +08:00
sigmabeta
245b58124e Android TV: Add settings row, enabling access to other screens. 2015-07-25 12:26:31 -04:00
sigmabeta
0b1212b77d Android TV: Add row listing all games 2015-07-25 12:26:31 -04:00
sigmabeta
7c14996e3e Android TV: Implement game selector activity in new Android TV UI 2015-07-25 12:26:31 -04:00
sigmabeta
a8aa19f1fa Android: Implement UI for configuration of all 4 Wiimotes. 2015-07-25 11:26:18 -04:00
Jules Blok
3801f89125 Merge branch 'stable' 2015-07-25 14:09:02 +02:00
Jules Blok
3814b5b702 HotkeyManager: Activate hotkey when key is pressed.
As opposed to activating the hotkey when it is released.
2015-07-25 13:53:27 +02:00
Jules Blok
75fc213359 FrameTools: Disable hotkeys while a modal dialog is shown. 2015-07-25 13:05:00 +02:00
Jules Blok
0092f5207b Core: Don't return true on IsRunning() when stopping emulation. 2015-07-25 13:04:37 +02:00
Jules Blok
59eb7a864d Revert "Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did that before."
This reverts commit ba664b3293.

Added documentation to Core::Shutdown() to prevent breaking changes.
2015-07-25 13:04:22 +02:00
Jules Blok
dfe5ed54a4 Merge pull request #2770 from Armada651/modal-hotkeys
FrameTools: Disable hotkeys while a modal dialog is shown.
2015-07-25 13:02:13 +02:00
Jules Blok
fbd5bb815c Merge pull request #2538 from Armada651/thread-revert
Revert "Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did that before."
2015-07-25 13:02:04 +02:00
booto
efd250494d Video: stride in bytes rather than pixels 2015-07-25 02:48:56 +08:00
booto
c43ae67b3b RealXFB sizes don't get scaled by IR
When calculating the size of the undisplayed margin in the case where
fbWidth != fbStride for RealXFB for displaying in the output window,
we do not scale by IR - RealXFB is implicitly 1x.
2015-07-25 01:52:13 +08:00
booto
2e28ed3291 Video: respect stride of efb copies to xfb 2015-07-25 01:52:12 +08:00
sigmabeta
1cb07b1c48 Android: Wiimote UI Fixup 2015-07-23 23:17:16 -04:00
sigmabeta
008ac0eeb0 Android: Add UI for Wiimote configuration. 2015-07-23 22:11:11 -04:00
Lioncash
0babb80652 PostProcessingConfigDialog: Remove an unnecessary format call 2015-07-23 14:39:05 -04:00
Jules Blok
8eee13e7af FrameTools: Disable hotkeys while a modal dialog is shown. 2015-07-23 09:09:01 +02:00
Jules Blok
ed50d61287 Merge branch 'stable' 2015-07-23 08:12:57 +02: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
degasus
1c9b5efb4c CachedInterpreter: New kind of jit which always fallback to interpreter. 2015-07-22 23:19:20 +02:00
Jules Blok
703b1e8654 CFrame: Ignore "Pause on Focus Lost" when not started. 2015-07-22 19:31:23 +02:00
Markus Wick
6bcdae616b Merge pull request #2679 from Tinob/master
Implement scaled partial texture updates
2015-07-22 19:04:04 +02: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
Jules Blok
5535c5c54c Core: Don't return true on IsRunning() when stopping emulation. 2015-07-22 09:44:39 +02:00
Markus Wick
deef164c7b Merge pull request #2761 from lioncash/unused
DolphinWX: Remove unused code from MemcardManager
2015-07-22 09:39:53 +02:00
Jules Blok
b6c4d5792b Revert "Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did that before."
This reverts commit ba664b3293.

Added documentation to Core::Shutdown() to prevent breaking changes.
2015-07-22 09:15:19 +02:00
flacs
40162fdfc1 Merge pull request #2743 from aserna3/master
Added some warning text about fractional IRs to IR selection description
2015-07-22 08:25:05 +02: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
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
Scott Mansell
9ae8e38a8a Merge pull request #2717 from phire/fix-reordering
PPCAnalyst: Don't swap instruction which might cause interrupts.
2015-07-22 05:16:51 +12:00
Lioncash
fe2f57361e DolphinWX: Remove unused code from MemcardManager 2015-07-21 00:12:40 -04: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
skidau
3d6ee7313d Merge pull request #2689 from RisingFog/patch-1
Fix TASInput Crash When Stick Bitmap Is Null
2015-07-21 11:41:38 +10: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
Trace Bullet
caa2f15105 DiscIO: Check if m_Disc is null in ParsePartitionData() 2015-07-20 16:21:34 +02:00
Jules Blok
809e480973 Merge branch 'stable' 2015-07-20 16:04:18 +02:00
Jules Blok
ccb56ddf97 CFrame: Claim all keyboard events on OS X. 2015-07-20 10:11:11 +02:00
skidau
ad68de59bc Merge pull request #2665 from AdmiralCurtiss/relative-memory-card-paths
GameCube Config: Store paths relatively when selected file is within Dolphin's directory. (Windows)
2015-07-20 14:09:36 +10:00
skidau
654c44b870 Merge pull request #2714 from lioncash/clamp
Core: Use clamps for nunchuk and wiimote x,y,z values
2015-07-20 14:08:00 +10:00
skidau
4b260fbd66 Merge pull request #2724 from AdmiralCurtiss/wiimote-reconnect-on-button-press
Wiimote: Reconnect a disconnected Wiimote when a button is pressed.
2015-07-20 14:06:48 +10:00
skidau
d3a19fa62c Merge pull request #2750 from Streetwalrus/dspspy_gc
DSPSpy: support dumping to SD Gecko in slot B on GameCube
2015-07-20 14:06:30 +10:00
Lioncash
ca703e6499 Merge pull request #2751 from lioncash/title
JitWindow: Use TitleCase for the JIT block viewer tab
2015-07-19 22:32:28 -04:00
Lioncash
40b89627f1 JitWindow: Use TitleCase for the JIT block viewer tab
Makes the title consistent with all other tabs.
2015-07-19 18:20:24 -04:00
Markus Wick
d622ae3e7b Merge pull request #2699 from Tilka/fnma
Interpreter: fix rounding of negating FMA instructions
2015-07-19 17:39:19 +02:00
Streetwalrus Einstein
bed35a323b DSPSpy: support dumping to SD Gecko in slot B on GameCube 2015-07-19 17:26:30 +03:00
Markus Wick
b71430723a Merge pull request #2748 from Tilka/drop
Jit64: small cleanup
2015-07-19 08:26:42 +02:00
Tillmann Karras
bcdafc7e34 Interpreter: fix rounding of FNMA instructions
x86:     round(-a*c +/- b)
PowerPC: -round(a*c +/- b)

If the rounding mode is set to +/- infinity, the order of round/negate
matters.
2015-07-18 22:54:15 +02:00
Tillmann Karras
89954d658c Jit64: drop needless casts 2015-07-18 22:33:42 +02:00
Jeffrey Pfau
e948aec6cd DolphinWX: Fix build if libusb is disabled 2015-07-17 22:41:12 -07:00
Lioncash
35e9ada2b0 Merge pull request #2709 from lioncash/atomic
Core: Change a volatile into an atomic
2015-07-17 10:24:02 -04:00
Tillmann Karras
334c1bfdf6 Jit64[IL]: drop WriteCallInterpreter 2015-07-17 03:25:38 +02:00
Lioncash
57ca783b72 PathConfigPane: Use shortened variants of the browse buttons 2015-07-16 18:03:14 -04:00
Admiral H. Curtiss
935292c6fc DolphinWX: In Host_ConnectWiimote(), instead of calling CFrame::ConnectWiimote() directly, dispatch an event that will call it for us in the GUI thread.
This eliminates a possible stutter/short freeze that can happen during PowerPC::Pause().
2015-07-16 02:35:57 +02:00
Admiral H. Curtiss
5594b107eb Wiimote: (Re-)Connect a disconnected real Wiimote when a button is pressed.
Where disconnected is defined as: The real physical device is still connected to the PC, but the emulated Wii sees the Wiimote as disconnected.
2015-07-16 02:35:55 +02:00
Ryan Houdek
c0f80ca524 Merge pull request #2736 from degasus/farcache
JitArm64: Farcache
2015-07-15 08:41:58 -05:00
degasus
6f38d1baa1 CodeBlock: Add a shared IsAlmostFull function
This function shall keep care about the low watermark of code space.
If we ran out of space, the JITs shall clear their block cache.
2015-07-15 08:53:05 +02:00
sigmabeta
12fd46e12d Android TV: Add title text to in-game menu, and make the menu scrollable. 2015-07-14 17:45:00 -04:00
sigmabeta
c0315fcf78 Android TV: Implement Save and Load state menus 2015-07-14 17:45:00 -04:00
sigmabeta
d191d8851a Android TV: Visual tweaks & glitch fixes 2015-07-14 17:45:00 -04:00
sigmabeta
9dd4cee1b7 Android TV: Fix a layering issue on the ingame menu 2015-07-14 17:45:00 -04:00
sigmabeta
957691444d Android TV: Replace toolbar on EmulationActivity with a full-screen menu. 2015-07-14 17:45:00 -04:00
mathieui
cae00254a5 GCAdapter: Only start the thread on startup if direct connect is enabled 2015-07-14 17:15:26 +02:00
mathieui
ac8621ccab GCAdapter: Disable the scanning thread when direct connect is disabled
The goal of this commit is to let people who experience driver issues
with libusb and windows disable the scanning thread (to avoid mouse
issues, keyboard issues, and audio issues).

Also disable the rumble setting when the adapter driver is not detected,
and don’t do anything if libusb can’t init for some reason.
2015-07-14 12:35:40 +02:00
Anthony Serna
18685e2aef Added some warning text about fractional IRs. 2015-07-13 23:33:21 -07:00
skidau
a12a4520d8 Merge pull request #2684 from TraceBullet/master
DiscIO: Check if m_Disc is null in ParsePartitionData()
2015-07-14 10:56:12 +10:00
sigmabeta
658c49fab3 Android:Changes to simplify command-line building of the app, and bugfixes to the Gradle script 2015-07-13 09:37:44 -04:00
Scott Mansell
da38e3a8ae Merge pull request #2741 from endrift/fix-freebsd-build-stable
Fix FreeBSD (stable)
2015-07-13 19:51:18 +12:00
Scott Mansell
dc25277a2f Merge branch 'stable' into 'master' 2015-07-13 12:40:38 +12:00
Scott Mansell
87e19f1c19 Merge pull request #2705 from phire/fixrumble
evdev: Delete rumble effects on the correct file descriptor.
2015-07-13 12:05:54 +12:00
degasus
a5c10ded55 JitArm64: Fix copy&paste issue 2015-07-12 09:41:32 +02:00
degasus
7196901b40 JitArm64: Move all FLUSH_MAINTAIN_STATE to the far cache 2015-07-12 09:41:32 +02:00
degasus
b8dd68beef JitArm64: Far Code Cache 2015-07-12 09:41:32 +02:00
Jeffrey Pfau
fff113b64f Fix 64-bit FreeBSD build 2015-07-11 23:09:11 -07:00
Jeffrey Pfau
a6437f629c Common: Use more portable invocation of shm_open 2015-07-11 23:09:11 -07:00
Jeffrey Pfau
2eb553fdb7 Fix FreeBSD build 2015-07-11 23:09:11 -07:00
skidau
cc79334faf Merge pull request #2712 from JosJuice/wbfs-beyond-end-of-disc
WbfsBlob: Don't enter an infinite loop when reading beyond end of disc
2015-07-12 15:34:56 +10:00
flacs
b30ae1b9f8 Merge pull request #2730 from lioncash/undef
SI_DeviceGCController: Remedy undefined behavior regarding shifts
2015-07-12 06:30:50 +02:00
Admiral H. Curtiss
5c0033e6d9 DolphinWX: ParseHotkeys() should use the State::NUM_STATES constant instead of a hardcoded 10. 2015-07-12 05:18:54 +02:00
Admiral H. Curtiss
878629a2bf DolphinWX: GetCmdForHotkey() should have Load Last Slot 9/10 as well. 2015-07-12 05:16:42 +02:00
Admiral H. Curtiss
b3471e0abc DolphinWX: Add options to Load Last Slot 9/10 to menu. 2015-07-12 04:14:22 +02:00
skidau
c70f3f4b45 Merge pull request #2731 from skidau/PAL-Progressive
Removed the ability for PAL televisions to be set to progressive mode.
2015-07-10 16:00:23 +10:00
Admiral H. Curtiss
e462422ef7 Wiimote: (Re-)Connect a disconnected emulated Wiimote when a mapped button is pressed. 2015-07-10 04:29:56 +02:00
skidau
6d2f85f183 Removed the ability for PAL televisions to be set to progressive mode. 2015-07-10 10:26:24 +10:00
Lioncash
6e90d1e433 SI_DeviceGCController: Remedy undefined behavior regarding shifts
Left shifting a negative left-hand operand is undefined behavior per section 5.8.2 of the C++11 standard.
2015-07-09 13:08:40 -04:00
flacs
95fed00cbb Merge pull request #2729 from lioncash/magic
DolphinWX: Get rid of some magic numbers in MemoryView and MemoryWindow
2015-07-09 16:35:58 +02:00
Lioncash
81878d7b56 DolphinWX: Get rid of some magic numbers in MemoryView and MemoryWindow 2015-07-09 07:59:34 -04:00
Lioncash
5768161052 Core: Pass string by const reference in SaveScreenShot 2015-07-09 07:24:30 -04:00
Justin Chadwick
b3a0b6def4 Disables assert messages that seem to be invalid. 2015-07-08 16:12:32 -04:00
Rohit Nirmal
c38ae5236e Fix building with PCH disabled. 2015-07-08 13:52:43 -05:00
Lioncash
b8706791d5 DolphinWX: Pass string by const reference in CISOProperties constructor 2015-07-08 09:48:07 -04: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
Markus Wick
f6766dd347 Merge pull request #2722 from lioncash/statement
VertexLoaderBase: Adjust the scope of a boolean variable
2015-07-08 09:37:06 +02:00
Tillmann Karras
2559a6f25c VertexLoader: avoid empty lines in perf-$pid.map 2015-07-08 07:17:28 +02:00
Lioncash
df379dabae VertexLoaderBase: Adjust the scope of a boolean variable
if a or b do actually turn out to be null, this can cause a null pointer dereference.
2015-07-07 18:33:58 -04:00
Scott Mansell
a31ebb9bcd PPCAnalyst: Don't swap instruction which might cause interrupts.
fcmpo and fcmpu can be matched by the REORDER_CMP pass, as they set CR0
and they can cause interrupts if the fpu is disabled.
So we add an extra check to make sure op a is an integer op too.
2015-07-07 22:37:48 +12:00
Scott Mansell
4ffeb057cc Interpreter: Fix bug with icache emulation.
The constructor sets up way_from_valid and way_from_plur as fast lookup
tables for implementing the PLRU algrothm. Then the Init function
memsets them to zero, meaning the instruction cache will now always
choose the first way in each set.

This degrades the cache from 128 sets, 8 way to 128 sets, 1 way.

Not only does fixing this bug increase accuracy, but it increases
preformance too, giving a 1% speedup to interpreter.
2015-07-07 22:20:36 +12:00
Scott Mansell
c54534ee3b Merge pull request #2649 from phire/FileIO_Sanity
IPC_HLE: Don't open/close files for every single file operation.
2015-07-07 17:16:28 +12:00
Scott Mansell
6e969133f5 evdev: Delete rumble effects on the correct file descriptor.
Was using m_id insted of m_fd.
Also re-arrange the code so rumble effects always get deleted instead of
just on stop commands.
2015-07-07 16:59:10 +12:00
degasus
effb626bef JitArm64: Implement EXCEPTION_FPU_UNAVAILABLE support.
Seems like this flag was missed.
This patch was mostly done by HdkR.
2015-07-06 23:40:20 +02:00
Lioncash
25bd55b7aa Core: Use clamps for nunchuk and wiimote x,y,z values 2015-07-06 13:34:11 -04:00
Lioncash
e3c6eb2a85 WiimoteEmu: Fix use of spaces.
There should be a tab here instead.
2015-07-06 13:20:24 -04:00
JosJuice
9018b546c7 WbfsBlob: Don't enter an infinite loop when reading beyond end of disc
read_size remained 0 when the "Read beyond end of disc" error occurs,
which made the while (nbytes) loop never end. As a fix, SeekToCluster
now explicitly sets available to 0 when the error occurs, and Read
checks for it.
2015-07-06 15:41:37 +02:00
Lioncash
614a656b83 DSPInterpreter: Remove an unused typedef
DSPTables already has an equivalent of this, which it uses.
2015-07-06 06:47:13 -04:00
Markus Wick
b6ee886540 Merge pull request #2708 from lioncash/override
MMIO: Add missing override specifiers
2015-07-06 12:36:37 +02:00
Lioncash
af4cfd32d4 Core: Change a volatile into an atomic
Also changes s_drawn_video into an atomic, as it's used across threads as well.
2015-07-06 06:25:51 -04:00
Lioncash
c7193fcd41 MMIO: Add missing override specifiers 2015-07-06 06:11:31 -04:00
Scott Mansell
0b0f70aad4 Revert "Merge pull request #2358 from Tilka/pie"
This reverts commit 0f7f8f8774, reversing
changes made to 9f15054358.
2015-07-06 09:05:25 +12:00
Markus Wick
009148d401 Merge pull request #2701 from mickdermack/pr-jitnull
Prevent nullptr dereference on a crash with no JIT present
2015-07-05 16:37:29 +02:00
Michael Ehrenreich
2b2af12466 Prevent nullptr dereference on a crash with no JIT present
JitInterface::HandleFault would dereference jit which is NULL, causing a stack overflow through infinite exception recursion.
2015-07-05 14:24:51 +02:00
Sintendo
ce10525056 Eliminate branch in GenFres 2015-07-05 11:18:59 +02:00
Scott Mansell
08fcc7bf84 IPC_HLE: Cleanup device definitions with templates.
Less copy/pasted code will make future modifications easier.
2015-07-05 02:05:39 +12:00
Scott Mansell
1d5cda9820 IPC_HLE: Reimplement fix for issues 2917/5232 with more sanity.
Instead of opening... and... closing... files... after... every...
file... operation... (which can be slow, especially if a virus scanner
is running), we catch attempts to open the same file twice and
only open one copy of the file.
2015-07-05 02:01:45 +12:00
Jeffrey Pfau
bd196e8c71 Common: CallLambdaTrampoline can return a value
As it is currently written, CallLambdaTrampoline does not return a
value. However, some of the functions that are being wrapped may
return a value that the JIT is expected to understand. A compiler
*cough cough clang* may opt to alter %rax after the wrapped lambda
returns, e.g. popping a previous value, which can clobber the
return value. If we actually have a return value, then the compiler
must not clobber it.
2015-07-05 00:32:26 +12:00
Tillmann Karras
64b51df55d evdev: fix -Wunused-private-field warning 2015-07-04 14:14:15 +02:00
Scott Mansell
d2578000bb Merge branch 'stable' 2015-07-04 23:43:36 +12:00
flacs
3bbb2ede9c Merge pull request #2697 from endrift/fix-jit-trampoline
Common: CallLambdaTrampoline can return a value
2015-07-04 11:59:00 +02:00
Jeffrey Pfau
c9a25f9484 Common: CallLambdaTrampoline can return a value
As it is currently written, CallLambdaTrampoline does not return a
value. However, some of the functions that are being wrapped may
return a value that the JIT is expected to understand. A compiler
*cough cough clang* may opt to alter %rax after the wrapped lambda
returns, e.g. popping a previous value, which can clobber the
return value. If we actually have a return value, then the compiler
must not clobber it.
2015-07-04 00:57:41 -07:00
Lioncash
eb3c5a240f Merge pull request #2696 from RisingFog/tasinput
Fix random hangs when loading savestates with TAS Input
2015-07-04 03:52:40 -04:00
degasus
30869135d5 Jit64: Fallback support of branching instructions 2015-07-04 04:12:25 +02:00
Fog
10f50f33fb Fix random hangs when loading savestates with TAS Input 2015-07-03 21:56:14 -04:00
RGamma
3639755120 Fix TASInput Crash When Stick Bitmap Is Null
Patch provided by RGamma
2015-07-03 18:37:35 -04:00
Tillmann Karras
afea72edfe Revert "Interpreter: assign directly instead via variables"
This reverts commit 174ada3a62.
2015-07-03 21:10:18 +02:00
Markus Wick
3fc070c4fc Merge pull request #2680 from degasus/idle
Interpreter: Idle skipping support
2015-07-03 19:52:05 +02:00
sigmabeta
3ad151062b Android TV: Game selection screen highlights games with accent color. 2015-07-03 13:46:54 -04:00
skidau
8a50dc857b Merge pull request #2681 from phire/evdev-stable
Linux: Add an evdev based controller backend, to replace SDL.
2015-07-03 10:28:08 +10:00
flacs
c53e7f2842 Merge pull request #2685 from lioncash/const
Arm64Emitter: Add a missing const specifier for an array table
2015-07-03 00:22:58 +02:00
Trace Bullet
64bd20aba7 DiscIO: Check if m_Disc is null in ParsePartitionData() 2015-07-02 11:45:22 -04:00
Lioncash
d09d59007a Arm64Emitter: Add a missing const specifier for an array table 2015-07-02 11:09:44 -04:00
Rodolfo Bogado
d8cd2c3252 Implement scaled partial texture updates 2015-07-02 08:53:40 -03:00
Admiral H. Curtiss
6a33f174de GC Adapter: Do not attempt to claim_interface when libusb_open() returns an error.
Fixes a crash / nullptr dereference when the adapter is plugged in but
no drivers are installed for it, on Windows.
2015-07-01 23:49:39 +02:00
Jules Blok
bee7f19d76 Merge pull request #2682 from AdmiralCurtiss/libusb-fix-win-crash-without-drivers
GC Adapter: Do not attempt to claim_interface when libusb_open() fails.
2015-07-01 23:48:24 +02:00
degasus
245a639e2c JitArm64: Partially fallback on bcctrx
No need to assert, fallbacks on branching instructions now works fine.
2015-07-01 17:58:17 +02:00
degasus
0054c4e0d9 JitArm64: Drop icbi instruction
It was already just a fallback + exit. Now we emit the exit for all affected fallbacks.
2015-07-01 17:58:17 +02:00
degasus
dc83c8912f JitArm64: Support branching fallbacks 2015-07-01 17:58:17 +02:00
Anthony Serna
9b95faaed7 Small changes to description to "Store EFB Copies to Texture Only" 2015-07-01 15:48:19 +02:00
Anthony Serna
8d69c2b4b7 Small changes to description to "Store EFB Copies to Texture Only" 2015-07-01 15:46:16 +02: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
Admiral H. Curtiss
08b952ef31 GC Adapter: Do not attempt to claim_interface when libusb_open() returns an error.
Fixes a crash / nullptr dereference when the adapter is plugged in but
no drivers are installed for it, on Windows.
2015-07-01 01:29:04 +02:00
Scott Mansell
77183899e0 evdev: Support axis with ranges which extend below zero. 2015-07-01 10:13:05 +12:00
Scott Mansell
2721fdf8a9 Linux: Add an evdev based controller backend, to replace SDL. 2015-07-01 10:13:05 +12:00
Markus Wick
45fde6caf5 Merge pull request #2669 from stgn/new-dsp-coef
Audio: new dsp_coef.bin with windowed sinc filter coefficients
2015-06-30 22:02:05 +02:00
degasus
717d4bfbcc Interpreter: Idle skipping support 2015-06-30 20:11:23 +02:00
Jeffrey Pfau
6f8a38cefb WiimoteReal: Add IOHIDDevice support for OS X 2015-06-29 23:13:18 -07:00
Shane Nelson
388ab13db1 Audio: new dsp_coef.bin with windowed sinc filter coefficients 2015-06-29 22:24:24 -04: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
Stevoisiak
7248f9b524 Minor spelling corrections 2015-06-29 14:51:21 -04:00
Markus Wick
134a18fdad Merge pull request #2674 from lioncash/emplace
Use emplace() instead of insert() where applicable for maps.
2015-06-29 17:19:08 +02:00
Jules Blok
c06342c3cf Merge branch 'stable' 2015-06-29 11:04:17 +02:00
Lioncash
daa205990f Use emplace() instead of insert() where applicable for maps. 2015-06-28 19:52:40 -04:00
Jules Blok
3f39e38372 CheatSearchTab: Check Core state instead of checking a memory pointer. 2015-06-28 18:28:55 +02:00
Jules Blok
1120132d26 Merge branch 'stable' 2015-06-28 13:28:23 +02:00
JosJuice
66136fc710 Fix more game list name encoding errors caused by 4.0-6419 (d7900b4)
4.0-6442 (a26cf63) didn't fix names read from INIs or titles.txt.
2015-06-28 10:39:24 +02:00
Admiral H. Curtiss
c5b81b1aff GameCubeConfig: Case insensitive compare & absolute path compare for the part-of-exe-dir check. 2015-06-27 18:34:54 +02:00
Admiral H. Curtiss
583e3fd9e0 GameCubeConfig: If the user selects a memcard file path within Dolphin's directory, store the path relative to it.
This makes Dolphin more portable in portable mode, since the memory card file is still found if the directory is moved somewhere else.

This also means that we have to explicitly compare absolute paths if we want to check for both slots containing the same file.
2015-06-27 01:11:44 +02:00
Jules Blok
a71e81a143 Merge pull request #2659 from Armada651/openal-conv
OpenALStream: Fix sample conversion.
2015-06-27 00:13:02 +02:00
Admiral H. Curtiss
df70f50fdf GetExeDirectory() shouldn't return paths with /../ in the middle. 2015-06-26 23:51:40 +02:00
sigmabeta
fd82f90fce Android: Show transition animation when exiting game. 2015-06-26 15:01:23 -04:00
Admiral H. Curtiss
69b7296fc2 WiimoteReal: Make sure that Wiimote thread isn't already running before starting it.
This fixes a crash when switching a Wiimote's internal slot or type in the Dolphin config.
2015-06-26 20:48:45 +02:00
Jules Blok
cff6d9f922 Merge pull request #2640 from AdmiralCurtiss/real-wiimote-crash-fix
WiimoteReal: Fix crash when switching a real Wiimote to a different slot or type during emulation.
2015-06-26 20:33:50 +02:00
Admiral H. Curtiss
716c54217a WiimoteReal: Make sure that Wiimote thread isn't already running before starting it.
This fixes a crash when switching a Wiimote's internal slot or type in the Dolphin config.
2015-06-26 17:12:18 +02:00
sigmabeta
0fcf0e1d21 Android: Show transition animation while game loads. 2015-06-26 08:32:51 -04:00
Tillmann Karras
2711d5201b Interpreter: turn SNaNs into QNaNs 2015-06-26 09:29:18 +02:00
Tillmann Karras
b78310bbe5 Interpreter: simplify fres 2015-06-26 09:29:18 +02:00
Tillmann Karras
174ada3a62 Interpreter: assign directly instead via variables 2015-06-26 08:16:34 +02:00
Tillmann Karras
b2c21e800a Interpreter: drop unused macros 2015-06-26 08:16:34 +02:00
Tillmann Karras
ca36ff0551 Interpreter: consolidate fdiv/fdivs/ps_div 2015-06-26 08:07:46 +02: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
sigmabeta
0679e43efe Android: Show screenshot on EmulationActivity before game starts. 2015-06-25 21:43:00 -04:00
Jules Blok
da7ec75350 Merge pull request #2643 from comex/fix-do-file-search
Fix DoFileSearch returning the passed-in directories themselves.
2015-06-25 15:20:16 +02:00
comex
384a1b4e3b Fix DoFileSearch returning the passed-in directories themselves.
Fixes https://code.google.com/p/dolphin-emu/issues/detail?id=8697&can=3
2015-06-25 15:17:52 +02:00
Jules Blok
86dd81cf6b OpenALStream: Fix sample conversion.
Looks like it wasn't symmetric anymore.
2015-06-25 12:42:41 +02:00
Lioncash
75006056f6 Merge pull request #2658 from sigmabeta/android-dont-crash
Android: Don't crash trying to hide toolbar in game.
2015-06-25 06:38:02 -04:00
Jules Blok
75a9740ab7 Merge branch 'stable' 2015-06-25 12:24:15 +02:00
Jules Blok
8fd5f249fa Merge pull request #2656 from Armada651/ogl-inv-depth
OGL: Allow inverted depth ranges.
2015-06-25 12:06:56 +02:00
Lioncash
0034492151 Add an OSD notification for screenshot saving 2015-06-25 09:23:37 +02:00
Jules Blok
30eae0d258 Merge pull request #2657 from lioncash/screenshot
Render: Add an OSD notification for screenshot saving
2015-06-25 09:22:26 +02:00
sigmabeta
e970f757d0 Android: Don't crash trying to hide toolbar in game. 2015-06-24 22:53:33 -04: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
Lioncash
67c5ce5d96 Add an OSD notification for screenshot saving 2015-06-24 21:44:38 -04:00
Jules Blok
dbfdbf7dbd D3D: Cosmetics.
Merge two cases which should've already been merged.
2015-06-24 23:16:53 +02:00
Jules Blok
743296f1c4 OGL: Allow inverted depth ranges. 2015-06-24 22:28:36 +02:00
Jules Blok
2a5dd69c72 Merge branch 'stable' 2015-06-24 19:34:16 +02:00
mimimi085181
829fc3dc2d Quick fix for an invalid iterator 2015-06-24 19:12:46 +02:00
Tillmann Karras
6d273f6119 Jit64: fix pre-SSE4.1 fallback of ps_sum1 2015-06-24 18:32:10 +02:00
Jules Blok
519a7c4a29 Merge pull request #2652 from Tilka/ps_sum1
Jit64: fix pre-SSE4.1 fallback of ps_sum1 with AccurateNaNs=True
2015-06-24 18:28:33 +02:00
Tillmann Karras
2bd11469a5 Jit64: fix pre-SSE4.1 fallback of ps_sum1 2015-06-24 16:48:26 +02:00
Tillmann Karras
a725c06425 Logging: trigger _assert_() in release builds 2015-06-24 15:16:55 +02:00
Tillmann Karras
83ab721939 Fix -Wformat-extra-args warning 2015-06-24 14:44:09 +02:00
Admiral H. Curtiss
84e42904a2 Netplay: Sync Video Mode settings. (Progressive Scan and PAL60)
Must match so that Wii games don't desync, especially PAL games.
2015-06-24 12:41:10 +02:00
Tillmann Karras
5b23182793 Common: drop GEKKO define
Afaict, it was used to build parts of Dolphin with DSPSpy, but that's
been broken forever, so lets clean up a little bit.
2015-06-24 12:13:41 +02:00
Scott Mansell
8b4734133e IPC_HLE: Don't open/close file for every single file operation.
On the first boot of Pokemon Snap it copies a 144KB file to the Wii's
NAND, but it only copies 32 bytes per IPC write call.

This was causing dolphin to open and close the same file over 4000
times. This wouldn't usually be a huge issue, except some operating
systems (namely Windows) allow 3rd party programs (namely antivirus
software) to hook all accesses to the filesystem.

This causes the antivirus software to scan the same file for viruses
4000+ times, which is kind of slow.

This fix reduces the initial boot time of pokemon snap from 3+ min
to just a few seconds. Could also improve other games which write
things to NAND.

Will break a few things, see the next commit for an improved fix.
2015-06-24 19:23:10 +12:00
Markus Wick
8493feb89f Merge pull request #2602 from mimimi085181/partial-texture-updates2
Support partial texture updates via efb copies
2015-06-24 09:22:50 +02:00
Scott Mansell
03124ec3f0 IPC_HLE: Simplify lifecycle of devices with shared pointers.
This also fixes a memory/filehandle leak when loading savestates.
2015-06-24 19:22:04 +12:00
Eder Bastos
7935c1c57a Android: Ensure that the target folder for screenshots exists before attempting to save. 2015-06-23 23:08:10 -04:00
sigmabeta
8ca620db7f Android: Invalidate Picasso screenshot cache every time a screenshot is displayed. 2015-06-23 22:36:27 -04:00
sigmabeta
a028805626 Android: Save screenshot at end of an emulation session. 2015-06-23 22:22:01 -04:00
sigmabeta
6b24b604e5 Android: MainActivity now contains a tab switcher separating games by platform. 2015-06-23 21:54:09 -04:00
sigmabeta
8b5b83c29a Android Refactor: GameGridActivity is now MainActivity, and uses a Toolbar that reacts to the game grid scrolling. 2015-06-23 21:54:09 -04:00
sigmabeta
fa2d06e7a4 Android: Switch all activities to AppCompat-based Material themes, and use Support Library version of Floating Action Button. 2015-06-23 21:54:02 -04: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
Tillmann Karras
c9af7def28 Fix some warnings 2015-06-23 21:11:56 +02:00
Jules Blok
21a70903ed Merge branch 'stable' 2015-06-23 20:16:55 +02:00
Tillmann Karras
de3c01dc2a x64FPURoundMode: fix comments 2015-06-23 02:17:36 +02:00
flacs
319394d63e Merge pull request #2637 from lioncash/devirt
Mixer: Devirtualize the logging functions.
2015-06-22 23:24:22 +02:00
comex
afaa0d92df Merge pull request #2613 from AdmiralCurtiss/netplay-sram-sync
Netplay: Sync GameCube SRAM.
2015-06-22 12:48:38 -04:00
degasus
5bc88d5c6a Revert "GeometryShaderGen: Don't use centroid in for input variables."
This reverts commit 4cbaddb7ad.
2015-06-22 17:20:41 +02:00
comex
6d2631a173 Merge pull request #2639 from rukai/master
Translations fix for Linux & Mac OS X
2015-06-21 17:10:07 -04:00
comex
acd6cb79a4 Fix DoFileSearch returning the passed-in directories themselves.
Fixes https://code.google.com/p/dolphin-emu/issues/detail?id=8697&can=3
2015-06-21 16:07:56 -04: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
comex
f6d27a5ce8 Merge pull request #2641 from comex/trivial-fixes
Trivial fixes
2015-06-21 15:51:25 -04:00
comex
700b850acd Fix misc. clang warnings - mostly complaints about inconsistent use of override.
Previously, MacOpenFile only overrode anything on OS X; otherwise it was
just a useless method, which is presumably why it wasn't marked override
in the first place.  Address this more sanely by wrapping it in #ifdef
__APPLE__.
2015-06-21 15:42:49 -04:00
mimimi085181
0ed6b5623f Support partial texture updates via efb copies 2015-06-21 14:02:44 +02:00
rukai
c9e8179c5a Added namespace to GetBundleDirectory to compile on Mac OSX 2015-06-21 20:41:41 +10:00
rukai
bbde9cbeae Swapped out spaces for tabs 2015-06-21 20:41:41 +10:00