Commit graph

14808 commits

Author SHA1 Message Date
Ryan Houdek
6d4867e36a Fixes missing objects on Adreno hardware.
This particular bug from our friends over at Qualcomm manifests itself due to our alpha testing code having a conditional if statement in it.
This is a fairly recent breakage this time around, it was introduced in the v95 driver which comes with Android 5.0 on the Nexus 5.

So to break this issue down; In our alpha testing code we have two comparisons that happen and if they are true we will continue rendering, but if
they aren't true we do an early discard and return. This is summed up with a fairly simple if statement.

if (!(condition_1 <logic op> condition_2)) { /* discard and return */ }

This particular issue isn't actually due to the conditions within the if statement, but the negation of the result. This is the particular issue that
causes Qualcomm to fall flat on its face while doing so.

I've got two simple test cases that demonstrate this.
Non-working: http://hastebin.com/evugohixov.avrasm
Working: http://hastebin.com/afimesuwen.avrasm

As one can see, the disassembled output between the two shaders is different even though in reality it should have the same visual result.

I'm currently writing up a simple test program for Qualcomm to enjoy, since they will be asking for one when I tell them about the bug.
It will be tracked in our video driver failure spreadsheet along with the others.
2014-10-29 06:21:03 -05:00
skidau
049afc4315 Merge pull request #1428 from phire/fixPaletteCpy
Fix Invalid Palette Pointer error.
2014-10-29 12:25:57 +11:00
comex
6698bfe58e Merge pull request #1424 from phire/memmapPtrCleanup
Memmap pointer cleanup.
2014-10-28 17:31:23 -04:00
Lioncash
5ba5aa10e3 Merge pull request #1431 from magcius/fix-breakpoints
BreakPoints: Fix compile warning
2014-10-28 17:08:51 -04:00
comex
1c32a3f77c Merge pull request #1426 from lioncash/osx
Make some OSX-only functions static
2014-10-28 16:16:03 -04:00
comex
31c679a3dc Merge pull request #1403 from waddlesplash/dolphin-qt
DolphinQt: Fix toolbar image loading on Retina displays
2014-10-28 16:15:04 -04:00
Scott Mansell
ba58cc47a3 Remove old (and now incorrect) error checking code.
We will now rely on Memory::CopyFromEmu to do bounds checking.

Some games actually load palettes from 0x00000000, despite the
fact no valid palette data should ever be there.

