Commit Graph
100 Commits
Author SHA1 Message Date
LC 3d680ff2f6 Merge pull request #8984 from r2dliu/curl
Curl: For windows cmake builds, build curl with schannel/winssl capability
2020-07-28 19:26:43 -04:00
LC b354e343a7 Merge pull request #8988 from JosJuice/no-refresh-rate-round
VideoCommon: Don't round the refresh rate
2020-07-28 17:17:34 -04:00
LC 5066d4d239 Merge pull request #8989 from JosJuice/android-minimal-post-processing
Android: Set preferMinimalPostProcessing="true"
2020-07-28 17:16:47 -04:00
Lioncash f9b856aeda WiimoteEmu: Mark several getters as const
These don't modify internal class state, so they can be made const.
2020-07-24 15:48:27 -04:00
LC 520af035d2 Merge pull request #8980 from Tilka/warnings
Fix some GCC warnings
2020-07-24 12:53:24 -04:00
LC d7a91316da Merge pull request #8974 from Filoppi/patch-4
Fix disc image conversion button not being clear #3
2020-07-22 17:24:23 -04:00
LC bf49849f88 Merge pull request #8971 from JosJuice/simplify-issettingsaveable
Config: Simplify IsSettingSaveable
2020-07-22 16:27:34 -04:00
LC 8e99c77510 Merge pull request #8972 from Ebola16/CT
Android: Some simple Clang-Tidy suggestions
2020-07-22 16:24:05 -04:00
LC 92d24aec2e Merge pull request #8965 from JosJuice/android-backend-extension-hack
Android: Remove hacks for Wii Remote extension and video backend settings
2020-07-20 12:34:23 -04:00
LC ae2348023b Merge pull request #8964 from JosJuice/list-wad-file-type
DolphinQt: Show WAD as "WAD" instead of "" in file format column
2020-07-19 17:35:34 -04:00
LC d48056c1cd Merge pull request #8963 from jordan-woyak/gcpad-gate-adj
HW/GCPadEmu: Adjust gate radius values to more closely match the real hardware.
2020-07-19 12:11:58 -04:00
LC 487cd7abd9 Merge pull request #8905 from JosJuice/jni-encoding
Android: Use correct encoding when converting strings
2020-07-18 22:13:14 -04:00
LC 06155823d9 Merge pull request #8960 from JosJuice/i18n-surround
DolphinQt: Add i18n comment for "Surround"
2020-07-17 16:44:11 -04:00
LC 93f73aa2e7 Merge pull request #8959 from jordan-woyak/qt-sort-role
DolphinQt: Replace unusual Qt::InitialSortOrderRole usage with a custom role.
2020-07-16 21:45:31 -04:00
LC a7e475e57b Merge pull request #8958 from jordan-woyak/sort-fix
DolphinQt: Fix default sort direction of game list.
2020-07-16 21:20:43 -04:00
LC c59648337a Merge pull request #8955 from JosJuice/android-no-ashmem
Android: Don't access /dev/ashmem on newer Android versions
2020-07-16 14:23:51 -04:00
LC d987cf1dde Merge pull request #8957 from JosJuice/android-strerror-r
Add Android check for strerror_r variant
2020-07-16 14:19:05 -04:00
LC b6ee3228be Merge pull request #8953 from JosJuice/android-target-sdk-29
Android: Increase targetSdkVersion to 29
2020-07-14 12:51:44 -04:00
LC 4d36f6a5b0 Merge pull request #8936 from jordan-woyak/wiimote-extension-calibration-fix
ControllerInterface/Wiimote: Provide fallback values for extensions with bad calibration.
2020-07-12 12:46:15 -04:00
LC ecc6af7f7f Merge pull request #8948 from jordan-woyak/speaker-data-writes
WiimoteEmu: Allow writes of the i2c bus to play speaker data.
2020-07-12 12:38:49 -04:00
LC ed32a2a1fe Merge pull request #8946 from jordan-woyak/unbreak-mayflash
InputCommon/GCAdapter: Unbreak Mayflash GCAdapters by allowing libusb_control_transfer call to fail.
2020-07-11 11:56:30 -04:00
LC 41a570c74e Merge pull request #8947 from JosJuice/rvz-split-seed-read
RVZ: Fix split seed reads
2020-07-11 11:53:47 -04:00
LC 5281efe268 Merge pull request #8944 from JosJuice/qtbug-10561-workaround
DolphinQt: Replace QTBUG-10561 workaround with better workaround
2020-07-09 07:15:22 -04:00
LC 87287181dd Merge pull request #8907 from JosJuice/android-overlay-stick-gate
Android: Use octagonal stick gate in overlay
2020-07-08 08:50:47 -04:00
LC a5166be995 Merge pull request #8896 from JosJuice/android-game-details-scroll
Android: Wrap game details dialog in ScrollView
2020-07-08 08:48:42 -04:00
LC 5a696f4934 Merge pull request #8906 from JosJuice/android-button-id-typo
Android: Fix button ID typo
2020-07-08 08:47:33 -04:00
LC 4c50eadf34 Merge pull request #8908 from jordan-woyak/wiimote-battery-hax
WiimoteCommon: Tweak battery level math.
2020-07-08 08:46:58 -04:00
LC b9ae7c350e Merge pull request #8926 from JosJuice/sysconf-sound
DolphinQt: Expose SYSCONF sound setting
2020-07-08 08:41:23 -04:00
LC 0bff77d9e4 Merge pull request #8925 from JosJuice/tas-turbo-interval
DolphinQt: Allow customizing TAS input turbo interval
2020-07-08 08:40:46 -04:00
LC 25118e2acc Merge pull request #8928 from Ebola16/ADSL
Android: Update "Speed Limit" for "Unlimited" value
2020-07-08 08:39:44 -04:00
LC a1195fbf91 Merge pull request #8933 from jordan-woyak/gcadapter-nyko
InputCommon/GCAdapter: Fix offbrand "GCAdapters".
2020-07-08 08:38:52 -04:00
LC cd51552fe4 Merge pull request #8939 from JosJuice/oops
Android: Convert some files to LF
2020-07-08 08:35:09 -04:00
LC 46fd6b3924 Merge pull request #8942 from JosJuice/reword-forced-msaa
Reword "Please avoid forcing Dolphin to use MSAA by the driver" message
2020-07-08 08:30:17 -04:00
LC 4ff560a6e4 Merge pull request #8913 from JosJuice/msvc-preprocessor
Support the new MSVC preprocessor
2020-06-30 04:34:10 -04:00
LC 84d67b3547 Merge pull request #8841 from Techjar/remove-result-of
Replace usage of std::result_of with std::invoke_result
2020-06-01 18:44:45 -04:00
Mat M c62e6a335d Merge pull request #8532 from lioncash/shader-common-fmt
VideoCommon/ShaderGenCommon: Convert helper functions over to fmt where applicable
2020-05-27 07:04:06 -04:00
Lioncash 86f8768268 VideoCommon/ShaderGenCommon: Make template functions regular functions
These are only ever used with ShaderCode instances and nothing else.
Given that, we can convert these helper functions to expect that type of
object as an argument and remove the need for templates, improving
compiler throughput a marginal amount, as the template instantiation
process doesn't need to be performed.

