Commit Graph

17487 Commits

Author SHA1 Message Date
Lioncash 1df1ba55bb VideoCommon: Convert some DataReader includes into forward declarations
Gets rid of some indirect inclusions in cpp files.
Also this will reduce the amount of rebuilt files if
changes occur in the DataReader header.
2016-01-31 15:19:20 -05:00
sigmabeta 7542eafd58 Fix capitalization on "GameCube" strings 2016-01-31 10:17:30 -05:00
sigmabeta 93056e3988 Change SettingsActivity label to "Settings" instead of "CPU Settings" 2016-01-31 10:06:00 -05:00
Stenzek a870253cd6 Common: Use C++ random generator for generating MAC addresses 2016-01-31 23:52:47 +10:00
Stenzek 98e5270b3c EXI: Use unique_ptr in CEXIEthernet 2016-01-31 23:52:43 +10:00
Stenzek e75d37ec36 EXI: Fix crash when loading save states with BBA activated 2016-01-31 23:52:40 +10:00
Stenzek ccc70a98f3 EXI: Refactor BBA-TAP interface for Windows to use a read thread
This also has the added benefit of not crashing under most circumstances.
Includes a few other changes, including replacing the atomic<bool> with a
Flag, as well as adding a flag for indicating read thread shutdown.
2016-01-31 23:52:33 +10:00
Ryan Houdek 31523b7e80 Merge pull request #3572 from Sonicadvance1/egl_support_headless
Egl support headless
2016-01-30 11:15:07 -05:00
Ryan Houdek 8e8e6f3234 Merge pull request #3581 from sigmabeta/android-input-config
[Android] Implement Gamecube Input setting screen
2016-01-30 10:55:11 -05:00
sigmabeta 9215878868 Add some stability fixes, though probably not enough 2016-01-30 10:24:44 -05:00
sigmabeta bc03bbccf1 Make necessary modifications to Java_GCAdapter for permissions request 2016-01-30 10:10:15 -05:00
JosJuice 6a75212e7a DolphinWX: Only show Wii compression warning once
When compressing multiple Wii games, the warning used to be showed
once for each game. Now it only appears once at the beginning.
2016-01-30 13:33:03 +01:00
JosJuice bd326ace5c DolphinWX: Replace GetSelectedISO hack for multiple selections 2016-01-30 13:32:57 +01:00
Pierre Bourdon c2c1f839dd Merge pull request #3574 from palxex/master
fix El Capitan WiimoteReal pairing problem and refresh crash problem
2016-01-30 13:17:08 +01:00
Pierre Bourdon 50221088a9 Merge pull request #3576 from lioncash/boot
BootManager: Minor changes
2016-01-30 13:14:52 +01:00
Pierre Bourdon cf20ff48aa Merge pull request #3480 from phire/memory_stride_too_small
Avoid the "Memory stride too small" assert
2016-01-30 13:11:07 +01:00
Pierre Bourdon 9da8593cf4 Merge pull request #3569 from mathieui/netplay-gcpad-position
[netplay] Fix a regression
2016-01-30 11:54:31 +01:00
Pierre Bourdon ff5d6887d1 Merge pull request #3575 from mathieui/netplay-server-cleanup
Small netplay server cleanup & fix
2016-01-30 11:51:50 +01:00
sigmabeta 6115d39a7a Implement Gamecube Input setting screen 2016-01-29 23:33:06 -05:00
Ryan Houdek f1ca95eec7 Merge pull request #3553 from Sonicadvance1/more_android_gc_adapter
Implement requesting permission for using the GC Wii U Adapter.
2016-01-29 23:12:37 -05:00
Ryan Houdek 5edc7705fe Merge pull request #3550 from Sonicadvance1/egl_support_core_profile
Support the OpenGL core profile in EGL.
2016-01-29 19:37:24 -05:00
Ryan Houdek c50efb17e5 Merge pull request #3546 from Sonicadvance1/egl_shared_context
Implement shared contexts in the EGL context.
2016-01-29 19:33:52 -05:00
Ryan Houdek ea3a457091 Merge pull request #3573 from degasus/fifoplayer
Fifoplayer: Fix dual core
2016-01-29 16:39:32 -05:00
Ryan Houdek e086928806 Merge pull request #3579 from Sonicadvance1/GLExtesions_gl_4_2
Implement support for GL 4.2 in GLExtensions
2016-01-28 19:25:17 -05:00
Tillmann Karras bf643c98aa Fix warnings 2016-01-28 23:54:11 +00:00
Ryan Houdek e1f21602fd Merge pull request #3426 from Sonicadvance1/ES_fix_framedump
Add support for framedumping to OpenGL ES.
2016-01-28 18:24:32 -05:00
mathieui c7750b287d netplay: default the local pad to a gc controller
if the configured local pad is none, it will make dolphin behave
incorrectly (due to the game expecting inputs from the device while it
doesn’t exist).
2016-01-28 20:24:18 +01:00
Pal Lockheart ea44e0e3ba fix El Capitan WiimoteReal pairing problem and refresh crash problem 2016-01-28 14:29:44 +08:00
mathieui 4529930f91 gcadapter: fix an incorrect mapping for non-local devices
Remote devices would always enter an error path and get disconnected
from the gamecube, breaking netplay in the process.

Culprit is still InGamePadToLocalPad
2016-01-28 02:46:58 +01:00
mathieui b9b4a0c530 gcadapter: set the konga setting properly
if it was used in netplay, it would read memory out of bounds
(due to the mapping method returning 4 if the device was remote) which
was 0 more often than not, causing the device in this position to be a konga.

