Commit Graph

18203 Commits

Author SHA1 Message Date
EmptyChaos
b88b188819 CoreTiming: Cleanup naming conventions 2016-09-03 12:46:14 +10:00
Markus Wick
da82389347 Merge pull request #4172 from phire/software_fog_error
VideoSoftware: Fix unsigned overflow bug in fog
2016-09-02 09:53:44 +02:00
Scott Mansell
0e7424b359 VideoSoftware: Fix unsigned overflow bug in fog
Was causing fog errors on the left half of the screen.

Only appeared to affect visual studio builds, GCC did the correct
thing.
2016-09-02 10:12:44 +12:00
Jules Blok
d072d6d336 Merge pull request #4170 from Armada651/float-abs
VertexShaderManager: Explicitly use floating-point variant of abs.
2016-09-01 19:03:03 +02:00
Jules Blok
9fb6f93ca1 PixelEngine: Add missing static specifier for s_token_finish_mutex. 2016-09-01 17:28:48 +02:00
Jules Blok
376cadb862 VertexShaderManager: Explicitly use floating-point variant of abs.
Some compilers don't have an automatic abs() overload for floats.
Doesn't really matter if they use the integer variant here, but
it's better to be explicit about the fact that we're using floats.
2016-09-01 17:23:07 +02:00
Jules Blok
73b05b339b DVDInterface: Remove unused Triforce buffer. 2016-09-01 17:15:43 +02:00
Jules Blok
50984d85b0 Merge pull request #4164 from Armada651/sonic-clipping
VertexShaderGen: Move the sonic epsilon hack to the vertex shader.
2016-09-01 15:28:09 +02:00
EmptyChaos
e0d4dc6fed VertexShaderGen: Fix D3D X3014 compile error
float2 requires 2 parameters in HLSL apparently.
2016-09-01 14:43:19 +10:00
Lioncash
13506d3c12 x64Emitter: Generify ABI_CallFunction variants
Gets rid of the need to cast to void* just to use the functions.
2016-08-31 22:54:47 -04:00
Jules Blok
15a009706d Merge pull request #4143 from Pringo/capitalize
Fix Graphics Settings Capitalization
2016-09-01 03:21:24 +02:00
Jules Blok
2ab9e5e610 Merge pull request #4165 from lioncash/global
Backends: Remove unnecessary references to the renderer global
2016-09-01 03:20:31 +02:00
Jules Blok
debaf63fe8 VertexShaderGen: Move the sonic epsilon hack to the vertex shader.
In the vertex shader we have control over the depth clipping planes,
so we don't have to offset every floating point value and lose accuracy.
2016-09-01 01:14:14 +02:00
Lioncash
ec7114a658 OGL: Remove unnecessary renderer global references 2016-08-31 14:19:56 -04:00
Lioncash
168e145fae D3D: Remove unnecessary renderer global references 2016-08-31 14:17:22 -04:00
Lioncash
9e26ef4aa8 D3D12: Remove unnecessary renderer global references 2016-08-31 14:14:51 -04:00
Preston Smith
94cbe0c12a Comments 2016-08-31 06:40:50 -05:00
Preston Smith
e6ccd0729f Revert postMat movement 2016-08-31 02:14:51 -05:00
Preston Smith
89b1d613cc Remove else in software renderer 2016-08-30 18:33:27 -05:00
Preston Smith
e0a1ab9027 lint fix 2016-08-30 18:33:26 -05:00
Preston Smith
8f69de51ca inputform ABC1's q value is defaulting to 0
This is causing the 0 divide case to run when source row is using tex0-7 and inputform is ABC1.
2016-08-30 18:33:25 -05:00
Preston Smith
767f56d7c8 Software renderer fix 2016-08-30 18:33:24 -05:00
Preston Smith
5a6b876dbd Hardware renderer fix 2016-08-30 18:33:23 -05:00
Jules Blok
92920c4005 TextureCacheBase: Address 0x0 is valid, don't you dare ignore it. 2016-08-30 16:45:49 +02:00
Scott Mansell
efac0cf8fe Merge pull request #4156 from phire/interlaced_panic
VideoInterface: Fix panic alert on interlaced fields.
2016-08-29 23:10:55 +12:00
Scott Mansell
c4786ad70e Merge pull request #4151 from phire/fix_lswx
Fix bug in interpreter's lswx. Was overwriting extra register.
2016-08-29 23:10:23 +12:00
Scott Mansell
17e64b75a5 VideoInterface: Fix panic alert on interlaced fields.
For some reason this was only showing up in video software.

Not sure why.
2016-08-29 23:08:23 +12:00
Scott Mansell
fc2b0e0f45 Simplify lswx loop. 2016-08-29 22:57:37 +12:00
Scott Mansell
fc969388f0 Merge pull request #4152 from aldelaro5/debugger-font-fix
Fix the Debugger font not appearing on the captions of panes
2016-08-29 11:17:59 +12:00
Tim Maile
3266bf052a Toggle and Switches for upward/sideway WiimoteEmu 2016-08-28 12:47:24 +02:00
aldelaro5
cd515911c0 Fix the user font not appearing on the captions of panes
Both those in the code window and the ones that appears when the user select edit perpective.  The one that isn't fixed by this is in edit perspective mode, when the user drags a panel out and it becomes a floating window.
2016-08-27 21:29:03 -04:00
Scott Mansell
967c371d7a Zero case behaviour confirmed by hardware test
Modify comments to reflect this
2016-08-28 09:48:29 +12:00
Scott Mansell
ab3eedcc33 While I'm here, stswx should wrap too. 2016-08-27 14:15:43 +12:00
Scott Mansell
5b47635b3f Fix bug in interpreter's lswx. Was overwriting extra register.
When n was a multiple of 4, the old implementation would overwrite
the following register with 0.

This was causing Not64 to crash.

Thanks to Extrems for spotting this.
2016-08-27 14:15:42 +12:00
Jules Blok
35a270d2a8 TextureConversionShader: Don't use the float specifier in shader code. 2016-08-24 17:42:32 +02:00
Scott Mansell
0fbf72cbf1 Merge pull request #4140 from Armada651/ww-depth
D3D: Correctly invert the viewport depth range.
2016-08-24 02:28:53 +12:00
Jules Blok
f7987017a0 PixelShaderManager: Use signed integers for the depth range parameters. 2016-08-23 15:54:05 +02:00
Jules Blok
a8a9348913 OGL: Handle cases where reversed depth is already used. 2016-08-23 15:54:04 +02:00
Scott Mansell
92f165d756 Merge pull request #4144 from aldelaro5/debugger-insertInstruction-fix
Invalidate the icache when inserting a nop or a BLR
2016-08-24 00:22:24 +12:00
aldelaro5
cc7aa73081 Invalidate the icache when inserting a nop or BLR
Also schedule an event to invalidate it if the emu thread is running.
2016-08-23 07:37:54 -04:00
aldelaro5
47d1b07abb Add a thread safe variant of invalidating the icache
This is used by the next commit.
2016-08-23 07:37:41 -04:00
Jules Blok
65472260d8 D3D: Correctly invert the viewport depth range. 2016-08-23 09:57:11 +02:00
Markus Wick
52af0770c3 Merge pull request #4141 from lioncash/vtx
VertexManagerBase: Get rid of static state
2016-08-23 07:33:25 +02:00
Pringo
9446a2550b Fix Graphics Settings Capitalization 2016-08-22 21:25:54 -07:00
mbc07
8fa687eab4 Implement /dev/usb/ven with very basic functionality (based on the old wiispeak branch) 2016-08-23 00:23:19 -04:00
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
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
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
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