We can also move the definitions of these functions into the cpp file,
which allows us to remove a few inclusions from the ShaderGenCommon
header. This uncovered a few instances of indirect inclusions being
relied upon in other source files.

One other benefit is this allows changes to be made to the definitions
of the functions without needing to recompile all translation units that
make use of these functions, making change testing a little quicker.

Moving the definitions into the cpp file also allows us to completely
hide DefineOutputMember() from external view, given it's only ever used
inside of GenerateVSOutputMembers().
2020-05-25 21:12:29 -04:00
Lioncash e3506ff4ef VideoCommon/ShaderGenCommon: Convert helper functions over to fmt
A very trivial conversion, this simply converts calls to Write over to
WriteFmt and adjusts the formatting specifiers as necessary.

This also allows the const char* parameters to become std::string_view
instances, allowing for ease of use with other string types.
2020-05-25 21:12:29 -04:00
Mat M f5c817f61c Merge pull request #8822 from JosJuice/freelook-typos
DolphinQt: Fix freelook description typos
2020-05-20 17:59:05 -04:00
Mat M 236ffd5e0e Merge pull request #8801 from Tilka/dsp_prod
docs/DSP: fix $prod references
2020-05-09 09:48:10 -04:00
Mat M 9e2560b825 Merge pull request #8790 from leoetlino/ras-syndrome
Remove redundant "Emulation" from "DSP HLE Emulation"
2020-05-03 16:47:05 -04:00
Mat M 4369f49373 Merge pull request #8780 from degasus/soundtouch_include
Externals: Do not expose the externals directory itself as include path.
2020-04-29 07:32:25 -04:00
Mat M 2a7f150561 Merge pull request #8774 from JosJuice/volumeverifier-ios9
VolumeVerifier: Treat IOS9 as always present
2020-04-28 21:24:44 -04:00
Mat M 295accba2e Merge pull request #8776 from Techjar/fix-redump
Require minizip 2.0.0 or newer
2020-04-28 21:23:26 -04:00
Lioncash ee200d09eb Jit64/Jit64_Tables: Construct tables at compile-time
Utilizing constexpr, we can eliminate the need to construct the tables
at runtime and just do all the work at compile-time. Making for less
moving parts overall.