(which may or not be the gcadapter due to the swap between local and
ingame controllers)
2016-01-28 02:39:55 +01:00
Mathew Maidment 437b3db88e Merge pull request #3514 from lioncash/mixer
Mixer: Minor changes
2016-01-27 19:19:42 -05:00
Ryan Houdek b846ec084e Implement requesting permission for using the GC Wii U Adapter. 2016-01-27 15:08:45 -06:00
Ryan Houdek 628e9bad92 Support a headless EGL option.
This is a new option to support completely headless running of Dolphin without X11 on systems that can properly support it.
2016-01-27 15:04:14 -06:00
Ryan Houdek 184a7a3e0d Include the EGL defines we need for KHR_create_context ourselves.
This is because Google decided it was in their best interest to update eglext.h for android-21/arch-arm only and completely neglect all the other
architectures.
Sucks to suck.
2016-01-27 14:54:44 -06:00
Ryan Houdek 34d0e7835b Support the OpenGL core profile in EGL.
This should make our Mesa EGL users happy.
2016-01-27 14:54:32 -06:00
Ryan Houdek 921c7139c5 Implement support for GL 4.2 in GLExtensions 2016-01-27 13:58:34 -06:00
Ryan Houdek aed693eded Implement shared contexts in the EGL context.
This is being implemented here first under EGL since the infrastructure is already in place for this due to the Android code requiring some bits.
The rest of the interfaces will come in a little bit.

This will be required for threaded shader compiling in the near future.
2016-01-27 13:15:02 -06:00
degasus 231daa2da1 Thread: Limit thread name to 15 bytes on linux. 2016-01-27 07:23:17 +01:00
degasus a4a2928905 FifoPlayer: Sleep while high watermark is set. 2016-01-27 07:23:17 +01:00
Lioncash d7d0673900 BootManager: Vertically align where sensible to do so 2016-01-26 20:54:22 -05:00
Lioncash 0c920f175f BootManager: Simplify SaveConfig
Also std::array-ifies C-array members of ConfigCache
2016-01-26 20:52:57 -05:00
mathieui aaf2be2044 bootmanager: update the supposed-end-of-enum
fixes a bug where gcadapter would fuck up netplay
2016-01-27 01:43:38 +01:00
mathieui 24cb6487d4 [netplay] Fix a regression
Introduced in 6e13496d8, pads would get assigned to their netplay
position, which breaks assumptions. With this behavior, the SI devices
should be mapped properly.
2016-01-27 01:43:31 +01:00
mathieui 8ce9191948 NetPlayServer: Make SendAsyncToClients use an unique_ptr 2016-01-27 01:34:03 +01:00
mathieui 34ae512d91 NetPlayServer: Make pad data unpacking nicer to read 2016-01-27 01:34:03 +01:00
mathieui 1c808a2835 NetPlayServer: Possible out-of-bounds access on invalid input
if a pad or wiimote number was outside bounds (e.g. 42353543232),
it would still have been read from the array, which could lead to
inappropriate consequences, like a segfault.
2016-01-27 01:33:50 +01:00
mathieui 8e1be37feb NetPlayServer: in-class initialization 2016-01-27 01:20:44 +01:00
degasus 159d83c5a9 FifoPlayer: Use more enums. 2016-01-26 19:19:21 +01:00
Jeffrey Pfau 1f1b127b69 VideoBackend: Remove extraneous shifts from indirect texture lookups 2016-01-25 19:27:26 -08:00
sigmabeta 28bcd2636b Fix CPU Core selection on x86-64 devices (really, just the Android emulator) 2016-01-25 09:28:57 -05:00
sigmabeta 96e7f774ae Fix rotations in Settings screen breaking everything 2016-01-25 09:28:57 -05:00
Lioncash 488e7bd46a Fifo: Get rid of undefined global
This declaration doesn't have a matching implementation
so it can be removed entirely.
2016-01-25 05:24:03 -05:00
Lioncash 32ce2be2bf Fifo: Make g_use_deterministic_gpu_thread a TU-local variable 2016-01-25 05:24:03 -05:00
Lioncash 5ebd1e215b Fifo: Make g_bSkipCurrentFrame a TU-local variable
This is only ever queried, making it a global isn't necessary.
2016-01-25 05:23:14 -05:00
Mathew Maidment 48e7e5b72e Merge pull request #3567 from lioncash/netplay
NetPlayClient: Minor changes
2016-01-25 05:13:54 -05:00
Mathew Maidment ee0fbdf087 Merge pull request #3558 from lioncash/dvd-global
DVDInterface: Reduce a global variable to translation unit scope
2016-01-25 05:13:08 -05:00
Lioncash c434b5b3a9 NetPlayClient: Use std::array instead of C arrays for buffers 2016-01-25 04:57:21 -05:00
Lioncash 7304c863a6 NetPlayClient: Deduplicate code for player list retrieval 2016-01-25 04:57:20 -05:00
Lioncash e6ad76fa70 NetPlayClient: Extract control mapping checking to its own function 2016-01-25 04:57:19 -05:00
Lioncash 8588c8fd31 NetPlayClient: Make SendAsync take a unique_ptr as a parameter 2016-01-25 04:57:18 -05:00
Lioncash c2deb337aa NetPlayClient: In-class initialize variables where possible 2016-01-25 04:57:17 -05:00
Lioncash 1d8ff504a5 NetPlayClient: Make m_state private
Also turns it into an enum class.
2016-01-25 04:57:16 -05:00
Lioncash 102672a797 NetPlayClient: Make is_connected private
This is only queried, there's no need to expose it for writing.
Even if it was written to, a data member shouldn't be part of
your public API unless its part of a dumb object or trivial struct.
2016-01-25 04:57:04 -05:00
Pierre Bourdon 0bd649248f Merge pull request #3530 from degasus/syncgpufix
Fifo: Fix SyncGPU.
2016-01-25 10:46:08 +01:00
Pierre Bourdon 7b4e965465 Merge pull request #3555 from mathieui/gcadapter_payload
Fix a bug in GCAdapter
2016-01-25 10:42:28 +01:00
Lioncash d9f87b8030 NetPlayClient: Remove unnecessary includes
Replace with needed ones
2016-01-24 21:46:49 -05:00
Mathew Maidment c822afb2cb Merge pull request #3566 from sigmabeta/android-settings-bugfix
[Android] Settings screen bugfixes
2016-01-24 19:38:56 -05:00
sigmabeta fb04622039 Fix bugs in Setting screen & add a way to exit without saving 2016-01-24 19:31:34 -05:00
Lioncash 90f2f48ef6 DVDInterface: Use correct prefix for static local variables 2016-01-24 17:24:33 -05:00
Mathew Maidment bad7242c63 Merge pull request #3559 from lioncash/tcache
TextureCacheBase: Simplify init/comparison of TCacheEntryConfig
2016-01-24 17:18:08 -05:00
Mathew Maidment e9713e19d7 Merge pull request #3561 from lioncash/render
RenderBase: Get rid of an undefined global extern
2016-01-24 17:17:48 -05:00
Mathew Maidment b451b722fb Merge pull request #3562 from lioncash/cpmem
CPMemory: Remove unnecessary extern specifiers from functions
2016-01-24 17:17:31 -05:00
mathieui 07caff35ad Fix a bug in GCAdapter
where the payload size would end up being crazy values on the other
thread. Mirroring the similar commit made for the android side:

