Commit graph

18543 commits

Author SHA1 Message Date
Stenzek
f4944f006d Vulkan: Support frame dumping/screenshots 2016-10-01 02:40:02 +10:00
Stenzek
4a4f6cc135 Android: Add video backend choice to settings 2016-10-01 02:40:02 +10:00
Stenzek
77a128ab87 Implement experimental Vulkan backend 2016-10-01 02:40:01 +10:00
Stenzek
fdd954e7e7 Common: Add a Semaphore wrapper class 2016-10-01 01:09:12 +10:00
Stenzek
828aac7890 VideoBackends: Make TextureCache::CompileShaders return a bool 2016-10-01 01:09:12 +10:00
Stenzek
6a99cbd9fc VideoCommon: Call Renderer::SurfaceChanged on render parent resize
This is needed because for some reason the WSI for NV Vulkan drivers
doesn't return VK_ERROR_OUT_OF_DATE_KHR, so there is no other way to know
that a resize has occured apart from polling, which is a poor solution for
X11 (since it is blocking).
2016-10-01 01:09:12 +10:00
Stenzek
5346078791 VideoCommon: Add config fields for multithreading and validation layers 2016-10-01 01:09:12 +10:00
Stenzek
09638e714e VideoCommon: Extend DriverDetails to support both OpenGL and Vulkan 2016-10-01 01:09:12 +10:00
Stenzek
a71381e80a VideoCommon: Add APIType entry for Vulkan 2016-10-01 01:09:11 +10:00
Stenzek
75e4e42e56 ShaderGen: Work around issue with glslang and dynamic vector subscripts
Seems that vec[eye] will select vec.x no matter what the value of eye is.
2016-10-01 01:09:11 +10:00
Stenzek
7f3a876aae ShaderGen: posmtx should be a 4-component unsigned byte
This is a global change across backends, so should be tested for
regressions.
2016-10-01 01:09:11 +10:00
Stenzek
d9c034e8cc ShaderGen: Specify attribute/output locations/bindings explicitly
This also shifts the SSBO index from index 3 to index 0.
2016-10-01 01:09:11 +10:00
Stenzek
9f541e490d OGL: Handle case where both constant alpha and logic op is enabled 2016-09-30 23:18:14 +10:00
Markus Wick
60138b0269 Merge pull request #4264 from lioncash/type
SystemRegisters: Get rid of pointer casting
2016-09-30 14:51:01 +02:00
Lioncash
91bbe56f59 SystemRegisters: Get rid of pointer casting 2016-09-30 08:28:07 -04:00
Dolphin Bot
394c50f8be Merge pull request #4236 from SeannyM/android-buttons
Android: Wiimote on-screen buttons + more
2016-09-30 14:17:19 +02:00
Markus Wick
025dce86d5 Merge pull request #4261 from lioncash/gamelist
GameListCtrl: Use unique_ptr for underlying GameListItems
2016-09-30 13:23:43 +02:00
Lioncash
d8e4d5f035 GameListCtrl: eliminate redundant elses
These aren't necessary considering the above condition returns
2016-09-30 07:13:14 -04:00
Lioncash
6e0e4646bd GameListCtrl: use unique_ptr for underlying game list items 2016-09-30 07:13:09 -04:00
Lioncash
6b58ebfadc MMU: Remove useless casts 2016-09-30 06:48:13 -04:00
Markus Wick
c33710a320 Merge pull request #4262 from lioncash/mmu
MMU: Get rid of type punning in FP read/write functions
2016-09-30 10:11:06 +02:00
Lioncash
e8b5e38d98 MMU: Get rid of type punning in FP read/write functions
The previous code is actually considered undefined behavior.
2016-09-30 03:50:08 -04:00
Lioncash
567d0204dd RegisterView: Get rid of explicit memsets in CRegTable's constructor
Also gets rid of an unnecessary fill.

This is done by just default initializing the arrays
2016-09-30 01:28:54 -04:00
Lioncash
212cf4c791 RegisterView: Convert #define into a static constant in CRegTable 2016-09-30 01:28:53 -04:00
Lioncash
d080b0e8a5 RegisterView: Move CRegTable implementation details into the cpp file 2016-09-30 01:28:47 -04:00
Lioncash
3ef6b51848 RegisterView: Move FormatSpecifier enum into CRegTable
Considering there's a public method in the class using it, leaving the
definition in the cpp file can cause a linker error if any method outside
that cpp file calls it for one reason or another.
2016-09-30 00:16:16 -04:00
Anthony
ad1d45d4e2 Merge pull request #4218 from aldelaro5/debugger-stepping-fixes
Fix a bunch of debugger stepping issues.
2016-09-29 22:41:27 -05:00
Sean Maas
a317953ad4 Android: More accurate button scaling
Also scale based on button ID for consistency.
2016-09-29 21:46:46 -04:00
Sean Maas
313be655f4 Android: Option to toggle on/off individual buttons 2016-09-29 20:06:59 -04:00
Sean Maas
50b44fa337 Android: More on-screen buttons
GameCube now has a c-stick. For Wii games, there is now a Wiimote + Nunchuk setup.
2016-09-29 20:06:59 -04:00
Sean Maas
bd99b318e5 Android: Add on-screen dpad support 2016-09-29 20:06:59 -04:00
Sean Maas
c24a22e30f Android: Use button IDs to save screen layout
Using the drawable caused problems such as not being able to have multiple joysticks.
2016-09-29 20:06:59 -04:00
Lioncash
e1705ba6c5 PPCAnalyst: Get rid of two casts
HostRead_Instruction does the same thing behind the scenes without casts.
2016-09-29 18:17:56 -04:00
aldelaro5
cd0116ccde Fix a bunch of debugger stepping issues.
Single step: Fix an oddity when a breakpoint is hit at the beginning of a block, then after, a single step is performed and finally, hitting play, the breakpoint will be skipped even in the case when it would be hit again.  This was done by using the interpreter version of single step.  Also, remove some redundant update request.