Fixes Issue 7792.
2014-10-29 08:53:53 +13:00
Scott Mansell
d77f361c01 Add range checking to CopyTo/FromEmu so it won't segfault. 2014-10-29 08:53:53 +13:00
Jasper St. Pierre
d9a1fc1564 BreakPoints: Fix compile warning 2014-10-28 12:22:30 -07:00
Augustin Cavalier
5b4b74de6a Fix image loading on Retina and other HiDPI displays. 2014-10-28 14:39:20 -04:00
Lioncash
fd39454ad3 Make some OSX-only functions static
Gets rid of function prototype warnings.
2014-10-28 08:41:50 -04:00
Scott Mansell
1fbf4ae58a Round up 7 nibble constants to 8 nibbles, for readablity. 2014-10-29 00:01:02 +13:00
Scott Mansell
a6671645d6 Remove commented out EFB arena code. 2014-10-28 23:58:54 +13:00
Scott Mansell
125cd92c3c Update pointer types in memmap.cpp to match dolphin style guide. 2014-10-28 23:54:37 +13:00
skidau
64b09582c6 Merge pull request #1410 from lioncash/enum
EXI_Channel: Use an enum for read/write modes
2014-10-28 13:00:42 +11:00
Lioncash
88ec3b7725 EXI_Channel: Use an enum for read/write modes 2014-10-27 21:57:48 -04:00
skidau
1630b0c684 Merge pull request #1291 from skidau/debugger-step-out
Dolphin debugger enhancements
2014-10-28 12:53:22 +11:00
skidau
b13ba0680c Merge pull request #1345 from sgadrat/fix-avidump-framerate
Fix timing of AVI files dumped on Linux
2014-10-28 12:50:01 +11:00
skidau
726a3acc9a Merge pull request #1409 from lioncash/err
OGL: Get rid of error macros
2014-10-28 12:48:39 +11:00
skidau
3f7a6e3eee Merge pull request #1405 from lioncash/mono
CheatSearchTab: Make cheat list display in monospace font
2014-10-28 12:47:21 +11:00
skidau
dd3cd30ee8 Merge pull request #1393 from RachelBryk/accel
Fix acceleration emulation for wiimote and nunchuk.
2014-10-28 12:46:37 +11:00
comex
5f4c22df1a Merge pull request #1423 from Buddybenj/cannot
Fix consistency of cannot throughout the project
2014-10-27 21:28:17 -04:00
Buddybenj
1b9add5cab Fix consistency of cannot throughout the project 2014-10-27 20:26:18 -05:00
Ryan Houdek
07a8b1b28f Merge pull request #1422 from randomstuff/fix-llvm
Fix LLVM
2014-10-27 18:58:10 -06:00
Gabriel Corona
cf3ba671bf Fix LLVM
$(llvm-config --ldflags) was passed to the compiler but it needs to be
passed to the linker instead (-L and -l flags).
2014-10-28 01:36:27 +01:00
comex
c76b804258 Merge pull request #1406 from lioncash/const
DolphinQt: Make GetOS const
2014-10-27 15:04:41 -04:00
Augustin Cavalier
32c6848c79 Some style fixes. 2014-10-27 13:11:39 -04:00
skidau
daf977e84e Disabled optimizations, block merging and instruction skipping code while the debugger is stepping. 2014-10-27 23:38:45 +11:00
Ryan Houdek
81dda593cd Merge pull request #1404 from Sonicadvance1/fix-ARMv7
Fixes some ARMv7 regressions.
2014-10-27 05:15:17 -06:00
Ryan Houdek
043bd710a0 Merge pull request #1394 from Sonicadvance1/fix-arm-cpudetect
Fixes ARM CPU detection routine for the hardware.
2014-10-27 05:07:24 -06:00
Lioncash
2b710929f9 Merge pull request #1416 from archshift/clion
Added IDEA/Clion project dir to .gitignore
2014-10-27 00:33:37 -04:00
archshift
0019519bd6 Added IDEA/Clion project dir to .gitignore 2014-10-26 21:19:19 -07:00
skidau
bf97e7f9c1 Merge pull request #1390 from RachelBryk/turbo
Alternate inputs once per frame rather than once per input for turbo.
2014-10-27 12:56:21 +11:00
skidau
7cc33a2fcc Merge pull request #1384 from RachelBryk/hide-mouse
Fix description of hide mouse cursor option.
2014-10-27 12:55:17 +11:00
Ryan Houdek
acacbc0c46 Merge pull request #1412 from Sonicadvance1/fix-LLVM-detection
Fixes LLVM library detection.
2014-10-26 15:33:52 -06:00
Ryan Houdek
bd1a192faf Fixes LLVM library detection.
I must have had a dirty cmake configuration which didn't encounter this issue.
Make sure we are using LLVM_DEFINITIONS to know where we are linking to libraries at.
Link against libLLVM-${VERSION}, the other one was linking us against static libraries...
2014-10-26 16:17:57 -05:00
Lioncash
2f132863d6 Merge pull request #1411 from lioncash/vert-align
EXI_DeviceIPL: Fix vertical alignment of IPL arrays
2014-10-26 13:50:12 -04:00
Lioncash
edea9dfca3 EXI_DeviceIPL: Fix vertical alignment of IPL arrays 2014-10-26 11:45:56 -04:00
skidau
4570dd7eeb Fixed a crash that would occur if a new watch were added by entering a watch name.
Code style updates.
2014-10-26 23:23:45 +11:00
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