2833685fbf
2016-01-24 21:55:20 +01:00
sigmabeta cf7f5d078b Fix accessing video settings on Android TV 2016-01-24 10:04:06 -05:00
degasus 4295751662 Fifo: More comments for SyncGPU functions. 2016-01-24 11:06:01 +01:00
degasus cf4478dc92 Fifo: Fix SyncGPU.
CBoot::BootUp() did call CoreTiming::Advance which itself blocks on the GPU,
but the GPU thread wasn't started already. This commit moves the SyncGPU
initialization into the Fifo.cpp file and call it after BootUp().
2016-01-24 11:06:01 +01:00
Lioncash e187c55bdd OpcodeDecoder: Add namespace 2016-01-24 01:31:36 -05:00
Lioncash 758cd796a7 CPMemory: Remove unnecessary extern specifiers from functions
These are defined in CPMemory.cpp, as expected. There's no need for
extern
2016-01-24 01:17:43 -05:00
Lioncash 508c521f10 RenderBase: Get rid of an undefined global extern
This doesn't have an implementation, so into
the trash it goes.
2016-01-24 01:07:24 -05:00
Lioncash 59d5935067 TextureCacheBase: Simplify init/comparison of TCacheEntryConfig 2016-01-23 22:57:05 -05:00
Lioncash a2dc22f016 DVDInterface: Make a global a local variable 2016-01-23 18:40:55 -05:00
sigmabeta 04974835d6 Add fragment transition animations to the Settings UI screen 2016-01-23 17:00:54 -05:00
Ryan Houdek 6e13496d8d Merge pull request #3554 from mathieui/netplay_devices
[netplay] Use the local type of each SI device
2016-01-23 16:03:25 -05:00
Ryan Houdek 1c3c36f285 Merge pull request #3533 from JosJuice/2x-resources
DolphinWX: Support 2x images for all resources
2016-01-23 12:52:05 -05:00
Ryan Houdek a62a9b8161 Fix a bug in GCAdapter_Android where the payload size would end up being crazy values on the opposite thread 2016-01-23 11:40:33 -06:00
sigmabeta 2190496ce8 Fix special case for XFB & update EFB to match desktop 2016-01-23 12:28:51 -05:00
sigmabeta cee84d8e90 Cleanup and documentation 2016-01-23 12:28:51 -05:00
sigmabeta d90dce6d12 Implement video settings + support for missing files / settings 2016-01-23 12:28:51 -05:00
sigmabeta c8e4008b83 Implement Seekbar dialog and SingleChoice dialog 2016-01-23 12:28:50 -05:00
sigmabeta ce8a3d9bfb Implement basic framework for new Settings UI 2016-01-23 12:28:50 -05:00
sigmabeta e49f9b10a8 Implement Java-based Config file read/save 2016-01-23 12:28:50 -05:00
mathieui 5e709f3d72 [netplay] Use the local type of each SI device
Instead of using SI_GCcontroller which would make it not work with gc
adapters, bongos, and other stuff.

Trying to fix issue #9263
2016-01-23 17:29:07 +01:00
Mathew Maidment 3f5f52342a Merge pull request #3424 from spxtr/DQt2
DQt2: Add a message if the game list is empty
2016-01-22 22:16:56 -05:00
Ryan Houdek ae4c7661d6 Merge pull request #3212 from mickdermack/pr-recalc-flags
JIT x64: Recalculate flags after add/sub
2016-01-22 12:45:52 -05:00
Ryan Houdek ba8dc2cef3 Merge pull request #3517 from sigmabeta/android-animation-refactor
[Android] Refactor animations
2016-01-22 06:24:57 -05:00
sigmabeta 11fb26afa1 Fix android builds 2016-01-21 22:55:51 -05:00
Lioncash fdf6fb47e0 VideoInterface: specify internal linkage on local variable 2016-01-21 19:25:21 -05:00
mathieui 4b06e92731 A few more asterisks, mostly casts 2016-01-21 22:20:22 +01:00
mathieui f15ffda5a7 Correct ampersands as well 2016-01-21 21:27:56 +01:00
mathieui 3e283ea9f1 More asterisks 2016-01-21 21:16:51 +01:00
mathieui 78aa398e7c Common: asterisks go against the type name
not the variable name
2016-01-21 20:46:25 +01:00
Ryan Houdek 7c3e4b34f3 Merge pull request #3541 from Sonicadvance1/fix_netplay_option_sending
Stops netplay clients from failing to send settings on game start
2016-01-21 08:51:11 -05:00
Ryan Houdek 1a20772ccd Stops netplay clients from failing to send settings on game start
Clients have no need to send their configuration information on start and the server straight out ignores it.
Not to mention it shouldn't try sending a struct as a null terminated string.

