Commit Graph

13183 Commits

Author SHA1 Message Date
degasus b64301d65c DolphinWX: Drop dead hotkey button. 2015-05-26 15:50:15 +02:00
Jules Blok 0b61a0dfc5 Merge pull request #2448 from Armada651/depth-inversion
D3D: Depth range inversion.
2015-05-26 15:39:50 +02:00
Markus Wick d7900b4423 Merge pull request #2006 from RisingFog/disc2
Append Disc 2 to Titles for Multi-Disc Games
2015-05-26 15:39:42 +02:00
Jules Blok ca7801da44 D3D: Invert initial depth buffer clear. 2015-05-26 15:31:36 +02:00
galop1n 2975e53091 D3D: Depth range inversion.
Credits go to Galop1n for designing this technique and to BhaaLseN for cleaning up the commit.
2015-05-26 15:31:31 +02:00
Markus Wick a6412fb41e Merge pull request #2162 from degasus/prefetch_tex
CustomTexture: prefetch all available textures
2015-05-26 13:30:26 +02:00
Markus Wick 5d3a248811 Merge pull request #2455 from lioncash/fifo
FifoQueue: Use atomics instead of volatile members
2015-05-26 12:26:36 +02:00
Lioncash de5038849e FifoQueue: Use atomics instead of volatile members 2015-05-26 05:34:47 -04:00
Ryan Houdek b038b61a29 [ARMv7] Extend the life of the JIT Recompiler.
Until loadstores are fully investigated, let's artificially extend the life of it by disabling all of them.
These instructions break in a very terrible way and eventually all loadstores end up attempting to access memory region (u32)-1.
Disable until someone has enough time to investigate further.
2015-05-25 23:36:28 -05:00
Ryan Houdek a4a8162fb5 Merge pull request #2188 from JosJuice/dol-cleanup
DOL loader cleanup with std::vector and safety checks
2015-05-25 23:51:40 -04:00
Ryan Houdek f4625e6383 Merge pull request #2398 from JosJuice/revert-854f6b8
Attempt at fixing issue 8544 (input recording desyncs)
2015-05-25 23:49:56 -04:00
Ryan Houdek 061848457a Merge pull request #2382 from RisingFog/vfwfix
Fix video dumping incorrect lengths for some games in Windows
2015-05-25 23:46:22 -04:00
Ryan Houdek f706518dc0 Merge pull request #2390 from darkengine-io/new-qt
More miscellaneous Qt fixes
2015-05-25 23:45:21 -04:00
Ryan Houdek 96ef0fce38 Merge pull request #2450 from lioncash/alloc
NetPlayClient: Remove unnecessary array allocation
2015-05-25 23:42:49 -04:00
Ryan Houdek b0b5f4d10d Merge pull request #2326 from JosJuice/isoproperties-config-block
ISOProperties: Don't block when opening default INI in text editor
2015-05-25 23:42:26 -04:00
Ryan Houdek 5911dd528a Merge pull request #2361 from JosJuice/filesystem-read32
Remove CFileSystemGCWii::Read32
2015-05-25 23:40:28 -04:00
Ryan Houdek c88d6c804a Merge pull request #2430 from Sonicadvance1/android_panic_handler
[Android] Add support for panic alerts to the JNI.
2015-05-25 23:37:48 -04:00
Ryan Houdek 4ba430951a Merge pull request #2439 from JosJuice/company-from-id
Use an ID-to-name map when volume has no company string
2015-05-25 23:32:55 -04:00
Ryan Houdek 0c31013622 Merge pull request #2453 from rohit-n/call-me-bob
Fix building with PCH disabled.
2015-05-25 23:28:18 -04:00
Ryan Houdek 1d6375b71f Merge pull request #2339 from JosJuice/fix-wii-fst-size
Fix reading Wii FST size
2015-05-25 23:27:25 -04:00
Rohit Nirmal dbe54e63ed Fix building with PCH disabled. 2015-05-25 22:26:43 -05:00
Ryan Houdek dad5d8e13d Merge pull request #2357 from degasus/ogl_efb_poke_merge
ogl: efb poke merge
2015-05-25 23:26:39 -04:00
Ryan Houdek 3817dd0f91 Merge pull request #2272 from phire/jitil-floatbug
JitIL: Fix a bug in floatpoint load/store instructions.
2015-05-25 23:17:56 -04:00
Ryan Houdek d789d8d75f [Android] Add support for panic alerts to the JNI. 2015-05-25 22:13:00 -05:00
Ryan Houdek 7c04c76a26 Merge pull request #2421 from Tilka/jit_stuff
Jit64: fixes + less code
2015-05-25 23:08:24 -04:00
Ryan Houdek 0c5f5c4519 Merge pull request #2394 from Sonicadvance1/android_block_profiling_api
[Android] Block profiling JNI interface
2015-05-25 23:06:37 -04:00
Ryan Houdek 95f9096068 Merge pull request #2396 from Sonicadvance1/fix_racing_cpu_core
Fix a race condition when pausing the CPU core.
2015-05-25 23:06:18 -04:00
Ryan Houdek 99d9161e49 Merge pull request #2429 from Sonicadvance1/aarch64_block_profile
[AArch64] Implement block profiling.
2015-05-25 23:05:54 -04:00
Markus Wick 1fc3c8aa02 Merge pull request #2451 from degasus/master
DSP: Inline DSPControl into DSPState
2015-05-25 15:19:31 +02:00
Ryan Houdek 69963dc4b0 Merge pull request #2274 from degasus/disable_bbox
Disable bbox
2015-05-25 08:46:12 -04:00
Tillmann Karras 30ebb2459e Set copyright year to when a file was created 2015-05-25 13:22:31 +02:00
Tillmann Karras cefcb0ace9 Update license headers to GPLv2+ 2015-05-25 13:22:31 +02:00
Tillmann Karras 268f52e054 Add missing license headers 2015-05-25 13:11:47 +02:00
Tillmann Karras 6d9986846c Simplify some more license headers 2015-05-25 13:11:41 +02:00
degasus dd35f5df94 DSP: Inline DSPControl into DSPState
This was a struct with exactly one element, and
an overloaded constructor which matches the construtor
of this element. So there is no need for this stacked
structur.
2015-05-25 10:56:14 +02:00
degasus 7e127da791 VideoCommon: Warn if bbox is disabled but used 2015-05-25 09:33:34 +02:00
degasus 029912681e VideoCommon: return 0 if bbox is disabled
Through just returning the last written value sounds better, this crashes Paper Mario.
In my opinion, gfx issues are fine on older GPUs, but crashes should not happen.
2015-05-25 09:33:34 +02:00
degasus 6b2a1e57e2 BBox: remove now unreachable SW bbox implementation 2015-05-25 09:33:34 +02:00
degasus acd074e291 VideoCommon: Make BBox emulation optional 2015-05-25 09:33:34 +02:00
degasus ac0e304159 Jitregister: fix common-core dependency 2015-05-25 09:33:34 +02:00
Markus Wick 732802ebd0 Merge pull request #2419 from Armada651/clip-control
OGL: Add glClipControl support.
2015-05-25 09:29:43 +02:00
Lioncash b0075966af NetPlayClient: Remove unnecessary array allocation 2015-05-24 22:53:25 -04:00
Eder Bastos 4faff3cf62 Android: Decouple SurfaceView initialization and emulation start. 2015-05-24 19:40:11 -04:00
JosJuice d2e6adb045 Use an ID-to-name map when volume has no company string
This is written so that the result of GetCompanyFromID never is cached
(except on Android?). Caching is unnecessary because the string can be
obtained quickly at runtime, and not caching it means that the cache
doesn't have to be invalidated when GetCompanyFromID is edited.
2015-05-24 17:41:53 +02:00
Lioncash 6b30c9710c SoundStream: Devirtualize StartLogAudio and StopLogAudio
These don't rely on anything that might need to be implemented in other SoundStream classes.
2015-05-24 06:10:11 -04:00
Lioncash 07d4dbe657 AudioCommon: Add missing override specifiers
Also removes unnecessary virtual keywords.
2015-05-24 06:10:03 -04:00
Lioncash 4695233c98 SoundStream: Devirtualize GetMixer
Since it's handled by the base class, there's no need to allow overriding.
2015-05-24 05:49:51 -04:00
Lioncash 35ee8a1362 SoundStream: Internally construct the mixer
Instead of creating the mixer externally and then passing it in, it can just be made within the class.
2015-05-24 05:49:41 -04:00
Lioncash 88e1850231 GekkoDisassembler: Fix typecast for the second printf param for mtfsf 2015-05-24 01:54:04 -04:00
Lioncash 612118e8e5 GekkoDisassembler: Fix disassembly of mtfsf's FM field 2015-05-24 01:51:07 -04:00
Lioncash ac89d00718 DSPCaptureLogger: Add virtual destructor
Silences a warning.
2015-05-24 00:44:49 -04:00
Lioncash c6088cdf31 Merge pull request #2442 from lioncash/netplay
NetPlayClient: Fix erroneous shifts for reconstructing system time.
2015-05-23 23:22:11 -04:00
Lioncash 1d2b29734a NetPlayClient: Rename time variables to be more self-explanatory 2015-05-23 23:07:52 -04:00
Lioncash 6dd10033d3 NetPlayClient: Fix reassembling of system time from packets
The shifts need to be swapped to correctly reassemble a 64-bit integer.
2015-05-23 23:06:30 -04:00
Lioncash 5c3fecc8e5 DolphinWX: Add missing breaks to a switch in RegisterView
Technically the fallthrough would never happen, as the row numbers correspond to the grid view (which will always be zero or greater). However, it gets rid of compiler warnings on higher warning levels.
2015-05-23 22:16:39 -04:00
Matthew Parlane 8f12cc5bc3 Merge pull request #2433 from lioncash/leak
WII_IPC_HLE_Device_net: Fix a leak with getaddrinfo
2015-05-23 19:27:06 +10:00
Lioncash 383b104af0 WiiWad: Use correct form of delete for arrays 2015-05-22 17:52:54 -04:00
Jules Blok e31982474c OGL: Depth range inversion. 2015-05-22 23:52:22 +02:00
Jules Blok 88cc91030e VertexShaderGen: Use correct depth output when glClipControl is supported. 2015-05-22 23:52:21 +02:00
Jules Blok 522e721830 OGL: Add glClipControl support. 2015-05-22 23:52:20 +02:00
Lioncash 9ad35cc986 ExpressionParser: Add missing break in UnaryExpression value setting 2015-05-22 15:02:22 -04:00
Lioncash 760a17abef WII_IPC_HLE_Device_net: Fix a leak with getaddrinfo 2015-05-22 13:15:27 -04:00
Markus Wick ad9dae30a8 Merge pull request #2410 from lioncash/swatomic
Software: Convert most volatile variables to atomics
2015-05-22 14:11:16 +02:00
Lioncash 474188d606 Merge pull request #2432 from lioncash/android
ButtonManager: Pass strings by const reference
2015-05-21 22:37:47 -04:00
Lioncash 8a2f70b2ef ButtonManager: Pass strings by const reference 2015-05-21 22:22:52 -04:00
Tillmann Karras df34d43936 Jit64: merge ps_sign into fsign 2015-05-21 12:33:37 +02:00
Tillmann Karras 36d6a16559 Jit64: merge ps_maddXX into fmaddXX 2015-05-21 12:33:37 +02:00
Tillmann Karras c6147c5ed5 Jit64: merge ps_arith into fp_arith 2015-05-21 12:33:37 +02:00
Tillmann Karras 6d23b511a6 Jit64: merge tri_op into fp_tri_op 2015-05-21 12:33:37 +02:00
Tillmann Karras dc220fa13d Jit64: merge ps_sel into fselx 2015-05-21 12:33:36 +02:00
Tillmann Karras 05a55de08f Jit64: optimize ps_sum 2015-05-21 12:33:36 +02:00
Tillmann Karras 6593ba7ecc XEmitter: add BLENDPS/BLENDPD 2015-05-21 12:33:36 +02:00
Tillmann Karras ece0ef4ca8 Jit64: add packed optimization to frsp 2015-05-21 12:33:36 +02:00
Tillmann Karras 6b8ab5993a Jit64: make ForceSinglePrecision more versatile 2015-05-21 12:33:36 +02:00
Tillmann Karras 9792976ee9 Jit64: fix ForceSinglePrecisionS/P
This bug never broke anything because of how these functions are used.
Fixing it should avoid some false dependencies though.
2015-05-21 12:33:36 +02:00
Tillmann Karras a7d753922d Interpreter: fix instruction table flags of frsp
frsp overwrites both ps0 and ps1 so frD is not an input. Regardless of
whether that's what the hardware does, it's what we do.
2015-05-21 12:33:36 +02:00
Ryan Houdek eb94e742f1 [AArch64] Implement block profiling.
This is time based block profiling unlike the ARMv7 core.
I would like to add cycle counter based block profiling like the ARMv7 core, but it first requires writing a kernel module to enable the counters to userland applications
2015-05-20 22:23:59 -05:00
Eder Bastos 3e5e352fee Android: Implement an SQLite database-based game library. 2015-05-20 19:55:55 -04:00
Eder Bastos 5b0c047e0b Android: Remove inheritance from Game model, and improve the relevance of its content 2015-05-20 19:46:19 -04:00
Eder Bastos 4c786cb70c Android: Implement reading country value from game files. 2015-05-20 19:44:31 -04:00
Lioncash 8dc2909c00 JitWindow: Add missing virtual destructor to HostDisassembler
HostDisassemblerLLVM has a destructor, but the class uses a pointer to the base class.
2015-05-20 12:27:47 -04:00
Jules Blok 05f42f94a0 OGL: Use floating point arithmetic to scale the depth value. 2015-05-20 14:22:30 +02:00
Jules Blok 05d60f4fef Revert "OGL: Change the depth buffer type to GL_FLOAT."
This reverts commit 4b2e04b862.
2015-05-20 14:22:29 +02:00
Jules Blok 9ef1ca4141 Revert "OGL: Switch depth buffers to GL_DEPTH_COMPONENT32F format."
This reverts commit be810eb750.
2015-05-20 14:22:28 +02:00
degasus d91d935057 OGL: reimplement poke-color 2015-05-20 11:05:31 +02:00
degasus c7bae5ad11 VideoCommon: Merge EFB pokes 2015-05-20 10:39:21 +02:00
Tillmann Karras ad6b522c3b XEmitter: fix L bit in VEX prefix 2015-05-20 09:34:27 +02:00
Markus Wick 695a72c24c Merge pull request #2414 from Armada651/depth-clamp
VideoBackends: Clamp depth to uint24 range.
2015-05-19 14:44:34 +02:00
Fiora 22317ac74c Merge pull request #2417 from Tilka/vex
XEmitter: VEX-related cleanup

I'm merging this solely because of the FMA3 error message
2015-05-18 16:23:23 -07:00
Fiora ace0a6ec90 Merge pull request #2412 from Tilka/x64cpudetect
x64CPUDetect: fix AVX2/BMI1/BMI2/HTT detection
2015-05-18 16:22:23 -07:00
Fiora b260500045 Merge pull request #2411 from Tilka/cosmetic
PowerPC: cosmetic changes
2015-05-18 16:20:52 -07:00
Jules Blok ef78941042 VideoBackends: Clamp depth to uint24 range. 2015-05-18 23:22:28 +02:00
Tillmann Karras c2c31086ae XEmitter: restructure WriteVEXOp wrappers 2015-05-17 18:44:56 +02:00
Tillmann Karras ae8efaa6a3 XEmitter: add VBLENDVPD and VCMPPD 2015-05-17 18:42:36 +02:00
Tillmann Karras 18e9241637 XEmitter: rename WriteVex to WriteVEX 2015-05-17 09:35:53 +02:00
Tillmann Karras 9e3f4df733 XEmitter: rename WriteRex to WriteREX 2015-05-17 09:35:53 +02:00
Jules Blok f7151a2a5c Revert "D3D: Use a 32-bit floating point depth buffer."
This reverts commit a224c604a3.
2015-05-16 22:16:31 +02:00
degasus 562b9d4a9f VideoCommon: Abort texture prefetching on low RAM
There is no nice way to correctly "detect" the "used" memory, so we just say
we're fine to use 50% of the physical memory for custom textures.

