Commit graph

2971 commits

Author SHA1 Message Date
Stenzek
c9c0b85056 VideoBackends: Store a backbuffer 'scale'
This is a scaling factor, used for hi-dpi configurations.
2019-01-25 11:15:57 +10:00
Mat M
2749c50843
Merge pull request #7653 from jordan-woyak/ini-cleanup
IniFile: Minor cleanup. Removed unused function. Improved template usage.
2018-12-28 06:21:24 -05:00
Jordan Woyak
ceb28a2302 Add ability to reshape analog sticks from square/circle to octagon and make the analog stick mapping indicator pretty. 2018-12-27 18:31:46 -06:00
Jordan Woyak
a464025bba IniFile: Minor cleanup. Removed unused function. Improved template usage. 2018-12-26 20:15:32 -06:00
MerryMage
da7608ff9f x64Emitter: Add some single-precision instructions 2018-12-26 00:23:42 +00:00
spycrab
fc998093cc
Merge pull request #7600 from spycrab/resource_pack
Implement resource packs
2018-12-23 16:04:05 +01:00
spycrab
71d53c922f Implement resource packs 2018-12-19 11:03:09 +01:00
Lioncash
6d394d03fe Common/GLContext: Make member functions const qualified where applicable
These don't modify object state, so they can be const qualified.
2018-12-14 11:02:26 -05:00
Connor McLaughlin
6388992f62
Merge pull request #7039 from stenzek/moltenvk
Vulkan: macOS support via MoltenVK
2018-11-30 21:55:30 +10:00
Jordan Woyak
fae368d2ee
Fix spurious error logs for conversions of empty strings on Windows. 2018-11-22 06:50:11 +01:00
Techjar
d94922002b NetPlay: Implement chunked data transfer
This sends arbitrary packets in chunks to be reassembled at the other
end, allowing large data transfers to be speed-limited and interleaved
with other packets being sent. It also enables tracking the progress of
large data transfers.
2018-11-19 06:37:09 -05:00
Pierre Bourdon
61b9ef33ab
Merge pull request #7492 from MerryMage/regcache2
JitRegCache: Refactor register cache
2018-11-09 04:45:47 +01:00
Stenzek
041b977523 Common: Use GCD semaphores on macOS
Unnamed semaphores are not supported.
2018-11-07 05:12:20 -08:00
Pierre Bourdon
7094f225d4
Merge pull request #7515 from JosJuice/wcsftime
Use wcsftime instead of strftime on Windows to fix encoding errors
2018-10-28 23:58:17 +01:00
Pierre Bourdon
53a45e5c28
Merge pull request #7445 from Techjar/improve-sfmlhelper
Improve SFMLHelper
2018-10-28 23:53:59 +01:00
MerryMage
9f683f9bb1 BitSet: Add << operator 2018-10-28 17:57:46 +00:00
MerryMage
2dce7e6e21 Common: Add variant utilities 2018-10-28 17:57:43 +00:00
Pierre Bourdon
d98c0da41b Common/Analytics: add basic support for vector serialization
Only supports u32 for now since that's the only thing we need.
2018-10-27 17:16:58 +02:00
JosJuice
5718b870d1 Use wcsftime instead of strftime on Windows to fix encoding errors
Reported by https://forums.dolphin-emu.org/Thread-odd-codes-appear-in-save-load-state-when-chinese-language-is-used
2018-10-26 14:26:21 +02:00
Stenzek
2c6d96433c GLContext: Try GL versions 3.2-4.6 when getting a context
GLX previously was only creating a 4.0 context.
2018-10-20 21:11:34 +10:00
Stenzek
c95802afeb CMake: Make X11 and EGL optional 2018-10-20 21:11:34 +10:00
Stenzek
0559311f92 GLContext: Runtime selection of EGL/GLX on Linux 2018-10-20 21:11:34 +10:00
Stenzek
025e909773 GLContext: Use destructor instead of Shutdown() to cleanup
Also uses the Initialize() method to make the context current.
2018-10-20 21:11:34 +10:00
Stenzek
4b8d1c2b42 GLContext: Combine shared context initialization and creation 2018-10-20 21:11:34 +10:00
Stenzek
dcdd02d646 GLContext: Remove global context pointer 2018-10-20 21:11:34 +10:00
Stenzek
eb284b5d66 VideoBackends: Pass window system info from host on creation 2018-10-20 21:11:34 +10:00
Stenzek
9c57a98723 GLContext: Use host connection
This also removes the need for a sleeping event thread.
2018-10-20 21:11:34 +10:00
Stenzek
134d967be2 Refactoring and cleanup of GLInterface (now GLContext) 2018-10-20 21:11:34 +10:00
Stenzek
74b82bab3b GLInterface: Drop Haiku support 2018-10-20 21:11:33 +10:00
Tillmann Karras
97cc9894e4 Update to Visual Studio's default Windows SDK 2018-10-20 00:53:08 +01:00
Tillmann Karras
b37886580b GekkoDisassembler: fix mtfsf yet again 2018-10-08 02:43:34 +01:00
Tillmann Karras
29c271d0eb GekkoDisassembler: fix disassembly of mtfsf
This fixes https://dolp.in/i11411.
2018-10-07 17:27:02 +01:00
Tilka
32ef8706e5
Merge pull request #7414 from Sintendo/shortmovs
x64Emitter: emit shorter MOVs for 64-bit immediates
2018-10-06 00:01:35 +01:00
Tilka
b480db9392
Merge pull request #7419 from Sintendo/miscopts
Miscellaneous x64 micro-optimizations
2018-10-05 23:44:25 +01:00
Techjar
c5b4e1a5f6 Improve SFMLHelper
Switch to using additional overloads of sf::Packet, so we can eliminate
some of the messy code and just use the normal syntax for
BigEndianValue.