Step over: fix some GUI lags.

Step out: Add consideration for conditional branching by checking the condition as the interpreter does.  Now, every bclr instructions except those that changes the LR (because it would not be the end of the function) will cause the end of the step out and not just blr instructions.  Also now stops if a bp is detected and finally, remove redundant GUI updates calls.

This also removes a superfluous draw call on the GUI as the codeView was refreshing twice per event to do so.
2016-09-29 17:32:52 -04:00
JosJuice
a714460ee3 Merge pull request #4256 from lioncash/anyof
PPCAnalyst: Compress loop into std::any_of
2016-09-29 15:47:29 +02:00
MaJoR
daac4c4ae9 Adding forgotten wiimote home button
Ooops, forgot something. This adds the home button, that's all.
2016-09-28 23:28:44 -07:00
Lioncash
ba628b3cab PPCAnalyst: Compress loop into std::any_of 2016-09-28 17:12:21 -04:00
Michael Maltese
a403e37901 always build an implementation of GCAdapter (either libusb or android) 2016-09-28 13:32:13 -04:00
Michael Maltese
3864723e4d Check for errors when postprocessing macOS app bundle 2016-09-28 13:22:36 -04:00
EmptyChaos
f9a88adddc PowerPC: Fix Dynamic BAT savestates 2016-09-28 14:26:26 +10:00
Scott Mansell
ed95115c17 Merge pull request #4220 from aldelaro5/memcheck-interface-improvements
Redo the MemCheck add dialog
2016-09-28 13:46:25 +13:00
Markus Wick
3696c2b022 Merge pull request #4210 from degasus/arm
JitArm64: Small cleanup + speedups.
2016-09-27 18:45:14 +02:00
JosJuice
d44b2de01d DVDInterface: Try to enforce disc inside status on savestate load 2016-09-27 16:51:14 +02:00
JosJuice
75dd4d0aee DVDInterface: Make changing discs savestate-safe 2016-09-27 16:51:14 +02:00
Markus Wick
cb759528e0 Merge pull request #3893 from hthh/perf-query-bug
Improve PerfQuery accuracy
2016-09-27 13:07:35 +02:00
Markus Wick
3de4dc2186 Merge pull request #4247 from lioncash/wad
WiiWad: Minor changes
2016-09-27 12:37:02 +02:00
Markus Wick
f701724ee7 Merge pull request #4251 from lioncash/define
PPCAnalyst: Convert #define into a constant
2016-09-27 12:19:18 +02:00
Markus Wick
9525a9e048 Merge pull request #3490 from degasus/singlecore
Fifo: Use SyncGPU timings for single core.
2016-09-27 10:33:47 +02:00
Markus Wick
8afba30603 Merge pull request #3822 from degasus/warning
VertexLoaderJit: Fix out-of-bounds access for zfreeze.
2016-09-27 10:31:48 +02:00
aldelaro5
5e8fc4ebd9 Add consideration for the break flag of memChecks
It was never used, even when the code tried to make sure it was initialised and passed correctly.  This is a supplementary fix for the memCheck dialog as this option will now work correctly.
2016-09-27 01:22:23 -04:00
aldelaro5
efb7b1ceca Redo the MemCheck add dialog
The old one wasn't very optimal because not only the user would likely want to enter an address instead of a range, but it also made entering just one address confusing (you had to have the same value on both start and end).  Also, you should only chose one option between read, write or both, there is no point to not have any.

This is why I made more clear how to add an address and it is the default option using radio buttons and I also made the action flags and the flags to be radio buttons.
2016-09-27 01:22:23 -04:00
Lioncash
082275d785 PPCAnalyst: Convert #define into a constant 2016-09-26 20:04:17 -04:00
Lioncash
a947391556 PPCAnalyst: Make local constants constexpr 2016-09-26 19:51:48 -04:00
Léo Lam
cb73bcc72e PPCSymbolDB: Drop useless const qualifier 2016-09-26 22:57:40 +02:00
Léo Lam
e1cecbb233 HLE_OS: Convert debug messages from SJIS to UTF-8
It looks like the debug output is also output as SJIS (similar to
OSReport text), so we need to convert it to UTF-8 to prevent it from
all showing up as �.