The general structure is more or less the same, however rather than one
single initialization function, each table is built off an immediately
executed lambda function. This is nice, since it narrows the scope of
the table building logic down to the tables that actually need it.
2020-04-28 17:12:24 +02:00
Lioncash 19115c84dd DolphinQt: Use qOverload where applicable
Provides the same behvaior, but in a much more concise manner.
2020-04-28 16:54:19 +02:00
Mat M c33565295d Merge pull request #8713 from sepalani/dbg-printf
HLE: Add more debug functions
2020-04-21 12:58:34 -04:00
Mat M 013e0528d5 Merge pull request #8736 from Pokechu22/dsp-lle-no-thread-hang
Fix bug 11920
2020-04-10 18:10:49 -04:00
Mat M d8d620ef0e Merge pull request #8734 from JosJuice/movie-update-comment
Remove outdated comment from Movie::FrameUpdate
2020-04-09 19:52:19 -04:00
Mat M 9a2d8a9623 Merge pull request #8715 from JosJuice/panic-alert-deadlock
DolphinQt: Fix the panic alert deadlock (a.k.a. "Question" issue)
2020-04-08 17:20:32 -04:00
Mat M 62707986b7 Merge pull request #8681 from AdmiralCurtiss/debugger_typo
Qt/CodeWidget: Typo in settings key.
2020-03-21 00:42:31 -04:00
Mat M 9ac28054df Merge pull request #8678 from JosJuice/setting-txt-code-default
Boot: Change pre-defined setting.txt CODE values
2020-03-20 02:06:07 -04:00
Mat M 3bf1aa1937 Merge pull request #8679 from CookiePLMonster/file-path-native-separators
Qt/GameListModel: Use native separators in File Path column
2020-03-20 02:05:10 -04:00
Mat M 8679f7a4d4 Merge pull request #8661 from trofi/master
Tweaks to build against gcc-10.
2020-03-05 20:48:51 -05:00
Mat M 4d9f556456 Merge pull request #8653 from jordan-woyak/fix-cc-triggers
HW/WiimoteEmu: Fix Classic Controller triggers.
2020-02-26 17:42:17 -05:00
Mat M edad018213 Merge pull request #8638 from jordan-woyak/is-detectable-constify
InputCommon: Constify Device::Input::IsDetectable function.
2020-02-22 16:50:27 -05:00
Lioncash 91deb40a22 Common: Amend includes to handle the upgrade to fmt 2020-02-04 15:03:51 -05:00
Lioncash aea76c7901 Core: Amend includes to handle the upgrade to fmt 2020-02-04 15:03:48 -05:00
Lioncash abd2897377 VideoCommon: Amend formatting code to handle the upgrade to fmt
It seems that the newer version of fmt gets tripped up by bitfields
within structs. However, we can just specify the intended type where
necessary to get around this.
2020-02-04 14:55:20 -05:00
Lioncash 1873b7a398 Externals: Update fmt to 6.1.2 2020-02-04 14:50:46 -05:00
Lioncash 7eaa769527 DolphinQt/GCMemcardManager: Make use of QLatin1Char within GetErrorMessagesForErrorCode()
Same behavior, but eliminates the use of a program lifetime Qt string
literal.
2020-01-27 15:59:33 -05:00
Lioncash 585ae8aedf DolphinQt/GCMemcardManager: Mark string as translatable within GetErrorMessagesForErrorCode()
This is a string that can potentially be seen by a user, so it should be
marked as translatable, like the other strings are.
2020-01-27 15:57:36 -05:00
Lioncash dca201d5f3 DolphinQt/GameConfigWidget: Remove unimplemented EditUserConfig() member function
This isn't implemented anywhere, so we can remove the member function
prototype.
2020-01-27 15:46:52 -05:00
Lioncash 2fd628d017 DolphinQt/GameConfigEdit: Remove unimplemented SetReadOnly() member function
This isn't implemented anywhere, so we can remove this prototype.
2020-01-27 15:44:52 -05:00
Lioncash c69cbceb59 DolphinQt/MainWindow: Surround prototype of OnSignal() with relevant ifdef
This is only used on Apple and Unix-like machines, so we can enclose the
prototype with an ifdef like the implementation is. This prevents
false-positives about an unimplemented function prototype.
2020-01-27 15:26:41 -05:00
Lioncash e8ee4e835e DolphinQt/NetPlayDialog: Remove unimplemented SetGame() prototype
This isn't implemented anywhere, so the prototype can be removed.
2020-01-27 15:25:04 -05:00
Lioncash b493bdb912 DolphinQt/TASCheckBox: Mark GetValue() as const
This doesn't actually modify the checkbox's state, so this can be marked
as a const-qualified member function.
2020-01-26 21:41:31 -05:00
Lioncash 687f1f0330 VideoCommon/TextureConversionShader: Make use of fmt where applicable
Now that we've converted the shader generation over to ShaderCode, we
can now make use of the fmt-capable WriteFmt function.
2020-01-23 14:19:40 -05:00
Lioncash aa77dff3a2 VideoCommon/TextureConversionShader: Convert over to using ShaderCode
Migrates the shader generator off the use of a global array, eliminating
the use of some global state. This also allows us to move the shader
generation over to using fmt in a subsequent change.
2020-01-23 14:19:36 -05:00
Mat M eea4e4385e Merge pull request #8528 from CaseyCarter/includes
Include <memory> for std::unique_ptr in DXContext.h
2019-12-19 17:29:43 -05:00
Lioncash 7c12081693 PowerPC/PPCAnalyst: Remove unimplemented LogFunctionCall prototype
This doesn't have an implementation, so it can be removed.
2019-12-15 00:23:32 -05:00
Lioncash 81edcca8db Common/Network: Use std::nullopt in StringToMacAddress
Prevents unnecessary zeroing out of std::optional's internal buffer in
some implementations.
2019-12-06 09:59:11 -05:00
Lioncash cbfacc41ba Common/Network: Remove unused header inclusions
Removes unused header dependencies.
2019-12-06 09:51:28 -05:00
Lioncash f06461d208 Common/Network: Make StringToMacAddress use a string_view
This function only ever reads the contents of the string in a non-owning
manner, so we can change the parameter over to being a string view.
2019-12-06 09:45:25 -05:00
Lioncash 2c9ec6cb8a VideoCommon/BoundingBox: Move PixelShaderManager::SetBoundingBoxActive() calls into Enable()/Disable()
Now that we have an actual interface to manage things, we can stop
duplicating the calls to to the pixel shader manager and remove the
need to remember to actually do so when disabling or enabling the
bounding box.
2019-12-05 11:57:58 -05:00
Lioncash 9bd533ebe4 VideoCommon/BoundingBox: Make interface for querying bounding box data
Rather than expose the bounding box members directly, we can instead
provide an interface for code to use. This makes it nicer to transition
from global data, as the interface function names are already in
place.
2019-12-05 11:48:42 -05:00
Lioncash 10f7674651 VideoCommon/IndexGenerator: Eliminate static state
Now that we've extracted all of the stateless functions that can be
hidden, it's time to make the index generator a regular class with
active data members.

