skidau
7eebbcdca7
Fixed a crash that would occur when old symbol information was reused
2014-10-26 21:19:22 +11:00
Lioncash
49b94e5285
OGL: Get rid of error macros
2014-10-26 04:54:58 -04:00
skidau
73dca1ca33
Added a new option to add memchecks from the Watch window.
...
Fixed watch labels from being truncated at the first whitespace.
2014-10-26 16:14:17 +11:00
skidau
2a3a8520a2
Removed the EXRAM_MASK from the safe address check as it was causing invalid accesses on Wii games in DEBUGFAST builds
2014-10-26 14:56:03 +11:00
skidau
8d2931cf18
Breakpoints and watches are now loaded and saved on start/stop.
...
Saved Breakpoints and watches per game in the game ini.
2014-10-26 14:56:03 +11:00
skidau
b73130af77
Added Load/Save function for the Watch window.
...
Made the floating windows toolbars dockable.
Scaled down the breakpoint toolbar icons to 16x16.
2014-10-26 14:56:03 +11:00
skidau
b34e220086
Added a "Delete watch" context menu to the Watch window.
...
Added a "View memory" command to the context menu.
2014-10-26 14:56:03 +11:00
skidau
290e1bed37
Disable block linking while debugger stepping or if there are breakpoints
2014-10-26 14:56:02 +11:00
skidau
d0a3bb7650
Added "Add to watch" context menu items to the Memory and Register windows.
...
Added "View memory" context menu item to the Register window.
2014-10-26 14:56:02 +11:00
skidau
613cae613a
Added a RAM Watch window to the debugger
...
Conflicts:
Source/Core/Core/HW/Memmap.cpp
Source/Core/Core/HW/Memmap.h
Source/Core/DolphinWX/Debugger/CodeWindow.h
2014-10-26 14:56:02 +11:00
skidau
df37649b9f
Changed the step over routine to a single stepping version that steps until a blr is encountered.
...
Cleared out all temporary breakpoints on each step to prevent phantom breakpoints from stopping the debugger.
2014-10-26 14:56:02 +11:00
skidau
b331ec96a3
Made the "continue", "stepover" and "stepout" functions work when the PC is at a breakpoint
2014-10-26 14:56:02 +11:00
skidau
219a5078e8
Added a "Step Out" (aka "Step return") function to the debugger.
...
Conflicts:
Source/Core/DolphinWX/Debugger/CodeWindow.h
2014-10-26 14:56:01 +11:00
skidau
f895648eb9
Merge pull request #1396 from comex/star-star-star
...
Fix 'sizeof' which broke in my reference-to-pointer conversion.
2014-10-26 14:18:02 +11:00
skidau
38acd4d4bf
Merge pull request #1382 from Sonicadvance1/LLVM-disasm
...
Implements LLVM based disassembler for the debugger.
2014-10-26 13:46:01 +11:00
skidau
1078d78a6c
Merge pull request #1374 from lioncash/clearctx
...
AGL: Use NSOpenGLContext's clearCurrentContext in ClearCurrent
2014-10-26 13:44:50 +11:00
skidau
7c58eb344d
Merge pull request #1378 from lioncash/gl
...
GLUtil: Change return type from GLuint to GLenum for OpenGL_ReportGLError.
2014-10-26 13:44:34 +11:00
Lioncash
14c3445ad2
DolphinQt: Make GetOS const
2014-10-25 21:51:58 -04:00
Lioncash
adf6ce076c
CheatSearchTab: Make cheat list display in monospace font
2014-10-25 21:44:56 -04:00
Ryan Houdek
0fbd5248ca
Fixes a potential crash on the ARMv7 JIT if someone disables the entire JIT in the debugger.
...
We can't disable branches in the JITs. Make sure they don't become disabled if someone tries to disable the full JIT.
2014-10-25 20:38:44 -05:00
Ryan Houdek
17f352e2aa
Fixes some overzealous optimizations from ARMv7 BindToRegister.
...
We can't do it in rlw and friends.
subfx had an inccorect check.
Minor whitespace and reordering.
2014-10-25 20:36:29 -05:00
Ryan Houdek
484fc392d6
Fixes minor bug in the ARMv7 register cache.
...
Makes sure our register we are binding doesn't get unloaded immediately.
2014-10-25 20:34:11 -05:00
comex
5f21683343
Merge pull request #1388 from waddlesplash/dolphin-qt
...
DolphinQt: About dialog fixes, SystemInfo dialog
2014-10-25 21:20:02 -04:00
Augustin Cavalier
7cd0a13d35
Fixes from @comex to add the app bundle and icon on Mac.
2014-10-25 21:17:32 -04:00
Augustin Cavalier
69cd8229d8
Fixes to the About dialog & add the SystemInfo dialog.
...
Also fix the build on Mac OS X.
2014-10-25 20:59:07 -04:00
Rachel Bryk
f07d3be502
Fix acceleration emulation for wiimote and nunchuk.
...
The 1-2 least significant bits were missing.
2014-10-25 19:49:42 -04:00
comex
b29e5146ec
Convert some VideoCommon stuff to BitSet.
...
Now with a minor performance improvement removed for no reason.
2014-10-25 16:57:25 -04:00
comex
f51c233a08
Add workaround for OS X symbol clash and AllOnes helper method.
2014-10-25 16:57:25 -04:00
comex
eb7f4dac50
Convert registersInUse to BitSet.
2014-10-25 16:57:25 -04:00
comex
b6a7438053
Add BitSet and, as a test, convert some JitRegCache stuff to it.
...
This is a higher level, more concise wrapper for bitsets which supports
efficiently counting and iterating over set bits. It's similar to
std::bitset, but the latter does not support efficient iteration (and at
least in libc++, the count algorithm is subpar, not that it really
matters). The converted uses include both bitsets and, notably,
considerably less efficient regular arrays (for in/out registers in
PPCAnalyst).
Unfortunately, this may slightly pessimize unoptimized builds.
2014-10-25 16:56:51 -04:00
Lioncash
da528008de
CheatsWindow: Remove unnecessary header includes and forward decls
2014-10-25 16:56:16 -04:00
comex
275755aaaf
Merge pull request #1381 from skidau/Remove-false-ext-exception-error
...
Added a check for external exceptions that have been set
2014-10-25 16:48:44 -04:00
comex
4b0c6d8e0f
Merge pull request #1385 from lioncash/bitfield
...
BitField: Fix a typo in the sample usage.
2014-10-25 16:48:31 -04:00
comex
b7cb5b69c4
Merge pull request #1387 from RachelBryk/radius
...
Change default gcpad radius to 100.
2014-10-25 16:46:06 -04:00
Lioncash
51a96297e6
CheatSearchTab: Fix signed/unsigned comparison warning
2014-10-25 16:32:33 -04:00
Ryan Houdek
3ac2d8e1f1
Revert "Removes ARMv7 specific byteswap routines from CommonFuncs.h"
2014-10-25 15:28:04 -05:00
comex
a9f9e81330
Use double braces for std:array initialization to avoid clang warning.
...
std::array does not have an initializer list constructor, instead (for
some reason) being defined to contain one public array member, allowing
it to be directly initialized. Thus the most explicit way to initialize
it is with two braces, one for the struct and one for the array. C++
allows the second pair of braces to be omitted, but clang complains
about it.
2014-10-25 15:39:24 -04:00
comex
5c2a470b97
Fix 'sizeof' which broke in my reference-to-pointer conversion.
2014-10-25 15:02:12 -04:00
Ryan Houdek
c2364a54c1
Fixes packaging OS X binary with spaces in the directory name.
2014-10-25 10:51:54 -05:00
Ryan Houdek
b66a7f83c2
Fixes ARM CPU detection routine for the hardware.
...
We weren't dropping a newline character from the string, we were cutting off the last character of the hardware name.
This fixes my TK1 being called 'lagun' when it's name is 'laguna'
2014-10-25 09:14:14 -05:00
Ryan Houdek
e780a49a06
Merge pull request #1375 from Sonicadvance1/ARMv7-optimizations
...
Minor ARMv7 JIT recompiler optimizations.
2014-10-25 08:28:10 -05:00
skidau
bc26cb1b19
Merge pull request #1322 from degasus/ogl-pp
...
OGL: force enable postprocessing
2014-10-25 13:48:27 +11:00
skidau
8598d6bc2b
Merge pull request #1364 from RachelBryk/titles
...
Read game title from ini file, or titles.txt if it exists.
2014-10-25 13:33:26 +11:00
skidau
726306fa27
Merge pull request #1367 from lioncash/radiobox
...
CheatSearchTab: Use a wxRadioBox for data sizes
2014-10-25 13:32:24 +11:00
skidau
f1e5765b99
Merge pull request #1372 from Sonicadvance1/fix-egl-blackness
...
Fixes black screen issue on EGL+X11 systems.
2014-10-25 13:31:37 +11:00
Ryan Houdek
cb10bef9a4
Implements LLVM based disassembler for the debugger.
...
This will work for all of our platforms, x86, ARMv7, and AArch64.
Main issue with this is that LLVM's cmake files aren't correctly finding the LLVM install.
Not sure if this is Ubuntu's issue or not, it may just work on other operating systems.
We could potentially improve this, you can pass in a specific CPU in to the LLVM disassembler. This would probably affect latency times that are
reported by LLVM's disassembly? This needs to be further investigated later.
2014-10-24 18:10:21 -05:00
Rachel Bryk
f199acc234
Alternate inputs once per frame rather than once per input for turbo.
...
Fixes turbo for games that do not run at 60 fps.
2014-10-24 17:56:46 -04:00
Ryan Houdek
6483f8d45c
Removes ARMv7 specific byteswap routines from CommonFuncs.h
...
GCC has optimized this using the exact same code since 4.7 or 4.8.
Android building falls back to the __linux__ route.
No need to keep these around anymore since we aren't building on an old GCC version.
2014-10-24 16:21:54 -05:00
Augustin Cavalier
51700a2b68
Fix the brand/cpu_string reversal.
...
Before this commit, the two were reversed ("cpu_string" had the brand, e.g. "AuthenticAMD"; and "brand_string" had the CPU type, e.g. "AMD Phenom II X4 925").
2014-10-24 16:09:21 -04:00
Rachel Bryk
c5fc3dd80f
Change default gcpad radius to 100.
...
Official gc controllers need it to be 100 to work properly, and it is
better to have it set too high than too low.
See issue 7762.
2014-10-24 15:35:44 -04:00
Lioncash
c0c835d0b6
BitField: Fix a typo in the sample usage.
2014-10-24 13:33:02 -04:00
Rachel Bryk
0e92a47bc8
Fix description of hide mouse cursor option.
2014-10-24 12:36:14 -04:00
Lioncash
b1bdce7d77
TextureCache: Get rid of explicit deletes in SaveTexture
2014-10-24 08:47:06 -04:00
skidau
2c8e77dcc0
Added a check for external exceptions that have been set. Prevents a false positive log message.
2014-10-24 13:23:21 +11:00
skidau
3ab921d5b0
Merge pull request #1363 from lioncash/init-order
...
CoreParameter: Fix initializer list order
2014-10-24 13:03:38 +11:00
skidau
716fe06289
Merge pull request #1349 from comex/good-job-dereferencing-null-on-purpose
...
Fix some warnings from Clang trunk in an overly aggressive manner
2014-10-24 13:03:09 +11:00
skidau
ace57fb515
Merge pull request #1348 from Sonicadvance1/JitBlockView-cleanup
...
Cleans up the JIT block viewer in the WX UI.
2014-10-24 13:01:53 +11:00
Sylvain Gadrat
3a12c50dc1
Fix timing of AVI files dumped on Linux
...
The timing information is set on s_scaled_frame->pts, giving precise
timing information to the encoder. Frames arriving too early (less than
one tick after the previous frame) are droped. The setting of packet's
timestamps and flags is done after the call to avcodec_encode_video2()
as this function resets these fields according to its documentation.
2014-10-23 23:34:38 +02:00
comex
1f5b1001ce
Merge pull request #1342 from phire/lessGetPointer
...
Eliminate getPointers which are memcpyed or memset.
2014-10-23 14:42:37 -04:00
Lioncash
3509a6d03e
GLUtil: Change return type from GLuint to GLenum for OpenGL_ReportGLError.
2014-10-23 13:04:19 -04:00
Ryan Houdek
5204acd5ee
Fixes OpenSLES's sample rate.
...
I was statically setting the sample rate to 44.1Khz when we default to run at 48Khz.
This was causing audio to sound much too low.
2014-10-23 11:29:49 -05:00
Ryan Houdek
5bb19426b3
Optimizes instructions in ARMv7's JIT inside of the arith function.
...
For instructions where the second immediate value fits within an instruction encoding, just encode it directly in to the instruction.
2014-10-23 15:42:57 +00:00
Ryan Houdek
6743d6ef1f
Adds support back for non-immediate cmp/cmpi to ARMv7 JIT.
2014-10-23 15:39:09 +00:00
Ryan Houdek
0253c35d3a
Adds support to ARMv7's register cache for not loading a destination register prior to overwriting.
...
This extends the register cache's BindToRegister function with a doLoad argument just like x86's.
The speedup is minor for these implemented integer instructions.
2014-10-23 15:38:56 +00:00
Lioncash
101af72102
AGL: Use NSOpenGLContext's clearCurrentContext in ClearCurrent
2014-10-23 10:56:42 -04:00
Ryan Houdek
ec56c3b8d3
Fixes black screen issue on EGL+X11 systems.
...
We weren't setting the backbuffer dimensions on this platform when the window is created.
This required a resize event to first be fired in order to see anything.
So instead do like GLX + X11 platforms do and query the dimensions and set the backbuffer to them.
Should fix issue 7666.
2014-10-23 08:06:42 -05:00
Ryan Houdek
a2c8783417
Enables EarlyZ support in OpenGL ES 3.1.
2014-10-23 07:34:07 -05:00
Lioncash
a9f0bd72d2
Merge pull request #1369 from Sonicadvance1/enable-profiling
...
Enables block profiling in the UI on non x86 targets.
2014-10-23 08:09:39 -04:00
Ryan Houdek
2a1d4a7245
Removes some terrible printf debugging that was left over in the ARMv7 JIT.
2014-10-23 06:08:49 -05:00
Ryan Houdek
50135a988e
Enables block profiling in the UI on non x86 targets.
...
ARMv7 supports block profiling as well. So let's stop artificially limiting here.
2014-10-23 05:59:14 -05:00
Scott Mansell
23832987b5
Revert changes preloading of RGBA8 tiles.
...
This path should probally be optimised, but it's out of the
scope of this PR.
2014-10-23 18:15:29 +13:00
Lioncash
5bb6f515d8
CoreParameter: Fix initializer list order
2014-10-22 23:38:13 -04:00
Lioncash
40b2737458
CheatSearchTab: Use a wxRadioBox for data sizes
2014-10-22 23:37:35 -04:00
comex
00c6ec97a6
Merge pull request #1347 from comex/header-hygiene
...
Add missing includes where headers depend on other headers having been included first.
2014-10-22 23:23:58 -04:00
skidau
684cb658e2
Merge pull request #1354 from Sonicadvance1/ARMv7-stepping
...
Adds support for stepping in the ARMv7 JIT.
2014-10-23 13:31:17 +11:00
skidau
9836ce23e6
Merge pull request #1353 from Sonicadvance1/block-debugging
...
Don't enable stepping on ARMv7 JIT core if just in the debugger.
2014-10-23 13:30:04 +11:00
Rachel Bryk
b1e14a65a2
Read game title from ini file, or titles.txt if it exists.
2014-10-22 22:19:40 -04:00
degasus
7292ea6a04
OGL: force enable postprocessing
2014-10-23 00:21:52 +02:00
skidau
5d4b4c793a
Merge pull request #1340 from Sonicadvance1/EGL-fixes
...
Remove hard dependencies of GLX and libGL from Dolphin.
2014-10-22 13:15:46 +11:00
comex
6e774f1b64
Add missing includes where headers depend on other headers having been included first.
...
This is good hygiene, and also happens to be required to build Dolphin
using Clang modules.
(Under this setup, each header file becomes a module, and each #include
is automatically translated to a module import. Recursive includes
still leak through (by default), but modules are compiled independently,
and can't depend on defines or types having previously been set up. The
main reason to retrofit it onto Dolphin is compilation performance - no
more textual includes whatsoever, rather than putting a few blessed
common headers into a PCH. Unfortunately, I found multiple Clang bugs
while trying to build Dolphin this way, so it's not ready yet, but I can
start with this prerequisite.)
2014-10-21 21:22:16 -04:00
comex
06433652be
Improve some libcdio CoreFoundation code.
...
I found it via clang complaining about a useless null check on an array,
but I decided to get rid of the array in favor of dynamic allocation, as
there was no reason to assume a maximum length of 0x32 bytes. Plus, add
a CFString type check just in case, and switch to UTF-8 in the
off-chance it matters.
The result has not actually been tested, as I have no CD drive.
2014-10-21 21:20:11 -04:00
comex
8492d04dfa
Use pointers instead of references in GetUidData to avoid the undefined behavior of *(T *)nullptr (ewwww)
2014-10-21 21:20:05 -04:00
comex
9adf608f38
Merge pull request #1355 from FioraAeterna/fixmmuoff
...
MMU: allow page-table loads/stores if MMU is off
2014-10-21 14:55:18 -04:00
Ryan Houdek
ecf65d6f1f
Cleans up the JIT block viewer in the WX UI.
...
This code was an absolute mess. It had allocated an arbitrarily large string buffer to hold instructions that were disassembled.
Strip out all of the nasty raw C string manipulation and replaces it with ostringstream usage.
Fixes an issue where if you didn't have a JIT recompiler running then Dolphin would instantly crash if you tried comparing PPC to x86 code.
Changed the disassembly of the host side code from being inline to the function to instead being in a class, this will be required when I add support
for ARMv7 and AArch64 to this window.
2014-10-21 12:27:59 -05:00
Lioncash
eef9453abe
Merge pull request #1358 from Sonicadvance1/ARMv7-NOP
...
Changes from ARMv6 NOP to ARMv7 NOP.
2014-10-21 13:05:06 -04:00
Ryan Houdek
2e94814441
Changes from ARMv6 NOP to ARMv7 NOP.
...
Dolphin doesn't support ARMv6. Get this out of here.
2014-10-21 14:17:07 +00:00
Ryan Houdek
a22fcf152d
Disable the fake vmem hack on 32bit targets.
...
This hack is incompatible with these targets due to how much memory space we allocate.
2014-10-21 12:56:28 +00:00
Fiora
f4fa8d0b83
MMU: allow page-table loads/stores if MMU is off
...
Fixes regressions in some games that apparently required this to work, but
don't really require full MMU emulation (e.g. with exceptions and all).
2014-10-21 05:55:56 -07:00
Ryan Houdek
77da164fe2
Adds support for stepping in the ARMv7 JIT.
2014-10-21 12:53:59 +00:00
Ryan Houdek
85605389d7
Don't enable stepping on ARMv7 JIT core if just in the debugger.
...
Also makes sure we aren't profiling CPU run times unless we are actually profiling.
2014-10-21 07:51:25 -05:00
Fiora
d7ff482618
Fix FPRF flag setting
...
Looks like I didn't quite change every place it needed to be renamed.
2014-10-21 04:56:35 -07:00
comex
c048691a57
Merge pull request #1292 from FioraAeterna/enablebats
...
Make EnableBATs an option instead of disabling it entirely
2014-10-21 02:26:49 -04:00
comex
78deebd732
Merge pull request #1346 from kayru/d3d_clip_enable
...
D3D: Enabled depth clipping
2014-10-21 01:59:24 -04:00
comex
24e72cd064
Merge pull request #991 from phire/dsi_should_crash
...
Panic if game does an invalid memory access.
2014-10-21 01:53:08 -04:00
Yuriy O'Donnell
72ba13ca8a
D3D: Enabled depth clipping
2014-10-21 06:26:20 +02:00
skidau
305d2e1863
Merge pull request #1337 from skidau/AX-volume-clamp
...
Clamp the AX Volume to prevent clipping. Patch by hk.konpie. Fixes issue 7519.
2014-10-21 13:43:56 +11:00
skidau
833ff4a065
Merge pull request #1334 from lioncash/cheats
...
Break Cheat Manager components out into their own source files.
2014-10-21 13:43:06 +11:00
skidau
3022da5d9f
Merge pull request #1318 from RachelBryk/disable-bios
...
Disable skip bios option if no bios files exists.
2014-10-21 13:23:23 +11:00
Scott Mansell
3aa979d7d7
Remove another 3 getPointers.
...
Thanks neobrain for spotting these.
2014-10-21 12:18:54 +13:00
Scott Mansell
4fb6ab40a1
Eliminated getPointers which are memcpyed or memset.
...
Removes 12 getPointers.
2014-10-21 12:18:54 +13:00