This doesn't fix all display issues, but fixes all SJIS/UTF-8 related
ones.
2016-09-26 22:56:42 +02:00
Léo Lam
303325768b SymbolDB: Only match against the function name
This changes GetSymbolFromName to not require the passed name to
completely match with the symbol name. Instead, we now match
against the stripped symbol name (i.e. only the function name).

This fixes a regression introduced by #4160, which prevented
HLE::PatchFunctions() from working properly.
2016-09-26 22:56:42 +02:00
degasus
732e0ff03a VertexLoaderArm64: Mark register allocation as static const. 2016-09-26 22:19:07 +02:00
degasus
7c9bba2213 Arm64Emitter: Fix std::array initializer. 2016-09-26 22:17:25 +02:00
degasus
11bfc7fe77 JitArm64: Move memcheck check into fallback code.
So now each implemented slowmem instruction should check for DSI on each own.
2016-09-26 22:17:25 +02:00
degasus
39c08694a0 JitArm64: Optimize addic.
If simm < 0, it's faster to call MOVI2R(-simm) as only the lower bits are set.
2016-09-26 22:17:25 +02:00
degasus
1f94abea18 JitArm64: Optimize logic immediate instructions.
Try to use also the immediate instruction on ARM.
2016-09-26 22:17:25 +02:00
Markus Wick
e7aad130e9 Merge pull request #4243 from leoetlino/signal-headless
MainNoGUI: Shut down cleanly on SIGINT/SIGTERM
2016-09-26 13:23:39 +02:00
Léo Lam
3cbf3bae97 MainNoGUI: Shut down cleanly on shutdown signal
This is the same as PR #3991, but for MainNoGUI.

nogui/headless will shut down cleanly on SIGINT and SIGTERM, just like
it would when closing the render window.

