magumagu
336b55bbc4
BS2 emulation: set up a reasonable BAT during startup.
...
It doesn't really matter much at the moment given our current terrible MMU
emulation, but it will start mattering once our MMU emulation gets more
accurate.
2014-05-24 03:46:12 -07:00
magumagu
440246a190
Interpreter: use numeric_limits instead of FLT_MAX.
...
Minor cleanup, and fixes compilation on some systems.
2014-05-24 10:58:15 +02:00
Tony Wasserka
cffa848b99
Merge pull request #390 from magumagu/fp-reciprocal
...
Add accurate implementations of frsqrte and fres
2014-05-24 10:45:01 +02:00
shuffle2
ca3002977b
Merge pull request #256 from magumagu/dsound-notify
...
DSound: use DSound notifications to produce sound.
2014-05-23 17:02:55 -07:00
magumagu
6955fef161
Interpreter: Code style fixes.
2014-05-23 15:06:09 -07:00
magumagu
d0ed3b8192
Jit: Use infinity and NaN from numeric_limits.
...
MSVC's implementation of INFINITY is unusable.
2014-05-23 14:59:03 -07:00
magumagu
a9a2d3d98d
New frsqrte implementation; verified accurate.
...
This is similar to the old implementation, but it uses smaller tables, and
handles more edge cases correctly. (hwtest coming soon.)
2014-05-23 14:59:02 -07:00
magumagu
129e76e60d
Interpreter: refactor the rsqrte code, and use it for ps_rsqrte.
2014-05-23 14:59:00 -07:00
magumagu
567724b2f8
Jit: get rid of incorrect implementations of fres and frsqrte.
...
The existing implementations produce answers which aren't consistent with
the hardware, and games care about correct floating point math.
These can be reimplemented at some point in the future, if someone cares
enough, but the general case is probably too much code to inline.
(I'm leaving the ARM implementations in place by request, even though they
suffer the same issues.)
2014-05-23 14:57:34 -07:00
Yuriy O'Donnell
ac75766c25
removed trailing whitespace
2014-05-23 21:14:48 +02:00
Yuriy O'Donnell
d08abfc14e
JIT: JitBaseBlockCache::InvalidateICache no longer memsets iCache memory to INVALID_BYTE.
...
This is redundant, since we reset the valid_block bits any way.
However, this was a source of a significant performance issues in some games.
In particular, Metal Gear Solid: Twin Snakes.
2014-05-23 20:40:45 +02:00
Yuriy O'Donnell
de1e2127dc
JIT: JitBaseBlockCache::valid_block is now std::vector<bool>
...
This was previously a std::bitset, which resulted in generation of suboptimal code by VS2013 compiler.
See https://gist.github.com/kayru/753db9607d680e26194b
2014-05-23 20:32:25 +02:00
Rachel Bryk
e6684d17c1
Fix a couple race conditions.
...
Checks if another game is already starting to boot before starting to boot a new one, and only change video backend, and dual core if a game is actually not running.
2014-05-23 10:22:00 -04:00
Rachel Bryk
61d3360033
Limit netplay chat messages to 2000 characters.
...
There's not really a good reason to be sending messages longer than that, and very long messages can hang dolphin for quite a long time.
2014-05-23 08:11:49 -04:00
Rachel Bryk
cd299f0703
Flash netplay window when someone joins if the window doesn't have focus.
2014-05-23 07:30:08 -04:00
Rachel Bryk
0782d106db
Check for errors when reading lines from ini files.
...
Fixes issue 7283.
2014-05-23 03:17:19 -04:00
magumagu
2f8a147eda
Interpreter: make fres match hardware.
...
New table-based implementation written based on actual hardware behavior.
(hwtest coming soon).
2014-05-22 19:48:48 -07:00
magumagu
ad4ad7c1ed
Use accurate frsqrte in Interpreter.
...
The implementation of frsqrte exposed by this change isn't completely
correct; that will be fixed in a later commit.
2014-05-22 19:46:27 -07:00
shuffle2
b58753bd69
Merge pull request #370 from Sonicadvance1/remove_specialized_memcmp
...
Removes ZeroFrog's "optimized" memcpy and memcmp functions.
2014-05-22 13:02:11 -07:00
shuffle2
fc41a53b46
Merge pull request #309 from magumagu/jit-unify-asm
...
JIT: unify JitAsm for JIT64 and JIT64IL.
2014-05-21 23:10:08 -07:00
shuffle2
c308657779
Merge pull request #376 from lioncash/wx
...
Wx cleanup
2014-05-21 21:54:00 -07:00
shuffle2
c4e60d5353
Merge pull request #356 from Sonicadvance1/Fix-MMUAnalyst
...
Fixes games that use the MMU to page in code(Rogue Leader).
2014-05-21 20:59:25 -07:00
shuffle2
6544d53c16
Merge pull request #361 from LPFaint99/wiisave
...
Export wii saves to the "User" directory
2014-05-21 20:17:18 -07:00
shuffle2
9ce269c7dc
Merge pull request #382 from magumagu/faster-fast-disc-speed
...
DVDInterface: make fast disc speed faster.
2014-05-21 20:12:38 -07:00
shuffle2
4fb10a11b9
Merge pull request #379 from jordan-woyak/gamelist-size-fix
...
Fix game list size display.
2014-05-21 19:52:10 -07:00
shuffle2
dd413269e3
Merge pull request #343 from jordan-woyak/disable-sdl-windows
...
Disable SDL input on Windows.
2014-05-21 19:47:44 -07:00
Jasper St. Pierre
9d161b4170
BPStructs: Consistently put the two shared copy args first
...
And rename them so they make a bit more sense.
2014-05-20 11:28:15 -04:00
Jasper St. Pierre
1ae8edc1d0
BPStructs: Remove another function wrapper
2014-05-20 11:28:15 -04:00
Jasper St. Pierre
b1d3c5937a
BPStructs: Move LoadBPReg here
2014-05-20 11:28:14 -04:00
Jasper St. Pierre
763ad77a1c
BPStructs: Flatten out BPWritten
2014-05-20 11:28:14 -04:00
Jasper St. Pierre
07ab77d31c
BPStructs: Reindent BPWritten
2014-05-20 11:28:08 -04:00
Jasper St. Pierre
c33a1b4b28
BPStructs: Document BPMEM_BP_MASK better
2014-05-20 11:26:31 -04:00
Jasper St. Pierre
2f122ea63c
BPMemory: Fix "DISPLAYCOPYFILER" typo
2014-05-20 11:15:10 -04:00
Jasper St. Pierre
4e8e51b278
BPStructs: Remove calls to SetInterlacedMode when reloading state
...
SetInterlacedMode is a dummy no-op that does nothing.
2014-05-20 11:15:10 -04:00
Jasper St. Pierre
833b7ee584
BPFunctions: Remove the rest of GetConfig
2014-05-20 11:15:09 -04:00
Jasper St. Pierre
08611c3f36
PixelShaderManager: Fizzle out fog changes when disabled here
...
This lets us remove a use of GetConfig.
2014-05-20 11:15:09 -04:00
Jasper St. Pierre
fe645b888b
BPFunctions: Remove use of a dumb method
...
GetPointer serves no purpose.
2014-05-20 11:15:08 -04:00
Jasper St. Pierre
56228cea5d
BPFunctions: Remove an unused method
2014-05-20 11:15:08 -04:00
Jasper St. Pierre
4f4e3fad85
BPMemory: Clean up and rename some variables and comments
...
This is about the register number, not the opcode.
2014-05-20 11:15:08 -04:00
Jasper St. Pierre
e81b62aad1
BPFunctions: Clean up math slightly
...
No need for magic 342 numbers.
2014-05-20 11:14:00 -04:00
degasus
c1b6fcc00b
ogl: pixel format shader without resolving
...
v2: Don't use std::to_string as this function is broken on android.
2014-05-19 09:29:40 +02:00
degasus
e150d307a6
ogl: use ARB_texture_multisample for msaa
2014-05-19 09:21:44 +02:00
degasus
fab78c2dff
ogl: add ARB_texture_multisample
2014-05-19 09:21:44 +02:00
degasus
775858b6bc
ogl: drop NV_framebuffer_multisample_coverage
2014-05-19 09:21:44 +02:00
degasus
afea848e3b
ogl: drop csaa support
2014-05-19 09:21:44 +02:00
magumagu
5dffa28f0a
DVDInterface: make fast disc speed faster.
...
Fixes workaround for crash in Star Wars Rogue Leader.
2014-05-18 20:03:55 -07:00
Jordan Woyak
d841e5176f
Fix game list size display.
2014-05-18 12:17:56 -05:00
Lioncash
554207a87c
Remove an unnecessary null check in CodeWindow.cpp.
...
The validity of ToolBar is checked at the beginning of the function
2014-05-18 11:43:21 -04:00
Pierre Bourdon
826a9e0152
MMIO: Lazy-initialize read/write handlers since most are not actually used
2014-05-18 17:37:33 +02:00
Lioncash
75cb8a7452
Fix a typo in the JIT debugger window
2014-05-18 10:31:39 -04:00
Tony Wasserka
6950f533ae
Merge pull request #355 from magumagu/gx-missing-opcode
...
Opcode decoding: handle missing opcodes 0x88 etc.
2014-05-18 11:12:06 +02:00
Ryan Houdek
a4bb0dafb4
Removes ZeroFrog's "optimized" memcpy and memcmp functions.
...
These were only compiled in on Windows and x86_32.
They provided "optimized" copies and compares based on blocksizes for the AMD Athlon and Duron CPU families.
The code was taken from something that AMD provides with a as-is license.
Just get rid of this crap.
2014-05-17 18:03:31 -05:00
Pierre Bourdon
0f1b1dd3cf
CheckExceptions: add TODO and remove a wrong comment
2014-05-18 00:56:18 +02:00
Lioncash
5f796e919b
Move bn.h and ec.h into the correct filter section
2014-05-17 16:47:41 -04:00
Lioncash
e1359382be
Kill off _T and wxT macros
...
Minor other alterations that relate to above as well.
Also added the PanicAlertT version of alerts for some error messages that
use PanicAlert. We want the user to actually understand why the error
occurred.
2014-05-17 16:25:51 -04:00
Tony Wasserka
fc34d5a130
Merge pull request #360 from magumagu/lighting-rounding
...
Video backends: fix rounding in lighting computation.
2014-05-17 21:06:31 +02:00
magumagu
9b82d72070
Video backends: warn on usage of GL_DRAW_QUADS_2.
...
It's not normally used, so if it shows up, it could indicate a CPU emulation
bug.
2014-05-17 11:55:32 -07:00
Lioncash
90df5efd01
Get rid of old wx event type usages. Use recommended replacements
2014-05-17 13:17:43 -04:00
Pierre Bourdon
5391b2dd9c
Merge pull request #327 from magumagu/dvd-seek-time
...
DVD emulation: make seek timing more accurate.
2014-05-17 18:48:35 +02:00
Pierre Bourdon
396e13de89
Merge pull request #369 from lioncash/ini
...
Use size_t in std::string operations in IniFile.cpp, not int
2014-05-17 17:42:08 +02:00
Tony Wasserka
0fac17da33
Merge pull request #269 from magumagu/swbackend-xfregisters
...
SW backend: use VideoCommon XFRegisters struct.
2014-05-17 10:40:57 +02:00
magumagu
6fbf6fad3b
VideoCommon: cleanup Renderer::RecordVideoMemory.
2014-05-16 18:58:08 -07:00
magumagu
1357277f40
Video backends: mass-replace "xfregs" with "xfmem".
2014-05-16 18:58:07 -07:00
magumagu
8f5342c442
Video backend: merge global var xfmem into xfregs.
...
There isn't really any reason to keep them separate.
2014-05-16 18:55:31 -07:00
magumagu
818c89313e
Video backends: unify xfregs/xfmem structures.
...
Removes the duplicate swxfregs global variable/struct from the software
backend in favor of the ones from VideoCommon.
2014-05-16 18:55:30 -07:00
shuffle2
d0de0c1222
Merge pull request #374 from ToadKing/master
...
make IOCTL_SO_GETHOSTID more accurate on Windows
2014-05-16 18:12:35 -07:00
Toad King
1ba5ffeea3
remove trailing whitespace
2014-05-16 20:10:30 -04:00
Toad King
e7e6021414
changed IOCTL_SO_GETHOSTID to remove malloc()/free() calls
...
account for GetIpForwardTable() returning ERROR_MORE_DATA
2014-05-16 19:13:52 -04:00
magumagu
8b82cea704
Video backends: fix behavior of "konst" TEV inputs.
...
Also fixes TEVCOLORARG_HALF.
Values verified to match hardwarere.
2014-05-16 12:19:35 -07:00
Tony Wasserka
fee6efc4dc
Merge pull request #375 from degasus/remove_SkipVertices
...
VertexLoaderManager: Remove unused function.
2014-05-16 16:20:29 +02:00
Tony Wasserka
b8817267f4
Merge pull request #366 from Jezze/vertex
...
OGL/VertexManager: Remove unused variable.
2014-05-16 16:18:14 +02:00
Tony Wasserka
25e8dc0aed
Merge pull request #354 from magumagu/gx-primitive-mask
...
Opcode decoding: 0xC0 isn't a valid command.
2014-05-16 15:59:59 +02:00
degasus
7bb44199fd
remove unused and unexported function
2014-05-16 14:33:00 +02:00
Toad King
ce64885a66
make IOCTL_SO_GETHOSTID more accurate on Windows
2014-05-15 20:33:21 -04:00
Fredrik Ehnbom
31ec57ab81
PPCAnalyst now detects internal branches better
...
For example:
```
addr opcode disasm
80026584 48000054 b ->0x800265D8
```
2014-05-15 16:36:44 +02:00
Lioncash
d0bd4119d1
Use size_t in std::string operations in IniFile.cpp, not int
2014-05-14 20:38:08 -04:00
Jens Nyberg
f742c5a057
OGL/VertexManager: Remove unnused m_CurrentVertexFmt
2014-05-13 23:59:08 +02:00
LPFaint99
1b65456738
Export wii saves to the "User" directory
2014-05-11 22:23:21 -07:00
Jordan Woyak
635dbd0ff9
Possibly an OSX buildfix.
2014-05-11 23:05:34 -05:00
magumagu
9e4eeb3b9b
Video backends: fix rounding in lighting computation.
...
For whatever reason, the hardware doesn't do a full divide by 255, but
instead uses an approximation with shifting, similar to the way it is done
in TEV.
2014-05-11 12:53:02 -07:00
shuffle2
36720e6822
Merge pull request #351 from Tilka/make_unique
...
Add a std::make_unique implementation (Common/StdMakeUnique.h)
2014-05-11 01:46:09 -07:00
Tillmann Karras
fd94ce5210
fixmeup use
2014-05-11 10:40:18 +02:00
Tillmann Karras
4400e511c0
fixmeup rename
2014-05-11 10:40:18 +02:00
Shawn Hoffman
17577affba
D3D: Don't pass D3D10_SHADER_WARNINGS_ARE_ERRORS to the compiler in debug builds.
...
For quite a while this has been causing integer division to generate a warning as error, blocking shader compiling. This means probably no one has even been running D3D in debug builds...
I tried disabling the warning with a #pragma, but it doesn't seem to apply when this flag is used.
2014-05-10 22:12:54 -07:00
Ryan Houdek
15ce648b0d
Merge pull request #341 from lioncash/pragma
...
Move the header guard before the includes in VideoCommon's Statistics.h
2014-05-10 23:21:53 -05:00
Ryan Houdek
fcc7b6e56d
Merge pull request #346 from Sonicadvance1/Android-PewPewShaders
...
Adds support for the PP shaders in the Android UI.
2014-05-10 22:51:28 -05:00
magumagu
39d439fc48
Opcode decoding: handle missing opcodes 0x88 etc.
...
Hardware testing shows that they do the same thing as the 0x80 family of
opcodes: they draw quads.
2014-05-10 20:33:28 -07:00
shuffle2
2983ae2823
Merge pull request #357 from shuffle2/master
...
Revert "x64FPURoundMode: always set x87 precision"
2014-05-10 20:26:56 -07:00
Ryan Houdek
004af614cf
Merge pull request #335 from Tilka/twx
...
Jit64: implement tw/twi more accurately
2014-05-10 22:26:02 -05:00
Shawn Hoffman
700c135386
Revert "x64FPURoundMode: always set x87 precision"
...
This reverts commit 9de77b7c23
.
Setting x87 precision control is only supported on x86 platforms (not ARM or x64).
2014-05-10 20:21:07 -07:00
Ryan Houdek
cdec575bef
Fixes games that use the MMU to page in code(Rogue Leader).
...
The issue was that on memory exception we wouldn't call in to PPCAnalyst and our code_block would retain the previous blocks information.
This would cause us to compile the previous blocks instructions in prior to the exception exit.
2014-05-09 09:10:45 -05:00
magumagu
369c0c4ce2
Opcode decoding: 0xC0 isn't a valid command.
...
Fix our opcode decoders to handle this appropriately.
2014-05-08 15:49:19 -07:00
magumagu
4f5421ffb5
DVDInterface: code cleanup.
2014-05-08 11:47:38 -07:00
Shawn Hoffman
fa65eeb492
Apparently the debug build has not been freeing memory since 2008. Undo that.
2014-05-08 00:58:55 -07:00
Tillmann Karras
452cdefaa3
Use std::make_unique where it makes sense to
...
(and improve some other unique_ptr initializations).
Adapted from delroth's pull request.
2014-05-06 12:35:50 +02:00
Tillmann Karras
81d4d7368a
Add a std::make_unique implementation
...
Some compilers we care about (mostly g++) do not support std::make_unique yet,
but we still want to use it in our codebase to make unique_ptr code more
readable. This commit introduces an implementation derivated from the libc++
code in the Dolphin codebase so we can use it right now everywhere.
Adapted from delroth's pull request.
2014-05-06 12:32:03 +02:00
Tony Wasserka
b4e1ac5f08
Merge pull request #185 from degasus/shader-cleanup
...
Shader cleanup
2014-05-06 11:37:11 +02:00
magumagu
f123e08731
DVDInterface: tweak buffered reads to be a bit faster.
...
A read finishes when the result is complete in the drive's buffer, not
main memory.
2014-05-05 14:52:15 -07:00
magumagu
8014795d56
DVD emulation: make seek timing more accurate.
...
Based on real measurements of a Gamecube disk on a Wii. (If anyone else
is interested in running more tests, I can upload my code; it's a mess at
the moment.)
This isn't a complete model, but it's a step in the right direction:
in Metroid Prime, the loading times are sane, and I think I managed to do it
without breaking anything.
2014-05-05 14:33:00 -07:00
Ryan Houdek
0bfec024e9
Merge pull request #330 from LPFaint99/GCMemcard_addsave_fix
...
GCMemcard: fix edge case of adding to a fragmented memcard.
2014-05-05 16:31:33 -05:00
Tony Wasserka
edbf90f9d2
Merge pull request #336 from magumagu/xfb-vertical-scale
...
XFB width/height handling fixes
2014-05-05 22:05:21 +02:00
Ryan Houdek
33bdc0f985
Adds support for the PP shaders in the Android UI.
...
Copies over the PP shaders to the APK's assets and installs them on run.
Exposes them via the video settings UI.
This is in anticipation of dropping the workaround for rotated blits on Adreno and instead forcing shader usage by the user.
2014-05-05 13:44:08 -05:00
magumagu
727ef4a625
JIT: unify JitAsm for JIT64 and JIT64IL.
...
Having a bunch of nearly identical code sitting around isn't a good idea,
so fix that. JITIL had a couple of extra entry points into the JIT main
loop, so adjust the code appropriately.
Also fixes Issue 7186.
2014-05-05 11:12:22 -07:00
Tony Wasserka
093ee090b8
Merge pull request #339 from magumagu/opengl-unused-parameter
...
OpenGL: delete unused function parameter in TextureConverter.
2014-05-05 20:05:08 +02:00
magumagu
c01ac18d4d
VideoInterface: clean up naming and bitfields.
...
Matching the hardware more closely will hopefully make this code easier to
read.
2014-05-05 11:01:15 -07:00
magumagu
716b3fefd4
VideoCommon: recreate XFB texture when the XFB size changes.
...
We need to do this to correctly deal with games which dynamically change the
XFB width and height.
2014-05-05 11:01:14 -07:00
magumagu
2db2f3dce9
VideoInterface: accurate XFB width and height.
...
What we call "fbWidth" here is really the stride, but I'll fix that in a
followup.
2014-05-05 11:01:14 -07:00
magumagu
bca0b7b543
OpenGL: delete unused function parameter in TextureConverter.
...
(While I'm here, also mark some functions static.)
2014-05-05 10:56:36 -07:00
Ryan Houdek
2f92b82b29
Merge pull request #345 from Sonicadvance1/Qualcomm-textureSize
...
Enables usage of GLSL textureSize on Qualcomm v66.
2014-05-05 11:41:40 -05:00
degasus
813e30ec2a
ShaderGen: make uv readonly
2014-05-05 17:06:38 +02:00
degasus
6109958e68
ShaderGen: OGL: don't make a copy of "Normal"
2014-05-05 17:06:37 +02:00
degasus
0e0da8c8fd
ShaderGen: make clipPos readonly
2014-05-05 17:06:37 +02:00
degasus
c80717ac2e
PixelShaderGen: extract iround
2014-05-05 17:06:37 +02:00
degasus
2bc2b73e03
PixelShaderGen: drop fmod as it isn't used any more
2014-05-05 17:06:37 +02:00
degasus
c82991df5b
ShaderGen: inline constant shaders
2014-05-05 17:06:37 +02:00
degasus
b0878c54b2
ShaderGen: use cbuffers for D3D
2014-05-05 17:06:37 +02:00
degasus
fe9fcfdd07
ShaderGen: merge early-z blocks of ogl+d3d
2014-05-05 17:06:37 +02:00
degasus
3e14bf511f
ShaderGen/D3D: inline centroid
2014-05-05 17:06:36 +02:00
degasus
25b8edd2a6
ogl: fix signed vs unsigned comparison warning
2014-05-05 17:06:36 +02:00
Ryan Houdek
8bb8446e34
Enables usage of GLSL textureSize on Qualcomm v66.
...
Qualcomm's v66 drivers have a working textureSize() function now.
Enable usage of it.
2014-05-05 08:50:13 -05:00
magumagu
2e464800bc
VideoCommon: correctly compute whether an indirect texture stage is active.
...
This is consistent with the implementation in PixelShaderGen.
2014-05-04 22:44:10 -07:00
magumagu
52c42a2946
VideoCommon: fix indirect texture coordinate computation in TEV.
...
Even if an indirect texture stage doesn't actually sample a texture, we
still need to emit the relevant math.
Fixes Issue 7092.
2014-05-04 22:12:57 -07:00
Jordan Woyak
9af18d1b96
Remove SDL from Externals.
2014-05-04 19:41:02 -05:00
Jordan Woyak
4321951987
Disable SDL input on Windows.
2014-05-04 19:09:51 -05:00
Lioncash
f4d80bd8a5
Move the #pragma once header guard before the includes in Statistics.h in VideoCommon.
2014-05-04 00:24:21 -04:00
Tillmann Karras
4cce79e744
Jit64: implement tw/twi more accurately
...
Fixes issue 7253.
2014-05-03 12:30:07 +02:00
Ryan Houdek
a1374dd4ba
Merge pull request #329 from Tilka/rounding
...
Small FPU settings changes
2014-05-02 12:11:09 -05:00
LPFaint99
b549ec70b4
GCMemcard: fix edge case of adding to a fragmented memcard.
...
allocates last block of memcard, and then wraps around, instead of attempting to write past the end of the card
2014-05-01 12:21:48 -07:00
Tony Wasserka
557c3db462
Merge pull request #81 from degasus/skip_framelimit_hotkey
...
Add a hotkey for disabling the framelimit.
2014-05-01 12:40:01 +02:00
Tony Wasserka
95f097d79b
Revert "Merge pull request #62 from degasus/log_truncate_path" because it was merged without consensus.
...
This reverts commit 1b581b7c27
, reversing
changes made to 951612f08e
.
2014-05-01 11:00:21 +02:00
Tony Wasserka
2cf8f55ad3
Merge pull request #310 from Sonicadvance1/Integer-posmtx
...
Change over to use integer posmtx in our vertex shaders
2014-05-01 10:52:18 +02:00
Ryan Houdek
c5d506142f
Merge pull request #305 from magumagu/movie-scanf
...
Movie: don't use "hh" scanf modifier.
2014-04-30 20:01:27 -05:00
Ryan Houdek
2d8cfb89d7
Changes posmtx vertex attribute to integer.
...
This makes it so we don't need to do some dumb casting from float to integer in our shaders.
Only tested in OpenGL, needs to be tested in D3D.
2014-04-30 19:11:06 -05:00
Ryan Houdek
99338daa8f
Fixes glVertexAttribIPointer on GLES.
...
We need to pull in function pointers for OpenGL 3.0 in order to use glAttribIPointer.
This isn't too big of an issue, and this code will be gone in the future when we change over to libepoxy.
Just need to push code upstream to libepoxy to support Android with GLES and GL first.
2014-04-30 19:11:06 -05:00
Ryan Houdek
c4221e8f68
Merge pull request #323 from Sonicadvance1/newer-ppcanalyst
...
[RFC] New PPCAnalyst class.
2014-04-30 18:59:24 -05:00
Ryan Houdek
1b581b7c27
Merge pull request #62 from degasus/log_truncate_path
...
Truncate the path on logging
2014-04-30 18:57:59 -05:00
Tillmann Karras
9de77b7c23
x64FPURoundMode: always set x87 precision
...
Set the x87 precision, even on x64. Since we are using x87 instructions
in the JIT now, we can't guarantee that x87 precision will never
influence Dolphin on x64.
2014-05-01 01:10:00 +02:00
Tillmann Karras
ed762a3eda
x64FPURoundMode: use fesetround() instead of asm
2014-05-01 01:09:55 +02:00
Pierre Bourdon
951612f08e
Merge pull request #325 from Tilka/nop
...
Fix NOP padding
2014-04-30 18:55:36 +02:00
Ryan Houdek
8e1dfef14c
Remove the old PPAnalyst::Flatten function that is no longer in use.
2014-04-30 10:49:39 -05:00
Ryan Houdek
c794dc8085
Move the JitWindow debugging window over to using the new PPCAnalyzer class.
2014-04-30 10:49:39 -05:00
Ryan Houdek
6949087ee1
Missed the analyzer object not named correctly.
2014-04-30 10:49:39 -05:00
Ryan Houdek
70d1f5adfb
Let Jit64IL use the new PPCAnalyst class
2014-04-30 10:49:39 -05:00
Ryan Houdek
1cb1260c1d
Address delroth's comments.
2014-04-30 10:49:39 -05:00
Ryan Houdek
40c317d1d4
Support the new PPCAnalyst class in JIT64.
...
Implements support for OPTION_CONDITIONAL_CONTINUE in JIT64.
2014-04-30 10:49:39 -05:00
Ryan Houdek
ad167e7b52
Adds support to the new PPCAnalyst to the ARM JIT cores.
...
ArmJit32 supports OPTION_CONDITIONAL_CONTINUE with this.
2014-04-30 10:49:38 -05:00
Ryan Houdek
da2ed2e17d
Adds new PPCAnalyser class.
...
Supports conditional branch continuation.
More features to come.
2014-04-30 10:49:31 -05:00
Tillmann Karras
36dbde0f3c
Jit_Util: reduce NOP padding of 8 bit loads
...
and use MOVSX directly if needed.
2014-04-30 15:26:11 +02:00
Tillmann Karras
e659f5ac58
JitBackpatch: fix NOP padding
...
The new NOP emitter breaks when called with a negative count. As it
turns out, it did happen when deoptimizing 8 bit MOVs because they are
only 4 bytes long and need no BSWAP.
2014-04-30 15:26:11 +02:00
booto
9892c8ea54
numCyclesMinusOne to numCycles in GekkoOPInfo
2014-04-30 19:04:02 +08:00
degasus
f254fdfd96
drop Host_GetKeyState
...
This function isn't used any more and it shouldn't be used at all as it generates a sync request to the x11 server. So it has to wait for a complete round trip time.
2014-04-30 12:51:13 +02:00
degasus
30586f4d29
Add set/get functions for IsFramelimiterTempDisabled
2014-04-30 12:51:13 +02:00
degasus
8483811b39
Add a hotkey for disabling the framelimit.
...
Atm this is hardcoded to '\t'.
2014-04-30 12:50:53 +02:00
Tony Wasserka
a40ea4e26a
Merge pull request #236 from magumagu/d3d11-fix-peekz
...
D3D11: Use appropriate shader for PEEK_Z.
2014-04-27 16:09:02 +02:00
Pierre Bourdon
aef24d509b
Merge pull request #304 from Tilka/nop
...
Optimize NOPs
2014-04-27 11:52:05 +02:00
Pierre Bourdon
a093b41231
Merge pull request #312 from Tilka/small_jit_optimizations
...
Small JIT optimizations
2014-04-27 11:51:21 +02:00
Pierre Bourdon
8bf2a338c4
Merge pull request #314 from Sonicadvance1/Clean-UpdateCR1
...
Removes unused argument in Helper_UpdateCR1.
2014-04-27 11:50:44 +02:00
Sean
895e84edfe
ARM: Fix Wii games on JIT
2014-04-25 18:32:49 -04:00
Pierre Bourdon
25f5598e31
Merge pull request #306 from neobrain/pixel_center_correction
...
VertexShaderGen: Correct vertex shader output to consider shifted pixel centers.
2014-04-25 09:32:36 +02:00
Ryan Houdek
94497961ac
Removes unused argument in Helper_UpdateCR1.
...
Interpreter::Helper_UpdateCR1 doesn't use the argument passed to UpdateCR1. It pulls its value from the FPSCR register.
Also there was a Interpreter::Helper_UpdateCR1(float) in addition to Helper_UpdateCR1(double) that hasn't ever existed. Remove the function
declaration.
2014-04-24 22:00:58 -05:00
Ryan Houdek
c29961cc90
Fix missing instructions in ARM JIT Tables.
...
The ARM insturction tables were missing addcox, addeox, and subfcox.
Implements support for addcox and addeox to the ArmJit, required little work since they are basically the same as addcx and addex.
2014-04-24 19:34:21 -05:00
Tillmann Karras
886c887e80
Fix Fastmem on CPUs without MOVBE
...
The problem was that when BSWAP was used, UnsafeWriteRegToReg() returned
the address of that instead of the MOV.
2014-04-25 01:11:52 +02:00
Tillmann Karras
688644dd18
Jit64: use integer instructions for boolean logic
...
They are semantically equivalent and according to Agner Fog they can run
on more execution ports than their floating point counterparts (at least
on Intel CPUs).
2014-04-24 22:50:27 +02:00
magumagu
78292e5d18
Movie: don't use "hh" scanf modifier.
...
Attempting to use it with Visual Studio is a good way to corrupt the stack.
2014-04-24 11:05:25 -07:00
Tillmann Karras
12054e9f16
Jit64IL: remove dummy implementations
2014-04-24 18:52:56 +02:00
Tillmann Karras
1f2e551c8c
BackPatch: make sure MOVBE is long enough
2014-04-24 16:36:03 +02:00
Tillmann Karras
acfd9ee76c
Add remaining possible uses of MOVBE
...
Also fixes a missing 'break' statement in DisassembleMov().
2014-04-24 16:36:03 +02:00
Ryan Houdek
e1bbda1e18
[Android] Fix a bunch of input bugs.
...
Looking at the old code for the ButtonManager was a brainfsck. This fixes a ton of bugs I kept uncovering as I was moving along.
Fixes the gamepad configuration file being incorrect.
No longer treats touchscreen in a special way. Ends up as a regular device with a "Touchscreen" device name.
Was incorrectly converting a index from integer to ButtonType. Wouldn't work due to the addition of some unused(in JNI) enumerators in ButtonType.
Fixes an issue where a map had a key as an axis which was causing its binding to be overwritten for every axis that was used twice (eg main stick left and right);
Fixes Triggers not working at all.
Fixes DPad not working at all.
Fixes C-Stick only half working.
Removes touch screen specific nativelibrary types onTouchAxisEvent and onTouchEvent.
Adds a configuration version configuration option. Allows easy configuration overwriting if the options need to be changed during updating.
Supersedes github PR #291 .
2014-04-24 08:51:44 -05:00
Pierre Bourdon
13b1ff5160
Merge pull request #307 from neobrain/custom_textures_workaround
...
Workaround dumb custom texture loading logic.
2014-04-24 00:46:42 +02:00
Tony Wasserka
fe65474cc4
Software renderer: Update a reference link.
2014-04-24 00:42:08 +02:00
Tony Wasserka
ca2a79d0bd
Workaround dumb custom texture loading logic so that D3D11, GL core (used on OS X) and GLES code paths have less broken custom textures.
2014-04-24 00:33:48 +02:00
Tony Wasserka
c47c32d4a8
VertexShaderGen: Correct vertex shader output to consider shifted pixel centers.
...
Fixes issue 267.
2014-04-24 00:21:17 +02:00
Tillmann Karras
957649b7af
Optimize NOPs
2014-04-23 21:15:09 +02:00
Ryan Houdek
fd37a768a6
Fix texture conversion shaders for GLSL ES.
...
Noticed this while messing with EFB to RAM.
We were having an implicit conversion from integer to float, GLSL ES doesn't allow implicit conversion.
Changes it to a explicit conversion to float.
2014-04-22 15:48:26 -05:00
magumagu
b5f71e901f
PatchEngine: Remove no-op function LoadDiscList.
...
(The function just pushes elements onto an std::vector which is unused
otherwise.)
2014-04-21 21:07:02 -07:00
Tony Wasserka
762572a08c
BPMemory: Fix GenMode using an incorrect number of bits for the number of color chans.
2014-04-21 22:47:08 +02:00
Tony Wasserka
16d3dbc5ea
BPMemory: Use BitField for the GenMode fields.
2014-04-21 22:34:23 +02:00
Pierre Bourdon
8e38b1e63b
Merge pull request #285 from delroth/movbe
...
WriteToConstRamAddress: support swap on 32 bit too
2014-04-21 02:23:30 +02:00
Pierre Bourdon
78b3eb1e64
Merge pull request #289 from Sonicadvance1/Fix-IPL-Horizontal-Offset
...
Change IPL horizontal offset from +5 to 0.
2014-04-20 01:26:41 +02:00
Pierre Bourdon
79df318a76
Merge pull request #284 from delroth/jitil-exp
...
DolphinWX Config: mark JITIL as slower to remove a source of confusion
2014-04-19 14:53:30 +02:00
Pierre Bourdon
d8ca861fec
Merge pull request #287 from Tilka/unused_variable
...
Fix "warning: unused variable 'skipFrames'"
2014-04-19 09:03:19 +02:00
Pierre Bourdon
8a5c0b3894
Merge pull request #288 from magumagu/remove-hid2-panicalert
...
Interpreter: don't PanicAlert on write to SPR_HID2.
2014-04-19 09:02:49 +02:00
Ryan Houdek
e6fa9bf048
Change IPL horizontal offset from +5 to 0.
...
Noticed this while fiddling with things.
Having a default offset of +5 is stupid.
Changes the bit that contains the offset and the two hashs.
2014-04-18 23:31:44 -05:00
magumagu
002fb0b563
Interpreter: don't PanicAlert on write to SPR_HID2.
...
The alert apparently triggers on Midway Arcade Treasures 2; given that the
game otherwise works fine, it's not a high priority to accurately emulate
the bit in question.
Fixes issue 7197.
2014-04-18 20:20:42 -07:00
Tillmann Karras
d523d2002b
Fix "warning: unused variable 'skipFrames'"
2014-04-19 04:59:37 +02:00
Ryan Houdek
92ec49ac9f
Change to ARM's naming convention in DriverDetails.
...
This matches how ARM handles their naming in their drivers for different models.
Really it's that way because both Mali-T6xx and Mali-T7xx fall under Midgard.
While everything else (except Mali-55) fall under Utgard.
2014-04-18 21:06:32 -05:00
comex
5a5e63bdd4
Merge pull request #282 from Tilka/atomic_clang_fix
...
Atomic: support clang 3.4+
2014-04-18 20:31:33 -04:00
Pierre Bourdon
257b11366d
WriteToConstRamAddress: support swap on 32 bit too
2014-04-19 02:23:57 +02:00
Pierre Bourdon
5f7ed5bd45
DolphinWX Config: mark JITIL as slower to remove a source of confusion for users.
2014-04-18 00:43:49 +02:00
pinumbernumber
a84bb7eb88
Add support for the guide button to XInput
2014-04-17 12:03:44 +01:00
Tillmann Karras
b3c7395a23
Atomic: support clang 3.4+
2014-04-17 10:39:02 +02:00
Pierre Bourdon
0908bd64dc
Merge pull request #279 from Sonicadvance1/Reject-InvalidControllers
...
Don't use SDL devices that report invalid ranges.
2014-04-17 00:16:19 +02:00
Ryan Houdek
c88b83699e
Don't use SDL devices that report invalid ranges.
...
If Buttons, Axes, Hats, or Balls > 255 then reject it.
2014-04-16 16:28:57 -05:00
magumagu
648b9865d8
D3D11 backend: fix rounding in texture encoder.
...
We need to explicitly round when converting colors from float to uint
because multiplying a normalized float by 255 might not result in a whole
number. (The exact result here may vary depending on your
drivers/hardware.)
Ideally, we shouldn't be using floating point here, but fixing that is a
much more complicated patch.
Fixes gxtest TEV tests using Intel HD 4000.
2014-04-15 23:36:05 -07:00
magumagu
b3a67821e4
VideoCommon: fix rounding in TEV.
...
The hardware backends pass the TEV tests in gxtest with this change.
2014-04-15 16:47:01 -07:00
Matthew Parlane
1f0da63cbe
Merge pull request #276 from neobrain/master
...
PixelShaderGen: Color combiner compare mode fix and simplification
2014-04-16 09:56:29 +12:00
Tony Wasserka
068f26d2aa
PixelShaderGen: Fix an issue with color combiner compare mode and simplify the affected line a bit.
...
This was a mistake of mine when translating floating point values to integer values.
Also, the max() part of that line was just completely redundant because the sign of an absolute value is always greater than or equal to zero.
Fixes issue 7178.
2014-04-15 23:41:07 +02:00
magumagu
685d612c8c
Software backend: don't skip red component in TEV.
2014-04-15 14:05:12 -07:00
magumagu
5e1c6aba33
Software backend: make TEV rounding match hardware.
...
Formulas stolen from gxtest. (Not sure how "==" got turned into "!=", but
I'm pretty confident the patched version is correct.)
2014-04-15 14:04:46 -07:00
Ryan Houdek
47f76b8907
Fix the integer overflow that happens in the MD5Sum Progressbar.
...
Instead of using a u64 size integer as the range on the progressbar, set the max as 1000.
Similar maximums are used in other parts of the UI.
2014-04-14 20:40:43 -05:00
Pierre Bourdon
c549e2fca1
Merge pull request #265 from Sonicadvance1/GenerateMD5Sum
...
Add the ability to generate a file's MD5sum.
2014-04-15 01:19:53 +02:00
Ryan Houdek
a30a528dd1
Add the ability to generate a files MD5sum.
...
This adds the ability to generate a files MD5sum in the ISO properties.
This uses polarssl to generate the MD5Sum.
2014-04-14 16:35:11 -05:00
Pierre Bourdon
cf315a487f
Merge pull request #271 from delroth/threading-stuff
...
Threading improvements: add Common::Flag and improve Common::Event
2014-04-14 23:23:16 +02:00
Pierre Bourdon
7074feacbe
Common::Event: Add a faster Windows specific implementation based on the concurrency runtime.
2014-04-14 23:13:15 +02:00
Pierre Bourdon
48bd904028
Common::Event: Implement in terms of Common::Flag to get rid of a volatile and optimize with early returns and atomic swaps
2014-04-14 23:13:15 +02:00
Pierre Bourdon
e24cad0780
Common::Flag: Add support for TestAndSet + test by implementing basic spinlocks.
2014-04-14 23:13:15 +02:00
Pierre Bourdon
fc71494742
Merge pull request #270 from neobrain/bitfield_fixes
...
Bitfield fixes
2014-04-14 20:24:01 +02:00
Tony Wasserka
ccc04944b2
BitField: Fix alignment issues.
...
At least one platform (ARM with NEON instructions enabled) generates SIGBUSes if BitField objects aren't aligned properly.
2014-04-14 20:04:44 +02:00
Pierre Bourdon
6bdcbad3e4
Common: Move the Event class to a separate file, and add tests for it. Fix includes everywhere to match this.
2014-04-14 10:54:07 +02:00
Pierre Bourdon
f9fb39d383
Common: Add a 'Flag' class that is used to encapsulate a boolean flag manipulated from several threads
2014-04-14 10:54:07 +02:00
degasus
ee76a51d1f
Truncate the path on logging
...
Cmake compiles we an absolute path, so the macro __FILE__ also has the absolute file in it.
It seems that gcc doesn't provide macros for the basename, so we have to truncate them in c directly:
https://stackoverflow.com/questions/8487986/file-macro-shows-full-path
2014-04-14 10:39:52 +02:00
Tillmann Karras
296637d6f2
Fix crash when pressing Tab
...
When pressing Tab for a long time, Dolphin will sooner or later crash
because the result of FindFocus() has become NULL (toctou).
2014-04-14 10:27:41 +02:00
Tony Wasserka
4f3227b4a9
Merge pull request #261 from magumagu/pixelshadergen-extra-paren
...
PixelShaderGen: delete extra parenthesis
2014-04-14 09:48:02 +02:00
magumagu
a2150ef1f8
PixelShaderGen: delete extra parenthesis.
...
Without this patch, we can generate a pixel shader which doesn't compile
in some cases.
2014-04-14 00:41:27 -07:00
Matthew Parlane
4e0b7260b6
Merge pull request #263 from Sonicadvance1/DetermineMaliVersion
...
Add Mali driver version check and support of checking for Mali-T7xx
2014-04-14 19:20:04 +12:00
Ryan Houdek
3f73fc37fc
[ARM] Implements more fastmem instructions in lXX.
...
There are a few instructions in lXX that aren't currently fastmem capable due to using a register offset.
This implements fastmem for those few instructions.
Really I'll be changing how ARMv7 fastmem works in the future so this is really temporary code.
Just don't know how long it'll stay.
This relies on PR #257
2014-04-14 00:38:46 -05:00
Ryan Houdek
a07f8fb65b
Merge pull request #257 from Sonicadvance1/LoadStore-Fix
...
[ARM] Minor cleanup to lXX and stX. Fixes a bug.
2014-04-14 00:38:13 -05:00
magumagu
1a4156a4a0
JitIL: fix carry computation for srawi.
...
The carry computation needs to be based on the input value, not the output
of the shift.
2014-04-13 20:31:32 -07:00
Pierre Bourdon
f034983b62
Merge pull request #262 from SlEePlEs5/master
...
Added BBA TAP backend for OS X.
2014-04-14 02:15:10 +02:00
Tony Wasserka
12841928df
BitField: Optimize generated assembly by forcing inlining.
2014-04-13 13:27:01 +02:00
magumagu
812ff4686b
OpenGL backend: remove useless header Globals.h.
...
The header has no content, so it can can just be deleted.
2014-04-12 19:25:37 -07:00
degasus
96ffbe345d
VideoSoftware: remove const memory usage of DebugUtil
2014-04-12 13:32:53 +02:00
SlEePlEs5
891fb056a3
Added BBA TAP backend for OS X.
...
TUN/TAP OS X needs to be installed, and /dev/tap0 chown’d to the user.
The tap0 network interface doesn’t appear until /dev/tap0 is opened by
the program, so all bridging must be done once the game is already
running.
Unfortunately, bridging seems to be broken on OS X, so this does not
actually work over LAN (yet!).
2014-04-12 09:51:34 +02:00
magumagu
f18a3cc650
OpenGL config: clear backend_info.Adapters on init
...
Fixes a minor UI glitch where if you switch from Direct3D to OpenGL, the
OpenGL config page would appear to have an adapter choice available.
2014-04-12 00:17:36 -07:00
Ryan Houdek
a9fa49f34d
Support checking for the Mali-T7xx line of GPUs.
...
They are similar enough that they will share bugs with their drivers, so make them fall under the same Mali-Txxx umbrella of bug issues.
If there is ever a need in the future for having separate bugs depending on family, we can support that then.
2014-04-11 23:46:44 -05:00
Ryan Houdek
ed67cc3fb2
Add the ability to determine the Mali driver version.
...
This is the only way we can determine the video driver version with mali.
Really it's a good thing that they only push driver updates once every two years, makes it easy to determine what driver anybody is running.
2014-04-11 23:38:40 -05:00
Tony Wasserka
b106dbc96e
Merge pull request #235 from magumagu/videobackend-unused-config
...
VideoBackend: Remove unused config variables.
2014-04-12 00:06:02 +02:00
magumagu
fd9c1fa746
VideoBackend: remove unused config vars.
...
No point to keeping around variables which are always "true".
2014-04-11 14:53:12 -07:00
Pierre Bourdon
745fe14269
Jit64: Use LoadAndSwap/SwapAndStore where it makes sense.
2014-04-11 23:33:21 +02:00
Pierre Bourdon
6cb42859d4
JitAsmCommon: Use MOVBE everywhere it matters (!x86 only code, !old CPU support code).
2014-04-11 23:33:21 +02:00
Pierre Bourdon
fcbe265adc
Jit_Util: Provide two util functions to load/store and swap values, using MOVBE internally when possible.
2014-04-11 23:33:21 +02:00
Pierre Bourdon
b2597739ff
x64Emitter: Add the MOVBE instruction.
2014-04-11 23:33:21 +02:00
Pierre Bourdon
d2de1ddabc
CPUDetect: add support for MOVBE detection
2014-04-11 23:29:03 +02:00
magumagu
76d7c1eb9c
D3DBackend: Don't recompute ID3D11Layout.
...
CreateInputLayout requires a shader as an input, but it only cares about
the signature; we don't need to recompute it for different shaders with
the same inputs.
2014-04-11 13:13:01 -07:00
Tony Wasserka
306b9afd1e
Merge pull request #224 from magumagu/swrender-deletepixelfork
...
Software backend: Delete forked PixelEngine.
2014-04-11 20:01:23 +02:00
Ryan Houdek
bedb386560
Merge pull request #242 from LPFaint99/GCMemcard
...
MemcardManager: Fix "export all saves"
2014-04-10 22:10:34 -05:00
Kristian Buchman
abd57f7198
Updated the Cmake and VCX project files
2014-04-10 12:10:55 -06:00
Kristian Buchman
45589e7735
Renamed all Core/DPS/Dsp* files to Core/DSP/DSP*
2014-04-10 12:10:55 -06:00
Pierre Bourdon
36a693e4fc
Merge pull request #252 from shuffle2/master
...
Assign "user_defined" value properly for downloaded Gecko codes.
2014-04-10 12:23:42 +02:00
Ryan Houdek
d17d5ead07
[ARM] Minor cleanup to lXX and stX. Fixes a bug.
...
Fixes an issue in lXX where if the instruction was an update instruction and was a register address offset that we would add garbage values to the
writeback register.
Does some minor cleanups as well which save a few instructions here and there.
2014-04-10 02:17:01 -05:00
Tony Wasserka
cdf6172348
Merge pull request #213 from Jezze/vertexloader-cleanups
...
Vertexloader cleanups
2014-04-10 08:52:36 +02:00
magumagu
4990b8910b
DSound: use DSound notifications to produce sound.
...
Pretty straightforward; IDirectSoundNotify lets you register for
notifications after a certain amount of sound has played, so use that
instead of depending on Update() notifications from the CPU thread.
Also, while I'm here, reduce the buffer size by a factor of 4; this seems
to reduce the latency, although the difference is sort of subtle.
2014-04-09 13:41:27 -07:00
Ryan Houdek
87d106d65c
Remove dumb CodeBlock duplication in the emitters.
...
Fixes issue 6990.
This uses a bit of templating to remove the duplicate code that is the CodeBlocks in each emitter headers.
No actual functionality change in this.
2014-04-09 13:53:43 -05:00
Shawn Hoffman
0c145dd1aa
Assign "user_defined" value properly for downloaded Gecko codes.
...
Fixes Issue 7156.
2014-04-08 14:52:17 -07:00
Ryan Houdek
ccc4866118
Fix Fastmem on ARM once more.
2014-04-06 10:28:58 -04:00
Ryan Houdek
93c871522f
Fix a bug in the ARMEmitter.
...
When creating a Fixupbranch we were swapping the BL and B targets.
I think this was found by PPSSPP a while ago, but they never send PRs to merge their changes upstream.
2014-04-06 10:28:41 -04:00
Rachel Bryk
d9d292fd1c
Add dsp rom hashes to movie header.
...
Also fix a random typo.
2014-04-06 09:36:45 -04:00
magumagu
d0f89b2b63
SWBackend: Fix code style.
2014-04-05 13:08:00 -07:00
magumagu
accd652aa1
Fix trailing whitespace.
2014-04-04 16:25:08 -07:00
Matthew Parlane
13119e6755
Merge pull request #240 from Sonicadvance1/GLSLES310_binding
...
Add initial support for GLSL ES 3.10.
2014-04-04 08:43:20 +13:00
Pierre Bourdon
c68be42c55
Merge pull request #226 from LPFaint99/Issue6753
...
Use a 251 block Memory card for games that do not work with larger cards. Fixes Issue 6753
2014-04-03 10:15:43 +02:00
LPFaint99
6333a4b5ba
fix exporting all saves in memcardmanager
2014-04-02 22:58:03 -07:00
Ryan Houdek
3251d78f89
Add initial support for GLSL ES 3.10.
...
GLSL ES 3.10 adds implicit support for the binding layout qualifier that we use.
Changes our GLSL version enums to bit values so we can check for both ES versions easily.
2014-04-03 00:46:09 -05:00
Ryan Houdek
ca9ee3586f
Merge pull request #227 from magumagu/swbackend-fix-shaders
...
SW backend: make shaders work on Intel/Windows.
2014-04-02 14:51:14 -05:00
Pierre Bourdon
2aac3f14b5
Merge pull request #238 from lioncash/fix-deprecations
...
Replace use of the deprecated mem_fun function with mem_fn.
2014-04-01 23:59:20 +02:00
pf packet
2aaca74dd5
Fix compilation error of Wayland_Util.h
...
This commit fixes the following error:
error: #endif without #if
2014-04-02 03:39:10 +09:00
lioncash
e79895e372
Replace use of the deprecated mem_fun function with mem_fn.
2014-04-01 12:09:22 -04:00
magumagu
f9d2f7e88c
D3D11: Use appropriate shader for PEEK_Z.
...
Trying to use GetDepthMatrixProgram outside of
TCacheEntry::FromRenderTarget is a bad idea, so don't. Instead, use a
shader which only copies the input.
Fixes lens flare depth test in Twilight Princess. See
http://code.google.com/p/dolphin-emu/issues/detail?id=5999 .
2014-03-30 19:50:53 -07:00
Pierre Bourdon
bad109402e
Merge pull request #233 from delroth/dsphle-cleanups
...
DSPHLE Zelda cleanups
2014-03-30 20:12:20 +02:00
Pierre Bourdon
76fafb1c7b
Merge pull request #220 from magumagu/audio-handling-cleanup-v2
...
Audio handling cleanup v2
2014-03-30 13:24:52 +02:00
Pierre Bourdon
9b03178673
Merge pull request #222 from comex/more-clang-fixes
...
More clang fixes
2014-03-30 13:24:08 +02:00
Pierre Bourdon
c7642e4712
DSPHLE: Rename variables in the Zelda UCode to match Dolphin's coding style
2014-03-30 13:06:45 +02:00
Pierre Bourdon
66fa0b626a
DSPHLE: Remove 'ZeldaObsolete.txt'
2014-03-30 12:51:21 +02:00
comex
92dd498fa7
Fix harmless warnings.
2014-03-30 01:40:11 -04:00
comex
b5654a2464
Don't cast -1 to enum to represent a missing value.
...
This is undefined behavior in C++, and a clang warning suggests it is
actually producing bad code as a result:
../Source/Core/VideoCommon/BPFunctions.cpp:164:45: warning: comparison of constant 4294967295 with expression of type 'PEControl::PixelFormat' is always false [-Wtautological-constant-out-of-range-compare]
if (new_format == old_format || old_format == (unsigned int)-1)
2014-03-30 01:40:06 -04:00
Pierre Bourdon
b31d1fd313
Merge pull request #232 from delroth/dsphle-cleanups
...
Random DSPHLE cleanups
2014-03-30 01:23:09 +01:00
Pierre Bourdon
c2ae791440
DSPHLE: Cleanup common style issues in Zelda.{cpp,h} (most of the file is not coding style compliant)
2014-03-30 01:13:33 +01:00
Pierre Bourdon
18ca5b880e
DSPHLE: Cleanup ROM.{cpp,h}
2014-03-30 01:13:33 +01:00
Pierre Bourdon
090e7637c8
DSPHLE: Cleanup INIT.{cpp,h}
2014-03-30 01:10:08 +01:00
Pierre Bourdon
41e9d8e1a4
DSPHLE: Cleanup GBA.{cpp,h}
2014-03-30 01:10:07 +01:00
Pierre Bourdon
061e3f998a
DSPHLE: Cleanup CARD.{cpp,h}
2014-03-30 01:10:07 +01:00
Pierre Bourdon
85ebffd839
DSPHLE: Cleanup AX{,Wii}.{cpp,h}
2014-03-30 01:10:07 +01:00
Pierre Bourdon
d3abe3824f
DSPHLE: Cleanup UCodes.{cpp,h}
2014-03-30 01:10:07 +01:00
Matthew Parlane
2e119af086
Merge pull request #230 from Parlane/libogc_ios_fix
...
Fixes Wiimotes for libogc.
2014-03-30 12:07:02 +13:00
Pierre Bourdon
17d64a1d50
DSPHLE: Mass rename classes to match our coding style better.
2014-03-30 00:01:15 +01:00
Pierre Bourdon
6bc845a804
DSPHLE: Rename files to remove redundant 'UCode' prefix.
2014-03-30 00:01:15 +01:00
Matthew Parlane
cb319ba1da
Fixes Wiimotes for libogc.
...
Caused by USB not writing back expected values.
Fixes Issue 7109
2014-03-30 11:04:30 +13:00
magumagu
bdcd5ba39b
SW backend: make shaders work on Intel/Windows.
...
Apparently the Intel shader compiler doesn't implement "#if" correctly...
so use "#ifdef" instead.
2014-03-29 13:10:43 -07:00
magumagu
0661efea84
Software backend: Delete forked PixelEngine.
...
Mostly just zapping a bunch of duplicated code; the only interesting thing
going on here is the changes to the performance counter implementation.
2014-03-29 12:07:20 -07:00
magumagu
3afa17f752
Move audio handling out of DSP emulation.
...
This is good for a couple of reasons: one, it gets rid of duplicated code,
and two, DSP emulation shouldn't need to interact with audio in the first
place.
2014-03-29 11:19:32 -07:00
magumagu
78499e5b7c
Delete AudioCommon::UseJIT().
2014-03-29 11:19:31 -07:00
magumagu
102ea55f20
Move mixer construction to AudioCommon.cpp.
2014-03-29 11:19:30 -07:00
magumagu
aac4206664
Move UDSPControl structure into DSP.h .
2014-03-29 11:19:19 -07:00
LPFaint99
c47f047ac6
Use memory card 251 for games that cannot use large memory cards
2014-03-29 10:14:24 -07:00
Lioncash
c351e12fe5
Fix assertion fails in FifoPlayerDlg.cpp.
2014-03-29 12:39:54 -04:00
Lioncash
366c83c4e0
Remove unnecessary wxT declarations in FifoPlayerDlg.
...
These are not needed anymore since wx 3.0. Also some minor formatting stuff.
2014-03-29 12:27:51 -04:00
Lioncash
73a3a6726d
Add the algorithm header to a few FifoPlayer cpp files.
...
Both of them use std::min and std::max, but this header wasn't included.
2014-03-29 10:42:28 -04:00
Pierre Bourdon
664c8d30a0
Remove all trailing whitespaces from our codebase.
2014-03-29 11:05:44 +01:00
comex
4d5df0d008
Fix IsTriviallyCopyable for volatile (fixes Mac build).
...
Between C++11 and C++14, volatile types stopped being trivially
copyable. The serializer has no reason to care about this distinction,
so tack on remove_volatile.
2014-03-27 23:42:52 -04:00
Lioncash
52c1db81ee
Fix include order in EGL.h.
2014-03-27 20:26:52 -04:00
magumagu
23174d25c6
Minor Ucode cleanup.
...
Clean out unnecessary references to the audio system from the ucode
implementation.
2014-03-27 14:16:16 -07:00
Pierre Bourdon
784c636db8
Merge pull request #214 from magumagu/zelda-ucode-cleanup
...
Zelda ucode cleanup
2014-03-27 09:57:03 +01:00
Jens Nyberg
73176d0333
VideoCommon/VertexLoader: Add more use of std::min and std::max
2014-03-27 00:33:41 +01:00
Jens Nyberg
478a27e052
VideoCommon/VertexLoader: Remove duplicate point min and max calculation
2014-03-27 00:24:48 +01:00
magumagu
8a3da44d91
Fix CMake build.
2014-03-26 15:59:23 -07:00
Jens Nyberg
0c62ae9c1a
VideoCommon/VertexLoader: Remove NRM enum
2014-03-26 23:56:57 +01:00
magumagu
f8b7a2fc10
Add audio output for Zelda Ucode variants.
...
Untested.
2014-03-26 15:17:37 -07:00
magumagu
e9896c1ff9
Use correct sample rate in Zelda Ucode HLE.
...
The Ucode's output should be independent of the sample rate Dolphin is using.
2014-03-26 15:12:00 -07:00
magumagu
3b62e8b798
Fix minor Zelda Ucode audio corruption.
...
Stupid mistake in my previous commit; the value of m_CurBuffer was
off-by-one.
2014-03-26 14:34:00 -07:00
magumagu
4fafa954a1
Zelda Ucode partly working without Premix hack.
...
The code is still completely wrong, and it only outputs some sound,
but the mess is confined to the Zelda Ucode implementation.
2014-03-26 14:06:32 -07:00
magumagu
8dad1be319
Fix sound buffer addresses in Zelda UCode HLE.
...
The code previously mixed up the addresses of the right and left buffer;
testing shows that the address of the left buffer comes first.
2014-03-26 14:06:30 -07:00
Pierre Bourdon
f6a343df79
Merge pull request #211 from magumagu/win32-jit-fixes
...
Win32 jit fixes
2014-03-26 20:18:04 +01:00
magumagu
ae9367a89b
Delete a bunch of old audio HLE cruft.
...
This commit intentionally breaks audio output from HLE Zelda UCode; no other functional change.
2014-03-26 11:17:19 -07:00
Pierre Bourdon
ea6b37cb75
Merge pull request #193 from neobrain/tev_combiner_fixes
...
PixelShaderGen: Cleanups and fixes for tev combiners.
2014-03-26 10:05:46 +01:00
Tony Wasserka
c6070b94ce
BPMemory: Fix an enum to use u32 as its underlying type.
2014-03-26 10:02:57 +01:00
magumagu
ca4e0495c0
Save registers before calls in x86-32 JIT.
...
I have no idea what the person who added RegistersInUse() was thinking,
but not correctly saving registers is an easy way to end up with crashes.
2014-03-25 20:50:14 -07:00
magumagu
4eab240e25
Compute stack usage correctly in ABI_CallFunctionPC.
...
(The numbers need to be consistent with the actual usage, or else the stack gets corrupted.)
2014-03-25 20:48:25 -07:00
magumagu
e4081b29f9
Use unaligned stores to save XMM regs to stack.
...
On Win32, the stack isn't aligned, so aligned stores will cause crashes.
2014-03-25 20:46:36 -07:00
Pierre Bourdon
5fc6ce59c3
Merge pull request #210 from magumagu/writerex-fix
...
Fix OpArg::WriteRex with 8-bit memory operand.
2014-03-26 02:34:44 +01:00
Tony Wasserka
1dead05cae
Software renderer: Properly calculate tev combiner output.
...
As pointed out by dolphin-emu/hwtests@461476112 .
2014-03-26 00:23:58 +01:00
Tony Wasserka
a8c8db8da7
Software renderer: Use color combiner configuration for alpha combiner compare mode inputs.
...
As pointed out by dolphin-emu/hwtests@f684f2498 .
2014-03-26 00:23:58 +01:00
Tony Wasserka
eb0f547a17
PixelShaderGen: Cleanups.
2014-03-26 00:23:36 +01:00
Tony Wasserka
4f82d6f7af
PixelShaderGen: Implement tev combiner lerping in a faster way which also reproduces hardware behavior perfectly.
...
The new behavior has been verified to be correct by hardware tests. This is an improvement over the old code, which was just a guess.
2014-03-26 00:17:04 +01:00
Tony Wasserka
fdad95c055
PixelShaderGen: Cleanups and fixes for tev combiners.
...
Fixes issue 4674.
2014-03-26 00:17:03 +01:00
Tony Wasserka
16105db709
BPMemory: Make use of BitField in a number of structures.
2014-03-25 23:57:58 +01:00
Tony Wasserka
8941f19cdb
BPMemory: Expose the pixel_format and zformat fields in PE_CONTROL as enumerations.
2014-03-25 23:57:58 +01:00
Tony Wasserka
77a7bab5ae
BPMemory: Use the new BitField class in two selected structures.
2014-03-25 23:57:57 +01:00
Tony Wasserka
48a1790d81
Common: Add a generic class for accessing bitfields in a fast and endianness-independent way.
...
The underlying storage type of a bitfield can be any intrinsic integer type,
but also any enumeration.
Custom storage types are supported if the following things are defined on the storage type:
- casting 0 to the storage type
- bit shift operators (in both directions)
- bitwise & operator
- bitwise ~ operator
- std::make_unsigned specialization
2014-03-25 23:33:04 +01:00
magumagu
03292eabc2
Fix OpArg::WriteRex with 8-bit memory operand.
...
Previously he function was misbehaving because of a missing check for
whether an 8-bit operand was a register operand; it would therefore
emit unnecessary REX prefixes, incorrectly assert on 32-bit targets, and
could potentially emit wrong code in rare cases (like a memory to register
operation involving AH.)
Also, some cleanup while I was in the area to make the function easier to
read.
2014-03-25 14:09:15 -07:00
Matthew Parlane
6351f28ab4
Merge pull request #200 from lioncash/unused-param
...
Remove an unused parameter from UpdateDebugger_MapLoaded.
2014-03-25 09:20:23 +13:00
Pierre Bourdon
c929c3ebc1
Merge pull request #202 from Tilka/mathutil
...
MathUtil: add IntFloat/IntDouble constructors and test FlushToZero()
2014-03-24 21:20:09 +01:00
Tillmann Karras
af525266d4
MathUtil: add constructors to IntFloat/IntDouble
2014-03-24 16:14:22 +01:00
Tony Wasserka
4aba433296
Merge pull request #201 from Sonicadvance1/Revert-PR179
...
Revert "Remove an unnecessary wx translation underscore macro from PHackSettings."
2014-03-24 09:50:38 +01:00
Ryan Houdek
5310d6d2ea
Fix a crash that got recently introduced.
...
When CFileSystemGCWii::GetFileName can't find a valid filename it would return nullptr.
nullptr as a std::string throws an assert within the std lib.
So return an empty string and check if it is empty or not
2014-03-23 22:29:30 -05:00
Ryan Houdek
479695d068
Revert "Remove an unnecessary wx translation underscore macro from PHackSettings."
...
This reverts commit 110f603cb6
.
2014-03-23 20:28:19 -05:00
Lioncash
59eb59dd98
Remove an unused parameter from UpdateDebugger_MapLoaded.
2014-03-23 17:19:12 -04:00
Ryan Houdek
a3e18cd498
Merge pull request #171 from lioncash/rarc-cleanup
...
File tree building cleanup
2014-03-23 00:34:26 -05:00
Matthew Parlane
b8f469dedd
Merge pull request #195 from Sonicadvance1/RuntimeExtendedInfo
...
Allow the user to enable the extended information string like the old days.
2014-03-23 18:32:37 +13:00
Matthew Parlane
36eb806e4a
Merge pull request #192 from lioncash/final
...
Mark the PPCDebugInterface and DSPDebugInterface as final.
2014-03-23 18:32:11 +13:00
Ryan Houdek
4c1cb65e1e
Merge pull request #179 from lioncash/phack-cleanup
...
Remove an unnecessary wx translation underscore macro from PHackSettings.
2014-03-23 00:29:52 -05:00
Ryan Houdek
5dabe598a4
Merge pull request #180 from lioncash/log-window-cleanup
...
Small log queue clearing simplification.
2014-03-23 00:29:08 -05:00
Ryan Houdek
7549ee232c
Allow the user to enable the extended information string like the old days.
...
This string shows emulated CPU speed, including true mhz + idle skipping mhz
2014-03-22 23:32:07 -05:00
Ryan Houdek
89efec6109
Merge pull request #167 from neobrain/ogl-efbpokes
...
Implement EFB pokes in the OpenGL backend.
2014-03-20 15:25:56 -05:00
Lioncash
9ed562d7de
Mark the PPCDebugInterface and DSPDebugInterface as final.
2014-03-18 20:42:08 -04:00
Jens Nyberg
ae260e55e4
OGL/VertexManager: Do not check if g_nativeVertexFmt is zero
...
The variable is already dereferenced both before and after this
check which means that if this variable would ever be zero it would
have crashed dolphin already.
2014-03-18 21:33:30 +01:00
Jens Nyberg
80421156b6
OGL/VertexManager: Minor cleanup of if case
2014-03-18 21:33:30 +01:00
Pierre Bourdon
c11aadee41
Merge pull request #182 from RachelBryk/extract-gc-dol
...
Add extract dol/apploader options back for gc disks.
2014-03-18 20:41:35 +01:00
lioncash
aecc8ea666
Remove usesMixer function from the sound streams.
...
This isn't used anywhere in the codebase. Not even the base SoundStream has it as part of its interface.
2014-03-18 10:42:07 -04:00
lioncash
5e5ab61d0c
Mark the audio streams as final.
...
These aren't intended to be continually extended.
2014-03-18 10:37:45 -04:00
Jens Nyberg
4a68550d01
Remove superfluous bit shift
2014-03-18 04:07:45 +01:00
Ryan Houdek
484fb46390
Clang 3.4 exposes some warnings on Android.
...
Fixes all warnings on Android build except for what is in externals.
Removes a function from TextureDecoder_Generic since it is unused and generates a warning.
2014-03-17 18:17:12 -05:00
Ryan Houdek
3586ab1d4c
Fix the Android build when using clang 3.4
2014-03-17 17:56:22 -05:00
Rachel Bryk
57f3e1c907
Add extract dol/apploader options back for gc disks.
...
It was removed from the menu for the disk item in 868c6278
, but we want to keep it there for gc games, since they don't have separate partitions.
2014-03-17 03:10:17 -04:00
Matthew Parlane
6445e02d53
Merge pull request #159 from Tilka/misc
...
Cleanup stuff
2014-03-17 17:43:20 +13:00
Tillmann Karras
fa3cc05753
Turn some non-const refs into pointers
2014-03-17 02:55:57 +01:00
Tillmann Karras
7e39cf3b0d
.gitignore: fix the build directory pattern
2014-03-17 02:55:56 +01:00
Tillmann Karras
2fcaca0603
More range-based loops and overrides
2014-03-17 02:55:55 +01:00
Tillmann Karras
3fc9ca0789
UCodes: nits
2014-03-17 02:55:54 +01:00
Tillmann Karras
3c46c0ede9
Interpreter: make some class members private
2014-03-17 02:55:54 +01:00
Lioncash
692deb24ba
Remove unused function PanicAlertToVideo from Core.cpp.
2014-03-16 21:07:34 -04:00