This can just be a member that sits within the vertex manager base
class. By deglobalizing the state of the index generator we also get rid
of the wonky dual-initializing that was going on within the OpenGL
backend.

Since the renderer is always initialized before the vertex manager, we
now only call Init() once throughout the execution lifecycle.
2019-12-05 10:49:32 -05:00
Lioncash 159947ab68 VideoCommon/IndexGenerator: Make use of if constexpr
We can use if constexpr with the template functions that pass in a
non-type template parameter, allowing the removal of branches that
aren't taken at compile time.

Compilers will generally do this by default, however, we now give a
gentle prodding to the compiler if this would otherwise not be the case.
2019-12-05 10:49:32 -05:00
Lioncash fb3fda775f VideoCommon/IndexGenerator: Move stateless functions into anonymous namespace
These don't rely on any of the static members within the IndexGenerator
class, so we can make all of these functions fully internal to the
translation unit.
2019-12-05 10:49:29 -05:00
Lioncash 69f2ca2230 VideoCommon/IndexGenerator: Make use of anonymous namespace
More things will be moved into this in subsequent changes. While we're
at it, we can also make use of std::array.
2019-12-05 09:36:41 -05:00
Lioncash 1f46a6a64b VideoCommon/OpcodeDecoding: Make use of if constexpr
We can make use of if constexpr in several scenarios here to allow
compilers to exise the relevant code paths out.