We can't avoid helper functions with u64 due to SFML's non-standard way
of defining 64-bit integer types.
2018-10-02 05:44:50 -04:00
Shawn Hoffman
d594d4f12f Fix sram accesses. 2018-09-29 22:52:29 -07:00
Sintendo
d8953dbe57 x64Emitter: nit, use helper method in CMP_or_TEST 2018-09-29 09:52:54 +02:00
Sintendo
53a947749a x64Emitter: short MOV for 64bit immediates (2)
Prior to this commit, the emitter would unconditionally emit a 10-byte
instruction known as MOVABS when loading a 64-bit immediate to a
register.

0:  48 b8 ef be ad de 00    movabs rax,0xdeadbeef
7:  00 00 00

With this change, it will instead rely on the fact that on x64 writes to
32-bit registers are automatically zero extended to 64-bits, allowing
us to emit a 5 or 6-bytes instruction with the same effect for certain
immediates.

0:  b8 ef be ad de          mov    eax,0xdeadbeef
2018-09-16 19:52:03 +02:00
Sintendo
575f1b309a x64Emitter: short MOV for 64bit immediates (1)
Prior to this commit, the emitter would unconditionally emit a 10-byte
instruction known as MOVABS when loading a 64-bit immediate to a
register.

0:  48 b8 ef be ad de ff    movabs rax,0xffffffffdeadbeef
7:  ff ff ff

With this change, it will instead emit a 7-byte instruction when it is
possible to express the 64-bit immediate using a signed 32-bit value.

0:  48 c7 c0 ef be ad de    mov    rax,0xffffffffdeadbeef
2018-09-14 23:11:26 +02:00
MerryMage
9753f21cc7 Arm64Emitter: Remove unsequenced expressions
Incrementing `it` twice between sequence points is undefined behavior.
2018-08-30 07:38:37 +01:00
JosJuice
fbdc239199 Fix reducing log paths when building with MSVC
The LogManager code had trouble detecting the "/Source/Core/" substring
for two reasons, neither of which seemed to happen a few years ago:

1. __FILE__ is in lowercase on MSVC
2. __FILE__ uses backslash as the directory separator on MSVC

Fixes https://bugs.dolphin-emu.org/issues/11366
2018-08-28 11:48:43 +02:00
Pierre Bourdon
2033d660d2
Merge pull request #7376 from lioncash/sfml
Externals: Update SFML to 2.5.0
2018-08-28 02:53:05 +02:00
Lioncash
d10a0b440f SFMLHelper: Simplify 64-bit packet reading function and remove 64-bit write function
Now that SFML's packet class can properly handle 64-bit values, we don't
need a helper function just to write values to the packets.
2018-08-27 17:38:07 -04:00
Lioncash
e6a4116bf2 Common/SFMLHelper: Remove unused forward declaration
BigEndianValue isn't used in either the header or SFMLHelper.cpp, so it
can be removed.
2018-08-27 16:48:12 -04:00
Lioncash
208be26bb4 Arm64Emitter: Make the Align* functions return a non-const data pointer
Similar in nature to e28d063539 in which
this same change was applied to the x64 emitter.

There's no real requirement to make this const, and this should also
be decided by the calling code, considering we had places that would
simply cast away the const and carry on
2018-08-27 09:44:38 -04:00
Pierre Bourdon
ea26ccbbe1
Merge pull request #7318 from VinDuv/rename-master-log
LogManager: Change Master Log short name to fix log configuration loading
2018-08-27 13:36:04 +02:00
Pierre Bourdon
f2323331ea
Merge pull request #7240 from lioncash/namespace
Common/DebugInterface: Namespace code under the Common namespace
2018-08-27 04:49:26 +02:00
Pierre Bourdon
246b1f4459
Merge pull request #7350 from zackhow/android-analytics
Android: Add usage statistics to android
2018-08-27 04:37:17 +02:00
zackhow
82f82a6b7d Android: Add usage statistics to android.
Added an option in General config to enable/disable usage statistics. Added a popup on first open if
the user would like to engage in reporting. Clicking cancel or out of the box opts out. Only
clicking 'Ok' will enable reporting. Also added a new android specific values to report.
2018-08-23 17:31:17 -04:00
Markus Wick
3c354d9280
Merge pull request #7333 from weihuoya/gamecover-nomedia
Hide game cover in android gallery
2018-08-20 10:01:50 +02:00