Cleans up how the server sends the configuration slightly as well.
2016-01-21 07:20:21 -06:00
Pierre Bourdon 912555968d Merge pull request #3538 from mathieui/pipes_locale
[Pipe input] Make the commands locale-unaware
2016-01-21 14:04:38 +01:00
Lioncash 82147f42af VideoInterface: Correct namespace indentation 2016-01-21 00:40:01 -05:00
Lioncash f45e1bff37 VideoInterface: Change a global into a translation-unit local variable 2016-01-21 00:39:24 -05:00
mathieui 64e2f93f38 [Pipe input] Make the commands locale-unaware
Setting axis values in an automated way should not be locale-aware as
strtod is.
2016-01-20 22:48:22 +01:00
Ryan Houdek 70aa012fef Allow multiple GC adapters on one PC to be used with multiple Dolphin instances.
Previously we would iterate through every GC adapter plugged in to the PC and steal ownership of it.
This causes issues all over the place in the implementation if this happens.
Break on the first adapter we can get access to.
2016-01-20 15:20:17 -06:00
Pierre Bourdon a14c07413f Merge pull request #3515 from booto/wii-region
DiscIO: Use specified Wii region for discs
2016-01-20 19:58:58 +01:00
Pierre Bourdon f98176f38a Merge pull request #3528 from Shugyousha/codedframedeprecated
AVIDump: coded_frame is deprecated
2016-01-20 19:40:31 +01:00
Pierre Bourdon be1a9e4231 Merge pull request #3518 from Sonicadvance1/blacklist_sandy
Blacklist Sandy Bridge on mesa from using geometry shaders.
2016-01-20 19:32:56 +01:00
Ryan Houdek 3dda36bc5b Blacklist Sandy Bridge on mesa from using geometry shaders. 2016-01-20 12:13:21 -06:00
Pierre Bourdon e455ca4d58 Merge pull request #3535 from RisingFog/cya_savestate_memleak
Properly clear JIT cache on save states
2016-01-20 18:02:25 +01:00
Ryan Houdek c399eefdaa Strip the Android shared library file.
This cuts down the shared library size from ~11MB to ~5.5MB
2016-01-20 10:40:42 -06:00
Chris Burgener a7a744d33c Properly clear JIT cache on save states 2016-01-20 11:20:15 -05:00
Lioncash 42e9927bca VideoInterface: Fix code style/indentation 2016-01-19 20:16:18 -05:00
JosJuice 53acd063f9 DolphinWX: Support 2x images for all resources 2016-01-20 00:46:10 +01:00
Pierre Bourdon 991d3f6f96 Merge pull request #3525 from lioncash/ptr
DSPEmulator: Make CreateDSPEmulator return a unique_ptr
2016-01-19 23:54:58 +01:00
Silvan Jegen 59f72d3571 AVIDump: coded_frame is deprecated
Setting this is not required anymore as of commit 40cf1bbacc622 of
FFmpeg.