This will fix out-of-memory crashes, but we still might run into swapping issues.
2015-05-16 15:39:36 +02:00
degasus 242f7d964d CustomTexture: prefetch all available textures 2015-05-16 15:12:07 +02:00
skidau 132ae5f457 Merge pull request #2349 from mathieui/remove-traversal-options-ui
Netplay: don’t show traversal server/port options (INI config only)
2015-05-15 12:34:05 +10:00
Tillmann Karras 7f57e27a65 x64CPUDetect: fix AVX2/BMI1/BMI2/HTT detection
On non-Windows platforms, ECX was not being initialized to 0.
2015-05-14 23:14:34 +02:00
Tillmann Karras 1b01911c01 Jit64: indent far code because it looks nice 2015-05-14 19:12:58 +02:00
Tillmann Karras 6c5e5cc7b8 PowerPC: clean up instruction tables 2015-05-14 19:12:54 +02:00
Tillmann Karras accefbf0a5 JitBase: small cleanup 2015-05-14 19:08:07 +02:00
Tillmann Karras 5b023b83ec Jit64: rename twx to twX
We use the lower-case x to signal an optional Rc bit.
2015-05-14 19:08:07 +02:00
Tillmann Karras 2074abbe86 Jit64: drop unused argument from SetFPRFIfNeeded 2015-05-14 19:08:05 +02:00
Tillmann Karras 9723a4e2ed Interpreter: use IntDouble instead of casts 2015-05-14 18:59:05 +02:00
Lioncash 26a3eaf959 Software: Convert most volatile variables to atomics 2015-05-14 12:33:19 -04:00
Markus Wick 8290fa1e46 Merge pull request #2377 from degasus/zfreeze
PixelShaderGen: apply zfreeze before ztextures
2015-05-14 11:26:46 +02:00
skidau e35148fe15 Merge pull request #2387 from lioncash/atomic
AudioCommon: Remove usages of volatile variables.
2015-05-14 13:31:28 +10:00
Rohit Nirmal df9b06d937 Fix building with PCH disabled. 2015-05-13 16:06:09 -05:00
degasus 3d98f6ab9f PixelShaderGen: apply zfreeze before ztextures
The zfreeze option freezes the depth plane of the rasterization.
So this is done before the TEV stages, where the z-textures are applied.
2015-05-13 20:06:23 +02:00
skidau bdeb067597 Merge pull request #2402 from JosJuice/internal-title
Volume: Rename GetName to GetInternalName
2015-05-13 13:19:41 +10:00
skidau a6739c0960 Merge pull request #2386 from mathieui/irhotkeys
Add hotkeys to increase/decrease the IR
2015-05-12 13:05:53 +10:00
Ryan Houdek 0533ecde23 Merge pull request #2397 from Sonicadvance1/aarch64_disable_psq_l
[AArch64] Disable psq_l.
2015-05-11 19:21:53 -04:00
Lioncash 3bea58e4f8 Merge pull request #2401 from lioncash/typo
WII_IPC_HLE_Device_hid: Fix a function name typo
2015-05-11 16:05:42 -04:00
Ryan Houdek 5bbaa85f25 Merge pull request #2389 from sigmabeta/lollipop-ui-tweaks
Android: Add file browser screen to new UI, and several tweaks.
2015-05-11 11:35:51 -04:00
Lioncash 4f8b72ca8b WII_IPC_HLE_Device_hid: Fix a function name typo 2015-05-11 09:45:10 -04:00
Lioncash af2daf6c5c WiiConfigPane: Handle switch cases explicitly
Gets rid of a warning on higher warning levels (switching on an enum type should handle cases explicitly)
2015-05-11 06:37:07 -04:00
JosJuice bad09fc358 Volume: Rename GetName to GetInternalName
This is intended to better separate it from GetNames and to clarify
that this name originally wasn't meant to be shown to users.
The ISOProperties GUI is also updated, mainly because labeling
the long banner name "short name" was confusing.
2015-05-11 11:19:30 +02:00
Tillmann Karras cdf6d185f6 Fix -Wswitch warning 2015-05-11 10:17:36 +02:00
Lioncash f907e5cace AlsaSoundStream: Use an enum class for signifying ALSA thread state 2015-05-11 01:56:01 -04:00
Lioncash 353205132c AlsaSoundStream: Convert volatile variables to atomics 2015-05-11 01:55:59 -04:00
Lioncash 7b376abd3b Mixer: Convert volatile variables to atomics. 2015-05-11 01:55:50 -04:00
JosJuice b645547930 Revert "HW: Poll system input from system timers"
This reverts commit 854f6b8688.

Conflicts:
	Source/Core/Core/HW/GCPad.cpp
	Source/Core/Core/HW/Wiimote.cpp
	Source/Core/Core/State.cpp
2015-05-11 07:22:35 +02:00
Ryan Houdek 2d47a159ab [AArch64] Disable psq_l.
Causes flickering in games ever since PR #2172.
No idea why
2015-05-11 00:11:40 -05:00
skidau 294629fa9e Merge pull request #2368 from randomstuff/gdb-unix
GDB stub over UNIX socket
2015-05-11 14:42:34 +10:00
Ryan Houdek af305aa168 Fix a race condition when pausing the CPU core.
This affects enabling and disabling block profiling on the fly.
The block profiling pauses the CPU cores and then flushes the JIT's block cache and enables block profile.
The issue with this is that when we pause the CPU core, we don't have a way to tell if the JIT recompiler has actually left.
So if the secondary thread that is clearing the JIT block cache is too quick, it will clear the cache as a recompiler is still running that block that
has been cleared.
2015-05-10 21:00:54 -05:00
Ryan Houdek 379f9feebd Fix non-PCH build. 2015-05-10 20:16:05 -05:00
Ryan Houdek a36dc19d9b Add JNI interface for enabling writing block profile results. 2015-05-10 20:03:34 -05:00
Ryan Houdek 0da086e389 Make sure the JitInterface's WriteProfileResults instruction pauses and resumes the CPU core. 2015-05-10 20:02:25 -05:00
mathieui bb622836b2 Traversal: Add a read-only text for server:port with a "reset to default" button
Clicking it will set the config file back to stun.dolphin-emu.org with
port 6262.
2015-05-11 01:10:27 +02:00
Simon McFarlane 66e337a19f Qt: add proper keyboard shortcuts from wx 2015-05-10 13:57:45 -07:00
Simon McFarlane 64cf6d167f Qt: Make 'About Qt' action actually open the about box 2015-05-10 13:57:45 -07:00
Simon McFarlane 406270bcf9 Qt: resize main window to fit render 2015-05-10 13:57:45 -07:00
Simon McFarlane 6474616c83 Qt: Prevent crash when closed by the window manager 2015-05-10 13:57:44 -07:00
Fiora f665b8690c Merge pull request #2385 from Tilka/small_cleanup
Jit64[IL]: remove some unused stuff
2015-05-10 08:18:48 -07:00
Eder Bastos ca4bec3539 Don't show "Error" when a blank string is returned from a native method. 2015-05-10 10:46:46 -04:00
Lioncash fcaaa9f649 HotkeyDlg: Fix keypress event binding
Previously no keypresses would be recognized during the button press phase.
2015-05-10 03:35:01 -04:00
Lioncash 4920dbed13 AudioCommon: Migrate threadData to OpenALStream and AOSoundStream
This is only ever used in these two sound streams. Seems silly to have it as a class member. Converted it to an atomic as well.
2015-05-10 01:02:25 -04:00
mathieui ea709b6c12 Add hotkeys to increase/decrease the IR 2015-05-10 02:02:47 +02:00
Tillmann Karras c651906134 Jit64[IL]: remove some unused stuff 2015-05-09 17:17:49 +02:00
JosJuice 35c77abbc2 DOL loader cleanup with std::vector and safety checks 2015-05-09 16:49:18 +02:00
Fog 16081a23f1 Fix video dumping incorrect lengths for some games 2015-05-09 02:28:48 -04:00
Lioncash 76bbd46829 Core: Remove some header inclusions in header files
Replaces them with forward declarations of used types, or removes them entirely if they aren't used at all. This also replaces certain Common headers with less inclusive ones (in terms of definitions they pull in).
2015-05-08 22:38:59 -04:00
Lioncash a7d5084e1f Merge pull request #2375 from sigmabeta/lollipop-ui-update
Implement first few screens of Android 5.0-based UI.
2015-05-08 12:57:00 -04:00
Lioncash 8b2f7b1e88 Merge pull request #2379 from lioncash/header
DolphinWX: Remove unnecessary includes
2015-05-08 12:54:56 -04:00
Lioncash a7e9aea797 DolphinWX: Remove unnecessary includes 2015-05-08 12:39:26 -04:00
Markus Wick 4c3984053d Merge pull request #2378 from lioncash/ogl
OGL: Minor changes in Render.cpp.
2015-05-08 16:00:11 +02:00
Lioncash cb20589d7f Merge pull request #2341 from lioncash/fwd
DolphinWX: Remove unnecessary forward declarations
2015-05-08 09:54:23 -04:00
Lioncash a94e4dd07f OGL: Join declarations and assignments in Render 2015-05-08 09:29:36 -04:00
Lioncash eeb0f0b7c4 OGL: Get rid of some explicit deletes in Render 2015-05-08 09:28:29 -04:00
Jules Blok 1d745d632a PixelShaderGen: Clamp zCoord to the depth range. 2015-05-08 14:43:43 +02:00
Jules Blok d04af15ad4 TextureConversionShader: Use floating point values in clamp(). 2015-05-08 14:32:24 +02:00
Jules Blok 5dbb43ae1d PixelShaderGen: Use new multiplier everywhere and directly cast to int instead or rounding. 2015-05-08 14:32:23 +02:00
Jules Blok a224c604a3 D3D: Use a 32-bit floating point depth buffer. 2015-05-08 14:32:22 +02:00
Jules Blok 84a5f4abb0 VideoBackends: Use the new divisor when clearing the depth buffer. 2015-05-08 14:32:22 +02:00
Jules Blok 1a409a2e16 VideoBackends: Clamp Z peek values. 2015-05-08 14:32:21 +02:00
Jules Blok 0f2c72f0f8 VideoCommon: Clamp integer conversions. 2015-05-08 14:32:16 +02:00
Jules Blok b0770e2a0c VideoBackends: Floor depth values in depth copy shaders. 2015-05-08 14:29:30 +02:00
Jules Blok be810eb750 OGL: Switch depth buffers to GL_DEPTH_COMPONENT32F format. 2015-05-08 14:29:30 +02:00
Jules Blok 4b2e04b862 OGL: Change the depth buffer type to GL_FLOAT. 2015-05-08 14:29:29 +02:00
Jules Blok c4f85a38e6 VideoBackends: Use proper floating point depth precision. 2015-05-08 14:29:29 +02:00
Gabriel Corona 04cb6fccd6 GDB stub over UNIX socket
This is available with the `GDBSocket` option in
`~/.dolphin-emu/Config/Dolphin.ini`.

GDB can connect to it with:

    $ powerpc-eabi-gdb
    (gdb) target remote |socat STDIO UNIX:foo.sock

Because I don't like so much binding the GDB stub socket to 0.0.0.0.
On Linux, with a suitable umask, we can make sure that another local
user cannot connect to the socket.
2015-05-08 14:23:37 +02:00
Chris Burgener 5af98db8c3 Append Disc 2 to Titles for Multi-Disc Games
Fixes issue 5799