Technically a decent compiler would do this already, but now we can give
compilers a little more nudging here in the event that isn't the case.
2019-12-05 09:13:06 -05:00
Lioncash 99353c3baa VideoCommon/OpcodeDecoding: Remove unused headers
Nothing provided by these headers are used, so we can remove them.
2019-12-05 09:13:06 -05:00
Lioncash 6339a5ea8e VideoCommon/OpcodeDecoding: Resolve implicit signedness conversion
cmd2 is a u32, so any bitwise arithmetic on it with a type of the same
size or smaller will result in a u32 value. This is also implicitly
converted to an unsigned type in the if statement as well, given that
size_t * int -> size_t.

This is just more explicit about the operations occurring and also
likely silences a sign conversion warning.
2019-12-05 09:13:06 -05:00
Lioncash 4710b82f43 VideoCommon/OpcodeDecoding: Remove use of goto in Run()
With the use of a lambda and a change in switch fallthrough, we can
completely eliminate the use of goto within Run().
2019-12-05 09:13:06 -05:00
Lioncash f74503cce0 VideoCommon/OpcodeDecoding: Make use of anonymous namespace
Provides a region for all internal utilities.
2019-12-05 09:13:06 -05:00
Lioncash 6b4e340995 VideoCommon/OpcodeDecoding: Amend comment formatting
Amends a documentation comment that acquired some wonky formatting
during the introduction of clang-format a few years ago.
2019-12-05 09:13:06 -05:00
Lioncash b2a9c36501 VideoCommon/OpcodeDecoding: Move g_bRecordFifoData into namespace
Keeps the global localized with the code that it's primarily related to.