For users of older versions of the libavcodec library we guard the
change with an #if.
2016-01-19 20:38:21 +01:00
Ryan Houdek abb4c64c8f Fix the Exit hotkey.
We were constructing our wxCommandEvent incorrectly and using an ID as an event type instead of the ID.
Works properly now.
2016-01-19 02:04:45 -06:00
Ryan Houdek 7b9eeba168 Merge pull request #3479 from Sonicadvance1/fix_hotkeys
Fix hotkeys not reporting inputs.
2016-01-19 02:15:25 -05:00
Jules Blok 51a36f27e0 Merge pull request #3448 from Armada651/depth-epsilon
VertexShaderManager: Add an epsilon hack to the perspective projection.
2016-01-18 20:56:18 +01:00
Ryan Houdek f73961663e Fix a typo on the size passed in to the IPL descrambler.
Fixes issue #6081
2016-01-18 04:30:30 -06:00
Lioncash 2ff5923334 DSPEmulator: Make CreateDSPEmulator return a unique_ptr 2016-01-17 22:33:21 -05:00
Pierre Bourdon 24c228c6e9 Merge pull request #3523 from lioncash/video
VideoCommon: Header cleanup
2016-01-18 02:24:50 +01:00
Lioncash d9fec92628 VideoCommon: Header cleanup
Also remedies places where the video backends and core rely on things
being indirectly included.
2016-01-17 20:11:45 -05:00
Mathew Maidment a7f35eeb42 Merge pull request #3520 from Sonicadvance1/debugger_address_minsize
Fix debugger address lookup search control.
2016-01-16 11:34:24 -05:00
sigmabeta 85ef16a75a Create static helper methods for pixel-to-DP conversion 2016-01-16 10:33:59 -05:00
sigmabeta d677f9ce16 Externalize animation code into static methods 2016-01-16 10:33:59 -05:00
Ryan Houdek 6754326c6b Fix debugger address lookup search control.
The dumb wxAUI stuff isn't fully implemented for GTK. So the wxAuiToolBar doesn't properly deduce the size it needs to be when it contains a
wxSearchCtrl object.
Force the manager to set its minimum size to something reasonable.
2016-01-16 08:05:24 -06:00
Pierre Bourdon ea2765e010 Merge pull request #3509 from stenzek/negative-indirect
PixelShaderGen: Manually wrap negative indirect texture coordinates
2016-01-16 09:10:33 +01:00
shuffle2 799fce0b03 Merge pull request #3512 from jloehr/Fix-SCMRevGen
Fix SCMRevGen by running system native CScript
2016-01-15 23:56:31 -08:00
Lioncash c70487163f Mixer: Convert defines into concrete variables
Gets defines out of global scope.
2016-01-15 23:41:53 -05:00
Stenzek edebadc093 PixelShaderGen: Use bitwise AND for wrapping indirect texture coordinates
(x % y) is not defined in GLSL when sign(x) != sign(y).
This also has the added benefit of behaving the same as sampler wrapping modes, in regards to negative inputs.
2016-01-15 19:46:38 +10:00
booto 92278886b9 DiscIO: Use specified Wii region for discs 2016-01-15 03:35:10 +08:00
Lioncash fc6a2f490f Mixer: Directly initialize class members 2016-01-14 01:32:31 -05:00
Lioncash 531a3ed09a Mixer: Devirtualize
Nothing in the codebase inherits from this class
2016-01-14 01:32:24 -05:00
Mathew Maidment 87464d432b Merge pull request #3501 from rohit-n/build-pch
Fix building with PCH disabled.
2016-01-13 21:07:51 -05:00
Jules Blok 48b60649af Merge pull request #3495 from Armada651/d3d-float
D3D: Use a 32-bit floating point depth buffer.
2016-01-14 00:39:23 +01:00
Julian Löhr bb5cb7e365 Run system native CScript
Build Events are run in an 32 bit environment, therefore both program files environment strings resolve to the x86 program files folder on 64 Bit systems. If Git is 64 bit and installed into the x64 program files it can't be found by the script.
2016-01-14 00:37:11 +01:00
Jules Blok d54291f2e8 Merge pull request #3506 from stenzek/odd-mips
TextureCacheBase: Change CalculateLevelSize to match D3D/OGL sizes
2016-01-13 23:10:18 +01:00
Ryan Houdek 185d4dbc76 Merge pull request #3511 from Armada651/ini-default
IniFile: Initialize with default value if key does not exist.
2016-01-13 17:06:13 -05:00
Jules Blok 55cb6675cc IniFile: Initialize with default value if key does not exist. 2016-01-13 22:51:53 +01:00
Ryan Houdek 0271f05ab8 Merge pull request #3492 from sigmabeta/android-update-build-tools
[Android] Update build tools + support libraries
2016-01-13 16:35:52 -05:00
Pierre Bourdon 8ee93fc4fa Merge pull request #3507 from lioncash/header
HW: Header cleanup
2016-01-13 14:09:35 +01:00
Jules Blok a307883069 Merge pull request #3505 from Armada651/invert-conversion
TextureConversionShader: Also invert color encoders if they're used to encode depth.
2016-01-13 12:58:44 +01:00
Lioncash f2038b9e90 HW: Remove unnecessary header inclusions 2016-01-13 02:47:32 -05:00
Stenzek 1f3b90d70a TextureCacheBase: Change CalculateLevelSize to match D3D/OGL sizes
This was causing crashes/driver resets when odd-dimension textures were
being loaded, due to the size we were uploading being larger than the size
of the higher-level texture calculated by the runtime.
2016-01-13 12:54:38 +10:00
Pierre Bourdon 8f8134f5f4 Merge pull request #3504 from degasus/master
VideoBackend: Cleanup API a bit.
2016-01-13 01:27:24 +01:00
Mathew Maidment 82f3b94ad7 Merge pull request #3502 from lioncash/jit
Jit: Get rid of indirect includes
2016-01-12 19:22:04 -05:00
Jules Blok daabd88d69 TextureConversionShader: Also invert color encoders if they're used to encode depth. 2016-01-13 01:08:27 +01:00
degasus aa430c10d5 VideoState: Simplify dummy wrapper. 2016-01-12 23:28:26 +01:00
degasus 5f244abf28 Fifo: Create a "Fifo" namespace. 2016-01-12 23:28:26 +01:00
degasus c3481a576b VideoBackend: Remove simple wrapper functions. 2016-01-12 23:28:26 +01:00
degasus 0c92603fd5 Merge VideoBackendHardware into VideoBackend.
And rename it to VideoBackendBase because of conflicts within the backends itself.
2016-01-12 23:18:58 +01:00
sigmabeta 5fef956384 Prevent screenshot from showing on EmulationActivity rotation events 2016-01-12 10:33:00 -05:00
sigmabeta 5f43976b10 Create a static Log class to call into instead of the default android one 2016-01-12 09:54:19 -05:00
Lioncash f8fcceb99e Jit: Get rid of indirect includes 2016-01-12 00:12:36 -05:00
Jules Blok 8158d291aa D3D: Use the full depth range for Z pokes. 2016-01-11 22:27:41 +01:00
Jules Blok 129975233f D3D: Use a 32-bit floating point depth buffer. 2016-01-11 22:27:40 +01:00
Ryan Houdek bd31b1411b Merge pull request #3493 from sigmabeta/android-tv-screenshot-bugfix
[Android] Minor refactor + bugfix
2016-01-11 16:04:56 -05:00
Rohit Nirmal f9837d4447 Fix building with PCH disabled. 2016-01-11 13:20:47 -06:00
Pierre Bourdon 68094171f8 Merge pull request #3489 from lioncash/interp
Interpreter: Remove unnecessary includes from Interpreter.h
2016-01-11 12:43:25 +01:00
Pierre Bourdon 84c4f75aeb Merge pull request #3498 from lioncash/global
MemTools: Get rid of a global variable
2016-01-11 12:43:01 +01:00
Pierre Bourdon 7c6fe11348 Merge pull request #3499 from lioncash/hle
HLE: Move static variable out of header
2016-01-11 12:42:48 +01:00
Pierre Bourdon 6b25e52f57 Merge pull request #3500 from lioncash/arm
ARM Jit: Use std::tie for SlowmemHandler comparison
2016-01-11 12:42:24 +01:00
Lioncash 984fc7fb39 ARM Jit: Use std::tie for SlowmemHandler comparison 2016-01-11 04:28:16 -05:00
Lioncash 846c904624 HLE: Move static variable out of header
It's only ever used in the implementation file.
2016-01-11 04:11:12 -05:00
Lioncash b688a62143 MemTools: Get rid of a global variable 2016-01-11 03:24:03 -05:00
Ryan Houdek 78bb37b29f Merge pull request #3494 from Sonicadvance1/android_rotation
[Android] Add support for rotation and minimizing the application
2016-01-11 01:18:37 -05:00
Ryan Houdek 77cef0c7bf Merge pull request #3491 from sigmabeta/android-mvp-platform-fragment
[Android] Refactor PlatformGamesFragment to MVP architecture
2016-01-10 21:35:39 -05:00
Lioncash d9a16f7c9c Interpreter: Remove unnecessary includes from Interpreter.h
Previously the JIT code relied on indirect inclusion from this header,
this gets rid of that.
2016-01-10 18:51:12 -05:00
Ryan Houdek 5a549ef663 [Android] Add support for rotation and minimizing the application 2016-01-10 13:00:32 -06:00
Ryan Houdek 6448e5e5ee Add support to EGL to on the fly destroy the resulting surface 2016-01-10 12:28:05 -06:00
Ryan Houdek d17bcbb489 [Android] Pause and resume emulation using proper functions 2016-01-10 12:23:40 -06:00
sigmabeta db0a923083 Refresh screenshots in TvMainActivity after emulation complete 2016-01-10 13:18:20 -05:00
Pierre Bourdon e7fbd1fd50 Merge pull request #3439 from Armada651/depth-range
Render: Clamp the z range to the full range.
2016-01-10 19:09:57 +01:00
sigmabeta 7ff558886a Refactor EmulationActivity to be launched exclusively by its static launcher method 2016-01-10 13:00:01 -05:00
sigmabeta e34abd5739 Move TvMainActivity to ui.main package 2016-01-10 12:10:02 -05:00
Ryan Houdek 6e676cad66 Merge pull request #3488 from sigmabeta/android-mvp-main-activity
[Android] Refactor Tv/Main Activities to MVP architecture.
2016-01-10 11:40:37 -05:00
sigmabeta 13f336051f Update build tools + support libraries 2016-01-10 10:58:12 -05:00
sigmabeta df2f783a77 Refactor PlatformGamesFragment to MVP structure 2016-01-10 10:37:32 -05:00
sigmabeta a455305c23 Refactor AddDirectoryActivity and SettingsActivity to be launched exclusively via their own launcher method 2016-01-09 23:35:25 -05:00
Pierre Bourdon 20718305db Merge pull request #3484 from Sonicadvance1/mesa_disable_geometry_shaders
Disable geometry shaders on mesa AMD/ATI drivers.
2016-01-10 02:38:33 +01:00
sigmabeta 24efce4cea Refactor TvMainActivity to MVP architecture 2016-01-09 20:32:10 -05:00
sigmabeta 81657b6710 Refactor MainActivity to MVP architecture 2016-01-09 18:08:04 -05:00
Mathew Maidment ff0e1c3624 Merge pull request #3485 from booto/minor-comment-change
Comment change to reflect what code does
2016-01-09 17:18:59 -05:00
Mathew Maidment 9925d8a947 Merge pull request #3478 from mmastrac/ui_resize_fix
DolphinWX: fixes the window growing slightly on every re-launch
2016-01-09 17:15:35 -05:00
Matt Mastracci 560769ad5d DolphinWX: Fix window growing on every relaunch
Fixes part of #8993 -- the window would grow slightly on every re-launch
because the size was set before the UI was fully initialized.
2016-01-09 14:29:15 -07:00
Pierre Bourdon 98106b717a Merge pull request #3487 from Sonicadvance1/fix_typo
Fix typo in GLExtensions
2016-01-09 22:17:05 +01:00
Pierre Bourdon 529e04b009 Merge pull request #3486 from lioncash/jitinterface
JitInterface: Get rid of a global variable
2016-01-09 22:15:45 +01:00
Ryan Houdek b4eb5d8e3f Disable geometry shaders on mesa AMD/ATI drivers.
Causes misrenderings in games that uses them.
2016-01-09 15:09:37 -06:00
Ryan Houdek 8c37498230 Fix typo in GLExtensions
I had changed a variable name and forgot to update it everywhere.
Should fix Adreno devices.
2016-01-09 15:06:36 -06:00
Lioncash 986108715d JitInterface: Get rid of a global variable 2016-01-09 14:57:50 -05:00
booto b89c79b9f2 Comment change to reflect what code does 2016-01-10 02:42:56 +08:00
Dolphin Bot aa89516cf3 Merge pull request #3483 from sigmabeta/android-rx-db-access
[Android] Refactor DB read code to use RxJava
2016-01-09 19:14:56 +01:00
sigmabeta f58a8561f8 Refactor DB read code to use RxJava 2016-01-09 13:10:22 -05:00
Ryan Houdek 54e4d90b6d Fix assert on reset button hit.
Fixes issue 9225.
2016-01-09 11:23:22 -06:00
Pierre Bourdon 5db10d83f7 Merge pull request #3477 from mmastrac/memorywatcher_crash
MemoryWatcher: Initialize m_running
2016-01-09 16:11:42 +01:00
Tillmann Karras 98ea1f773a VideoSW: fix some warnings 2016-01-09 10:38:07 +01:00
Ryan Houdek 3f15aa4b57 Add support for framedumping to OpenGL ES. 2016-01-09 00:21:20 -06:00
Scott Mansell 74b772c3be Avoid the "Memory stride too small" assert
EFB2Tex still has no idea what to do with these weird textures so we
simply disable EFB2Tex when one is encountered.
2016-01-09 18:30:29 +13:00
Ryan Houdek 6862d7c7b2 Fix hotkeys not reporting inputs. 2016-01-08 23:25:36 -06:00
Pierre Bourdon dbe7e6634d Merge pull request #3412 from skidau/CheatSearch-Prev-Value
Added the ability to search on previous value in the Cheat Search.
2016-01-09 06:06:02 +01:00
Pierre Bourdon 39971ec039 Merge pull request #3472 from phire/TVs_dont_have_pixels
Rework the aspect ratio calculation (Fixes 240p mode)
2016-01-09 04:27:16 +01:00
Scott Mansell c49a82bf0a Rework aspect ratio calculations.
They are now based on signal timings rather than pixels, as it
didn't make a lot of sense to do things with pixels.