https://code.google.com/p/dolphin-emu/issues/detail?id=5799
2015-05-07 22:59:16 -04:00
shuffle2 268b8fd26f Merge pull request #2026 from mrgreywater/d3d-debugbreak
D3D: More debug information and break on error
2015-05-07 19:29:21 -07:00
Eder Bastos b47835fc07 Implement first few screens of Android 5.0-based UI. 2015-05-07 22:27:42 -04:00
shuffle2 94995503aa Merge pull request #2374 from randomstuff/fix-unpn
Fix build without UPnP
2015-05-07 18:36:02 -07:00
shuffle2 6fe2ab7fbf Merge pull request #2359 from darkengine-io/new-qt
DolphinQt updates
2015-05-07 18:34:42 -07:00
Simon McFarlane 6c6fe8d724 QT: Add reset button 2015-05-07 12:37:19 -07:00
Simon McFarlane 5988750fe4 QT: Add Play/Pause to Emulation menu 2015-05-07 12:37:19 -07:00
Simon McFarlane 29a9c24b73 QT: Add ISO folder browser 2015-05-07 12:37:18 -07:00
Lioncash f77587506f Merge pull request #2345 from lioncash/tl
VideoConfigDiag: Simplify string translation handling
2015-05-07 05:05:48 -04:00
skidau 9eaae880e5 Merge pull request #1793 from LPFaint99/memcard
GCI folder: flush 1 second after last block is written
2015-05-07 16:30:01 +10:00
skidau 7b3bc9bfc7 Merge pull request #2373 from jdieter/master
Reverts #2362 while still fixing deadlock when adding multiple Wiimotes
2015-05-07 16:28:13 +10:00
Gabriel Corona 469ea24717 Fix build without UPnP
There is no checkbox.
2015-05-06 20:59:19 +02:00
Jonathan Dieter 3fe839d225 Avoid deadlock when adding Wiimotes (attempt #2)
Signed-off-by: Jonathan Dieter <jdieter@lesbg.com>
2015-05-06 21:53:53 +03:00
Ryan Houdek 80fe5e0a55 Merge pull request #2370 from sigmabeta/native-libs-task-removal
Remove the "nativeLibsToJar" gradle task.
2015-05-06 09:16:43 -04:00
Jules Blok 24594a7888 PixelShaderCache: Fix MSAA depth copy shader. 2015-05-06 12:43:35 +02:00
joewestcott 72956d59c8 Reverts pull request #2362, fixes issue 8542. 2015-05-06 05:36:37 +01:00
skidau a7e2425ffb Merge pull request #2367 from skidau/GCPad-Recalibrate-forced
Skipped the calibration of the GC controller if it has already been calibrated.
2015-05-06 12:42:29 +10:00
Eder Bastos 2fe4b9ce68 Remove the "nativeLibsToJar" gradle task. 2015-05-05 22:34:56 -04:00
skidau 41f168373b Merge pull request #2362 from jdieter/master
Avoid deadlock when adding Wiimotes
2015-05-06 12:30:54 +10:00
skidau 571cdcddd8 Merge pull request #2340 from dibas/testing
Show the cursor in os x fullscreen by default. Fixes issue 8376.
2015-05-06 12:28:45 +10:00
Simon McFarlane 629f45f1a5 QT: add exit function 2015-05-05 17:58:21 -07:00
comex 6414cdabb2 Merge pull request #2286 from JosJuice/wii-opening-bnr
Read opening.bnr to get names from Wii discs
2015-05-05 16:20:04 -04:00
skidau 06bca52d80 Skipped the calibration of the GC controller if it has already been calibrated. 2015-05-05 13:05:34 +10:00
Jules Blok 7a1252f7e5 VideoBackends: Implement depth copy shaders with integer math. 2015-05-05 00:40:25 +02:00
Ryan Houdek f9dc8a39c0 Merge pull request #2350 from sigmabeta/master
Convert the Android source code to Gradle.
2015-05-03 22:01:02 -04:00
Markus Wick e0cfd934d2 Merge pull request #2364 from kayru/d3d_texture_bsf
D3D: StateManager::Apply no longer iterates through every texture and sampler slot
2015-05-03 21:39:33 +02:00
Yuriy O'Donnell df5750edfd D3D: Replaced explicit _BitScanForward with LeastSignificantSetBit 2015-05-03 21:14:29 +02:00
Jonathan Dieter 4112794d4a Avoid deadlock when adding Wiimotes
Signed-off-by: Jonathan Dieter <jdieter@lesbg.com>
2015-05-03 18:47:15 +03:00
JosJuice df8e768b77 wx: Now that Wii doesn't support descriptions, rename Notes to Maker
I'm not sure if Maker is the best name (Developer? Publisher?
Company? Copyright?) but I went with it because it's
what the game properties window uses. For the sake of
backwards compatibility, the INI option wasn't renamed.
2015-05-03 16:13:55 +02:00
JosJuice 2d5d5fa83e Read opening.bnr to get names from Wii discs
This makes Dolphin display the same names as the Disc Channel.
2015-05-03 15:58:35 +02:00
JosJuice 272f9d3cbc FileSystemGCWii: Allow reading files partially 2015-05-03 15:44:24 +02:00
JosJuice 0d9ca081bb Remove CFileSystemGCWii::Read32
A function that does the same thing was added to IVolume in 4cd00e3.
2015-05-03 11:39:20 +02:00
Eder Bastos c80225ea4d Convert the Android source code to the directory structure of a Gradle-based Android Studio project. 2015-05-02 21:49:17 -04:00
Markus Wick a76bfb1f55 Merge pull request #2356 from Armada651/dump-efb
VideoCommon: Implement EFB dumping for both backends.
2015-05-02 13:27:38 +02:00
Jules Blok 54f4443971 VideoCommon: Implement EFB dumping for both backends. 2015-05-02 13:23:33 +02:00
Ingve Skåra 5799824b22 Fix dead link 2015-05-01 21:42:50 +02:00
mathieui 7b45eae6e7 Add missing ifdefs around GCAdapter code in Controller config
Otherwise the build fails if libusb is not found
2015-05-01 17:56:15 +02:00
JosJuice 9851bd818d CoreTiming: Add assert to ScheduleEvent_Immediate
My PR with ScheduleEvent_Immediate and magumagu's PR with the asserts
were made around the same time, so this function never got an assert.
2015-05-01 12:17:39 +02:00
skidau 9348b2e1a6 Merge pull request #2330 from mathieui/background-gc-adapter-scan
Add a background thread to detect the GC adapter
2015-05-01 12:09:18 +10:00
mathieui df8b86ed63 Traversal: use the defaults if empty or space-only config entries are detected 2015-05-01 03:11:28 +02:00
Simon McFarlane 886e5c80dd Remove BanishBackground function
No longer needed
2015-04-30 17:33:24 -07:00
Simon McFarlane e6e046e37c Make revision text wxStaticText 2015-04-30 17:32:45 -07:00
Simon McFarlane df341ffba6 Change about page branch info to wxStaticText 2015-04-30 17:22:37 -07:00
mathieui c452e72ca7 Netplay: don’t show traversal server/port options (INI config only) 2015-05-01 02:03:53 +02:00
Lioncash 9012ed18b1 AboutDolphin: Set the multi-line style for branch information
Without this, all the branch information would be put on one line, which isn't intended.
2015-04-30 18:07:58 -04:00
Lioncash 2b89350868 AboutDolphin: Remove unnecessary code 2015-04-30 18:05:30 -04:00
Markus Wick 4b00ccbe4e Merge pull request #2342 from rohit-n/warnings
Silence -Wshadow and -Wsign-compare warnings.
2015-04-30 23:22:19 +02:00
Lioncash d69a4697fa Merge pull request #2347 from JosJuice/fix-dol-crash
Fix DOL crash caused by VolumeHandler removal
2015-04-30 07:36:55 -04:00
JosJuice f7d20204bb Fix DOL crash caused by VolumeHandler removal
Similar to the WAD crash (0b44d7c) but in another part of the boot code.
2015-04-30 13:29:09 +02:00
mathieui ec7445d66b GCAdapter: Add a setting to toggle rumble 2015-04-30 11:35:16 +02:00
mathieui 57f458fe9b GCAdapter: Add a background thread to detect the adapter
This scanning thread either polls libusb or checks every 500ms for a
change depending on host capabilities. The GC Adapter can now be plugged
and unplugged at any time when dolphin is open, it will be used if the
direct connect option is set.
2015-04-30 11:35:16 +02:00
Simon McFarlane cd7466864e Make OC slider match enabled state on window load 2015-04-30 01:28:43 -07:00
Lioncash 0004b6004b VideoConfigDiag: Simplify string translation handling
Explicit wxGetTranslation usage isn't necessary
2015-04-30 04:18:13 -04:00
Simon McFarlane 6728f87677 Add size to CPU clock override slider
Fixes slider having 0 width on wxGTK
2015-04-29 21:49:58 -07:00
skidau d46598e51a Merge pull request #2336 from lioncash/tl
FrameTools: Simplify some wx string translation marking
2015-04-30 14:03:21 +10:00
skidau 052162e6b9 Merge pull request #2332 from comex/fix-alerts-maybe
Fix some false positive ScheduleEvent alerts
2015-04-30 14:03:00 +10:00
Rohit Nirmal 76181f9327 Silence -Wshadow and -Wsign-compare warnings. 2015-04-29 19:59:34 -05:00
comex bac4167ff5 Merge pull request #2319 from comex/linted-fix-qualcomm-fail
(lint issues fixed) Fix OpenGLES 3.0 on Qualcomm's crappy driver, it can't bitshift sometimes.
2015-04-29 17:09:56 -04:00
Yuriy O'Donnell 2b664f5d89 D3D: StateManager::Apply no longer iterates through every texture and sampler slot
Now using bit scan through dirty slot masks.
2015-04-29 20:08:00 +02:00
JosJuice ee694e327a Get rid of banner loaders and move their functionality to volumes
Having some data available in banner loaders and some other data
data available in volumes gets messy, especially with GetNames(),
which is available in both but returns different results
depending on which one is used. This change drops support
for reading names and descriptions from Wii save data.
2015-04-28 23:44:29 +02:00
Lioncash 88f7536d81 DolphinWX: Remove unnecessary forward declarations
These are all fully defined
2015-04-28 17:32:38 -04:00
dibas 441976e09b Show the cursor in os x fullscreen by default. Fixes issue 8376. 2015-04-28 22:12:39 +02:00
JosJuice 04fcb72e0b Fix reading Wii FST size 2015-04-28 17:20:33 +02:00
JosJuice d43a920924 Filesystem: Return file list reference instead of modifying argument 2015-04-28 12:48:05 +02:00
Simon McFarlane 8f56138ec4 Use wxStaticText::Wrap rather than manually inserting newlines 2015-04-28 01:17:43 -07:00
Simon McFarlane df7c9664da Set minimum size on config window
To prevent tabs from getting a scrollbar
2015-04-27 22:55:08 -07:00
Lioncash be3bd52bb5 FrameTools: Simplify some wx string translation marking 2015-04-28 00:02:35 -04:00
Matthew Parlane c58e94cf95 Merge pull request #2331 from lioncash/access
DolphinWX: Make some UI functions/members private
2015-04-28 15:42:52 +12:00
Matthew Parlane 42ebf5b3bf Merge pull request #2333 from lioncash/virt
InputCommon/Core: Get rid of some virtual destructor warnings
2015-04-28 15:41:48 +12:00
Lioncash 8e59987d46 TextureDecoder_Common: Add missing algorithm include
It was being indirectly included, causing VS to syntactically mark std::min/max usages as being undefined (however it still compiled fine, of course)
2015-04-27 23:17:41 -04:00
Matthew Parlane 5091a18369 Merge pull request #2334 from lioncash/uninit
Interpreter_LoadStorePaired: Silence uninitialized variable warnings
2015-04-28 14:57:49 +12:00
Lioncash 9603fb6ccd Interpreter_LoadStorePaired: Silence uninitialized variable warnings 2015-04-27 22:54:58 -04:00
Lioncash d39b519850 InputCommon/Core: Get rid of some virtual destructor warnings
These classes have virtual methods, but no virtual destructor, which causes warnings on some compilers.
2015-04-27 21:41:59 -04:00
comex 65457628d7 Merge pull request #2324 from endrift/about-dialog-osx
Attempt to beautify About dialog on OS X.
2015-04-27 21:23:27 -04:00
comex a9fe0ec0ab Fix some false positive ScheduleEvent alerts:
- CEXIETHERNET::SendComplete is always called from the main thread, so
  drop the _Threadsafe.

- Mark the FIFO player thread as the "CPU thread" so it can call
  ScheduleEvent without complaints.  I haven't actually tested this,
  since I don't know how to use the FIFO player; it might break
  something.
2015-04-27 21:19:28 -04:00
Lioncash 899fd55ea8 DolphinWX: Make some general UI functions/vars private 2015-04-27 21:04:05 -04:00
Lioncash 263e64e939 DolphinWX: Make some debugger functions/vars private
Some classes expose things that aren't used outside of them (and in some cases, shouldn't be exposed).
2015-04-27 20:42:18 -04:00
skidau 4bf4778cd7 Merge pull request #2312 from comex/shutdown-race-condition
Exit ReadDataFromFifoOnCPU, PushFifoAuxBuffer early if shutting down (GpuRunningState=false)
2015-04-27 19:47:00 +10:00
skidau b8eecff5c9 Merge pull request #2325 from JosJuice/isoproperties-zero-files
ISOProperties: Correctly handle partitions with 0 files
2015-04-27 19:45:21 +10:00
skidau 472e281445 Merge pull request #2316 from comex/fix-watch
Fix watchpoints ("memory breakpoints") with JIT
2015-04-27 19:42:13 +10:00
Lioncash b457c61b3e Merge pull request #2328 from rohit-n/format
Silence -Wformat warnings in debug builds.
2015-04-26 16:19:08 -04:00
Rohit Nirmal fb46afd5c3 Silence -Wformat warnings in debug builds. 2015-04-26 13:45:06 -05:00
Rohit Nirmal 10aa6488d9 Qt: Check if game filename is null before loading.
This is so that the error message box does not
appear if the user simply cancels loading a game.
2015-04-26 11:13:16 -05:00
LPFaint99 c4ba7e51e5 GCI folder: flush 1 second after last block is written 2015-04-25 15:40:40 -07:00
Jeffrey Pfau af20e7498c Only wxMac supports scaleFactor, so only use it on OS X 2015-04-25 14:53:37 -07:00
Jeffrey Pfau 4a97045d81 Add hack for removing background from text controlers, per comex 2015-04-25 14:52:53 -07:00
JosJuice db1d81ebf8 ISOProperties: Don't block when opening default INI in text editor
The purpose of blocking is to reload user INIs after they
have been edited. However, ISOProperties never reloads
default INIs, because they aren't meant to be edited.
Blocking on default INIs is thus useless, and it's
rather annoying for games that have two default INIs,
because it makes it impossible to see both at once.
2015-04-25 22:15:48 +02:00
JosJuice fbed0b4a9c ISOProperties: Correctly handle partitions with 0 files 2015-04-25 15:33:20 +02:00
Jeffrey Pfau addbafcfda Attempt to beautify About dialog on OS X.
Added a 2x version of the logo, and cleaned up layout a bit.
2015-04-25 04:22:32 -07:00
Matthew Parlane 392b9abece Merge pull request #2016 from RisingFog/splash
Update About Dolphin Screen
2015-04-25 21:50:40 +12:00
magumagu 645aa5af8b Merge pull request #2323 from dolphin-emu/itym
ITYM PowerPC::Write_U{8,16}, not Memory::
2015-04-24 22:19:37 -07:00
comex 7fe13d9af8 Merge pull request #2175 from RachelBryk/oc
Disable oc setting while netplay or movie is active.
2015-04-25 00:58:16 -04:00
comex 9d8c347e8d Merge pull request #2290 from RachelBryk/cc-tasinput
Implement classic controller tas input.
2015-04-25 00:44:29 -04:00
comex 38a14b73a4 Merge pull request #2321 from JosJuice/wiimote-battery-fix
Fix emulated Wii Remote battery level being low when not configured
2015-04-24 22:43:05 -04:00
comex dea88ef5a1 ITYM PowerPC::Write_U{8,16}, not Memory::
PowerPC does exceptions and hardware and stuff, Memory doesn't.

I did not realize until a few minutes ago that there were two versions of these functions.  This is why namespaces suck.  Anyway, these were added by Mullin earlier this year.
2015-04-24 22:41:10 -04:00
comex 132e1068ce Remove checks that disable fastmem if debugging and ENABLE_MEM_CHECK are enabled.
They weren't sufficient and are made redundant by previous commits; they
also (on master) caused breakage due to Jit64::psq_stXX assuming writes
would be fastmem and not clobber a register under certain conditions.

That really needs to be refactored, but for now, this works.
2015-04-24 22:37:54 -04:00
comex 2264e7b087 Use a fake exception to exit early in case of memory breakpoints.
Change TMemCheck::Action to return whether to break rather than calling
PPCDebugInterface::BreakNow, as this simplified the implementation; then
remove said method, as that was its only caller.  One "interface" method
down, many to go...
2015-04-24 22:37:54 -04:00
comex dd7ab4812b On x86, disabling fastmem isn't enough actually.
Without fastmem, the JIT code still does an inline check for RAM
addresses.  With watchpoints we have to disable that too.  (Hardware
watchpoints would avoid all the slow, but be complicated to implement
and limited in number - I doubt most people debugging games care much if
they run slower.)

With this change and watchpoints enabled, Melee runs at no more than 40%
speed, despite running at full speed without them.  Oh well.  Better
works slowly than doesn't bloody work.

Incidentally, I'm getting an unrelated crash in
PowerPC::HostIsRAMAddress when shutting down a game.  This code sucks.
2015-04-24 22:37:54 -04:00
comex b84f6a55ab Automatically disable fastmem and enable memcheck when there are any watchpoints.
- Move JitState::memcheck to JitOptions because it's an option.
- Add JitOptions::fastmem; switch JIT code to checking that rather than
  bFastmem directly.
- Add JitBase::UpdateMemoryOptions(), which sets both two JIT options
  (replacing the duplicate lines in Jit64 and JitIL that set memcheck
  from bMMU).
  - (!) The ARM JITs both had some lines that checked js.memcheck
    despite it being uninitialized in their cases.  I've added
    UpdateMemoryOptions to both.  There is a chance this could make
    something slower compared to the old behavior if the uninitialized
    value happened to be nonzero... hdkr should check this.
- UpdateMemoryOptions forces jo.fastmem and jo.memcheck off and on,
  respectively, if there are any watchpoints set.
- Also call that function from ClearCache.
- Have MemChecks call ClearCache when the {first,last} watchpoint is
  {added,removed}.

Enabling jo.memcheck (bah, confusing names) is currently pointless
because hitting a watchpoint does not interrupt the basic block.  That
will change in the next commit.
2015-04-24 22:37:53 -04:00
comex 3499f2c2d0 To make up for it, make pressing enter on the value textbox set the value. 2015-04-24 22:19:21 -04:00
comex 0c18e5886d Remove mnemonics in MemoryWindow.
On OS X, this broke Cmd-V to paste in the text boxes.  Apparently wx
thinks having mnemonics (which are Alt-* on Windows) be Cmd-* on OS X,
even if this disables standard shortcuts, is a good idea.

Lioncash suggested just getting rid of the accelerators on non-menu
controls, so I'm doing that rather than disabling them only on OS X.
2015-04-24 22:06:03 -04:00
comex 37d00cceda Fix wx bullshit which made the watch view assert on my machine.
1) Apparently wxString::Format is type safe, and passing a u32 to it
with the format "%lu" crashes with a meaningless assertion failure.
Sure, it's the wrong type, but the error sure doesn't help...

2) "A MenuItem ID of Zero does not work under Mac".  Thanks for the
helpful assert message, no thanks for making your construct have random
platform-specific differences for no reason (it's not like menu item IDs
directly correspond to a part of Cocoa's menu API like they do on
Win32).
2015-04-24 22:04:46 -04:00
Lioncash 87bd57e0be Merge pull request #2322 from JosJuice/extract-file-fix
Fix extracting files from Wii discs
2015-04-24 16:32:23 -04:00
JosJuice 2e10a71dcd Fix extracting files from Wii discs
I broke it for individual files but not folders in 4.0-6016.
2015-04-24 22:08:15 +02:00
JosJuice fe9fdd3244 Fix emulated Wii Remote battery level being low when not configured
All the multiplying and dividing by 100 in controller configs is
messy... An attempted solution to the problem was to not multiply
default_value by 100 in ControllerEmu::ControlGroup::LoadConfig,
but that broke other things instead, so I went with this.
2015-04-24 19:36:08 +02:00
comex b3aaa46d42 Merge pull request #2088 from Sintendo/diecmp
Emit 'TEST reg, reg' for 'CMP reg, 0' automatically
2015-04-23 16:34:23 -04:00
Dwayne Slater ae83a1b821 Fix OpenGLES 3.0 on Qualcomm's crappy driver, it can't bitshift sometimes.
[fixed lint issues and grammar ~comex]
2015-04-23 16:33:12 -04:00
JosJuice 235ecfbed7 Return GetNames languages, to avoid hardcoded language lists in callers
This makes the code cleaner and also leads to some user-visible changes:

The wx game properties will no longer let the user
select WAD languages that don't have any names.

The Qt game list will now display names using the languages
set in the configuration instead of always using
English for PAL GC games and Japanese for WADs.

