Commit graph

17180 commits

Author SHA1 Message Date
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
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
JosJuice
fd2d50535f DolphinWX: Minor adjustments to the widths of images 2016-01-05 19:19:36 +01:00
JosJuice
81466d7fa3 DolphinWX: Stop using XPM images
Using the XPM format for images has become a maintenance problem because
people don't know how to create them. This commit removes all XPM images
and all C files that contain PNG images. DolphinWX now uses the PNGs
in the Resources folder instead, just like DolphinQt and DolphinQt2 do.
2016-01-05 19:11:58 +01:00
Ryan Houdek
14e6720f22 Fix warning in VideoInterface 2016-01-05 11:54:04 -06:00
JosJuice
ea7d686811 Remove padding from platform icons and rating icons 2016-01-05 16:57:31 +01:00
Kim Johnsson
204201bcbc StartupHandler.java: Finish main activity if AutoStartFile is specified in intent
Call finish() on parent (main/browser) activity after starting EmulationActivity if AutoStartFile was specified. This makes the experience more streamlined for users who want to start games from an external frontend, since they don't expect to return to the Dolphin main activity after they've played their game.
2016-01-05 13:55:30 +01:00