The default signal handler will be restored after a first shutdown
signal so a second signal will exit Dolphin forcefully.
2016-09-26 11:11:20 +02:00
Markus Wick
dc40e75642 Merge pull request #4248 from SeannyM/android-left
Android: Fix Wiimote left button
2016-09-26 08:52:46 +02:00
Sean Maas
6ca8974b13 Android: Fix Wiimote left button 2016-09-25 21:05:40 -04:00
Lioncash
61b977c914 WiiWad: Make WiiWAD constructor explicit 2016-09-25 18:04:11 -04:00
Lioncash
7de0d51345 WiiWad: Move static implementation details to cpp file
These functions don't actually depend on any state from the class
instance, so they don't really belong in the header, and are just
an implementation detail.
2016-09-25 18:04:04 -04:00
Michael Maltese
d1475dfb9c Move LogWindow/LogConfigWindow destructor logic -> OnClose
Fixes the issue on macOS where quitting Dolphin from the Dock causes a
crash report (https://bugs.dolphin-emu.org/issues/9794). I'm not
exactly sure why this works, but it feels right and it turns out to fix
the problem.
2016-09-25 17:06:46 -04:00
Léo Lam
349b27199b IPC_HLE/es: In-class initialise member variables 2016-09-25 22:36:26 +02:00
Léo Lam
bf0ab79439 ConfigManager: In-class initialise member variables 2016-09-25 22:36:26 +02:00
Léo Lam
e716a738dc SysConf: In-class initialise member variables 2016-09-25 19:22:11 +02:00
Léo Lam
a9ad83cec0 Frame: In-class initialise member variables 2016-09-25 19:22:10 +02:00
aldelaro5
08f28b5351 Enable the log level LINFO in every builds
It didn't really made sense to disable 2 logs levels in releases builds while the level LDEBUG should really be where logs that would impact performance be.  Info should be logs that report potentially usefull information and debug should report info that would only be usefull in debug context as they are called very often.  To make this work, a lot of info log would have to be made debug log.

It also avoid inaccurate logs level done due to not using debug builds.  While searching through the code, I saw a ton of logs that should have been info log, likely done to avoid using a debug build (which shouldn't happen considering the level debug exists anyway).

The whole idea is to have more meaningful logs in release builds while maintaining minimal performance loss from choosing the highest level.  This could potentially help to diagnose issues or to know more about what the emulator is actually doing.

The next commit aims to sort the log levels for this purpose.
2016-09-25 01:41:12 -04:00
Léo Lam
5d00915d37 MemoryUtil: Fix formatting
clang-format really *wants* the two empty lines to be removed;
otherwise, it will always flag MemoryUtil as needing formatting changes
which is an annoyance when it is used as a git filter driver.
2016-09-24 22:41:53 +02:00
Léo Lam
c59b7050d9 MemoryUtil: Fix formatting
clang-format really *wants* the two empty lines to be removed;
otherwise, it will always flag MemoryUtil as needing formatting changes
which is an annoyance when it is used as a git filter driver.
2016-09-24 21:09:31 +02:00
Léo Lam
149654df5a Add a recenter control for Wiimote IR relative input
This adds a recenter control binding which allows recentering the
cursor when relative input is enabled.

(EnableSettingControl is renamed to avoid confusions.)
2016-09-24 15:57:47 +02:00
Léo Lam
1ad19f9371 InputConfigDiag: Update GUI when config is reloaded
This makes the GUI show the settings that are loaded when the config
gets reloaded, instead of showing potentially outdated settings that
are not applied.
2016-09-24 15:57:47 +02:00
Léo Lam
2472db4355 Disable IR/deadzone when relative input is disabled
This changes InputConfigDiag to disable the Dead Zone field in the IR
group when relative input is disabled.
2016-09-24 15:57:46 +02:00
Léo Lam
5cf07fdfbf Add relative input for the Wiimote IR
This adds an option to enable relative input for the Wiimote IR
as described in issue 9014.

Enabling it will result in the pointer not going back to the centre
and the inputs will control the direction, not the absolute position.

Also adds a Dead Zone setting which is really needed when relative
input is enabled to prevent the cursor from slowly drifting on
most controllers. (Note: the Deadzone setting has no effect when
relative input is disabled)
2016-09-24 15:57:46 +02:00
Lioncash
c9ef042b2d Software: Clean out unnecessary includes/fwd decls 2016-09-24 05:28:00 -04:00
Lioncash
ab28ef5cff FramebufferManager: Add missing header guard 2016-09-23 13:55:51 -04:00
Markus Wick
57dd968af9 Merge pull request #4238 from MaJoRoesch/androidwiimotebuttons
Adds Android Wiimote button images
2016-09-23 11:56:04 +02:00
MaJoR
df5ea3d292 Adds Android Wiimote button images.
These were made when the button images were first remade many months ago, but they were never committed since there was no use for them at the time (and laziness :P). BUT now there is a PR that finally has use for these images, so it's time to get this into Dolphin and available for use!
2016-09-23 02:25:31 -07:00
Lioncash
330944eef8 DebugUtils: const correctness 2016-09-22 21:05:17 -04:00
Lioncash
5ac161c132 TextureEncoder: const correctness 2016-09-22 21:01:56 -04:00
Lioncash
eb574e7bac NativeVertexFormat: const correctness 2016-09-22 21:01:55 -04:00
Lioncash
5f1e444c28 Clipper: const correctness 2016-09-22 21:01:49 -04:00
Lioncash
d79d5d49f4 Rasterizer: const correctness 2016-09-22 20:39:28 -04:00
Markus Wick
2d0e857cb3 Merge pull request #4225 from lioncash/soft
SWVertexLoader: Value initialize SetupUnit instance
2016-09-22 16:05:32 +02:00
Lioncash
a8c8dd0c53 SWVertexLoader: Value initialize SetupUnit instance 2016-09-22 09:58:44 -04:00
Markus Wick
5890565575 Merge pull request #4233 from lioncash/efb
EfbInterface: Change out parameters on getters to return by value
2016-09-22 10:49:33 +02:00
Lioncash
33288c4569 EfbInterface: Change out parameters on getters to return by value 2016-09-21 20:56:44 -04:00
Lioncash
fc41e982e9 SWOGLWindow: Utilize the move constructor in PrintText
The previous code would always do a copy
2016-09-21 13:11:34 -04:00
Lioncash
99baa3268f SWOGLWindow: const correctness for ShowImage 2016-09-21 12:54:22 -04:00
Markus Wick
023eb34247 Merge pull request #4229 from SeannyM/android-joystick
Android: fix joystick saving incorrect y-coordinate
2016-09-20 07:03:15 +02:00
Sean Maas
001afae420 Android: fix joystick saving incorrect y-coordinate 2016-09-19 18:03:30 -04:00
Markus Wick
90ab952588 Merge pull request #4219 from SeannyM/android-state
Android: fix save and load state menus on non-TV devices
2016-09-19 22:32:05 +02:00
Markus Wick
0e2ec349ad Merge pull request #4221 from SeannyM/android-cleanup
Android: remove unused files
2016-09-19 22:30:20 +02:00
Markus Wick
35ec7e3fc1 Merge pull request #4222 from SeannyM/android-portrait-scale
Android: scale buttons based on smaller screen dimension
2016-09-19 22:15:19 +02:00
Markus Wick
26bb012178 Merge pull request #4226 from lioncash/fs
Filesystem: Return strings from GetFileName without the const qualifier
2016-09-19 22:11:54 +02:00
Mat M
04e6aaf419 Merge pull request #4138 from JosJuice/40-limit-out-of-di
Move code into Movie::SignalDiscChange
2016-09-18 22:54:48 -04:00
Mat M
9e1cfbee0e Merge pull request #4160 from sepalani/symbolmap
Map: Prevents symbols from being stripped
2016-09-18 22:52:12 -04:00
Mat M
e47defc419 Merge pull request #4196 from clinchergt/typoooo
Keep tag consistent on traversal settings reset
2016-09-18 22:44:10 -04:00
Michael Maltese
cd19c9fa22 Don't force compile everything as Objective-C++ on macOS 2016-09-18 17:33:51 -07:00
Sean Maas
9d54c472ae Android: scale buttons based on smaller screen dimension 2016-09-18 17:48:47 -04:00
Lioncash
144c23dead Filesystem: Return strings from GetFileName without the const qualifier
This is mostly pointless and can inhibit move construction
2016-09-18 12:56:25 -04:00
Mat M
331b112816 Merge pull request #4214 from lioncash/nandcontent
NANDContentLoader: Minor changes
2016-09-17 16:44:25 -04:00
degasus
258f48572d VertexLoaderJit: Fix out-of-bounds access for zfreeze.
This fixes a GCC6.1 warning.
2016-09-17 16:47:12 +02:00
degasus
735da0ed69 Fifo: Use SyncGPU timings for single core. 2016-09-17 16:25:13 +02:00
Sean Maas
d49b38a5c9 Android: remove unused files 2016-09-16 18:24:16 -04:00
Sean Maas
094470ead6 Android: fix save and load state menus on non-TV devices 2016-09-16 17:43:38 -04:00
JosJuice
22b5d89bf1 Merge pull request #4056 from Pringo/master
Update Menu Ellipses Usage
2016-09-16 20:28:51 +02:00
Anthony
533ee4ccbe Merge pull request #3275 from JosJuice/wiimote-message
DolphinWX: Don't translate OSD messages
2016-09-16 12:39:11 -05:00
EmptyChaos
39edc1d91e PPCDebugInterface: Fix ToggleMemcheck
ToggleMemCheck fails to create a memcheck if one doesn't already
exist.
2016-09-15 13:08:48 +10:00
Lioncash
5aeedcd27c NANDContentLoader: Remove unnecessary trailing semicolons 2016-09-14 20:12:25 -04:00
Lioncash
b43a26b90c NANDContentLoader: Remove virtual specifier from CNANDContentLoader destructor
This class is marked final, so there's no need to declare it as virtual.
2016-09-14 19:45:52 -04:00
Lioncash
3196bf5392 NANDContentLoader: Specify constructors as explicit where applicable
Prevents implicit conversion.
2016-09-14 19:44:44 -04:00
Lioncash
89c65be703 NANDContentLoader: Delay vector construction until needed in Get()
No need to construct the vector right off the bat.
2016-09-14 19:41:41 -04:00
Lioncash
b1ffa74043 NANDContentLoader: Make CNANDContentData's Get function return by non-const value
const specifiers like this are practically pointless and can inhibit move construction.
2016-09-14 19:15:31 -04:00
Scott Mansell
4c004b6dc9 Merge pull request #4131 from aldelaro5/memoryViewer-memChecks-improvements
Add the configuration of how a memory check is added via the memory window
2016-09-15 10:46:07 +12:00
Scott Mansell
514ce3c6ed Merge pull request #4201 from EmptyChaos/interpreter-coretiming
Interpreter/CachedInterpreter/JitArm64: Fix CoreTiming::Advance usage
2016-09-15 09:57:00 +12:00
Sepalani
78d50c9a31 PPCSymbolDB: Rename unknown variable 2016-09-14 20:00:15 +02:00
Mat M
564d04cdd3 Merge pull request #4212 from EmptyChaos/nand-leak
DiscIO: Fix NAND Memory Leak
2016-09-14 11:30:02 -04:00
Sepalani
13048afd08 MemoryView: Symbols shown in ASCII view 2016-09-14 15:28:13 +02:00
Scott Mansell
ea7e734496 Merge pull request #4186 from aldelaro5/registerView-update-fix
Fix registerView updates issues when stepping over or stepping out
2016-09-14 18:10:41 +12:00
Scott Mansell
4e595ca25f Merge pull request #4208 from aldelaro5/more-debugger-font-fix
Fix the debugger font not appearing on the captions of panes (DSP)
2016-09-14 18:09:28 +12:00
Scott Mansell
d5c25a8990 Merge pull request #4207 from aldelaro5/debugger-floating-window-fix
Debugger: Fix some floating window issues
2016-09-14 18:08:23 +12:00
EmptyChaos
eccec3c6d3 DiscIO: Fix NAND Memory Leak
CNANDContentData is a base class with a non-virtual destructor so
derived classes don't get destroyed causing them to leak resources.
2016-09-14 15:54:05 +10:00
EmptyChaos
070fe7f499 Jit64: Fix Dispatcher ABI (downcount) violation
The dispatcher requires that the flags contain the downcount state.
2016-09-14 15:46:54 +10:00
EmptyChaos
55a7f576aa JitArm64: Fix CoreTiming contract
Call Advance at the start of each timing slice instead of the end.

Possibly fixed a bug where a slice would randomly branch straight
back to Advance() because the flags were not set to the right
values before branching to the dispatcher entrypoint.
2016-09-14 15:44:51 +10:00
EmptyChaos
f5bfce657c CachedInterpreter: Fix CoreTiming contract
Call CoreTiming::Advance() before executing the slice, not after.
2016-09-14 15:44:51 +10:00
EmptyChaos
1bcd129683 Interpreter: Fix CoreTiming contract
The interpreter does not use CoreTiming correctly. Calls to Advance
must be made in advance of executing the associated slice, not
afterwards.
2016-09-14 15:44:51 +10:00
Lioncash
00ddbee786 SymbolDB: Change Symbol's 'analyzed' member into a boolean
It's only ever used as one
2016-09-13 21:23:28 -04:00
Lioncash
0ac77b0288 SymbolDB: Use an enum class for representing symbol type 2016-09-13 21:21:03 -04:00
Lioncash
d8d127df25 SymbolDB: In-class initialize Symbol class variables 2016-09-13 20:47:00 -04:00
Mat M
add5de2d08 Merge pull request #4178 from aldelaro5/registerView-formated-display
Add formatting options for the GPR and FPR registers
2016-09-13 09:18:50 -04:00
Markus Wick
bdcee1c585 Merge pull request #4205 from degasus/arm
JitArm64: Cleanup + small fix.
2016-09-12 11:47:51 +02:00
Scott Mansell
65c1df34f4 Merge pull request #4198 from aldelaro5/memory-breakpoint-fix
Fix the memChecks breaking a second time after hitting one and unpausing
2016-09-12 14:51:47 +12:00
aldelaro5
f689b1e6b5 Switch the CPU state to CPU_STEPPING before single stepping after unpausing
This fix a double break bug when hitting a memcheck and hitting play on the same instruction it broke to earlier.  The state is put back to CPU_RUNNING after.
2016-09-11 22:46:12 -04:00
aldelaro5
6b6cce823b Fix the debugger font not appearing on the captions of panes (DSP)
Forgot to fix that since the last font fix.
2016-09-11 20:13:20 -04:00
aldelaro5
6029c946f5 Manually select the coresponding tab before floating a panel
Doing this forces the window to be drawn before reparenting it. It fixes the possibility of creating an empty floating window if the selected tab wasn't corespoinding to the window.
2016-09-11 18:52:48 -04:00
aldelaro5
b3d49c7335 Add missing IDs for the Watch window
Fix the code window not floating when asked to do so via the popout menu.
2016-09-11 12:51:50 -04:00
aldelaro5
72f1d99634 Implement the configuration of how a breakpoint is added in the memory window
There might be a better way to highlight the options when adding the memory check, but for now, this works and the breakpoint list reports the right settings anyway.
2016-09-11 11:29:20 -04:00
aldelaro5
da55d2a381 Add options read, write and log when toggling a breakpoint
These are needed for the next commit. I had to modify the implementation of the DSP one too, but since it basically isn`t used, I don`t think it matters much.  These options only matters when adding one.
2016-09-10 22:38:57 -04:00
Markus Wick
cbdda17507 Merge pull request #4124 from mimimi085181/wiimote-netplay-check-reporting-mode
Wiimote netplay: Check the reporting mode instead of the size
2016-09-10 23:28:57 +02:00
Markus Wick
a15b3fda6e Merge pull request #4203 from aldelaro5/free-memChecks-debug-builds
Move Memchecks support out of debug only builds
2016-09-10 23:24:24 +02:00
degasus
a0dcebba37 JitArm64: replace MOVI2R with MOVP2R when possible.
This skips the (u64) cast.
2016-09-10 11:01:18 +02:00
degasus
789e776a47 JitArm64: Fix block linking.
Double negation fail, sorry.
2016-09-10 11:01:18 +02:00
degasus
be763949bc JitArm64: Drop 32bit alignment restriction of the memarea.
ADD() is almost as fast as MOVK(), and we already have a register for the memory location. Let's just use it.
2016-09-10 11:01:18 +02:00
Bernhard Urban
976da3707a arm64: add comment about data cache flushing 2016-09-10 08:05:16 +02:00
Bernhard Urban
fff8221b63 arm64: fixes around icache flushing 2016-09-10 02:31:07 +02:00
aldelaro5
09df343247 Move Memchecks support out of debug only builds
It wouldn't impact performance until at least one memcheck is enabled.  Because of this, it can be used in release builds without much impact, the only thing that woudl change is the use of HasAny method instead of preprocessor conditionals.  Since the perforamnce decrease comes right when the first memcheck is added and restored when the last is removed, it basically is all beneficial and works the same way.
2016-09-09 15:05:54 -04:00
Markus Wick
6e488e65e3 Merge pull request #4013 from leoetlino/wx-assert-fix
Drop Dolphin patch to wxWidgets (and fix issues)
2016-09-09 17:27:07 +02:00
Lioncash
5b3c74a31a OGL: Remove unnecessary c_str calls 2016-09-09 06:30:34 -04:00
Mat M
1eacb8fd59 Merge pull request #4115 from aldelaro5/memorycheck-memorywindow-update-fix
Fix the breakpoint list not updating after adding a memory check via the memory view
2016-09-09 02:41:06 -04:00
Anthony
145ebd34e2 Merge pull request #4126 from aldelaro5/debugger-pause-button-fix
Fix the pause/play toolbar button not updating when reaching a breakp…
2016-09-08 20:10:19 -05:00
aldelaro5
ea2effcc7d Add formatting options for viewing registers
All formatting are individual per registers and they all have one option to go back to their original hexadecimal form.

- GPR: signed integer, unsigned integer, float
- FPR: double

Also happened to come accross an issue where editing the PFR would ignore the higher 32 bits of the new value, this had to be fixed for the format to work.
2016-09-08 10:50:04 -04:00
EmptyChaos
2e14920e16 CoreTiming: Guarantee FIFO processing of timed events
The min-heap provides no ordering when the key is the same on 2
nodes. Disambiguate identical times by tracking the order items
were added into the queue.
2016-09-08 19:46:42 +10:00
Jules Blok
da43f9a156 PixelShaderGen: Always divide the texture coordinates by q.
Some games will set q to a different value than 1.0 through
texture matrix manipulations. It seems the console will still
do the division in that case.
2016-09-07 21:13:16 +02:00
JDV
d486fdfdb7 Keep tag consistent on traversal settings reset 2016-09-07 10:50:53 -06:00
JosJuice
d0a323cce7 Merge pull request #4192 from TylerAldrich/typo_fix
Boot: Fix minor comment typo
2016-09-07 17:35:35 +02:00
Léo Lam
e8cb4119b8 Drop Dolphin-specific patch to wxWindows
This removes a Dolphin-specific patch to the wxWidgets3 code
for the following reasons:

* Calling wxWindowGTK::DoSetSize on a top-level window can end up
  calling wxTopLevelWindowGTK::DoMoveWindow, which triggers an assert
  because it is not supposed to be called for a top-level wxWindow.

* We should not be patching the wxWidgets code because that means the
  toolbars will still be broken if someone builds without using the
  WX that is in our Externals.

Instead, we now use a derived class for wxAuiToolBar and override
DoSetSize() to remove the problematic behaviour to get the same effect
(fixing toolbars) but without changing Externals code and without
causing asserts and other issues.
2016-09-07 15:15:09 +02:00
Léo Lam
4e402379e3 IPC_HLE: Fix warnings about missing override 2016-09-07 15:09:45 +02:00
Tyler Aldrich
08c72abf0f fix minor typo, 0x20 != 20 bytes 2016-09-07 08:01:00 -04:00
Scott Mansell
fe41dff228 Fix the master build. 2016-09-07 20:10:03 +12:00
Scott Mansell
d951f9e765 Merge pull request #3771 from phire/pr3771
Remove instant ARAM DMA hack (Fixes Sarge's War)
2016-09-07 19:09:39 +12:00
Scott Mansell
42e91dd815 Merge pull request #4189 from phire/efb_linear_downsampling
EFB2RAM: Downsample higher resolutions with linear filtering.
2016-09-07 17:44:16 +12:00
Chris Burgener
69eed56256 Fix recursive code 2016-09-06 22:45:50 -04:00
Scott Mansell
62d7a698da Merge pull request #4145 from tenthmile/WiiOrientationModifier
Emulated Wiimote Orientation Modifier
2016-09-07 14:20:02 +12:00
Scott Mansell
7311cd8b6e Merge pull request #4137 from aldelaro5/memCheck-crash-fix
Fix a crash when adding the first memory check while the game is running
2016-09-07 14:19:19 +12:00
Chris Burgener
23b2601133 Fix advanced config panel staying disabled after TAS recording 2016-09-06 22:12:13 -04:00
Scott Mansell
f5e870bbe5 Merge pull request #4135 from RisingFog/remove_wii_limits_rtc
Fix issues with Custom RTC when set past the year 2038
2016-09-07 14:05:58 +12:00
Scott Mansell
366a38a917 Merge pull request #4142 from mbc07/IPC_HLE_usb_ven
[IPC HLE] Implement /dev/usb/ven with very basic functionality
2016-09-07 13:51:55 +12:00
Scott Mansell
dbface94ea And remove the feature from the Arm64 jit too. 2016-09-07 12:53:14 +12:00
Scott Mansell
c354dfcd2f Remove instant ARAM DMA mode.
Now that our timings are much more accurate it doesn't look like we
need it anymore. And the instant ARAM DMA mode + scheduling fixes
ctually breaks ATV: Quad Power Racing 2 (causing all sorts of werid
bugs).
2016-09-07 12:53:14 +12:00
Scott Mansell
f5c70a4b27 EFB2RAM: Downsample higher resolutions with linear filtering. 2016-09-07 11:17:32 +12:00
Markus Wick
18030ebfb4 Merge pull request #4179 from magcius/xinput2-default
Remove the old Xlib backend
2016-09-06 10:26:26 +02:00
degasus
a4d72ac6e3 MMU: Add small BAT comment. 2016-09-06 08:43:31 +02:00
degasus
ce5dac11a2 Boot: Update BAT lookup table on booting ELF. 2016-09-06 08:43:31 +02:00
degasus
6493ea1eb9 MMU: Coding style fixes. 2016-09-06 08:43:31 +02:00
degasus
ae1421b606 JitArm64: Rebase failure. 2016-09-06 08:43:31 +02:00
degasus
2925a5b219 Jit64: Simplify dcbz. 2016-09-06 08:43:31 +02:00
degasus
ef0dcfe558 MMU: Small fixes. 2016-09-06 08:43:31 +02:00
magumagu
d557310371 Support for dynamic BAT modification (dynamic-bat).
Fundamentally, all this does is enforce the invariant that we always
translate effective addresses based on the current BAT registers and
page table before we do anything else with them.

This change can be logically divided into three parts.  The first part is
creating a table to represent the current BAT state, and keeping it up to
date (PowerPC::IBATUpdated, PowerPC::DBATUpdated, etc.).  This does
nothing by itself, but it's necessary for the other parts.

The second part (mostly in MMU.cpp) is simply removing all the hardcoded
checks for specific untranslated addresses, and consistently translating
addresses using the current BAT configuration. Very straightforward, but a
lot of code changes because we hardcoded assumptions all over the place.

The third part (mostly in Memmap.cpp) is making the fastmem arena reflect
the current BAT configuration.  We do this by redoing the mapping (calling
memmap()) based on the BAT table whenever it changes.

One additional minor change is that translation can fail in two ways:
either the segment is a direct store segment, or page table lookup failed.
The difference doesn't usually matter, but the difference affects cache
instructions, like dcbz.
2016-09-06 08:43:22 +02:00
aldelaro5
6f54c3207c Fix registerView updates issues when stepping over or stepping out
For step over, it was updating twice which actually made the red display on the register view (when a register changes since) malfunction.  Since it doesn't seem to be usefull to update before AND after the run, the one before the run was removed.

For step out, well, because there was no chances given for the thread to run as it is single stepping all the time, I only added a call to update after it was done.
2016-09-05 23:45:24 -04:00
EmptyChaos
014714d515 WII_IPC_HLE: Fix Reinit
Init cannot be called more than once because it registers the
CoreTiming callbacks, that trips the assertions and will cause
anyone with PanicAlerts disabled to crash.
2016-09-06 12:59:22 +10:00
Scott Mansell
5932ded806 Merge pull request #4183 from aldelaro5/if-simplification-slowmem
Simplify an if condition after PR #4078
2016-09-06 13:20:58 +12:00
aldelaro5
173bdc766d Simplify an if condition after PR #4078 2016-09-05 13:01:02 -04:00
Scott Mansell
d29dae207a Merge pull request #4078 from comex/alwaysUseMemFuncs-for-write
Don't use the fast path when there are watchpoints enabled, for writes too
2016-09-06 04:55:17 +12:00
Scott Mansell
0119f1302f Merge pull request #4177 from phire/useless_cases
BPStructs: remove case statements which never match.
2016-09-06 00:56:09 +12:00
Scott Mansell
a665743b70 BPStructs: remove case statments which never match.
Visual Studio's code analyzer complains about these.
2016-09-06 00:40:49 +12:00
Jasper St. Pierre
928d05ec47 InputCommon: Remove the Xlib backend
The XInput2 backend is more performant, so let's default to it and
remove the old, core-only backend.
2016-09-04 10:44:22 -07:00
Jasper St. Pierre
2b640a4f7d XInput2: Only do a round trip when the mouse has moved
This should cut down on round trips and blocking calls dramatically
during gameplay.
2016-09-04 10:44:22 -07:00
Jasper St. Pierre
980ecfba7f IPC_HLE_net_ssl: Include mbedtls/platform.h
My version of mbedtls seems to require this -- otherwise, it doesn't compile.
2016-09-04 10:44:22 -07:00
Scott Mansell
f5fa5a7d32 Merge pull request #4168 from EmptyChaos/coretiming-cleanup
Core: CoreTiming Cleanup (Add UnitTests)
2016-09-04 11:48:54 +12:00
Mat M
0f359000c5 Merge pull request #4166 from lioncash/emitter-func
x64Emitter: Generify ABI_CallFunction variants
2016-09-03 07:26:34 -04:00
EmptyChaos
9d8f373016 VideoSoftware: Don't Init the PixelEngine twice
PixelEngine is initialized by InitializeShared()
2016-09-03 15:12:41 +10:00
EmptyChaos
3a85aa9817 EXI_DeviceMemoryCard: Use CoreTiming/DoState correctly
CoreTiming gets restored before ExpansionInterface so CoreTiming
events need to already be registered before the save state loading
begins. This means that the callbacks must be registered
unconditionally instead of on-demand.
2016-09-03 14:55:45 +10:00
EmptyChaos
fb5537213a CoreTiming: Document initial startup behavior
Events don't update the downcount until after the first Advance(),
thus Advance() must be called once before scheduling works normally.
2016-09-03 14:55:45 +10:00
EmptyChaos
59465911d7 CoreTiming: Fix scheduling into the past
ForceExceptionCheck messes up the downcount and slice length if the
callback is scheduled into the past (g_slice_length becomes negative)
2016-09-03 14:55:44 +10:00