Commit graph

20847 commits

Author SHA1 Message Date
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
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
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
Markus Wick
0bd5db3e05 Merge pull request #3894 from hthh/optimize-fifo-bug
Jit: Check the FIFO on EIEIO instructions
2016-08-12 13:25:25 +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
Pierre Bourdon
4c9c456846 Merge pull request #4116 from leoetlino/lint-real-fix
Tools: Fix the lint script (for real, this time -- and the last time)
2016-08-11 21:27:16 +02: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
Léo Lam
1fe31f6f19 Tools: Fix the lint script
It turns out that last fix was only partial, and it didn't fix the
issue completely as paths were fixed, but staged changes were not
in the list. This should fix it for real, this time. Sorry about that…

(git diff needs --cached to include staged changes, unlike git status.)
2016-08-11 21:11:17 +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
Pierre Bourdon
5eab50d52c Merge pull request #4113 from stenzek/externals-vulkan
Externals: Add Vulkan headers and glslang
2016-08-11 16:15:32 +02:00
Stenzek
951fc44d86 Externals: Add glslang from Vulkan SDK v1.0.21.1 2016-08-11 22:40:32 +10:00
Stenzek
49e57df2b6 Externals: Add Vulkan headers from 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
Markus Wick
7914e4d19d Merge pull request #3458 from JosJuice/seconds-not-ticks
Replace some unnamed tick constants with GetTicksPerSecond()
2016-08-10 17:43:51 +02: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
Markus Wick
caa7ff7c25 Merge pull request #4093 from leoetlino/flags-and-events
Use Common::Flag and Common::Event when possible
2016-08-10 16:15:52 +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
Markus Wick
c6a0e543a5 Merge pull request #3861 from stenzek/d3d11-mip-dumping
D3D11: Support texture dumping of non-zero mipmap levels
2016-08-10 15:50:48 +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
Markus Wick
0fecd2f6b0 Merge pull request #4104 from degasus/master
PixelEngine: Cleanup PE Token.
2016-08-10 13:36:34 +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
Scott Mansell
d56ae505dd Merge pull request #4101 from meffij/SIDevicesEnumFix
clean up bounds checking for SIDEVICE_ENUM
2016-08-09 06:09:52 +12:00
Calvin Cochran
ba45a5999f clean up bounds checking for SIDEVICE_ENUM 2016-08-08 12:33:08 -05:00
Matthew Parlane
1ab99ee22c Merge pull request #4098 from rohit-n/build-pch
Fix building with PCH disabled.
2016-08-07 18:59:27 +12:00