Commit Graph

18262 Commits

Author SHA1 Message Date
Lioncash
2bf05a544d VertexManager: Correct variable naming scheme
Altered to indicate regular class members
2016-08-22 20:01:00 -04:00
Markus Wick
8d186a468f Merge pull request #4136 from Helios747/custom_textures_hotkey
[Hotkey] Added custom textures toggle
2016-08-22 16:59:01 +02:00
Markus Wick
8177eddd68 Merge pull request #4125 from leoetlino/fix-iterate-crash
InputConfigDiag: Fix a segfault caused by missing check
2016-08-22 16:58:14 +02:00
Markus Wick
09b955fbdd Merge pull request #4133 from lioncash/hle
HLE_OS: Return string from GetStringVA by value
2016-08-22 16:53:53 +02:00
Markus Wick
10d20d47aa Merge pull request #4132 from lioncash/enum-fifo
Fifo: Make SyncGPUReason an enum class
2016-08-22 16:49:40 +02:00
Markus Wick
3156e8590b Merge pull request #4122 from EmptyChaos/tas-sticky
TASInputDlg: Fix inputs "sticking" after closing (Issue 9748)
2016-08-22 16:27:24 +02:00
Lioncash
1392efa91d VertexManagerBase: Get rid of static behavior 2016-08-21 23:30:38 -04:00
Chris Burgener
a3eb9082fc Fix issues with Custom RTC when set past the year 2038 2016-08-21 13:33:01 -04:00
JosJuice
9f6000bb27 Move code into Movie::SignalDiscChange
DVDInterface shouldn't need to know anything about
the DTM format's 40-character limitation.

Also replacing "filename" in variable names with "path"
to make it clearer which variables contain the whole path
and which ones only contain the filename.
2016-08-21 12:51:14 +02:00
aldelaro5
a39e331aad Schedule an event to clear the jit cache when adding the first and last
memory check

Also fix an oddity in the case when the last memory check is deleted,
the jit cache was supposed to be cleared in that case, but it was out of
the for loop that finds the one to delete so it was never run.
Naturally, the same fix for the adding the first memory check was
applied.
2016-08-21 00:57:35 -04:00
aldelaro5
0480ca48fb Add a thread safe variant of clearing the jit cache 2016-08-21 00:57:34 -04:00
Anthony Serna
9e40fa2657 [Hotkey] Added custom textures toggle 2016-08-19 23:14:56 -05:00
Scott Mansell
f1964f90d6 Merge pull request #4129 from RisingFog/hahahahahahahahahaha
Fix a really stupid GLSL version parsing bug
2016-08-20 08:48:28 +12:00
Chris Burgener
da0204a85c Fix a really stupid GLSL version parsing bug 2016-08-19 08:53:27 -04:00
JosJuice
31c530c7b3 Merge pull request #3386 from lioncash/memory
Common: Namespace MemoryUtil
2016-08-19 11:04:45 +02:00
Lioncash
e0c9c9b3ca HLE_OS: Return string from GetStringVA by value
No real point to using an out parameter for something like this.
2016-08-19 00:31:54 -04:00
Lioncash
5635d4b709 Fifo: Make SyncGPUReason an enum class 2016-08-18 22:35:58 -04:00
Jules Blok
e86d7cbc99 OGL: Workaround gl_ClipDistance bug on Mesa i965. 2016-08-18 01:08:39 +02:00
Jules Blok
7078216b61 Improve documentation. 2016-08-16 21:09:58 +02:00
aldelaro5
7ad1f340df Fix the pause/play toolbar button not updating when reaching a breakpoint or a memory check 2016-08-15 14:08:19 -04:00
Jules Blok
8c1c7fc2da Cosmetics. 2016-08-15 13:11:30 +02:00
Jules Blok
959d1879e5 VertexShaderGen: Fix far clipping.
We should only check whether z > 0, we don't care about w.
2016-08-15 13:11:29 +02:00
Jules Blok
afa251af42 DriverDetails: Add bug for broken gl_ClipDistance on i965. 2016-08-15 13:11:28 +02:00
Jules Blok
94927f360f VideoCommon: Add a user-defined far clipping plane. 2016-08-15 13:11:28 +02:00
Jules Blok
6e2052fae6 OGL: Disable clip distance on when not in a game-like state. 2016-08-15 13:11:27 +02:00
Jules Blok
9596ec8971 GeometryShaderGen: Pass-through clipping distance. 2016-08-15 13:11:27 +02:00
Jules Blok
a141e91dd2 OGL: Check for GL_DEPTH_CLAMP support.
It's not available in OpenGL ES and officially it's not supported on OpenGL 3.0/3.1.