Now handles all 240i/240p/480i/480p modes without any special
casing.

Despite the diffrent equaions, this should result in the exact same aspect
ratio as the previous code.
2016-01-09 14:30:46 +13:00
Pierre Bourdon bf1c53a6e8 Merge pull request #3451 from RisingFog/libav
Use ffmpeg for Windows Video Dumping instead of VFW
2016-01-09 01:01:05 +01:00
Matt Mastracci a60b24c937 MemoryWatcher: Initialize m_running to false to prevent crashes on OSX in the dtor when it picks up the wrong initial value 2016-01-08 12:20:35 -07:00
Chris Burgener 66595b0ac9 Force XVID FourCC for MPEG4 output 2016-01-08 10:22:19 -05:00
Scott Mansell 9c0dae47ca Normalize aspect ratio calculations to 4:3
Video Interface simply isn't aware about widescreen.
Instead, the render class can multiply by 1.3333333 to get
the 16:9 aspect ratio.
2016-01-08 13:31:48 +13:00
Chris Burgener c34fb3edf0 Use ffmpeg for Windows Video Dumping instead of VFW 2016-01-07 18:37:58 -05:00
Jules Blok db551c55a2 FrameBufferManager: Fix typo in stereoscopic MSAA shader. 2016-01-07 20:05:12 +01:00
Pierre Bourdon dd1192b709 Merge pull request #3449 from freelancer42/android_finish_main_activity_after_autostartfile
StartupHandler.java: Finish main activity if AutoStartFile is specified in intent
2016-01-07 00:50:47 +01:00
Pierre Bourdon 89bb4b1288 Merge pull request #3460 from JosJuice/platform-icon-padding
Adjust the size of the Wii platform icon and padding of all platform icons
2016-01-07 00:50:06 +01:00
Pierre Bourdon bff79df363 Merge pull request #3429 from sepalani/debug_vector_fix
Debug Builds: Fixed vector assertion
2016-01-07 00:48:40 +01:00
Pierre Bourdon e668fd7a02 Merge pull request #3465 from Sonicadvance1/Android_move_jni
Move Android JNI bits from DolphinWX to the Android folder.
2016-01-07 00:47:39 +01:00
Pierre Bourdon 7c91dbe239 Merge pull request #3467 from mathieui/netplay_version_commit_hash
Use the current commit hash in the netplay version
2016-01-07 00:45:11 +01:00
Pierre Bourdon 22555312de Merge pull request #3464 from Armada651/stereo-warnings
VideoConfig: Don't give warnings for per-game stereoscopy parameters.
2016-01-07 00:35:14 +01:00
Pierre Bourdon 4553f723ff Merge pull request #3466 from JosJuice/game-list-empty-condition
DolphinWX: Unify the condition for the game list being empty
2016-01-07 00:33:32 +01:00
mathieui 40c7a2fb7d Use the current commit hash in the netplay version
So that it contains the current commit and not an arbitrary date that
may or may not be up-to-date. This will cause tears as people will not
be able to use netplay with one diverging commit that does not touch
anything related. On the other hand, users can’t be trusted.
2016-01-07 00:17:05 +01:00
JosJuice 85ab84935a Use the English name for DK Bongos in the English version of Dolphin
Tarukonga is Japanese. People who don't speak Japanese are unlikely to
understand it.
2016-01-07 00:12:25 +01:00
Ryan Houdek 74478addeb Move Android JNI bits from DolphinWX to the Android folder. 2016-01-06 15:36:44 -06:00
JosJuice dcde91cdd8 DolphinWX: Unify the condition for the game list being empty
When there are no games to display in the game list, DolphinWX shows a
message instead. Clicking the message will perform an action. If the game
list truly is empty, the message and action are for opening a browse
dialog, but if the user has hidden some games, they are instead for
unhiding all games. However, the condition for checking which message to
display lacked some parts that are in the condition for checking which
action to use, so the two could be different in rare cases. This PR fixes
that by breaking out the two conditions to a new unified function.
2016-01-06 22:25:30 +01:00
Jules Blok 1e111421e9 VideoConfig: Don't give warnings for per-game stereoscopy parameters. 2016-01-06 22:21:12 +01:00
degasus efbe5bc4b6 VideoSW: Use more VideoCommon
Now we require lots of empty functions, but this removes by far more duplicated code.
2016-01-06 22:10:29 +01:00
Ryan Houdek 7fcb5a803b Merge pull request #3359 from degasus/ini
VideoConfig: Use "GFX.ini" for both D3D and OGL.
2016-01-06 16:02:23 -05:00
Markus Wick 05fdf0398b Merge pull request #3313 from degasus/videosw
VideoSW: Clear Vertex data before usage
2016-01-06 21:56:02 +01:00
degasus ad1f7576ad VideoConfig: Use "GFX.ini" for both D3D and OGL.
They share the same format, so there is no need to separate their configs.
2016-01-06 21:43:11 +01:00
Ryan Houdek e3da564418 Merge pull request #3440 from Sonicadvance1/Android_WiiU_Adapter
[Android] Disable screen lock when a title is running.
2016-01-06 15:42:25 -05:00
Ryan Houdek 0a42a0ab1b Merge pull request #3428 from Sonicadvance1/proper_glextensions
Make GLExtensions no longer require slghtly modified GL headers
2016-01-06 15:24:47 -05:00
Ryan Houdek 342496563d Merge pull request #3455 from Sonicadvance1/GC_adapter_android
[Android] Add support for the Wii U Gamecube adapter under Android.
2016-01-06 15:07:09 -05:00
JosJuice e6cee3a130 DolphinWX: Re-add some padding for platform icons
The padding on the right was changed from 3px to 0px by fd2d505. 1px is
needed for counteracting the white 1px line to the left of the game list.
2016-01-06 21:06:36 +01:00
Mathew Maidment 87e753b104 Merge pull request #3459 from JosJuice/custom-texture-all-regions-2
HiresTextures: Refactor getting directory
2016-01-06 14:19:33 -05:00
Ryan Houdek b49683b2e8 Merge pull request #3357 from JosJuice/no-xpm
DolphinWX: Stop using XPM images
2016-01-06 13:37:03 -05:00
JosJuice 03091ce180 HiresTextures: Refactor getting directory 2016-01-06 19:35:16 +01:00
Ryan Houdek adffa5fbec Merge pull request #3457 from booto/si-sampling
[RFC] SI: Base SI sampling on VSync & horiz lines
2016-01-06 13:02:38 -05:00
Ryan Houdek 1a207b06ae [Android] Fix enabling and disabling Gamecube controllers. 2016-01-06 11:54:46 -06:00
booto a1db1a2082 SI: Base SI sampling on VSync & horiz lines 2016-01-06 23:47:20 +08:00
JosJuice 42237dc511 Merge pull request #3456 from JosJuice/custom-texture-all-regions
HiresTextures: Also look for directories with 3-character IDs
2016-01-06 14:43:49 +01:00
JosJuice a2b45a4b82 HiresTextures: Also look for directories with 3-character IDs
People who make texture packs usually release them using a specific ID
(for instance SX4E01). Users who have a different version of the game
(like the PAL version SX4P01) then need to rename the custom texture
folder to match. This is a lot simpler than renaming every texture file,
as was required with the old texture format, but it's still something
that users can forget to do. To make that unnecessary, this change makes
it possible to use three-character region-free IDs for custom texture
folders, similarly to how game INIs can use three-character IDs. Once
most people have updated to Dolphin versions that include this change,
those who make texture packs will be able to name them with
three-character IDs, removing the need for users to rename anything.
2016-01-06 14:33:36 +01:00
Markus Wick 86b0e7e4f2 Merge pull request #3356 from degasus/master
Throttler: Rename "framelimiter" to "emulation speed".
2016-01-06 14:21:55 +01:00
Ryan Houdek e62503c873 [Android] Add support for the Wii U Gamecube adapter under Android.
No way to properly enable it from an end user perspective yet.
Doesn't require root.
This same sort of system can be used for the Dolphinbar in the future for real wiimote support.
2016-01-06 01:10:54 -06:00
Ryan Houdek 6e503bebc4 Add a stubbed GCAdapter namespace.
This cleans up a bunch of #ifdef checks in places.
2016-01-06 00:57:08 -06:00
Ryan Houdek af6a5ddafe Fixup typo in GCAdapter 2016-01-06 00:41:00 -06:00
Ryan Houdek 1dcc199a63 Fix GCPad recalibration shortcut.
Dolphin has supported the recalibration shortcut (X+Y+Start) for quite a long while. So if someont's axises are terrible, you could easily
recalibrate.
Games even get the initial calibration upon boot(Most of the time).

