Commit Graph

8416 Commits

Author SHA1 Message Date
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
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
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
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