Fallback to old depth range code if there is no method to disable depth clipping.
It's more important to have correct clipping than to have accurate depth values.
Inaccurate depth values can be fixed by slow depth.
2016-08-15 13:11:26 +02:00
Jules Blok
4582853af4 VertexShaderGen: Use reversed depth range. 2016-08-15 13:11:26 +02:00
Jules Blok
e9e81ece65 VideoBackends: Enable depth clamping. 2016-08-15 13:11:25 +02:00
Jules Blok
b1ed7e80fb VertexShaderGen: Clip z using user-defined clipping planes. 2016-08-15 13:11:25 +02:00
Jules Blok
159247f4ad VertexShaderGen: Clamp to the console depth range.
This fixes the Mii Channel among others.
2016-08-15 13:11:24 +02:00
Jules Blok
92aa7669b5 VertexShaderManager: Use a more accurate depth range.
This fixes the gxtest_depth hwtest.
2016-08-15 13:11:24 +02:00
Jules Blok
c223bd47b9 VideoCommon: Implement depth range equation in vertex shader. 2016-08-15 13:11:23 +02:00
Léo Lam
b59e919919 InputConfigDiag: Fix a segfault caused by missing check
The original code assumed that we would always find a button in
control_buttons. However, this is incorrect, since the iterator can and
will be control_buttons.end() if the button that triggered the iterate
code is not in control_buttons, which happens when it's in an
exclude list.
2016-08-15 11:31:14 +02:00
Scott Mansell
0015d2e86b Merge pull request #4121 from leoetlino/osreport-sjis
Convert OSREPORT text from SJIS to UTF-8
2016-08-15 16:04:07 +12:00
mimimi085181
111182d9a3 Wiimote netplay: Check the reporting mode instead of the size 2016-08-14 19:25:00 +02:00
EmptyChaos
e5e126c2eb TASInputDlg: Fix inputs "sticking" after closing 2016-08-14 05:13:33 +10:00
Léo Lam
c0be228c71 Convert OSREPORT text from SJIS to UTF-8
I'm not sure this is the correct fix, but it looks like OSREPORT output
is Shift-JIS, so we need to convert it to UTF-8. Most characters work
fine without and with this conversion, but Japanese text completely
fails and results in outputting invalid UTF-8 (which gets shown as �).
2016-08-13 17:19:21 +02:00
hthh
d841d9c7b3 JitArm64: Check the FIFO on EIEIO instructions
Copied from the Jit64 version
2016-08-12 21:09:15 +10:00
hthh
bbc0f0c744 Jit: Check the FIFO on EIEIO instructions
The gather pipe optimization postpones checking the FIFO until the end
of the current block (or 32 bytes have been written). This is usually
safe, but is not correct across EIEIO instructions.

This is inferred from a block in NBA2K11 which synchronizes the FIFO
by writing a byte to it, executing eieio, and checking if PI_FIFO_WPTR
has changed. This is not currently an issue, but will become an issue
if the gather pipe optimization is applied to more stores.
2016-08-12 21:03:41 +10:00
aldelaro5
5358e898c6 Fix the breakpoint list not updating after adding a memory check via the memory view.
Add the CCodeWindow to the constructor of the memoryWindow so it can call the notify update of the breakpoint list.