While changing over the GCAdapter code, I was testing to make sure the reset and calibration shortcuts still worked, turns out they didn't work at
all.
Looking in to the problem, we capture the combination properly, and we wait three seconds until we actually fire that off recalibration.
The problem is for Nintendo's SDK to properly handle recalibrating, we need to send back data saying that it needs to recalibrate.
On hardware this is done as part of the 64bits of data the controller sends back to us.
On holding of the controller, bit 61 of the return value is set, which the Nintendo SDK catches, and then signals immediately afterwards a CMD_ORIGIN
command in order to recalibrate the controller.
We were outright ignoring this bit, so the library wasn't ever recalibrating. I suspect in the past the class itself used to use the calibration data
to to offset the data, but somewhere along the lines it got munged out of existence.

The Gamecube adapter does this shortcut in a bit of a unique way, instead of sending the command and having the library support it and what have you.
Once holding the shortcut for the amount of time, the adapter reports back that the controller has actually been disconnected. Then when you let go of
the combination, the adapter states that a new device has been connected to that port, and the recalibration happens because a new device is
"connected."

This fixes controller calibration for both emulated GC controllers and also the Wii Gamecube Adapter.
2016-01-06 00:41:00 -06:00
Anthony Serna 2ee84a20fe [UI] Remove DolphinQt 2016-01-05 19:42:02 -06:00
degasus 3ff4ec275a Throttler: Rename "framelimiter" to "emulation speed".
We don't throttle by frames, we throttle by coretiming speed.
So looking up VI for calculating the speed was just very wrong.
The new ini option is a float, 1.0f for fullspeed.
In the GUI, percentual values are used.
2016-01-05 23:39:05 +01:00
Ryan Houdek 49410576e9 Make the Wii U Gamecube adapter work with less magic.
The Wii U Gamecube controller adapter setup has always been a bit weird. It tries to be as automatic as possible to make the user experience as easy
as possible.
The problem with this approach is that it brings a large disconnect in the user experience because you have the Gamecube controller setup with regular
gamepads and then for some reason below that you have a "direct connect" option which will cause the Gamecube Adapter to overwrite the regular inputs
if something was connected.
While this works and allows the user to only click one checkbox to get the device working, it breaks the user's experience because they don't really
know what "direct connect" means and won't look it up to figure out what it is. Just expecting the device to work (At least one occurence of this in
the IRC channel in the last week).

This way around also had the terrible nature of making the code more filthy than it needed to be. The GCAdapter namespace was parasitic and hooked in
to the regular GC Controller SI class to overwrite the data that it was getting from the default configuration.
Now instead we have a specific SIDevice class for the Wii U Gamecube adapter. This class is fairly simple and is a child of the regular SI Gamecube
Pad device and only reimplements what it needs to.
This also gives the ability to configure controllers individually, which allows the user to configure rumble individually per pad input.

Overall the code is cleaner, and it fits more in line with how the rest of Dolphin works.
2016-01-05 13:44:37 -06:00
Ryan Houdek 6e932af831 Add two missing values that can fit in GCPadStatus 2016-01-05 13:44:37 -06:00
Ryan Houdek 371e9f4fae Move SI_GCAdapter over to InputCommon 2016-01-05 13:44:37 -06:00