Now it's obvious from a glance what the global variable is affecting.
2019-12-05 09:13:03 -05:00
Lioncash d8063e9c54 VideoCommon/OpcodeDecoding: Normalize variable naming
Provides consistent naming of variables within the translation unit.

While we're at it, we can mark them const where applicable.
2019-12-05 08:05:29 -05:00
Lioncash f29730944f VideoCommon/FramebufferShaderGen: Make use of std::ostringstream internally
We only use these string streams to output into a final std::string
instance, we don't read into types with them. Because of this, we can
just make use of std::ostringstream, rather than the fully-fledged
std::stringstream.
2019-12-05 00:18:00 -05:00
Lioncash fff445cc10 VideoCommon/FramebufferShaderGen: Make use of std::string_view where applicable
Prevents the use of the null pointer as an input to any functions.
2019-12-05 00:15:37 -05:00
Lioncash 3405815f09 VideoCommon/FramebufferShaderGen: Remove unused Config struct
This isn't used anywhere within the codebase, so it can be removed
entirely.
2019-12-04 23:54:15 -05:00
Lioncash 3a8d17c140 VideoCommon/FramebufferShaderGen: Use an anonymous namespace where applicable
Places all internal helpers and types within an anonymous namespace.
2019-12-04 23:51:26 -05:00
Lioncash eefd6a10f5 VideoCommon/FramebufferShaderGen: Add missing initial source file comments
Makes the source files consistent with the rest of the VideoCommon code.
2019-12-04 23:48:59 -05:00
Lioncash f8c90f0484 VideoCommon/FramebufferShaderGen: Collapse stream insertions
No behavioral change. This is intended to make the transition to fmt
less noisy in subsequent changes by combining insertions of multiple
string literals into one where applicable.
2019-12-04 23:45:15 -05:00
Lioncash 0f28f4049b VideoCommon/TextureConverterShaderGen: Convert over to fmt
Easily the most straightforward to convert over, given the lack of
significant formatting arguments.
2019-12-03 05:05:02 -05:00
Lioncash 8af6bfb8b0 VideoCommon/ShaderGenCommon: Add function for writing fmt-based strings
Begins the conversion of the shader generators over to using fmt
formatting specifiers.

This also has a benefit over the older StringFromFormat-based API in
that all formatted data is appended to the existing buffer rather than
creating a completely separate string and then appending it to the
internal string buffer.
2019-12-03 04:49:48 -05:00
Lioncash 474e210cd5 PPCCache: Make arrays constexpr where applicable
Two of these arrays were stored within the save state when the exact
same data is constructed all the time.

We can just build this into the binary rather than the save state,
shrinking a little bit of the save state's overall size.
2019-12-03 04:05:09 -05:00
Lioncash 1d5ce4708f PPCCache: Make use of std::array where applicable
Allows simplifying a bunch of initialization and filling code.
2019-12-03 04:05:05 -05:00
Lioncash c792961000 Common: Unify logging namespace with Common
Previously the logging was a in a little bit of a disarray. Some things
were in namespaces, and other things were not.

Given this code will feature a bit of restructuring during the
transition over to fmt, this is a good time to unify it under a single
namespace and also remove functions and types from the global namespace.

Now, all functions and types are under the Common::Log namespace. The
only outliers being, of course, the preprocessor macros.
2019-11-28 05:13:21 -05:00
Lioncash e33c366502 GCMemcard: Remove byteswapping macros
We can just specify the functions directly instead of relying on
preprocessor textual replacement.
2019-11-27 23:15:31 -05:00