If a WAD doesn't have a name in the user's preferred language,
English is now selected as a fallback before Japanese.
2015-04-23 08:14:39 +02:00
comex 87a63713f4 Merge pull request #2317 from comex/oops
Fix code broken by merge
2015-04-23 02:08:28 -04:00
comex 74c30d1784 Fix code broken by merge 2015-04-23 02:07:45 -04:00
Lioncash a39985fe08 Merge pull request #2315 from lioncash/code
DolphinWX: Remove superfluous code in FrameTools
2015-04-23 02:05:14 -04:00
comex ad95454d04 Merge pull request #2223 from phire/imm
Cleanup OpArg, make immediates more explicit.
2015-04-23 01:53:18 -04:00
Lioncash 8fb36228e5 Merge pull request #2311 from JosJuice/fix-wad-crash
Fix WAD crash caused by VolumeHandler removal
2015-04-23 00:23:42 -04:00
Lioncash 819f4d994c DolphinWX: Remove superfluous code in FrameTools 2015-04-22 19:56:50 -04:00
Rachel Bryk 5047cf562a Implement classic controller tas input. 2015-04-22 16:19:13 -04:00
JosJuice 0b44d7c18a Fix Wii software crashing at boot if no disc is inserted
Boot_BS2Emu was trying to read from the inserted disc even when
nothing was inserted, and this happened to not crash (but not
work either) before VolumeHandler was removed. This commit adds
a check that restores the old behavior, so there is no longer a
crash, but the game ID still doesn't get set for WADs. I don't
know if/how it should be set, so this felt like the safest option.
2015-04-22 09:14:41 +02:00
comex 5d61b9d0a4 Merge pull request #2313 from lioncash/unused
GPFifo: Remove unused parameters from Write[x] functions
2015-04-22 00:39:38 -04:00
comex 31ea8d0834 Merge pull request #2310 from lioncash/fsmenu
FrameTools: Use AppendRadioItem for constructing the frameskip menu
2015-04-22 00:39:17 -04:00
Lioncash 56df9b7508 GPFifo: Remove unused parameters from Write[x] functions 2015-04-21 23:01:25 -04:00
comex 06dd0ba3b4 Exit ReadDataFromFifoOnCPU, PushFifoAuxBuffer early if shutting down (GpuRunningState=false)
This was causing a race condition where the "absurdly large aux buffer"
panic alert would be triggered in the last bit of fifo processing on the
CPU thread in deterministic mode (i.e. netplay).  SyncGPU is supposed to
move the auxiliary queue data to the beginning of the containing buffer
so we don't have to deal with wraparound; if GpuRunningState is false,
however, it just returns, because it's set to false by another thread -
thus it doesn't know whether RunGpuLoop is still executing (in which
case it can't just reset the pointers, because it may still be using the
buffer) or not (in which case the condition variable it normally waits
for to avoid the previous problem will never be signaled).  However,
SyncGPU's caller PushFifoAuxBuffer wasn't aware of this, so if the
buffer was filling at just the right time, it'd stay full and that
function would complain that it was about to overflow it.  Similar
problem with ReadDataFromFifoOnCPU afaik.  Fix this by returning early
from those as well; other callers of SyncGPU should be safe.  A
*slightly* cleaner alternative would be giving the CPU thread a way to
tell when RunGpuLoop has actually exited, but whatever, this works.
2015-04-21 22:33:29 -04:00
Markus Wick 4340927b7f Merge pull request #2308 from Stevoisiak/FrameToolsMath
FrameTools: Remove redundant 'i-1'
2015-04-21 16:17:02 +02:00
Lioncash ebe0222265 FrameTools: Use AppendRadioItem for constructing the frameskip menu
Same thing, less code.
2015-04-20 21:51:30 -04:00
Lioncash f5c72c5b1a DiscIO: Add a missing header to Volume.h 2015-04-20 21:10:31 -04:00
Stevoisiak c3cf43f064 FrameTools: Remove redundant 'i-1' 2015-04-20 20:24:37 -04:00
Matthew Parlane 571eee8648 Merge pull request #2225 from JosJuice/remove-volumehandler
Get rid of VolumeHandler
2015-04-21 11:18:57 +12:00
Matthew Parlane a86f2fe2e7 Merge pull request #2199 from skidau/remove-controls-lock
Cleaned up the controller locking mechanism
2015-04-21 11:13:30 +12:00
Matthew Parlane 82bbada352 Merge pull request #2257 from RachelBryk/battery
Add an option for wiimote battery.
2015-04-21 11:12:12 +12:00
Matthew Parlane f35277f215 Merge pull request #2267 from Stevoisiak/soundStream
(Visual Studio) Categorize SoundStream.h with other SoundStream files
2015-04-21 11:10:49 +12:00
Lioncash d799446faf Core: Don't display on-screen messages via DisplayMessage until emulation has begun 2015-04-20 18:31:40 -04:00
Lioncash d27b8673f5 Merge pull request #2306 from Stevoisiak/MoveUndoSaveState
FrameTools: Move "Undo Save State" to save state menu
2015-04-19 20:45:41 -04:00
Stevoisiak 83ec7a1e78 FrameTools: Move "Undo Save State" to save state menu 2015-04-19 20:18:11 -04:00
Stevoisiak 8adf8b16bc Globals.h: Added comments for menu sections 2015-04-19 18:51:55 -04:00
degasus 8c209b3bc9 no-gui: fix help string 2015-04-18 15:03:42 +02:00
Lioncash 9eb608c9da Merge pull request #2301 from lioncash/const
General: Apply the const specifier where applicable
2015-04-16 23:13:39 -04:00
Markus Wick cd0212ab1c Merge pull request #2302 from lioncash/perf
PerfQueryBase: Move common implementation variables into base class
2015-04-16 07:31:31 +02:00
skidau 7063886520 Merge pull request #2289 from lioncash/netplay
DolphinWX: Break the netplay UI controls into separate classes.
2015-04-16 12:35:41 +10:00
skidau f0593095b4 Merge pull request #2295 from comex/fix-usb-threading
Fix threading issues
2015-04-16 12:33:20 +10:00
skidau 70605cae5c Merge pull request #2300 from lioncash/update
Debugger: Update the registers/watches before refreshing grids.
2015-04-16 12:30:24 +10:00
skidau c895e4504a Merge pull request #2298 from JosJuice/partitions-no-string-parsing
Fix extracting Wii disc partitions numbered 10 or higher
2015-04-16 12:00:40 +10:00
skidau 221d37ae83 Merge pull request #2287 from lioncash/hkbinds
HotkeyDlg: Get rid of application-wide event bindings.
2015-04-16 11:59:24 +10:00
skidau 6b82b31640 Merge pull request #2285 from linkmauve/nogui-no-x11
NoGUI: Don’t segfault when the DISPLAY environment variable isn’t set
2015-04-16 11:58:15 +10:00
Lioncash 63393570fb PerfQueryBase: Move common implementation variables into base class 2015-04-15 19:22:16 -04:00
Emmanuel Gil Peyrot 1e7ca7f579 NoGUI: Don’t segfault when the DISPLAY environment variable isn’t set 2015-04-16 01:10:57 +02:00
JosJuice 86ceb54c38 Fix extracting Wii disc partitions numbered 10 or higher
Instead of trying to get the partition number from the
(localized!) item name, the partitions are now stored as item data.
2015-04-15 09:29:24 +02:00
Lioncash b0613bb1c8 General: Apply the const specifier where applicable 2015-04-15 02:04:03 -04:00
Lioncash 2cddb8f480 Debugger: Update the registers/watches before refreshing grids. 2015-04-15 00:13:13 -04:00
Lioncash bdde6b2a7c D3D: Remove dependency on wxWidgets
This hasn't been necessary for ages
2015-04-14 22:27:03 -04:00
Lioncash a6970b3744 Merge pull request #2288 from lioncash/unnecessary
ISOProperties: Remove unnecessary/unused variables & controls.
2015-04-14 10:42:29 -04:00
Lioncash 882080c282 Merge pull request #2284 from lioncash/leaks
DolphinWX: Fix memory leaks relating to the TAS dialog
2015-04-14 10:38:48 -04:00
Lioncash c36a6b7599 Merge pull request #2291 from JosJuice/qt-sort-ascending-title
DolphinQt: Sort game list by ascending title order by default
2015-04-13 02:36:31 -04:00
comex 8ebe3d3478 Remove unused field. 2015-04-13 02:27:08 -04:00
comex 5fff97f3f4 Fix printf width in TraversalServer. 2015-04-13 02:26:52 -04:00
comex ba664b3293 Join the emu thread in Core::Stop. Get rid of Core::Shutdown which did that before.
Core::Shutdown was only called on app exit, yet the emu thread exits
whenever emulation stops; if you launched a new game it would just join
via the destructor when s_emu_thread was set to a new thread.
(Incidentally, the destructor also makes explicitly joining on app exit
rather pointless.)

Because the GUI thread wasn't waiting for the CPU thread to fully shut
down, Core::IsRunning would remain true briefly after CFrame::DoStop
which, given Dolphin's penchant for accessing variables belonging to
other threads, can only mean trouble... In my case, because the previous
commit caused UpdateGUI, which is called at the end of DoStop, to call
PauseAndLock, which checks IsRunning, pressing stop at the right time
would cause strange behavior.
2015-04-13 02:17:38 -04:00
comex e000aaaf5d Have the UI thread do PauseAndLock before messing with GetUsbPointer.
Since its lifetime is managed on the CPU thread, this (or a refactoring)
is absolutely required.  One of the functions with a PauseAndLock call
added is CFrame::UpdateGUI; this is fine now, since it's called only
after important events happen, so just make sure not to call it every
frame or something :)
2015-04-13 01:49:24 -04:00
JosJuice bd680aa3b5 Main: Remove unnecessary shellapi.h include
The include was introduced by bcf1f54c and made unnecessary by 611f3494.
2015-04-12 10:22:18 +02:00
mathieui 4c2d25eeaf Fix a warning
HotkeyManagerEmu.enabled is unused, as everything now uses
HotkeyManagerEmu.s_enabled.
2015-04-11 19:47:39 +02:00
JosJuice 9e4eefc6fd DolphinQt: Sort game list by ascending title order by default 2015-04-11 16:44:35 +02:00
Rachel Bryk 48a1d97fe7 Disable oc setting while netplay or movie is active. 2015-04-11 03:54:11 -04:00
Lioncash bd28d260ce DolphinWX: Break the netplay UI controls into separate classes. 2015-04-11 01:35:54 -04:00
Lioncash 5d7cd29a8b ISOProperties: Remove unnecessary/unused variables & controls. 2015-04-10 19:53:58 -04:00
Lioncash 9cc244e913 HotkeyDlg: Get rid of application-wide event bindings.
This dialog is used as a modal dialog, so making the key-press event bindings application-wide is unnecessary.
2015-04-10 19:31:37 -04:00
Lioncash 00943b1ef4 DolphinWX: Fix memory leaks relating to the TAS dialog
Initially, the dialogs construct in the background when Dolphin initializes. However, it waits until the user actually makes the dialogs visible to decide on whether to create the Wii or GC control layouts.

Therefore, the call to CreateBaseLayout() essentially creates a sizer that isn't actually attached to a main sizer that is set as the sizer for the dialog to use. So upon destruction, these controls would never actually be destroyed if the user didn't open and then close the TAS dialogs.
2015-04-09 23:33:33 -04:00
Lioncash 1a18cad178 Merge pull request #2281 from Stevoisiak/MoveCountryWorld
Re-sort Country_World
2015-04-09 12:15:18 -04:00
Lioncash 2c2409fee4 Merge pull request #2278 from lioncash/leak
Debugger: Fix memory leaks related to grid tables
2015-04-09 11:07:27 -04:00
Stevoisiak 7c1ab2911a Move down Country_World
The countries are sorted alphabetically. This should have been changed
when the variable was renamed from Country_International to
Country_World
2015-04-08 18:55:16 -04:00
JosJuice 76d0cfa8ac Fix terrible Speed Up Disc Transfer Rate mistake
I apologize.
2015-04-08 08:59:49 +02:00
Lioncash 180854c617 Debugger: Fix memory leaks related to grid tables
Incrementing the reference count here isn't necessary, as they construct with a count of 1. Incrementing again results in the attributes not being freed.
2015-04-07 23:16:29 -04:00
skidau f8a4d4702c Merge pull request #2252 from mathieui/traversal-timeout
NetPlay: Don’t wait forever in the traversal client
2015-04-08 11:56:57 +10:00
skidau ff891394e8 Merge pull request #2248 from mathieui/netplay-disable-ui
NetPlay: Disable some UI elements when a game is running
2015-04-08 11:56:06 +10:00
skidau 5638ddaf6c Merge pull request #2263 from JosJuice/sudtr-not-instant
Make Speed Up Disc Transfer Rate not instant
2015-04-08 11:54:44 +10:00
Lioncash ec96119f8c TASInputDlg: Remove unnecessary explicit bools 2015-04-07 21:44:51 -04:00
degasus ef6bdf674f Common: Remove TLS usage in GetLastErrorMsg
Just return std::string as this code isn't performance critical.
2015-04-07 22:42:21 +02:00
Lioncash 4796dc80bf Merge pull request #2254 from SizzlingCalamari/remove-DSPLLE-cycle-mutex
Made cycle count atomic to avoid using a mutex
2015-04-07 08:27:38 -04:00
Lioncash 54cedf77f9 Merge pull request #2265 from lioncash/warn
ConfigManager: Fix a sign mismatch warning
2015-04-06 09:34:23 -04:00
degasus 74795b4553 Fifo: rewrite Fifo_PauseAndLock
This lock isn't required any more as our FlushGpu garanty to block until the GPU is idle
2015-04-06 12:35:35 +02:00
degasus b1ffd32f5f Fifo: only touch the SIMD state once in the single core loop 2015-04-06 12:35:35 +02:00
degasus d2c62b1744 Fifo: only sleep once within every ms of emulated time 2015-04-06 12:35:35 +02:00
degasus b020ae1c5d Fifo: rewrite sync on idle skipping hack
Now it's done without a busy loop
2015-04-06 12:35:35 +02:00
degasus 9bdaa00e2d Fifo: use the outer loop on sync GPU 2015-04-06 12:35:35 +02:00
degasus 279c657cda Fifo: Replace busy loop with condition variable 2015-04-06 12:35:27 +02:00
Scott Mansell 9fdc713c87 While I'm here, Add some comments. 2015-04-05 21:19:56 +12:00
Scott Mansell e9459fb30a JitIL: Fix a bug in floatpoint load/store instructions.
The regBuildMemAddress function already clears the address register.
Not only is clearing it again pointless, regBuildMemAddress uses the
bits in IInfo slightly diffrently and the second clear can clear
the wrong registers causing bugs if something else actually needs to
use those registers.
2015-04-05 20:17:50 +12:00
JosJuice 4cd00e366c Get rid of VolumeHandler
VolumeHandler is basically just a wrapper around a single IVolume object.
This change moves that object to DVDInterface, moves the Read32
function to IVolume, and gets rid of the rest of VolumeHandler.
2015-04-05 10:09:48 +02:00
Lioncash 2211aead7f DSPInterpreter: Remove unused volatile variable and related function 2015-04-03 22:46:30 -04:00
Stevoisiak 78971b0840 (Visual Studio) Categorize SoundStream.h with other SoundStream files 2015-04-03 14:37:03 -04:00
Lioncash 7848876f99 ConfigManager: Fix a sign mismatch warning 2015-04-02 14:30:38 -04:00
Lioncash 38236fb8e8 Merge pull request #2262 from Buddybenj/change-wording-2
Change Wording in Help Menu
2015-04-02 13:36:48 -04:00
JosJuice ee3d36af92 Make Speed Up Disc Transfer Rate not instant
The instant speed broke some games. SUDTR will now emulate
the transfer from the disc drive buffer to the main memory,
but not the speed of the disc drive itself.
2015-04-02 11:46:19 +02:00
Buddybenj fb0d3a9756 Change Wording in Help Menu
"Dolphin at GitHub" doesn't make much sense IMO. We could also make it say "Source Code" or "Dolphin on GitHub".