Add the case of breakpoint update when receiving an event (the update command was issued, but wasn't managed before).

Run clang format and renamed the code window names.
2016-08-11 15:38:17 -04:00
Léo Lam
c1184957a5 Run clang-format on missed files
`clang-format`s files that lint missed because of the bug. Fortunately,
not much.
2016-08-11 21:14:39 +02:00
Pierre Bourdon
cef71afc27 Merge pull request #3987 from JosJuice/scheduleevent-cleanup
CoreTiming: ScheduleEvent cleanup
2016-08-11 16:18:14 +02:00
Pierre Bourdon
c6fed0565d Merge pull request #4109 from JosJuice/remove-am-baseboard
Remove AM Baseboard
2016-08-11 16:16:23 +02:00
Stenzek
951fc44d86 Externals: Add glslang from Vulkan SDK v1.0.21.1 2016-08-11 22:40:32 +10:00
JosJuice
3bb0e7e3f5 Remove AM Baseboard
Let's stop pretending that we support Triforce emulation.
Keeping this code around just in case someone will make
major improvements in the future isn't really worth it.

I'm keeping the Triforce game INIs so users will know that
the compatibility rating for Triforce games is 1 star (broken).
2016-08-11 12:53:44 +02:00
JosJuice
3443a10030 CoreTiming: Merge ScheduleEvent variants into one function
Now Core::IsCPUThread() only gets called once when using the AnyThread
variant. Also, I think the enum approach makes calling code clearer.
2016-08-11 12:45:57 +02:00
Markus Wick
5697032ec7 Merge pull request #4103 from degasus/dynamic-bat
JitArm64: Fix two issues.
2016-08-11 12:42:02 +02:00
Scott Mansell
088f7eaa3d Merge pull request #4110 from JosJuice/fix-exi-translations
Fix choosing certain localized EXI devices
2016-08-11 12:39:36 +12:00
Scott Mansell
e577ffaee5 Merge pull request #4107 from JosJuice/no-immediate-scheduleevent
Remove Immediate variants of ScheduleEvent
2016-08-11 12:13:49 +12:00
JosJuice
c9fa6318a2 Fix choosing certain localized EXI devices 2016-08-10 20:04:33 +02:00
JosJuice
ccc4e6de02 DolphinWX: Don't translate OSD messages
OSD messages other than these one and a half aren't translated,
and OSD only supports ASCII. (Also, that "Wiimote %i %s" uses %s
like it does is bad for translation, but that's easy to fix.)
2016-08-10 18:18:25 +02:00
Mat M
8552ff5789 Merge pull request #4106 from RisingFog/dtm_gc_language
Add Gamecube Language to DTM Header
2016-08-10 12:16:20 -04:00
JosJuice
b8e04c9513 Replace some unnamed tick constants with GetTicksPerSecond()
These operations should always take the same amount of time,
not the same amount of ticks. The number of ticks per second
is different for GameCube and Wii.
2016-08-10 17:34:23 +02:00
JosJuice
47c8bb26f8 Remove Immediate variants of ScheduleEvent
Usage of these are replaced with regular equivalents in order
to avoid executing event handlers in the middle of JIT blocks.
2016-08-10 16:34:06 +02:00
Léo Lam
dca22e08eb Use Common::Flag and Common::Event when possible
Replaces old and simple usages of std::atomic<bool> with Common::Flag
(which was introduced after the initial usage), so it's clear that
the variable is a flag and because Common::Flag is well tested.

This also replaces the ready logic in WiimoteReal with Common::Event
since it was basically just unnecessarily reimplementing Common::Event.
2016-08-10 16:08:15 +02:00
Stenzek
bce8097712 D3D11: Support texture dumping of non-zero mipmap levels 2016-08-10 23:45:25 +10:00
Markus Wick
cb2b110d42 Merge pull request #4097 from lioncash/sysconf
SysConf: Minor simplifications to initial generating
2016-08-10 14:41:35 +02:00
Markus Wick
b075d18d2e Merge pull request #4096 from lioncash/codeblock-init
CodeBlock: In-class initialize variables
2016-08-10 14:39:51 +02:00
degasus
82bdc4ef86 PixelEngine: Delay token updates by events.
To still get a speedup, mark if already an event is queued.
If so, don't raise a new event.
2016-08-10 13:24:57 +02:00
degasus
a051db9792 PixelEngine: Cleanup PE Token.
This also affects the behavior a bit, it should now fit better to the one of the commonly more used PE Finish flag.
2016-08-10 10:07:53 +02:00
degasus
367e1b4d4c PixelEngine: Drop write-only variables. 2016-08-10 10:07:53 +02:00
Chris Burgener
84731456fa Add Gamecube Language to DTM Header 2016-08-09 23:02:31 -04:00
Markus Wick
7e3c04f069 Merge pull request #4076 from RisingFog/fix_sram_rtc_offset
Fix improper SRAM RTC offset
2016-08-08 23:10:33 +02:00
degasus
447b23e09a JitArm64: Load memory base based on MSR.DR. 2016-08-08 20:19:57 +02:00
degasus
77cfd0d4fd JitArm64: Fix rfi 2016-08-08 20:19:57 +02:00
Calvin Cochran
ba45a5999f clean up bounds checking for SIDEVICE_ENUM 2016-08-08 12:33:08 -05:00
Lioncash
fbc0aaf796 MemoryUtil: Remove unimplemented/unused functions
GuardMemoryMake/GuardMemoryUnmake are unimplemented prototypes.
GetPageSize is an unused function.
2016-08-07 13:04:05 -04:00
Lioncash
e01c143379 Common: namespace MemoryUtil 2016-08-07 13:03:07 -04:00
Rohit Nirmal
cbec38e775 Fix building with PCH disabled. 2016-08-07 01:18:59 -05:00
Lioncash
08bc19bf51 SysConf: Use range-based for loops in sysconf generation
Same thing, nicer looking
2016-08-06 16:22:42 -04:00
Lioncash
58b871e05c SysConf: Simplify entry generation
Just use a vector and move it instead of manually pushing them one-by-one.
2016-08-06 16:10:48 -04:00
Lioncash
18210a65ce CodeBlock: In-class initialize variables 2016-08-06 13:20:38 -04:00
degasus
85affe995e JitCache: Do not use block 0.
This ID is reserved for invalid blocks. So this block can't be invalidated.
2016-08-06 14:16:13 +02:00
degasus
814f29b25b JitCache: Implement block unlinking. 2016-08-06 11:41:39 +02:00
magumagu
ba39a0b3b4 Add ISI logging to interpreter. 2016-08-06 11:41:39 +02:00
magumagu
ca511640a5 Add support for DSI exceptions to CachedInterpreter.
Should be straightforward.  Maybe useful for the purpose of testing.
2016-08-06 11:41:39 +02:00
magumagu
758e6406cd JIT: fix handling of PC in dispatcher/block cache.
Specifically, don't make any assumptions about what effective addresses
are used for code, and correctly handle changes to MSR.DR/MSR.IR.

(Split off from dynamic-bat.)
2016-08-06 11:41:39 +02:00
Mat M
fa5a2474f4 Merge pull request #4088 from RisingFog/remove_globals_movie
Remove Global Declarations from Movie
2016-08-05 10:42:58 -04:00
Dan Beste
25c77babeb Remove curl version check / include curl.h
This should help prevent breakage when the curl.h header is changed.

As far as I can tell this only increases the compile time by a hair, but prevents needing to create a PR every time curl.h gets updated. Alternatively I'm experimenting with CURL_STRICTER defined per a conversion with booto:

>booto | krakn: try having CURL_STRICTER defined for the build?

Credit goes to: flacs for the suggestion to include curl.h

Fix include
2016-08-04 22:39:45 -05:00
Lioncash
e2f1b85cf4 NetWindow: Add missing override specifier 2016-08-04 16:19:01 -04:00
Chris Burgener
222c4ba077 Remove Global Declarations from Movie 2016-08-04 15:24:44 -04:00
Chris Burgener
2bdc3ee777 Remove Global Declarations from Frame 2016-08-04 15:05:31 -04:00
Lioncash
8b84ac2f6b NetPlayClient: Remove another duplicate inclusion
I'm blind apparently, btw
2016-08-04 10:55:39 -04:00
Lioncash
ca7816acae NetPlayClient: Remove duplicate header inclusion 2016-08-04 10:50:33 -04:00
JDV
7e535b2855 Make Dolphin remember the NetPlay window size/position
The default size might be too big for some screens. This allows
the user to modify the window as they see fit and has Dolphin
remember those settings. People who are happy with the default
size and position will not be affected
2016-08-03 16:10:20 -06:00
Léo Lam
cbb77532c6 Tools: Fix lint by removing unneeded awk
git diff --name-only already took care of only returning the name, so
the awk is unneeded and makes it return only empty file names.

Facepalm, I know. Sorry for this oversight.

(Also fixes something that lint didn't catch because of this)
2016-08-02 22:00:41 +02:00
Lioncash
041f4f5eea GCAdapter: Return input state by value 2016-08-01 21:27:51 -04:00
Lioncash
2be2b2a4f1 GCKeyboard: Return input state by value 2016-08-01 20:58:04 -04:00
Lioncash
ee43820282 GCPad: Return input state by value 2016-08-01 20:49:30 -04:00
comex
c51faa41f5 Don't use the fast path when there are watchpoints enabled, for writes too.
Also fold the check in both functionss into 'slowmem' rather than having
a separate test.  (jo.alwaysUseMemFuncs implies jo.memcheck anyway, as
makes sense.)
2016-08-01 20:40:00 -04:00
Chris Burgener
28039b3d8b Fix improper SRAM RTC offset 2016-08-01 19:41:33 -04:00
Lioncash
8b5e94a102 FifoPlayer: const correctness 2016-08-01 18:33:46 -04:00
Lioncash
128d762aea AudioCommon: const correctness 2016-07-31 19:14:20 -04:00
Pierre Bourdon
d078c6cb35 Merge pull request #4073 from amaiorano/fix-d3d-debugobjectname
Fix D3D::SetDebugObjectName to bind to the EFB color_read_texture rat…
2016-08-01 00:38:02 +02:00
Pierre Bourdon
007df77fba Merge pull request #4074 from lioncash/soundstream
AudioCommon: Make the SoundStream global a unique_ptr
2016-08-01 00:37:48 +02:00
Pierre Bourdon
2c0364d95c Merge pull request #4058 from Aestek/fix/netplay-gui-freeze
NetPlay: Fix GUI freeze
2016-08-01 00:36:49 +02:00
Pierre Bourdon
04bf2d612c Merge pull request #4066 from Martchus/master
Fix typedef for CURL
2016-08-01 00:35:42 +02:00
Lioncash
ecc1710676 AudioCommon: Make the SoundStream global a unique_ptr 2016-07-31 15:45:28 -04:00
Pierre Bourdon
18a669abcc Merge pull request #4067 from leoetlino/no-device
InputConfigDiag: Don't prevent closing dialog if device not found
2016-07-31 17:25:40 +02:00
amaiorano
2030a5e1b8 Fix D3D::SetDebugObjectName to bind to the EFB color_read_texture rather than the depth_read_texture (probably a copy paste error) 2016-07-31 10:48:09 -04:00
Pierre Bourdon
bfa42a3f15 Merge pull request #4071 from lioncash/constant
DSP: Make DSP_CONTROL_MASK a concrete constant
2016-07-31 16:43:41 +02:00
Markus Wick
a6834dc2cc Merge pull request #4070 from lioncash/const
SI_DeviceGBA: const correctness
2016-07-31 11:14:46 +02:00
Markus Wick
ad1c5a8e2e Merge pull request #4054 from leoetlino/wiimote-scanner
WiimoteReal: Change the scanner to support several backends
2016-07-31 10:39:13 +02:00
Markus Wick
e281273cd7 Merge pull request #4047 from lioncash/enum-fwd
VideoCommon: Make API_TYPE an enum class
2016-07-31 10:38:42 +02:00
Lioncash
9e6bb68a64 DSP: Make DSP_CONTROL_MASK a concrete constant 2016-07-30 18:55:45 -04:00
Lioncash
462ba0c742 SI_DeviceGBA: const correctness 2016-07-30 13:30:20 -04:00
Pierre Bourdon
a3438f916b Merge pull request #4065 from clinchergt/ignore-comments-geckocodes
Make it so comments don't take up gecko space
2016-07-30 18:51:53 +02:00
sigmabeta
8724df3b70 Fix crash caused by trying to reference touch-screen config UI on devices without touchscreen 2016-07-30 09:33:35 -04:00
Léo Lam
77fab5940c InputConfigDiag: Don't prevent closing dialog if device not found
There is no reason to prevent the user from closing the config dialog
if the device is not found. It's not very good UX…

Also fixes ExpressionParser to return NO_DEVICE if the device doesn't
exist instead of SUCCESS.
2016-07-30 10:00:55 +02:00
Lioncash
14e0b48ae4 VideoCommon: Make API_TYPE an enum class
Allows for forward declarations in most places, which prevents dumping
unrelated VideoCommon.h contents directly into headers.
2016-07-29 19:20:16 -04:00
Martchus
0157b72bbc Fix typedef for CURL 2016-07-29 19:34:34 +02:00
JDV
fcf4589aa3 Make it so comments don't take up gecko space
Unlike notes, we want comments to be completely ignored
2016-07-29 11:20:35 -06:00
Pierre Bourdon
e0cbb9d1ae Merge pull request #3890 from leoetlino/evdev-hotplug
evdev: Add hotplug support
2016-07-29 17:43:49 +02:00
Léo Lam
135641404a evdev: Add hotplugging support
This adds hotplugging support to the evdev input backend. We use
libudev to monitor changes to input devices in a separate thread.
Removed devices are removed from the devices list, and new devices
are added to the list.

The effect is that controllers are usable immediately after plugging
them without having to manually refresh devices (if they were
configured to be used, of course).
2016-07-29 17:18:40 +02:00
Léo Lam
3926db624d ControllerInterface: Don't block on UpdateInput()
Changes UpdateInput() to skip if we can't lock the mutex, instead of
potentially blocking the CPU thread and causing a short but noticeable
frame drop.
2016-07-29 17:18:40 +02:00
Léo Lam
93f5df4195 ControllerInterface: Add RemoveDevice()
This adds RemoveDevice() to ControllerInterface, fixes ExpressionParser
and some other code to support device removals without crashing,
and adds an IsValid() method to Device, to prepare for hotplugging.
2016-07-29 17:18:37 +02:00
Léo Lam
0d783f0869 ControllerInterface: Add a way to register callbacks
This adds RegisterHotplugCallback() to register a callback which will
be invoked by the input backends' hotplug threads when there is a new
device, so that Core (GCKeyboard, GCPad, Wiimote, Hotkey) can reload
the configuration without adding a dependency to Core from InputCommon.
2016-07-29 17:16:22 +02:00
Aestek
0aa6e20685 Allow to change Wii sd card path in config pane
Add a setting in the "Paths" config pane to select which file should be
used as wii sd card.
2016-07-29 15:03:01 +02:00
Léo Lam
d2976086b6 WiimoteReal: Remove unsafe static_cast in IOLinux
Since we now support different scanner sources, g_wiimotes is not
guaranteed to only contain WiimoteLinux anymore.
This replaces the previous "already connected" check with one that
doesn't use g_wiimotes.
2016-07-27 14:20:26 +02:00
Scott Mansell
6834b4cb27 Revert "JitCache: Support for VMEM + MSR bits" 2016-07-27 11:15:25 +12:00
Aestek
d906462dee Do not pause emulation when confirming stop when using NetPlay
Pausing emulation requires to access the CPU thread, which might be blocked
waiting for inputs by netplay. Accessing it in this state would cause the
whole GUI to hang for set timeout (10s).
2016-07-26 21:34:35 +02:00
Aestek
1760b3bdad Rewrite NetPlayClient input wait logic to use std::condition_variable's
Instead of sleeping in NetPlayClient::GetNetPads and NetPlayClient::WiimoteUpdate,
now use std::condition_variable. This allows for finer control over these blocking
areas.
2016-07-26 21:34:35 +02:00
Pierre Bourdon
d7de39ebbe Merge pull request #3588 from Aestek/feature/improve-netplay-dialog
Improve netplay UX
2016-07-26 02:12:22 +02:00
Léo Lam
9c02e327b7 WiimoteReal: Split WiimoteScannerDarwin
This moves out the HID code into a separate scanner.
2016-07-26 00:45:25 +02:00
Léo Lam
3305a923e1 WiimoteReal: Rename IONix to IOLinux
IONix.cpp really isn't for Unix, as the name would imply, but only
for Linux, so there is no reason to name it IONix.
2016-07-26 00:45:25 +02:00
Léo Lam
9455e2bca4 WiimoteReal: Change the scanner to support several backends
This makes WiimoteScanner support several scanner backends.

This adds a WiimoteScannerBackend base class, which scanner backends
derive from, and which allows backend-specific things to be moved out
of the common code.

Also removes IODummy which is not needed anymore.
2016-07-26 00:45:24 +02:00
Pierre Bourdon
c6924b4d03 Merge pull request #4036 from RisingFog/rtc_osd
Display RTC on OSD
2016-07-25 15:36:03 +02:00
Markus Wick
0e7b10064d Merge pull request #4040 from Ironthighs/master
Android: Configurable Control Placement
2016-07-24 23:18:45 +02:00
Pierre Bourdon
7a8ca99cda Merge pull request #4053 from codl/fix-upnp
Fix bogus UPnP requests
2016-07-24 13:06:12 +02:00
Pringo
f89d5c9a20 Update Menu Ellipses Usage 2016-07-23 13:15:34 -07:00
JDV
67eb814320 Fixes focus not being set on gamelist after tab change
Once a tab is selected the focus can be set directly from the page
changed event. However once the tab was shown, the first tab order
control element was given the focus by default. This was fixed by
delaying the action and setting the focus after the default focus
had been assigned.
2016-07-23 20:58:51 +02:00
JDV
2ba4b22e88 Standardizes constant use 2016-07-23 20:58:51 +02:00
Aestek
6a0fc4c438 Improve netplay setup dialog UX
* Focus "Hash Code" / "IP address" text box by default in "Connect"
* Focus game list in "Host" tab
* RETURN keypress now host/join depending on selected tab
* Remember last hosted game
* Remove PanicAlertT:
	* Simply log message to netplay window
	* Remove them when they are useless
* Show some netplay message in OSD
	* Chat messages
	* Pad buffer changes
	* Desync alerts
* Stop the game consistently when another player disconnects / crashes
* Prettify chat textbox
* Log netplay ping to OSD

Join scenario:
* Copy netplay code
* Open netplay
* Paste code
* Press enter

Host scenario:
* Open netplay
* Go to host tab
* Press enter
2016-07-23 20:58:51 +02:00
Anthony Serna
aa34e5e20e Merge pull request #4042 from leoetlino/where-did-the-panicalert-go
Don't pipe PanicAlerts to netplay window if it isn't opened
2016-07-23 13:57:39 -05:00
codl
9a01ced032
Fix bogus UPnP requests
UPNP_AddPortMapping needs our IP address, however enet_address_get_host
will return 0.0.0.0 or a host name in most cases.

This gets our IP address from the socket to the IGD.
2016-07-23 20:04:07 +02:00
Pierre Bourdon
78b68b707f Merge pull request #4052 from leoetlino/wiimote-reconnect
Fix Wiimotes not reconnecting on button press
2016-07-23 11:41:01 +02:00
Léo Lam
7c3a3ce46d Fix Wiimotes not reconnecting on button press
5.0-56 broke reconnecting a Wiimote on button press; this is because
data reporting was now always stopped for real Wii remotes on
disconnect, making it impossible to know a button was pressed in the
first place (to reconnect the Wiimote).

This semi-reverts to the previous behaviour, where data reporting is
never stopped.

(Also, control channels now go through WiimoteEmu, just like before,
to make sure some things are reset on disconnection.)

Hopefully fixes issue 9711.
2016-07-23 11:17:31 +02:00
JMC47
0a7a3aef0e Removes fake wiimote data that was causing desyncs. 2016-07-23 04:52:39 -04:00
Ironthighs
1ad32ee382 -Commented out lines disabling lint translation messages. 2016-07-22 23:01:45 -05:00
Ironthighs
89b5bc9ee5 -Fixed some various coding standard issues from previous commit. 2016-07-22 23:01:45 -05:00
Ironthighs
3dfeea01da -Implemented ability to configure game controls by moving them around individually. Controls save locations once they are placed. 2016-07-22 23:01:45 -05:00
Léo Lam
da18f7f8ac Netplay: Fix a typo in the MD5 check dropdown
"Curent game" → "Current game"
2016-07-22 17:41:33 +02:00
Chris Burgener
0ef1ee7a83 Display RTC on OSD 2016-07-22 09:58:34 -04:00
Pierre Bourdon
76b1a4d7fa Merge pull request #4039 from RisingFog/check_dump_height_split
Check for zero height when splitting video dump
2016-07-21 17:32:55 +02:00
Chris Burgener
37a0c9c404 Check for zero height when splitting video dump 2016-07-21 11:28:10 -04:00
Léo Lam
574468c95b Don't pipe PanicAlerts to netplay window if it isn't opened
This is something that was quite confusing for me while trying to get
netplay to work for me; once the Connect/Host buttons were pressed,
the UI would hang, only to work again a few seconds later, but with
no error message or explanation *at all*.

Turns out this is because panic alerts are shown in the netplay window
instead during netplay, even before it is even shown.

This fixes it by "piping" the alerts to the netplay chat only if the
netplay window is visible.

(regression introduced in #3823)
2016-07-21 16:52:57 +02:00
Pierre Bourdon
c7ead90a09 Merge pull request #4041 from lioncash/mismatch
Movie: use std::mismatch for byte mismatch checking
2016-07-21 10:59:59 +02:00
Pierre Bourdon
382e7bf2f3 Merge pull request #3825 from magumagu/wii-reset-button
Make reset button (Emulation -> Reset) work correctly for Wii games.
2016-07-21 10:58:08 +02:00
Lioncash
92efd177fc Movie: use std::mismatch for detecting byte mismatches 2016-07-21 02:43:30 -04:00
comex
591e10c4dd trivial warning fixes 2016-07-20 01:23:19 -04:00
Mat M
3fbd781cb8 Merge pull request #4033 from RisingFog/configurable_rtc
Disable changing Custom RTC when game is running
2016-07-19 23:09:43 -04:00
Matthew Parlane
7b9e17b72d Merge pull request #4035 from lioncash/si-constness
SI_DeviceKeyboard: const correctness
2016-07-20 12:35:10 +12:00
Lioncash
609cc3c1c3 SI_DeviceKeyboard: const correctness 2016-07-19 19:55:44 -04:00
Lioncash
0483c88f1e TAP_Win32: Use vector assign instead of resize + memcpy 2016-07-19 19:29:49 -04:00
Chris Burgener
80ac4a359d Disable changing Custom RTC when game is running 2016-07-19 16:30:00 -04:00
Chris Burgener
e32af8e0fe Merge pull request #4007 from RisingFog/configurable_rtc
Add Configurable RTC options
2016-07-19 11:55:46 -04:00
Chris Burgener
cac9516e39 Add Configurable RTC 2016-07-19 11:20:02 -04:00
EmptyChaos
5adb29b6cb Fifo: Call AllowSleep instead of Wakeup when pausing.
BlockingLoop was being woken when the emulator was being paused
which would cause the loop to busy spin. Issue 9692.
2016-07-19 15:20:17 +10:00
Pierre Bourdon
5740ec2158 Merge pull request #4029 from lioncash/filter
VS: Add MD5Dialog.cpp to the correct filter hierarchy
2016-07-19 01:09:14 +02:00
Pierre Bourdon
01e99b8a2a Merge pull request #4027 from leoetlino/fix-warnings
Fix warnings
2016-07-19 01:08:54 +02:00
Lioncash
8f52209b3a VS: Add MD5Dialog.cpp to the correct filter hierarchy 2016-07-18 17:58:40 -04:00
Léo Lam
0e1aeedb5b Fix warnings
This fixes warnings in:
- Source/Core/InputCommon/ControllerEmu.h: avoid shadowing other
  variables (my fault)
- Source/Core/Core/IPC_HLE/WII_IPC_HLE.h: made
  SDIO_EventNotify_CPUThread static as it's not used anywhere else
2016-07-18 23:38:42 +02:00
Pierre Bourdon
dac1c2d4fe Merge pull request #4026 from lioncash/constness
EXI: Misc const correctness changes
2016-07-18 18:19:23 +02:00
Pierre Bourdon
e21cc8937b Merge pull request #4023 from bentley/openbsd-context
Clean up context definition errors.
2016-07-18 16:43:52 +02:00
Anthony Serna
1a81735527 Merge pull request #3859 from Aestek/feature/netplay-md5
Netplay: add md5 testing
2016-07-18 09:20:37 -05:00
Lioncash
902a0ccedf Sram: Correct constness of SetCardFlashID parameter 2016-07-18 02:15:07 -04:00
Lioncash
5161351ca3 EXI_DeviceMic: Don't cast away const in Pa_Callback 2016-07-18 01:47:03 -04:00
Lioncash
6eaa1aab5c EXI_DeviceAGP: Correct constness for CRC8 parameter 2016-07-18 01:41:45 -04:00
Lioncash
37da945609 EXI_DeviceEthernet: Correct constness of function parameters 2016-07-18 01:36:04 -04:00
Anthony J. Bentley
b0f4a2b959 Add a context definition for OpenBSD amd64. 2016-07-17 22:15:14 -06:00
Matthew Parlane
a51c992e61 Merge pull request #4018 from bentley/openbsd-ifdefs
Openbsd ifdefs
2016-07-18 16:12:06 +12:00
Anthony J. Bentley
cdf62dece3 Add OpenBSD to the list of Unixes declaring CEXIETHERNET. 2016-07-17 20:38:39 -06:00
Anthony J. Bentley
9a14cbb225 Undefine OpenBSD's system byteswap macros to pick up generic functions. 2016-07-17 20:18:50 -06:00
Anthony J. Bentley
6e6b113a7e Clarify error message.
If the #error hits, the operating system may be fine but the
architecture won't be.
2016-07-17 19:02:59 -06:00
Anthony J. Bentley
eea609c55e Explicitly error out when no context definition is provided.
If there is no context definition in a non-generic build, compilation
will error out anyway, but in a less obvious place.
2016-07-17 18:59:26 -06:00
Matthew Parlane
4b9173ca62 Merge pull request #4017 from bentley/openbsd-libs
OpenBSD neither provides nor requires libdl and librt.
2016-07-18 12:42:14 +12:00
Scott Mansell
ff3b4a0fd7 Merge pull request #4020 from bentley/fstat64
Use the standard stat()/fstat() interfaces, not nonstandard *64().
2016-07-18 12:22:33 +12:00
Anthony J. Bentley
eb4cae78aa OpenBSD neither provides nor requires libdl and librt. 2016-07-17 18:06:38 -06:00
Matthew Parlane
b9246cf5e1 Merge pull request #4019 from bentley/posix-includes
POSIX includes portability
2016-07-18 09:19:20 +12:00
Léo Lam
66c2ce6c74 DolphinWX: Center the links in the About dialog
This makes the links explicitly vertically centered in the DolphinWX
About dialog. It is not needed on Windows, because the links have the
same height as text (and look just like text links). However, this is
required on other platforms or the links would look misaligned.
2016-07-17 22:48:26 +02:00
Anthony J. Bentley
f4cc52813c Add required POSIX includes and fairly portable Unix include.
POSIX specifies that inet_ntoa() is declared in arpa/inet.h, and that
POLLRDNORM, etc. are defined in poll.h.

gethostbyname() is not specified by POSIX, but the manpages in OpenBSD,
FreeBSD, OS X, and glibc all state that it is declared in netdb.h.

Without these headers, the build fails on OpenBSD and possibly other
systems.
2016-07-17 04:41:15 -06:00
Anthony J. Bentley
5bab6210ef Use the standard stat()/fstat() interfaces, not nonstandard *64().
Most modern Unix environments use 64-bit off_t by default: OpenBSD,
FreeBSD, OS X, and Linux libc implementations such as Musl.

glibc is the lone exception; it can default to 32 bits but this is
configurable by setting _FILE_OFFSET_BITS.

Avoiding the stat64()/fstat64() interfaces is desirable because they
are nonstandard and not implemented on many systems (including
OpenBSD and FreeBSD), and using 64 bits for stat()/fstat() is either
the default or trivial to set up.
2016-07-17 04:30:00 -06:00
Anthony J. Bentley
de6babb928 Add an OpenBSD driver identifier. 2016-07-17 04:13:06 -06:00
Anthony J. Bentley
64fb96e493 OpenBSD uses pthread_set_name_np() to set the name of a thread. 2016-07-17 04:09:46 -06:00
Anthony J. Bentley
5c90738638 OpenBSD doesn't support per-thread locales. 2016-07-17 04:08:44 -06:00
Anthony J. Bentley
242c770fe5 OpenBSD has a custom sysctl for physical memory. 2016-07-17 04:06:38 -06:00
Aestek
9c5b546e2e Add Wii sdcard to CommonPaths 2016-07-16 22:48:46 +02:00
Aestek
51c77e8eea Add md5 testing to netplay
Allows to test current game, an arbitrary game or the sdcard of all players
at once.
2016-07-16 22:48:46 +02:00
mimimi085181
8b7bfe6cf9 Netplay: Fix synchronization for the Wiinote netplay
The old implementation always polled the local 1st Wiimote and used that as input for the Wiimote that is mapped to the player. But the reporting mode for Wiimotes can be different, even when using the same extensions. So an input for Wiimote 1 with a data size 4 could be used for Wiimote 2, which actually requires data size 7 at that time for example.

The 2nd problem was that the code added a dummy input into the buffer, when the reporting mode changed. But when the data from the other player hasn't arrived yet, the data in the buffer is out of order. Well, i think this is the problem, i'm not 100% sure, because i don't fully understand how the buffer works. But on the other hand, i'm pretty sure this will just force sync the players on reporting mode changes, instead of allowing them to be apart.

Pros:
- No more desyncs caused by big bugs in the code.
- Can use different extensions for different players.

Cons:
- Higher latency, because instead of polling 1 controller per player at once, all controllers are polled in order, send to the other players, before the next is processed.
- Have to setup the Wiimote, which the player is going to use, instead of the 1st one.

Now, if the controller config could temporarily be overridden with the one from another slot, the 2nd problem could be fixed. But at the same time, we would lose the ability to use different extensions. (unless we hack around it somehow, or properly send the used extension to the other players)
2016-07-16 13:00:54 +02:00
Pierre Bourdon
bb87bb73f4 Merge pull request #4004 from degasus/dynamic-bat
JitCache: Support for VMEM + MSR bits
2016-07-16 12:26:54 +02:00
degasus
f9e5660106 JitCache: Implement block unlinking. 2016-07-16 09:24:10 +02:00
magumagu
0de9d94de3 Add ISI logging to interpreter. 2016-07-16 09:24:09 +02:00
magumagu
0f788e0c3d Add support for DSI exceptions to CachedInterpreter.
Should be straightforward.  Maybe useful for the purpose of testing.
2016-07-16 09:24:09 +02:00
magumagu
b81d008f92 JIT: fix handling of PC in dispatcher/block cache.
Specifically, don't make any assumptions about what effective addresses
are used for code, and correctly handle changes to MSR.DR/MSR.IR.

(Split off from dynamic-bat.)
2016-07-16 09:24:05 +02:00
EmptyChaos
8f7f9cbb9c DQt2: Warning window HiDPI fix.
QSizePolicy::Expanding includes ShrinkFlag which is bad.
QSizePolicy::MinimumExpanding prevents the truncation.
2016-07-16 10:51:02 +10:00
Pringo
8d6f23fa9c Clarify Boot from DVD Message 2016-07-15 13:11:13 -07:00
Mat M
fac7d09091 Merge pull request #3737 from EmptyChaos/update-wx
Externals: Update wxWidgets to 3.1.0
2016-07-15 09:48:14 -04:00
Lioncash
5b2ddbc4b2 EXI_Channel: Change m_pDevices to m_devices
Basic name change to get rid of (incorrect) Hungarian notation
2016-07-15 01:43:06 -04:00
Lioncash
642284fec4 EXI_Channel: Use std::array 2016-07-15 01:22:28 -04:00