I also changed "Dolphin Website" to make it consistent with the Qt version.
2015-04-01 18:08:26 -05:00
JosJuice 0deb9f5e39 Revert "Merge pull request #2256 from RachelBryk/Dolphin-Pro"
This reverts commit ae0a090701, reversing
changes made to 6b6b5ed37f.
2015-04-01 22:30:57 +02:00
degasus 119fea0d72 Remove TM character which breaks our buildbot
Or github...
2015-04-01 22:24:13 +02:00
Pierre Bourdon ae0a090701 Merge pull request #2256 from RachelBryk/Dolphin-Pro
Limit Wiimote battery usage for Dolphin-lite users.
2015-04-01 21:07:22 +02:00
Rachel Bryk ba93b91565 Add an option for wiimote battery. 2015-04-01 05:29:45 -04:00
Rachel Bryk d39d89594d Limit Wiimote battery usage for Dolphin-lite users.
Wiimote batteries drain over time. The user must upgrade to Dolphin Pro for $19.95 to recharge them.
2015-04-01 04:31:03 -04:00
Fog a94e31e476 Update About Dolphin Screen 2015-03-31 21:30:05 -04:00
Jordan Cristiano 4051da75e4 Made cycle count atomic to avoid using a mutex 2015-03-31 04:09:33 -04:00
skidau 6b6b5ed37f Merge pull request #2249 from SizzlingCalamari/DSPLLE-thread-fix
Fixed dsp lle thread never starting
2015-03-31 12:25:59 +11:00
skidau 008200db4d Merge pull request #2244 from lioncash/find
DolphinWX/Common: Change some find_first_of usages to find
2015-03-30 21:07:42 +11:00
Lioncash d42d5699b5 Merge pull request #2253 from RachelBryk/cheats
Fix enable cheats checkbox.
2015-03-30 05:41:56 -04:00
skidau 8c47c68a4f Merge pull request #2232 from JosJuice/savestate-exact-version
When loading incompatible savestate, display exact Dolphin version
2015-03-30 18:07:14 +11:00
JosJuice 85073675a5 When loading incompatible savestate, display which version created it 2015-03-30 09:02:43 +02:00
skidau 5da3375bf1 Merge pull request #2245 from lioncash/tables
DolphinWX: Get rid of wxGrid-based casts in the debugger.
2015-03-30 12:20:20 +11:00
Rachel Bryk d4fa8de35a Fix enable cheats checkbox. 2015-03-29 20:43:51 -04:00
skidau 731e4a3a65 Merge pull request #2250 from RachelBryk/tasinput-home
Fix home button in tas input.
2015-03-29 16:40:57 +11:00
mathieui b1eb87e495 NetPlay: Don’t wait forever in the traversal client
With some specific, STUN-hostile routers, the netplay client can get
stuck forever while trying to connect to the stun server. This adds a
5 seconds (much more than should be necessary if it works) timer until
a failure is registered and the attempt stops.
2015-03-28 20:15:34 +01:00
Rachel Bryk 35bdfd5ec9 Fix home button in tas input. 2015-03-28 07:40:21 -04:00
skidau 9947324296 Track the co-ordinates of the mouse relative to the pointed window instead of the original hwnd. 2015-03-28 11:38:14 +11:00
skidau 4f965da4f1 Revert the recent changes related to updating hwnd 2015-03-28 11:08:25 +11:00
skidau 74f25ad8ec Merge pull request #2234 from lioncash/config
DolphinWX: Break up ConfigMain into separate classes.
2015-03-28 10:11:29 +11:00
Jordan Cristiano e2060525bc Fixed dsp lle thread never starting because of dspjit initialization happening after the dsp thread check 2015-03-27 19:00:53 -04:00
mathieui 666c06dce7 NetPlay: Disable some UI elements when a game is running
because it makes dolphin crash, and it doesn’t make sense to change them
at runtime
2015-03-27 18:43:06 +01:00
skidau affa5c2e0b Merge pull request #2228 from Stevoisiak/FixISOPaths
Check for GCMPathes if ISOPaths is not found
2015-03-26 09:48:33 +11:00
Stevoisiak 4f1d74b2e1 Check for GCMPathes if ISOPaths is not found
The name of the settings were changed in 4.0-4003 with PR #1264.
2015-03-25 11:13:13 -04:00
Lioncash 5ada887f94 DolphinWX: Get rid of wxGrid-based casts in the debugger.
This technically also fixes a memory leak in WatchView.cpp, because the table setting was done such that the grid wouldn't take ownership of the table, which means said table wouldn't be deleted in the grid's destructor.
2015-03-24 14:09:33 -04:00
Lioncash eacf741051 DolphinWX/Common: Change some find_first_of usages to find
It's unnecessary to use find_first_of when all you're searching for is a single character.
2015-03-24 08:32:44 -04:00
Lioncash bc1d62036b Core: Fix warnings related to HotkeyManager
These need to be marked static since they aren't used outside of this translation unit.
2015-03-23 08:40:21 -04:00
Lioncash 7dcb6a3e6c DolphinWX: Initialize the HotkeyManager after input backends are initialized
Previously OSX would crash upon loading. This is because the UI would be polling for hotkey inputs but was doing so before the inputs backends were initialized.
2015-03-23 08:36:13 -04:00
skidau a0138e19cc Merge pull request #2239 from mickdermack/pr-usbshu
GCAdapter: Don't destroy the libusb context before freeing the device list.
2015-03-23 12:37:05 +11:00
skidau cba34fa6f7 Merge pull request #2193 from magumagu/wii-disable-fakevmem
Disable FakeVMem in Wii mode.
2015-03-23 12:36:24 +11:00
Ryan Houdek 5dbfebcd30 Merge pull request #2216 from Sonicadvance1/aarch64_dirty_dirty
[AArch64] Implement dirty register tracking.
2015-03-22 11:32:43 -05:00
Sintendo c19482c9a3 Add function to emit CMP, or TEST when possible
Also, a spelling mistake.
2015-03-22 17:22:27 +01:00
Sintendo b35c34186c More minor DSP JIT optimizations 2015-03-22 17:14:38 +01:00
skidau e08762dd36 Merge pull request #2241 from skidau/hwnd-hotkey
Updated the hwnd for hotkeys.
2015-03-22 12:54:43 +11:00
skidau 482ef964cf Updated the hwnd for hotkeys. 2015-03-21 21:56:19 +11:00
magumagu 52aeab3d0e Merge pull request #2240 from lioncash/emitter
x64Emitter: Remove emitter pointer parameter from WriteNormalOp.
2015-03-20 22:09:11 -07:00
Lioncash fab7add718 x64Emitter: Remove emitter pointer parameter from WriteNormalOp.
It only ever passed the equivalent of the class' this pointer. May as well get rid of it.
2015-03-20 23:28:36 -04:00
Michael Ehrenreich 905a663a96 Don't destroy the libusb context before freeing the device list. 2015-03-21 03:12:42 +01:00
skidau 39c41f5c70 Merge pull request #2192 from Tilka/sse2
VertexLoaderX64: support SSE2 as a fallback
2015-03-21 12:58:24 +11:00
skidau 63c4bd665e Merge pull request #2230 from skidau/Mouse-In-Separate-Window
Updated the input plugins reference of hwnd on game start.
2015-03-21 12:46:37 +11:00
skidau 94e435afbc Merge pull request #2201 from magumagu/ogl-clamp-origin
OpenGL: use ClampUL instead of ClampLL where appropriate.
2015-03-21 12:45:46 +11:00
Lioncash 1fc1880ca5 Interpreter/Jit Tables: Merge table31 and table31_2 2015-03-20 20:39:51 -04:00
Lioncash 1052863bb9 Interpreter/JIT: Add missing overflow variants into the tables. 2015-03-20 19:20:38 -04:00
skidau 87bffb5972 Added event.Skip() to the OnFocusChange event. Fixes the pulldown menus. 2015-03-20 22:01:23 +11:00
skidau c3344eaa88 Preliminary update to the GameCube to GBA link cable emulation. Fixes Zelda Wind Waker's Tingle Tuner connection, Pac-Man Vs, Final Fantasy: Crystal Chronicles multiplayer, and most other Gamecube to GBA link cable games.
* Changed the SI buffer processing so that transfers do not have to be completed instantly
* Added a second socket at port 49420 (0xc10c) which sends clock information to the GBA slaves
* Handled disconnections from the GBA and GC
* Made the transfers asynchronous
* Blocks the socket before the connection times out

Requires VBA-M SVN 1235 or later.
2015-03-20 12:43:55 +11:00
magumagu 337f89959b Merge pull request #2226 from magumagu/restore-wpar-mask
Restore masking to gather pipe address checks.
2015-03-19 11:02:45 -07:00
magumagu 31add72dee Merge pull request #2237 from lioncash/round
x64FPURoundMode: Make a look-up table static
2015-03-19 10:59:22 -07:00
Lioncash e57201eb71 x64FPURoundMode: Make a look-up table static
Since it's only a look-up table, this doesn't need to be recreated every time the function is called.
2015-03-19 09:07:36 -04:00
skidau 98dce11f8c Updated the input plugins reference of hwnd on game start. Fixes the emu wiimotes mouse IR when rendering the game to a separate window. 2015-03-19 21:31:05 +11:00
Lioncash b459a8ec61 DolphinWX: Propagate event to refresh the game list
Prior to this refactor, certain options would cause the game list to refresh when the config modal dialog is closed (such as adding a folder to the path list). This restores that functionality.
2015-03-18 22:48:05 -04:00
Lioncash febd3909c6 DolphinWX: Eliminate remnants of the event table in ConfigMain 2015-03-18 22:48:03 -04:00
Lioncash 086ec7a9b7 DolphinWX: Break up ConfigMain.cpp into separate classes
Prior to this, ConfigMain.cpp was a large (52KB) cpp file that contained all of the UI setting code.

This breaks up the config code into subclasses of wxPanel, which are then just instantiated to add to the settings wxNoteBook. This keeps all the settings categories separated from one another and also cleans up the code in general.
2015-03-18 22:47:49 -04:00
skidau 7d800b6180 Merge pull request #2224 from gerikkub/AutoFocus
Pause the emulator based on mouse focus
2015-03-19 12:48:03 +11:00
skidau 4b11aeacb9 Merge pull request #2155 from mickdermack/pr-compress
Improvements to DiscIO::CompressFileToBlob and DecompressBlobToFile
2015-03-19 12:45:57 +11:00
Tillmann Karras 9da86092ae VertexLoaderX64: use common code for FORMAT_FLOAT 2015-03-18 12:12:21 +01:00
Tillmann Karras 7030542546 VertexLoaderX64: support SSE2 as a fallback
With suggestions by Fiora and magumagu.
2015-03-18 12:12:21 +01:00
Tillmann Karras 9793fed742 XEmitter: add PUNPCKLQDQ 2015-03-18 12:09:06 +01:00
Tillmann Karras 8d90ecda7f VertexLoaders: make positions more compact 2015-03-18 12:09:06 +01:00
Tillmann Karras 5a51bc10e5 SWVertexLoader: fix truncated components 2015-03-18 12:09:06 +01:00
mathieui 8201a52cec Traversal: Use a decent PRNG instead of rand()
we don’t need cryptosecure random, but having a uniform distribution is
always better.
2015-03-18 10:16:11 +01:00
mathieui 849922881d NetPlay: Select a game only if enet connected successfully 2015-03-18 10:16:11 +01:00
mathieui e0ef8fc03f NetPlay: Make the enet interrupts work
Otherwise, it would work but any async sending would be delayed by 4ms or
wait until the next packet was received.

Also increase the client timeout to 250ms, since enet_host_service is now
really interrupted.
2015-03-18 10:16:11 +01:00
mathieui 8ee402863d NetPlay: Remove RunOnThread and add SendAsync methods
Add std::unique_ptr<sf::Packet> objects to a queue instead of functions,
makes things easier to read, and avoids headaches while checking the
lifetime of the concerned objects.
2015-03-18 10:16:11 +01:00
mathieui 44d7207a1c NetPlay: add a Common/ENetUtil namespace
Move WakeupThread in it
2015-03-18 09:23:44 +01:00
mathieui 603fe25349 NetPlay: use a workaround from comex’s dc-netplay to interrupt enet 2015-03-18 09:23:44 +01:00
Ryan Houdek 27619e613f Merge pull request #2231 from Sonicadvance1/fix_wii_config
Fix Wii configuration path being incorrect.
2015-03-17 22:42:07 -05:00
skidau 0ac8fd0214 Merge pull request #2183 from RachelBryk/netplay-time
Use system time for start time in netplay.
2015-03-18 13:52:17 +11:00
Ryan Houdek 297012ddd7 Fix Wii configuration path being incorrect.
On loading the NANDRoot from the config, if it isn't set it will still attempt to be set.
So on the invalid empty path, just don't set it.
2015-03-17 21:27:40 -05:00
Gerik Kubiak ae4e8b6358 Changed screen to window. Moved UpdateGUI to a more general scope. 2015-03-17 12:14:14 -07:00
magumagu 627b77e982 Restore masking to gather pipe address checks.
Apparently it's necessary. Issue 8386.
2015-03-17 12:01:37 -07:00
Michael Ehrenreich 9387603fcf Improve error handling in DiscIO::CompressFileToBlob and DecompressBlobToFile 2015-03-17 09:01:26 +01:00
Scott Mansell 858ff69c01 Make OpArg.offset and operandReg private.
Also cleaned up WriteRest function.
2015-03-17 18:49:30 +13:00
Scott Mansell 6262a9bcbe Make immediates more explicit
Instead of just casting OpArg::offset when needed, add some
accessor functions.

Also add some safety asserts to catch any mistakes.
2015-03-17 18:49:26 +13:00
Gerik Kubiak 0a28f7de13 Added checkbox under Config > Interface. 2015-03-16 22:13:27 -07:00
Gerik Kubiak 88fb8edf8e Change behavior so emulation is paused when window focus is lost. 2015-03-16 21:31:13 -07:00
Gerik Kubiak 341e7e9d8f Added the ability to pause the emulator by moving the mouse outside the window. 2015-03-16 20:28:17 -07:00
magumagu ff6ae8a677 Disable FakeVMem in Wii mode.
I'm assuming nobody thought of this when FakeVMem was turned on by
default; FakeVMem doesn't make any sense in Wii mode.
2015-03-16 17:52:56 -07:00
magumagu 4b7748f3c0 Merge pull request #2205 from Stevoisiak/FormattingCleanup
Formatting Cleanup
2015-03-16 17:47:29 -07:00
magumagu 629fb8fb49 Merge pull request #2222 from Tilka/fix_warnings
Fix warnings
2015-03-16 17:41:46 -07:00
skidau b103aa7122 Merge pull request #2189 from magumagu/paired-loadstore-cleanup
Fix paired loadstore to use correct load/store calls.
2015-03-17 11:26:01 +11:00
skidau b170173aca Merge pull request #2196 from magumagu/ipchle-gethostbyname
Fix IPCHLE for gethostbyname.
2015-03-17 11:19:51 +11:00
magumagu adb8bbed90 Merge pull request #2217 from shuffle2/quiet-warnings
quiet some warnings which appear on vs2015.
2015-03-16 11:50:42 -07:00
shuffle2 0b6562b53f Merge pull request #2219 from magumagu/no-volatile-processorinterface
Remove useless volatile from ProcessorInterface.
2015-03-16 11:34:13 -07:00
Tillmann Karras f82afd1b2f Fix warnings 2015-03-16 19:02:30 +01:00
Lioncash c73cac3ee9 Merge pull request #2220 from shuffle2/win-con-listener
[windows] Replace ConsoleListener, which was not actually used.
2015-03-16 02:03:27 -04:00
Shawn Hoffman 78be0ab9ad [windows] Just kill ExtendedTrace.
The code is not really worth saving, and afaik it has never actually been helpful.
2015-03-15 22:30:38 -07:00
Shawn Hoffman 0a79b6d5a7 [windows] Remove ConsoleListener, which was not actually used.
Replace it with the DebuggerLogListener.
2015-03-15 22:11:18 -07:00
magumagu fd15cad1ca Remove useless volatile from ProcessorInterface.
These values are only accessed/used from the CPU thread.
2015-03-15 20:33:41 -07:00
Shawn Hoffman ad64336137 quiet some warnings which appear on vs2015.
quieted warnings include shadowed variable names and integer extensions.
2015-03-15 19:28:47 -07:00
skidau 7cda374910 Merge pull request #2202 from skidau/Popup-FIFO
Show no more than one FIFO error per session.
2015-03-16 13:00:22 +11:00
Ryan Houdek 3e946b1bf7 [AArch64] Implement dirty register tracking.
Using BindToRegister from the register caches causes the register bound to be marked dirty.
Using the regular R() function from the register caches loads the registers without being dirty.

When implementing new instructions make sure to BindToRegister registers that become dirty.
2015-03-15 20:09:30 -05:00
Ryan Houdek 5e0b9179db Merge pull request #2186 from Sonicadvance1/aarch64_optimize_paired_slowmem
[AArch64] Optimize slowmem paired stores.
2015-03-15 14:37:21 -05:00
Ryan Houdek bcc434095d Merge pull request #2212 from Sonicadvance1/fix_user_paths
Fix user directories at times doing stupid things.
2015-03-15 09:45:02 -05:00
Ryan Houdek aaf04aeaca Fix user directories at times doing stupid things.
With my previous changes Dolphin would fail to create the user directory if it didn't exist, and would dump all the configuration options in to the cwdir.
This was a bit more complicated to fix in a clean fashion, so I took to moving around code concerning user directories.
Instead of having GetUserPath serve a dual purpose of both getting and setting our user directories, break out to a new SetUserPath function.

GetUserPath will know only get the configured user path.
SetUserPath will set our user paths and setup the internal user path state.

This ending up being a lot cleaner overall, which is nice. Also less mind bending when attempting to read the code.

So now we won't dump all of our configuration in to the cwdir if ~/.dolphin-emu isn't found.

Fixes issue 8371.
2015-03-15 09:19:48 -05:00
Ryan Houdek 5e6d49d96b Merge pull request #2209 from magumagu/remove-hle-opcode
Remove remnants of old fake opcodes.
2015-03-15 07:13:07 -05:00
Rohit Nirmal 48ec42d4a0 Core: Change NULLs to nullptrs. 2015-03-14 20:20:41 -05:00
magumagu 87dcda5785 Remove remnants of old fake opcodes.
These are illegal opcodes, and should be treated as such.
2015-03-14 16:59:12 -07:00
Markus Wick ec8a074690 Merge pull request #2153 from degasus/enet
enet: Search for shared library
2015-03-14 17:23:27 +01:00
Stevoisiak 4f71b717cc ConfigMain: Change _NTSC to ForceNTSCJ
This is consistent with the name of the setting in dolphin.ini
2015-03-13 17:59:30 -04:00
Stevoisiak efb64c1885 Change OnGameListCtrl_ItemActivated to OnGameListCtrlItemActivated 2015-03-13 16:47:06 -04:00
Lioncash 41ad0f6976 Merge pull request #2204 from Stevoisiak/CheatWindowConsistency
DolphinWX: Changed "OnShow_CheatsWindow" to "OnShowCheatsWindow"
2015-03-13 16:39:54 -04:00
Stevoisiak 2f0e3d239d DolphinWX: Changed "OnShow_CheatsWindow" to "OnShowCheatsWindow" 2015-03-13 15:20:19 -04:00
mathieui b9af0c4d12 GC Adapter: Do not abort if some libusb functions are not supported
Also remove a typo.
2015-03-13 18:05:09 +01:00
mathieui 88ab6352dd GC Adapter: do not proceed with the input read if the thread isn’t running
If the Init() call does not work in the fallback path, then abort.
2015-03-13 18:05:09 +01:00
mathieui 5a10be7fef GC Adapter: fix a crash on exit
s_detected is better for detecting that a thread is actually running.
Also make sure the claim_interface is always called when we detect an
adapter.
2015-03-13 18:05:09 +01:00
mathieui ebedc80545 GC Adapter: never call libusb_reset_device()
There should be no need to do this, and performing a reset breaks things
on any other software using the device (e.g. another dolphin instance).
2015-03-13 18:05:09 +01:00
mathieui ad49de7740 GC Adapter: don’t stop scanning after failing to claim an adapter
Only call Shutdown() after all devices have been tested.
2015-03-13 18:05:09 +01:00
mathieui 5f5cc963cf GC Adapter: stop searching adapters after one has been added 2015-03-13 18:05:09 +01:00
skidau cdff138c67 Show no more than one FIFO error per session. 2015-03-13 23:25:15 +11:00
skidau 2916aed1f9 Merge pull request #2195 from JosJuice/nandcontentloader-singletons
Don't construct NANDContentLoader classes before Main.cpp runs
2015-03-13 12:20:43 +11:00
magumagu 269be03908 OpenGL: use ClampUL instead of ClampLL where appropriate. 2015-03-12 13:24:52 -07:00
Lioncash 899a5078a0 Merge pull request #2200 from Stevoisiak/CheatManagerRename
Rename "Cheats Manager" to "Cheat Manager"
2015-03-12 15:27:52 -04:00
Stevoisiak fbe11aefbb Rename "Cheats Manager" to "Cheat Manager" 2015-03-12 15:24:00 -04:00
skidau c76008b4b9 Removed the controller update lock as it is no longer needed. 2015-03-12 23:41:30 +11:00
skidau 2c6eaf9c76 Cleaned up the controls lock that is not needed with 780eef68f6 2015-03-12 23:33:30 +11:00
Markus Wick 43b2f790fd Merge pull request #2197 from RachelBryk/paren
Fix missing parenthesis.
2015-03-12 07:58:05 +01:00
Rachel Bryk e7d237f199 Use system time for start time in netplay. 2015-03-11 23:21:14 -04:00
skidau 9063f0d16f Merge pull request #2150 from Tilka/gamelist_searching
DolphinWX: fix searching the game list in GTK
2015-03-12 13:32:50 +11:00
skidau 5dc23a93b6 Merge pull request #2169 from magumagu/rect-clamp
Fix clamping for rectangles.
2015-03-12 13:31:51 +11:00
skidau f3bb30f17f Merge pull request #2180 from RachelBryk/netplay-quit
Fix crash when server's client disconnects.
2015-03-12 13:28:38 +11:00
Rachel Bryk 71bc1f39e0 Fix missing parenthesis. 2015-03-11 20:09:33 -04:00
magumagu b523e7d3d3 Fix IPCHLE for gethostbyname.
It turns out that the offsets of the data in the return buffer matter: the
offset 0x340 is hardcoded into the code that uses the result.

With that fixed, get rid of the completely wrong 0x80000000 hack.
2015-03-11 17:08:15 -07:00
magumagu dda5e610eb Fix paired loadstore to use correct load/store calls.
psq_st performs one store, and psq_ld one load, from the perspective of the
MMU; getting this wrong leads to potentially incorrect behavior (incorrect page
faults, weirdness with the gather pipe, etc.).  Fix this, and stop masking
the address when checking for gather pipe writes.

Also a bunch of cleanup.
2015-03-11 17:06:18 -07:00
Dolphin Bot 647cd3c8e0 Merge pull request #2171 from JosJuice/nonmodal-regression
Fix 4.0-5689 regression (AR codes, patches)
2015-03-11 08:15:02 +01:00
skidau 9ccc236b9c Merge pull request #2179 from RachelBryk/sort
Consistently sort games with the same name but different revision or reg...
2015-03-11 12:31:25 +11:00
JosJuice 66bb3000c2 Don't construct NANDContentLoader classes before Main.cpp runs
The cUIDsys constructor writes to <Wii user path>/sys/uid.sys.
This must not be done before Main.cpp sets the correct user paths.
2015-03-09 16:08:32 +01:00
skidau d7e54c36f1 Calibrated the GCPad even if the game does not explicitly do so. 2015-03-09 17:07:15 +11:00
skidau d92efc4a3e Merge pull request #2190 from skidau/wiimote-profiles
Fixed the wiimote profiles not taking effect.
2015-03-09 11:30:33 +11:00
magumagu a1dbe8e463 Merge pull request #2166 from MoochMcGee/master
Add various loads and stores to JitIL
2015-03-08 17:12:52 -07:00
skidau 07251b7c57 Merge pull request #2177 from skidau/debugger-split-window
Added the ability to split the Debugger window horizontally and vertically
2015-03-09 10:58:16 +11:00
magumagu 859c1123ba Fix typo in usage of IsOptimizableMMIOAccess. 2015-03-08 16:20:17 -07:00
skidau b200e83b02 Fixed the wiimote profiles not taking effect. 2015-03-09 08:32:14 +11:00
Ryan Houdek 7f50cc0873 [AArch64] Optimize slowmem paired stores.
This came up from the discussion we were having prior about dumping half of a kilobyte of VFP registers to the stack is insanity.
This was due to me basically copying exactly what I did on ARMv7's paired loadstores, where the impact is less since we only use the bottom 64bits of
the VFP registers.

So I decided to think about how to improve upon this since I got called out on my terrible code.
The solution I have come up with is instead of jumping to the common ASM routine and having that check if it needs to take the fastmem or slowmem
routes, just inline the check in to the JIT block and jump to either a fastmem or slowmem handler.
Fairly simple, and this allows us to only flush the registers that are required when doing so. Should give a reasonable increase in performance for
games that use the slowmem path quite a lot.
2015-03-08 16:12:49 -05:00
Ryan Houdek f6511c3ba5 [AArch64] Add an assert to SMOV in the emitter.
SMOV doesn't have an encoding for moving a 32bit element to a 32bit GPR.
One should use UMOV if they want that.
2015-03-08 12:29:45 -05:00
degasus f3f2ed1536 GLX: fix memory leak 2015-03-08 17:42:37 +01:00
Ryan Houdek b0f61201c3 Merge pull request #2142 from Sonicadvance1/fix_gles31_non_nvidia
Fix OpenGL ES 3.1 on non-Nvidia devices.
2015-03-08 09:03:05 -05:00
Ryan Houdek a9622c247b Merge pull request #2146 from Sonicadvance1/aarch64_optimize_fpr_push_pop
[AArch64] Optimize FPR pushing and popping.
2015-03-08 08:51:45 -05:00
Ryan Houdek a984b2476a Merge pull request #2144 from Sonicadvance1/android_autostart
[Android] Support arguments from Activity Monitor.
2015-03-08 08:50:27 -05:00
Ryan Houdek 3c5e99c777 Fix OpenGL ES 3.1 on non-Nvidia devices.
We are declaring we require ARB_shader_image_load_store in the shader, this isn't an extension on GLES because it is part of the GLSL ES 3.1 spec.
If we are running as GLES then just not put it in the shaders.
2015-03-08 08:49:53 -05:00
Ryan Houdek 70977fd6b1 Merge pull request #2092 from Sonicadvance1/gles_occlusion_queries
Implement full occlusion queries for the Nexus 9.
2015-03-08 08:44:15 -05:00
Ryan Houdek c2b2e03f73 [Android] Support arguments from Activity Monitor.
Activity Monitor can start activities by using adb to invoke it.
This will allow us to set the user directory and autostart file from adb.

adb shell am start -n org.dolphinemu.dolphinemu/.gamelist.GameListActivity -e AutoStartFile /sdcard/AC.gcz -e UserDir /sdcard/dolphin-emu2/

This allows more automated testing to be done with Dolphin on Android.
2015-03-08 08:43:25 -05:00
skidau 3e12787cc8 Fixed a crash on launch which occurred if the hotkeys are not defined and the default hotkeys are loaded. 2015-03-08 20:27:14 +11:00
skidau 8f0bc1cd3a Slowed down the freelook speed keys and allowed the depth/convergence keys to be held down. 2015-03-08 20:27:13 +11:00
skidau 9c133c0509 Readded the Key Shortcut function. 2015-03-08 20:27:13 +11:00
skidau 12ecc537e9 Renamed the Menu Accelerators to Key Shortcuts.
Cleared the default mapping of hotkeys as they were conflicting with the key shortcuts.
Removed the Open, Change Disc, Refresh List and Exit hotkeys as they work only when driven from the menu.
2015-03-08 20:27:13 +11:00
skidau 780eef68f6 Fixed the crash that would occur when the Refresh button was pressed in the controllers config.
- Simplified the locking mechanism when controllers were updated
- Reloaded the config of the controls instead of re-initialising the control plugins
- Fixed controls being unresponsive after the Refresh button was pressed
- Disables the hotkeys while the controller config is open
2015-03-08 20:27:13 +11:00
skidau b446ea0132 Made the freelook keys work while held down 2015-03-08 20:27:13 +11:00
skidau 099876782f Made the "Frame Advance" hotkey work while the key is held 2015-03-08 20:27:13 +11:00
skidau a83d27b9c2 Increased the performance of the hotkey code by:
* Halving the number of hotkeys checked for (there were extra for future use)
* Gets the controller status once before parsing hotkeys
* Checks for the GUI lock once before parsing hotkeys
* Removed some redundant memsets
2015-03-08 20:27:12 +11:00
skidau d2abbcd353 Removed the requirement to have the Freelook option enabled for the freelook hotkeys to work. 2015-03-08 20:27:12 +11:00
skidau d080632527 Ignore the File Open command if a game is running 2015-03-08 20:27:12 +11:00
skidau 679d9351ea Fixed the Connect Wiimote hotkeys from getting activated while a GameCube game is running. 2015-03-08 20:27:12 +11:00
skidau cc6b55ee2a Fixed the save state hotkeys so that they work with the Render to Main Window option. 2015-03-08 20:27:12 +11:00
Tillmann Karras 3987725217 VertexLoaderX64: fix harmless off-by-one error 2015-03-08 04:43:59 +01:00
magumagu 9c045e2496 Merge pull request #2094 from lioncash/flags
Interpreter: Flag cleanups/fixes.
2015-03-07 17:38:00 -08:00
Rachel Bryk 11b437ffd1 Consistently sort games with the same name but different revision or region. 2015-03-07 05:17:46 -05:00
Rachel Bryk 3df51e553f Fix crash when server's client disconnects. 2015-03-07 04:40:24 -05:00
skidau 12155ddee4 Added the ability to split the Debugger window horizontally and vertically via the Add Panes menu. 2015-03-07 12:33:33 +11:00
JosJuice 4a41ab1715 Fix 4.0-5689 regression (AR codes, patches)
CreateCodeTab, ARCodeAddEdit and PatchAddEdit
need to be able to modify arCodes/onFrame.
2015-03-06 12:26:40 +01:00
skidau a3f6cbfe6b Merge pull request #2167 from JosJuice/language-selection-regression
Call SetUserDirectory before InitLanguageSupport
2015-03-06 15:25:51 +11:00
Lioncash 47c8955248 Merge pull request #2168 from JosJuice/language-selection-untranslated
Display languages untranslated in GUI language selection
2015-03-05 18:05:23 -05:00
magumagu 92ba677371 Merge pull request #2174 from skidau/warning-fix-gc-adapter
Warning fix
2015-03-05 14:56:19 -08:00
skidau ef3fd68603 Warning fix 2015-03-06 09:34:38 +11:00
Tillmann Karras 45dbcf0ed2 Jit64: use MRegSum where appropriate 2015-03-05 21:58:28 +01:00
Tillmann Karras e27fae22d8 Jit64: drop a FIXME that has been fixed for years
See 6cdb40a194.
2015-03-05 21:58:28 +01:00
Lioncash b7514955e5 Merge pull request #2113 from Stevoisiak/VolumeCleanup
Basic volume code cleanup
2015-03-05 12:18:53 -05:00
skidau 203c64e66d Changed the GC Adapter rumble command to work like other controllers. 2015-03-05 23:57:18 +11:00
skidau 4cf4cee30e Removed the GC Adapter "Use Thread" option as it was not useful. 2015-03-05 23:30:43 +11:00
skidau e5277a5f49 Ignore invalid rumble data sent over Netplay to the GC Adapter 2015-03-05 23:11:48 +11:00
skidau dee6a04980 Moved the gcpad calibration from construction to runtime 2015-03-05 23:06:19 +11:00
magumagu 863a4c9ce0 Fix clamping for rectangles.
Clamping a rectangle correctly requires fully clamping all four
coordinates in the general case.

This should fix issue 6923, sort of; at least, it fixes the part where a
rectangle ends up with a nonsensical height after being clamped.
2015-03-04 17:15:29 -08:00
JosJuice c40e1d972a Sort language list alphabetically by new names 2015-03-04 20:36:04 +01:00
JosJuice a8a9dafb1f Display languages untranslated in GUI language selection 2015-03-04 20:35:19 +01:00
JosJuice 2cb4a3efbc Call SetUserDirectory before InitLanguageSupport
Fixes a regression from 4.0-5692 where only the system language was used.
2015-03-04 14:45:36 +01:00
Lioncash a11bbe6fea PPCTables: Remove FL_OUT_S.
This is unused, and since it had the same value as FL_OUT_D, it was unnecessarily setting the rS register as an output, even on instructions that only have FL_OUT_D set.
2015-03-03 16:23:28 -05:00
Lioncash 139dbcb8e2 Interpreter_Tables: Fix wrong flags and add missing ones 2015-03-03 16:23:21 -05:00
Darius Goad f4750804ab Add various loads and stores to JitIL 2015-03-03 11:17:25 -06:00
JosJuice 96c4b332f6 FileMonitor: Check log level in addition to FileMonitor checkbox
This is good for performance when FileMontior is selected
but the log level only is set to notice or warning.
The ability to do this wasn't available until recently:
1ed41672f5
2015-03-03 11:33:16 +01:00
Ryan Houdek fbdee7b15f [AArch64] Handle FPR island registers in a less dumb way. 2015-03-03 00:30:05 -06:00
Ryan Houdek 81242dd4a7 [AArch64] Allow the other FPR push/pop routines to use a temporary register. 2015-03-02 21:38:09 -06:00
Tillmann Karras a5ea6c6e93 enet: fix Visual Studio files 2015-03-02 22:20:37 +01:00
degasus 691b690afe enet: Search for shared library 2015-03-02 22:18:57 +01:00
Ryan Houdek f1a9db9bdc [AArch64] Stop violating the AAPCS64 so much. 2015-03-02 11:21:15 -06:00
Markus Wick cc5a2f3411 Merge pull request #2164 from Armada651/cache-fix
ProgramShaderCache: Do plenty of error checking before writing shaders to the disk.
2015-03-02 17:24:00 +01:00
Jules Blok 728081dad2 ProgramShaderCache: Do plenty of error checking before writing shaders to the disk. 2015-03-02 17:03:49 +01:00
Ryan Houdek fad46729b0 [AArch64] Implemented paired pushing/popping for the VFP.
A bit more efficient if we are only pushing two VFP registers.
We can probably be a bit more efficient in the future by mixing paired loadstores in to the other paths as well.
2015-03-02 06:27:47 -06:00
Ryan Houdek 39e357d62d [AArch64] Implement VFP loadstore paired in the emitter. 2015-03-02 06:27:17 -06:00
Ryan Houdek 8b8310d28c [AArch64] Optimize FPR pushing and popping.
Previously on FPR pushing and popping we would do a single STR/LDR per quad FPR we wanted to push/pop.
In most of our cases when we are pushing and popping VFP registers they will be consecutive registers that will save more efficiently using the NEON
loadstores that can do up to four quad registers.
So this can potentially cutting instructions down to ~1/4th the amount of instructions if the registers are all consecutive.

On the Cortex-A57 this is basically just an icache improvement, but on the Nvidia Denver this may be optimized to be more efficient. Either way it's a
win.
2015-03-02 06:27:13 -06:00
skidau cd8c37bc07 Merge pull request #2145 from skidau/GC-Adapter-status-fix
Cleared the status of the GC Adapter before populating it with new data
2015-03-02 12:18:52 +11:00
skidau 939159cd71 Cleared the status of the GC Adapter before populating it with new data 2015-03-02 11:08:26 +11:00
degasus 35373c5185 TextureCache: load all mipmap levels from custom textures
This drops the "feature" to load level 0 from the custom texture
and all other levels from the native one if the size matches.
But in my opinion, when a custom texture only provide one level,
no more should be used at all.
2015-03-02 00:09:09 +01:00
magumagu 7f7973efa5 Merge pull request #2148 from Tilka/fifo_cleanup
Small FIFO-related cleanup
2015-03-01 13:06:43 -08:00
magumagu b4a586f84a Merge pull request #2161 from Tilka/fix_warnings
Fix some warnings
2015-03-01 13:02:37 -08:00
magumagu aa24dbc56e Merge pull request #2157 from lioncash/leaks
DolphinWX: Allow input subsystems to correctly deinitialize
2015-03-01 12:53:28 -08:00
Tillmann Karras f75187db3e Add missing newlines at EOF 2015-03-01 17:17:09 +01:00
Tillmann Karras 88264f5712 Fix -Wswitch warning 2015-03-01 16:17:32 +01:00
Tillmann Karras 4304648a05 Fix -Wreorder warning 2015-03-01 14:54:22 +01:00
degasus 7ca24f90d1 TexCache: increase TEXTURE_KILL_THRESHOLD
Xenoblade uses more than 40 textures alternately per frame for eg water effects.
So don't try to drop them as aggressive.
2015-03-01 13:41:14 +01:00
Lioncash 3981212031 DolphinWX: Allow input subsystems to correctly deinitialize
Previously InitControllers() would be called every poll duration, setting this boolean to false which would prevent said sybsystems from deinitializing correctly.
2015-03-01 01:23:21 -05:00
Ryan Houdek d3c9701eb6 Merge pull request #2156 from Stevoisiak/EFB-Copies-To-Texture
VideoConfigDiag: Rename EFB Copies to RAM option
2015-02-28 22:28:11 -06:00
Stevoisiak cb7b96009d VideoConfigDiag: Rename EFB Copies to RAM option 2015-02-28 23:00:49 -05:00
Stevoisiak 492aa5c391 DiscIO: Get rid of unsafe cast 2015-02-28 22:03:53 -05:00
Stevoisiak 5346e791bc VolumeWad: change titlever to title_version 2015-02-28 21:42:16 -05:00
Lioncash 4cc19ac926 DolphinWX: Clean up some wxTimer code
Technically fixes a memory leak (which wouldn't matter because the timer is only created once and destroyed on shutdown).

Also starting and stopping the timer does not cause leaks.
2015-02-28 20:32:37 -05:00
Stevoisiak eff924e9e2 General Formatting 2015-02-28 19:33:27 -05:00
Tillmann Karras baf732b48b DolphinWX: fix searching the game list in GTK 2015-02-28 16:43:31 +01:00
Tillmann Karras 9493c713dd Fifo: small cleanup 2015-02-28 15:40:01 +01:00
Tillmann Karras e28c97f6bd Fifo: drop unused functions 2015-02-28 15:40:00 +01:00
Lioncash d10571a86a PixelShaderManager: Remove unnecessary casts.
EFBToScaledXf and EFBScaledYf return a float, so the cast isn't needed here.
2015-02-28 00:04:05 -05:00
skidau 4dd0813dcf Merge pull request #2133 from randomstuff/hotkeys
Fix hotkeys for Linux
2015-02-28 10:59:18 +11:00
Markus Wick 4f9fcbaba9 Merge pull request #2120 from JosJuice/show-default-gameini
ISOProperties: Allow opening region-free INIs with "Show Defaults" button
2015-02-27 17:58:42 +01:00
skidau 1dcd0ad879 Merge pull request #2129 from Sonicadvance1/shuffle_user_dir
Move user directory detection location to UICommon.
2015-02-27 14:07:06 +11:00
skidau 2a41ac4072 Merge pull request #2123 from RachelBryk/nonmodal-isoprops
Make iso properties non modal.
2015-02-27 13:25:46 +11:00
skidau 85359d5169 Merge pull request #2124 from RachelBryk/framelimit-hotkeys
Fix order of some hotkeys
2015-02-27 13:24:32 +11:00
Stevoisiak ede4977d12 VolumeWiiCrypted: Implement IsDiscTwo()
Allows us to check if a Wii game is marked as Disc 2.
2015-02-26 17:10:18 -05:00
Stevoisiak f72a559958 Rearranged Volume header files 2015-02-26 16:57:32 -05:00
Stevoisiak 06cb85991e De-capitalized CountryCode 2015-02-26 16:57:31 -05:00
Stevoisiak df2f6d137e VolumeWad: Move country identification to GetCountry()
Brings the code more in line with the rest of the game volume code
2015-02-26 16:55:17 -05:00
Stevoisiak d3190ec4f1 VolumeWad: Private variables for offset values 2015-02-26 16:55:16 -05:00
Lioncash d50c56c2e4 DolphinWX: Remove an unnecessary sizer from the watch window
The AUI manager already has the grid in place. Setting the sizer isn't needed.
2015-02-26 09:58:38 -05:00
Ziek 779f275486 Added TraversalServer.cpp to Core/Common 2015-02-25 18:28:27 -08:00
Ziek 619a3a5171 Added all of enet lib, changed Cmake files accordingly 2015-02-25 18:28:27 -08:00
Ziek a629555e6b Added Gui elements in Netplay Setup Diag so a person can choose a traversal server
Fixed bug with UPnP so that it will grab the proper address and protocal
Fixed bug that caused dolphin to freeze when host codes were to large
2015-02-25 18:28:26 -08:00
Ziek 1dea3780a7 Fixed issue where players were not disconnecting correctly 2015-02-25 18:28:26 -08:00
Ziek 074d688884 Change netplay initial gctime to be determined by the hosts initial time 2015-02-25 18:28:26 -08:00
Ziek 4cdc307b87 Moved Traversal Client code over from old netplay
Moved over gui code for copying host code
added gui to netplay diag setup to switch between direct and traversal connection
2015-02-25 18:28:25 -08:00
Ziek 461a54338b Switched tcp over to enet 2015-02-25 18:17:50 -08:00
skidau f71f376371 Merge pull request #2117 from lioncash/id
DolphinWX: Remove unnecessary control IDs
2015-02-26 12:49:07 +11:00
Gabriel Corona 1cae151c9c Avoid conflicts between hotkeys and global keybindings for Linux
Alt+foo are usually used as global keybindings.
2015-02-26 01:40:06 +01:00
Gabriel Corona 13d43c0cde Fix linux hotkeys
Backticks are necessary when the key is not /^[A-Za-Z]*$/.
2015-02-26 01:29:52 +01:00
Gabriel Corona c626ce5809 Do not fail to evaluate an expression if some input is missing
My keyboard layout does not have Alt_R but ISO_Level3_Shift. As a
consequence any control expression containing Alt_R fails to evaluate
completely and is unusable. This modification replace the missing term
of the expression by a dummy expression which always evaluate to
0. This way, the keybinding can work even if some keys are not
available.
2015-02-26 01:24:54 +01:00
Lioncash 7408de7e79 Merge pull request #2058 from Stevoisiak/Codemaid-Cleanup-Take2
Basic Formatting/Whitespace Cleanup
2015-02-25 18:07:56 -05:00
magumagu b1fbf205ec Merge pull request #2122 from Tilka/intrinsics
Intrinsics: drop custom _mm_shuffle_epi8()
2015-02-25 10:48:34 -08:00
Ryan Houdek d6fcd85110 Merge pull request #2127 from lioncash/aui
DolphinWX: Relocate the address search into the code window
2015-02-25 10:36:07 -06:00
Stevoisiak 93b16a4a2d Formatting/Whitespace Cleanup
Various fixes to formatting and whitespace
2015-02-25 10:48:21 -05:00
Markus Wick d6ccbb1f9c Merge pull request #2004 from randomstuff/stringutil-c-locale
Use the C locale for non-Windows CharArrayFromFormatV() and StringFromFormat()
2015-02-25 13:17:04 +01:00
Ryan Houdek ca6e154f0b Fix a bug on user path re-assignment.
The Load directory wasn't being properly reassigned when the user path changed, which causes a bunch of issues with things loading from the wrong
place when using the -U option in Dolphin.
2015-02-25 05:45:25 -06:00
Ryan Houdek db06f058e4 Move user directory detection location to UICommon.
The UI should decide on where it wants the user directory, not our core system.
This is in anticipation of some upcoming work on Android which will need proper user directory setting.
2015-02-25 03:31:59 -06:00
Rachel Bryk 2c54ca0f84 Fix order of some hotkeys 2015-02-25 00:42:40 -05:00
Lioncash ce4b73388a DolphinWX: Relocate the address search into the code window
It's only function is in this pane. Leaving it on the main application toolbar not only looks gross, but subverts what a user might think it applies to.
2015-02-25 00:16:17 -05:00
Lioncash 792e166f87 Merge pull request #2118 from lioncash/aui
DolphinWX: Use AUI in the code window.
2015-02-24 21:45:16 -05:00
Lioncash fd11f8fd29 DolphinWX: Use AUI in the code window.
Allows for resizing of the callstack, function call/callers windows etc.
First step in slightly improving the code window.
2015-02-24 21:31:28 -05:00
skidau f4e42b394c Merge pull request #2106 from magumagu/elf-translation-registers
Correctly set up MSR and BAT registers for ELF loading.
2015-02-25 12:42:48 +11:00
Tony Wasserka ec47be7884 VideoConfigDiag: Use consistent spelling of nouns. 2015-02-25 01:58:47 +01:00
Rachel Bryk 2df8190e1a Make iso properties non modal. 2015-02-24 19:11:03 -05:00
Pierre Bourdon f06b1106db Merge pull request #2089 from degasus/remove_disable_efb_copy
Remove disable efb copy
2015-02-24 23:31:05 +01:00
degasus 967eaad8df VideoCommon: rename efb2tex and efb2ram 2015-02-24 23:10:13 +01:00
degasus 1313d3461f VideoCommon: always enable efb copy 2015-02-24 23:01:01 +01:00
degasus ac7102918d OGL: support palette texture decoding 2015-02-24 22:51:55 +01:00
Fiora 0e34737390 Merge pull request #2121 from JosJuice/remove-sudtr-note
Remove "Needed for a few games." from fast disc speed description
2015-02-24 13:12:48 -08:00
magumagu e9e1a2c2dc Merge pull request #2110 from lioncash/tl
DolphinWX: Make RAM watch strings translatable
2015-02-24 11:42:14 -08:00
JosJuice 2247bfa9bc Remove "Needed for a few games." from fast disc speed description
There are no longer any games that are known to require this.
The last one was Rogue Leader, fixed in PR #1778.
2015-02-24 20:06:38 +01:00
JosJuice 021f6d0f72 ISOProperties: Allow opening region-free INIs with "Show Defaults" button 2015-02-24 20:04:19 +01:00
JosJuice a1f0f60a79 CoreParameter: Refactor game INI code 2015-02-24 20:01:11 +01:00
Tillmann Karras dd818a3831 Intrinsics: drop custom _mm_shuffle_epi8()
We don't actually use it, because of reasons.
2015-02-24 19:37:16 +01:00
Lioncash 30c91a3003 DolphinWX: Remove unnecessary control IDs
These don't need to be specifically identified.
2015-02-24 08:31:52 -05:00
Ryan Houdek 29fc52cfa1 [Android] Stop eating button events we don't handle.
We were eating /all/ button events except the back button. This would cause issues where Android wouldn't receive button press events for things like
volume rockers. So you couldn't change the audio ingame, even if that button isn't bound to an input.

Now we return to Android if we've handled that button press, so it works fine.
2015-02-24 05:38:16 -06:00
Ryan Houdek 4e5d115bf0 Merge pull request #2114 from Tilka/fix_warnings
Fix some warnings
2015-02-24 05:35:49 -06:00
Tillmann Karras e67145713c Fix some -Wmissing-declarations warnings 2015-02-24 12:32:55 +01:00
Ryan Houdek 28e55d29f2 Fix a crash with fastmem disabled.
When the core is busy shutting down only uninstall the exception handler if fastmem is actually enabled.
We only install when fastmem is enabled, so only uninstall when it is as well.

Fixes a crash I was getting on ARMv7.
2015-02-24 04:52:37 -06:00
Tillmann Karras e2fec13ab6 Fix some -Wsign-compare warnings 2015-02-24 10:29:59 +01:00
Tillmann Karras 7056f6308a Fix a -Wunused-result warning 2015-02-24 10:29:59 +01:00
skidau bd0d5c1a22 Merge pull request #2102 from magumagu/ipchle-net-regression
Fix crash in Wii games using IPCHLE networking.
2015-02-24 13:14:48 +11:00
skidau 69381580f3 Merge pull request #2096 from lioncash/wx
DolphinWX: Remove unnecessary Windows-specific code in Frame.cpp
2015-02-24 13:11:39 +11:00
skidau bf61abf22b Merge pull request #2093 from magumagu/gc-bios-hack
Hack around our terrible GC BIOS emulation.
2015-02-24 13:11:25 +11:00
Tillmann Karras daf4aa0947 Common: move _M_SSE macro to Intrinsics.h 2015-02-24 01:06:25 +01:00
Tillmann Karras 9aa463c590 Common: move _mm_shuffle_epi8 to Intrinsics.h 2015-02-24 01:06:24 +01:00
Tillmann Karras f298f00e1b Clean up the intrinsics #ifdef mess 2015-02-24 01:02:36 +01:00
Tillmann Karras 56795efd42 Common: add single header for all intrinsics 2015-02-24 01:01:10 +01:00
Ryan Houdek 7a61bd5519 Merge pull request #2107 from Sonicadvance1/aarch64_fix_lha
[AArch64] Fix fastmem lha/lhax.
2015-02-23 15:08:42 -06:00
magumagu b9157c5a36 Merge pull request #2090 from magumagu/jit-gatherpipe-address
Refactor gather-pipe address checking.
2015-02-23 12:46:04 -08:00
magumagu 0ff7e20829 Merge pull request #2109 from lioncash/cr
Interpreter: Fix Helper_UpdateCR1
2015-02-23 11:23:21 -08:00
Markus Wick e0b0ef3868 Revert "High quality resampler" 2015-02-23 18:43:13 +01:00
Lioncash d50e7562af DolphinWX: Make RAM watch strings translateable 2015-02-23 11:02:42 -05:00
Lioncash 6fe59d82e1 Interpreter: Fix Helper_UpdateCR1
This previously shifted off-by-one
2015-02-23 06:56:01 -05:00
Ryan Houdek 859eeb6d5b [AArch64] Fix fastmem lha/lhax.
When the fastmem loadstore would fail, we would disassemble a few instructions to determine if lhbrx or lhz*
This was failing since I was checking the REV16 instruction that appears after the LDRH. Fixed it to make sure it was checking the correct instruction
which is SXTH.

Fixes an issue where homebrew wouldn't load with fastmem enabled.
2015-02-22 22:58:10 -06:00
magumagu fca5e176b3 Correctly set up MSR and BAT registers for ELF loading. 2015-02-22 20:51:50 -08:00
skidau 593563e16c Merge pull request #2087 from Armada651/epsilon-3d
VertexShaderManager: Turn the epsilon hack back on for 3D Vision.
2015-02-23 13:12:55 +11:00
skidau f8e51a1a26 Merge pull request #2050 from Tilka/reset_vertex_loader_stats
VertexLoaderManager: reset stats properly
2015-02-23 13:10:38 +11:00
skidau 1c2977442f Merge pull request #1992 from degasus/asyncevents
Asyncevents
2015-02-23 13:08:39 +11:00
skidau 57e9d59704 Merge pull request #1978 from lioncash/dspwind
DSPDebugWindow: Fix issue where the DSPLLE window would hang Dolphin on OSX
2015-02-23 12:57:27 +11:00
skidau 793abccb5e Merge pull request #1942 from Buddybenj/No-Intro
Replace Country Names With No-Intro Names
2015-02-23 12:56:28 +11:00
skidau 81eb9bdf16 Merge pull request #1629 from kamiyo/FIR-resampler
High quality resampler
2015-02-23 12:53:33 +11:00
Lioncash 1a913138d5 Interpreter: Uncomment code related to cmp and cmpl
This is actually correct. Also cmpli has this uncommented as well.
2015-02-22 19:07:09 -05:00
magumagu b5020b1675 Fix crash in Wii games using IPCHLE networking.
Address passed from IOS to PowerPC should be in the 0x90000000 range, not
0x10000000.

Issue 8264.
2015-02-22 14:07:05 -08:00
Ryan Houdek 3ab006b8d1 Merge pull request #2099 from Tilka/vtune
Fix VTune static library dependencies
2015-02-22 15:19:56 -06:00
magumagu b9f77a5c0f Merge pull request #1808 from Stevoisiak/additionalToolTips(Again)
Added more settings tooltips
2015-02-22 12:05:34 -08:00
Tillmann Karras 387777ed72 Fix VTune static library dependencies
Since libcommon.a is also the last library to be linked, this has the
totally hacky but useful side-effect that it doesn't require people to
modify CMake files for temporarily adding VTune code to other Dolphin
libraries.
2015-02-22 20:49:30 +01:00
Dolphin Bot 03ffab4249 Merge pull request #2098 from Tilka/fix_warning
Fix -Wmissing-variable-declarations warning
2015-02-22 20:16:11 +01:00
Tillmann Karras 8d19f62b69 Fix -Wmissing-variable-declarations warning 2015-02-22 20:08:28 +01:00
magumagu 917a900ccb Refactor gather-pipe address checking.
The implementation of IsOptimizableGatherPipeWrite is extremely simple
now, but it will get a bit more complicated with dynamic-bat.
2015-02-22 11:01:42 -08:00
magumagu 18ada7a0f5 Merge pull request #2033 from magumagu/mmio-fix-addresses
Fix the addresses of MMIO registers.
2015-02-22 10:58:25 -08:00
Fiora c54a8c54fb Merge pull request #1994 from Tilka/vtune
JitRegister: fix VTune integration
2015-02-22 07:58:12 -08:00
Lioncash d48ad19b8d DolphinWX: Remove unnecessary Windows-specific code in Frame.cpp
wx's version of SetFocus internally calls the Windows one.
2015-02-22 04:09:37 -05:00
degasus b35fa222f5 VideoCommon: perf querys by async events 2015-02-22 08:41:15 +01:00
degasus edbd402101 VideoCommon: bbox by async events 2015-02-22 08:41:15 +01:00
degasus ad7264da7d VideoCommon: implement swap requests in the full async way 2015-02-22 08:41:15 +01:00
degasus bc248f8941 VideoCommon: use a new async event system for efb access 2015-02-22 08:41:15 +01:00
Lioncash bfa5dcc891 Interpreter: Set the FPCC bits correctly for ordered/unordered FP compares
Setting the whole FPRF is slightly incorrect, this should only modify the FPCC bits; the class bit should be preserved.
2015-02-22 02:19:13 -05:00
magumagu 97b7f26d58 Hack around our terrible GC BIOS emulation.
Fixes a crash launching F-Zero GX.
2015-02-21 20:07:54 -08:00
Lioncash 09319a1e11 Interpreter: Rearrange ordered/unordered compares
Comparing floating point numbers with == can trigger warnings (and have static analysis tools complain). So we make it the else case.
This also more closely resembles the Gekko manual.
2015-02-21 22:26:23 -05:00
Lioncash 70e1121b29 Interpreter_Tables: srawix only uses rS, not rS and rB.
srawix's input/output is defined as rA, rS, SH, where SH is an immediate for the shift amount.
2015-02-21 21:20:43 -05:00
Lioncash 7c244766dc Interpreter: Use correct destination for psq_l, psq_lx, psq_lu, and psq_lux.
Gekko manual defines these as storing to rD, not rS.

Also removed FL_OUT_FLOAT_S, since nothing uses it now.
2015-02-21 21:20:41 -05:00
Lioncash 7bc2830520 Interpreter: Use Helper_Get_EA_X() for eciwx and ecowx
Cleans up the functions a little.
2015-02-21 21:20:40 -05:00
Lioncash dc6cc909e5 Interpreter: Use FL_IN_A0B for ecowx
ecowx uses the value zero if rA is zero.
2015-02-21 21:20:39 -05:00
Lioncash a8199a1070 Interpreter: Use correct destination for eciwx
Gekko manual defines the destination as rD. Also, if rA is zero, the
value zero is used, so FL_IN_AB is changed to FL_IN_A0B.
2015-02-21 21:20:38 -05:00
Pierre Bourdon 860c889454 Merge pull request #2076 from tanishalfelven/optimize-IsCPUThread
IsCPUThread() Speed Up
2015-02-22 00:54:55 +01:00
Tanis 568f0dca78 In hope of speeding up ```IsCPUThread()``` got rid of id checking and instead implemented a TLS boolean...
Made initialization of s_tls_is_cpu_key threadsafe
2015-02-21 17:52:49 -06:00
Ryan Houdek e9ac4d53a6 Implement full occlusion queries for the Nexus 9.
GLES3 spec is worthless and only returns a boolean result for occlusion queries. This is fine for simple cellular games but we need more than a
boolean result.
Thankfully Nvidia exposes GL_NV_occlusion_queries under a OpenGL ES extension, which allows us to get full samples rendered.
The only device this change affects is the Nexus 9, since it is an Nvidia K1 crippled to only support OpenGL ES.
No other OpenGL ES device that I know of supports this extension.
2015-02-21 17:24:36 -06:00
Ryan Houdek a5b4ac6faa [GLExtensions] Add support for NV_occlusion_query_samples. 2015-02-21 17:24:32 -06:00
magumagu 9e29154b08 Merge pull request #1988 from magumagu/fast-checkgatherpipe
Use faster CheckGatherPipe from JIT.
2015-02-21 15:07:59 -08:00
Pierre Bourdon e8f37bc3fe Merge pull request #2091 from magumagu/lmw-saved-regs
Fix registersInUse in Jit64::lmw.
2015-02-21 18:42:17 +01:00
magumagu 018a7f1ec9 Fix registersInUse in Jit64::lmw.
Doesn't fix any known issue at the moment, but I ran into this bug with
dynamic-bat.
2015-02-21 09:31:20 -08:00
Dolphin Bot c3edab8f54 Merge pull request #2082 from Armada651/resolve-depth
D3D: Use the correct format when resolving the EFB depth texture.
2015-02-21 15:50:20 +01:00
Markus Wick 95c48b2be7 Merge pull request #2018 from JosJuice/gameini-region-wildcard
Support game INIs that match all regions
2015-02-21 15:47:57 +01:00
Jules Blok ff4127cf50 VertexShaderManager: Turn the epsilon hack back on for 3D Vision.
The bug is fixed in version 347.52 of the drivers.
2015-02-21 12:09:49 +01:00
Jules Blok 139ad3b2b9 TextureConversionShader: Use a Texture2DArray to match the shader resource view. 2015-02-21 11:50:20 +01:00
Jules Blok c180174e4a D3D: Use the correct format when resolving the EFB depth texture. 2015-02-21 11:50:19 +01:00
Markus Wick 6bbf774507 Merge pull request #2075 from magumagu/titantron-fix
Partially fix WWE12 titantron videos.
2015-02-21 10:09:47 +01:00
Scott Mansell 355be1719e Fix regression with directx when zfreeze=true and ztest=false. 2015-02-21 10:52:29 +13:00
Pierre Bourdon 8b095a0178 Merge pull request #2059 from magumagu/palette-convert
Decode EFB copies used as paletted textures.
2015-02-20 01:11:25 +01:00
magumagu 074397c12d Explicitly set up AllocateTexture configuration for palette conversion.
No functional change.
2015-02-19 15:57:05 -08:00
magumagu 0360e01eaf Merge pull request #2040 from magumagu/gc-memmap
Try to fix our memory map to match the GameCube.
2015-02-19 15:44:36 -08:00
magumagu ddc815dd7a Remove TextureAddress struct. 2015-02-19 15:36:32 -08:00
magumagu c0a4760f0e Decode EFB copies used as paletted textures.
A number of games make an EFB copy in I4/I8 format, then use it as a
texture in C4/C8 format.  Detect when this happens, and decode the copy on
the GPU using the specified palette.

This has a few advantages: it allows using EFB2Tex for a few more games,
it, it preserves the resolution of scaled EFB copies, and it's probably a
bit faster.

D3D only at the moment, but porting to OpenGL should be straightforward..
2015-02-19 15:09:27 -08:00
magumagu 314b241220 Try to fix our memory map to match the GameCube.
This basically just restores the RAM mirroring that existed before PR1856
(address translation).
2015-02-19 15:02:51 -08:00
Pierre Bourdon fbbbad98e9 Merge pull request #2079 from lioncash/tables
PowerPC: Minor cleanups.
2015-02-19 22:51:34 +01:00
magumagu d0c675af83 Merge pull request #2080 from lioncash/interp
Interpreter: Remove unnecessary prototypes and includes
2015-02-19 11:19:20 -08:00
Lioncash 8401b5a1f2 Interpreter: Remove unnecessary prototypes and includes 2015-02-19 13:20:24 -05:00
Lioncash a60d3306b1 PowerPC: Get rid of magic numbers related to interp/JIT initialization. 2015-02-19 12:16:53 -05:00
Lioncash d32359c915 PPCTables: Simplify UsesFPU
We can just retrieve the op info and check if the FPU flag is present
2015-02-19 12:16:44 -05:00
Pierre Bourdon 6a14300c9c Merge pull request #2078 from lioncash/fwd
PPCTables: Remove an unnecessary forward declaration
2015-02-19 15:51:15 +01:00
Lioncash e4df6026c4 PPCTables: Remove an unnecessary forward declaration
This class name isn't used anymore.
2015-02-19 09:08:00 -05:00
Lioncash 0fc3166b2f PPCTables: Correct some flag descriptions 2015-02-19 08:56:18 -05:00
magumagu 4cdf9f543f Partially fix WWE12 titantron videos.
The obvious question here is, why does it matter if we round or truncate?
The key is that GC/Wii does fixed-point interpolation, where PC GPUs do
floating-point interpolation. Discarding fractional bits makes the conversion
from floating-point to fixed point give more consistent results.

I'm not confident this is really the right fix, or that my explanation is
completely correct; ideally, we don't want to depend on floating-point
interpolation at all.
2015-02-18 19:41:00 -08:00
Lioncash c8c61041ba Merge pull request #2007 from lioncash/si
Core: Move several files into the correct VS directory filter.
2015-02-18 21:33:39 -05:00
kamiyo e864521182 High Quality Resampler, using FIR filter
For more information:
https://docs.google.com/document/d/1tBEgsJh7QiwNwepXI0eobfK3U8LkJButSyeuFt1degM/edit?usp=sharing

removed: SSE includes (not used)

added: 16bit -> float -> 16bit functions
added: linear interpolator and high-quality (windowed-sinc) interpolator functions (including Resampler class)
added: dithering

changed: renamed variables and reformatted a few things to fit with style guide (braces, #include->const)
changed: use s16, u16, s32, u32 etc
changed: store samples and do all computations as floats
changed: volume from 0 - 255
2015-02-18 21:13:45 -05:00
mimimi085181 2f8e0c9bb9 Allow multiple texture cache entries for textures at the same address
This is the same trick which is used for Metroid's fonts/texts, but for all textures. If 2 different textures at the same address are loaded during the same frame, create a 2nd entry instead of overwriting the existing one. If the entry was overwritten in this case, there wouldn't be any caching, which results in a big performance drop.

The restriction to textures, which are loaded during the same frame, prevents creating lots of textures when textures are used in the regular way. This restriction is new. Overwriting textures, instead of creating new ones is faster, if the old ones are unlikely to be used again.

Since this would break efb copies, don't do it for efb copies.

Castlevania 3 goes from 80 fps to 115 fps for me.

There might be games that need a higher texture cache accuracy with this, but those games should also see a performance boost from this PR.

Some games, which use paletted textures, which are not efb copies, might be faster now. And also not require a higher texture cache accuracy anymore. (similar sitation as PR https://github.com/dolphin-emu/dolphin/pull/1916)
2015-02-18 23:54:40 +01:00
Ryan Houdek 19f8524304 Fix mulli's flags in the instruction tables.
It doesn't set RC, so this flag is incorrect.
2015-02-18 16:26:12 -06:00
Shawn Hoffman f91e8e9423 make libusb vcxproj use standard dolphin template and don't compile strerror.c. 2015-02-18 13:29:39 -08:00
Markus Wick 86226cb2b9 Merge pull request #1979 from Mullin/head
Use clock_gettime instead of gettimeofday, it's more efficiency on low power system
2015-02-18 21:54:16 +01:00
Mullin 797fc14414 Use clock_gettime instead of gettimeofday, it's more effiency on low power system
Add def for mac(They don't support clock_gettime)

Fix my mistake

Fix my mistake 2
2015-02-18 21:44:58 +01:00
Pierre Bourdon 8cc6e5cff9 Merge pull request #1854 from JosJuice/read-disc-after-delay
DVDInterface: Read disc after delay, not before
2015-02-18 20:35:07 +00:00
Pierre Bourdon 042fcbcbca Merge pull request #2067 from magumagu/cputhread-assert
Disable an IsCPUThread() assert in Release builds.
2015-02-18 16:22:23 +00:00
Pierre Bourdon 96041a5aca Merge pull request #2068 from mimimi085181/hash-fix
GetCRC32: Fix the hash for the last byte(s)
2015-02-18 13:43:06 +00:00
mimimi085181 f6c9b8243e GetCRC32: Fix the hash for the last byte(s)
This fixes issue 8227
https://code.google.com/p/dolphin-emu/issues/detail?id=8227
2015-02-18 14:26:28 +01:00
Ryan Houdek ef2fba2e85 Merge pull request #2070 from lioncash/unused
PowerPC: Remove unused enum values
2015-02-17 23:42:46 -06:00