Commit graph

8939 commits

Author SHA1 Message Date
BreadFish64 85e9ba897d gl_rasterizer_cache: Recycle host textures
Allocating new textures has fairly high driver overhead.
We can avoid some of this by reusing the textures from destroyed surfaces since the game will probably create more textures with the same dimensions and format.
2021-02-02 20:46:25 -06:00
BreadFish64 935e88a580 gl_rasterizer_cache: Remove all fully invalid surfaces from the cache
Some games (e.g. Pilotwings Resort) create many surfaces that are invalidated quickly but were never removed.
This occasionally lead to large lag spikes due to high lookup times and other data structure management overhead.
2021-02-02 20:43:41 -06:00
xperia64 8df502a688
Implement APT command 0x0103 (#5478)
* WIP implement apt 0x0103

* Update src/core/hle/service/apt/apt.cpp

Co-authored-by: Pengfei Zhu <zhupf321@gmail.com>

* Names

Co-authored-by: Pengfei Zhu <zhupf321@gmail.com>
2021-01-26 15:27:52 -05:00
Pengfei Zhu 7c6d7905a4
Merge pull request #5670 from FearlessTobi/port-5277
Port yuzu-emu/yuzu#5277: "general: Fix various spelling errors"
2021-01-09 22:10:27 +08:00
xperia64 e33677b021
Add 3D slider value to the HID shared page (#5676)
* Add 3D slider value to the HID shared page; Fixes MSet

* Use f32
2021-01-05 22:01:01 +01:00
Tobias 50eb634583
Merge pull request #5536 from FearlessTobi/port-4440
Port yuzu-emu/yuzu#4440: "CMakeLists: Update several libraries"
2021-01-04 04:03:34 +01:00
FearlessTobi 0e534f7e61 CMakeFiles: Update json to 3.9.0
Keeps the tracked version of the library up to date.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>
2021-01-04 03:35:56 +01:00
xperia64 c1d7ba4d60
Delete the old log file before rotating (#5675) 2021-01-03 14:53:23 -05:00
xperia64 755393da90
Look at direction of analog axis travel instead of instantaneous sample (#5509)
* Look at direction of analog axis travel instead of instantaneous sample

* Clang-format

* Use map count, use unordered_map

* Improve digital vs. true analog axis heuristics
2021-01-02 21:09:26 -05:00
FearlessTobi 1653ebaa45 general: Fix various spelling errors
Co-Authored-By: Morph <39850852+Morph1984@users.noreply.github.com>
2021-01-03 02:39:41 +01:00
bunnei 9c76120a13
Fix the old log file to work with the log parser. 2021-01-01 03:17:20 -08:00
bunnei f00c4a4cf5
Merge pull request #5668 from vitor-k/update-zstd
Update zstd to v1.4.8
2021-01-01 03:03:59 -08:00
bunnei 1265c37bab
Merge pull request #5666 from xperia64/log_rotate
Rotate previous log file to "citra_log.txt.old"
2021-01-01 03:03:31 -08:00
Vitor Kiguchi a6fbc1c9e3 zstd: define include_directories for build interface only 2021-01-01 06:31:20 -03:00
Vitor K ce16653cc8
Automatic Controller Binding (#5100)
* Implement the basics of controller auto mapping. From testing doesn't currenlty work.
Opening the controller requires the device index, but it is only known and guaranteed
at boot time or when a controller is connected.

* Use the SDL_INIT_GAMECONTROLLER flag to initialize the controller
subsystem. It automatically initializes the joystick subsystem too,
so SDL_INIT_JOYSTICK is not needed.

* Implement the SDLGameController class to handle open game controllers.
Based on the SDLJoystick implementation.

* Address review comments

* Changes SDLJoystick and SDLGameController to use a custom default
constructible destructor, to improve readability. The only deleters
used previously were SDL_JoystickClose and SDL_GameControllerClose,
respectively, plus null lambdas. Given that both SDL functions
accept null pointers with just an early return, this should be
functionally the same.
with just an early return

* warn the user when a controller mapping is not found

* Get axis direction and threshold from SDL_ExtendedGameControllerBind

* Reject analog bind if it's not axis, for the couple of examples present in SDL2.0.10's db.
Also add SDL_CONTROLLER_BINDTYPE_NONE for the button bind switch, with a better log message.

* sdl_impl.cpp: Log the error returned by SDL_GetError upon failure to open joystick

* sdl: only use extended binding on SDL2.0.6 and up

* sdl_impl.cpp: minor changes
2021-01-01 10:01:07 +01:00
Vitor Kiguchi 6876f1aaa4 zstd: set include directory directly 2021-01-01 02:57:15 -03:00
Pengfei Zhu 6f2bbbcced
Merge pull request #5658 from FearlessTobi/cheat-window-flags
citra_qt/cheats: Make window resizable and remove help hint
2021-01-01 10:03:15 +08:00
xperia64 b4a6763484 Rotate previous log file to '.old' if it exists 2020-12-31 16:10:01 -05:00
Vitor Kiguchi 8a67605450 Update zstd to v1.4.8 2020-12-31 14:52:07 -03:00
xperia64 5f1eb7146d
Merge generic part of Android microphone changes (#5624) 2020-12-30 19:21:03 -05:00
Vitor K e6ef00b41d
Update deps.sh (#5665)
Try fixing macos build.
2to3 from 2.7 is not really used and is interfering with the
installation of Python 3.9, on which one of ffmpeg's dependencies
depends.
2020-12-30 17:10:18 -05:00
Marshall Mohror 820c288236
Merge pull request #5664 from vitor-k/fix-iofile
Revert #5530 "Port yuzu-emu/yuzu#4539"
2020-12-30 12:20:21 -06:00
Marshall Mohror ab6c605e59
Merge pull request #5609 from gal20/enable-fdk-patch
Enable fdk decoder for flatpak version
2020-12-30 11:59:18 -06:00
Vitor Kiguchi fb49ce462f Revert #5530 "Port yuzu-emu/yuzu#4539"
There is currently no such warning and the solution proposed
omits the call instead of the warning.
2020-12-30 14:49:40 -03:00
bunnei 987f910a86
Merge pull request #5530 from FearlessTobi/port-4539
Port yuzu-emu/yuzu#4539: "common: Silence two discarded result warnings"
2020-12-30 01:55:33 -08:00
bunnei 39e0644993
Merge pull request #5634 from FearlessTobi/port-4798
Port yuzu-emu/yuzu#4798: "udp/client: Take std::function by const reference with TestCommunication()"
2020-12-30 01:54:40 -08:00
bunnei 3c1211e9fe
Merge pull request #5648 from FearlessTobi/port-5139
Port yuzu-emu/yuzu#5139: "game_list_p: Resolve deprecated usage of QVariant operator<"
2020-12-30 01:53:01 -08:00
Marshall Mohror 26e8b755f0
Merge pull request #5661 from BreadFish64/fix-bitrise
Fix Bitrise build
2020-12-29 22:43:35 -06:00
BreadFish64 b3915c23a0 Update Gradle 2020-12-29 13:29:02 -06:00
BreadFish64 dbd6b8adc3 Update Bitrise build stages 2020-12-29 13:28:53 -06:00
xperia64 94013c8e00
Merge ARM64 Dynarmic (#5620)
* Point dynarmic to citra fork, update dynarmic to AArch64 merge branch

* Enable dynarmic ARM64 support
2020-12-28 18:39:00 -05:00
xperia64 94d1f695ee
Use alternate-form formatting for floats after fmt 7.1.2 update (#5654)
* Use alternate-form formatting for floats after 7.1.2  update

* Last two floats
2020-12-28 18:32:36 -05:00
FearlessTobi 54a95e9c58 citra_qt/cheats: Make window resizable and remove help hint
Fixes https://github.com/citra-emu/citra/issues/5575.
2020-12-28 17:01:30 +01:00
Lioncash fdf0825369 game_list_p: Resolve deprecated usage of QVariant operator<
This is designated as obsolete in Qt's docs (see:
https://doc.qt.io/qt-5/qvariant-obsolete.html#operator-lt)
2020-12-19 18:48:38 +01:00
Tobias 3f13e1cc24
cubeb_sink: Use static_cast instead of reinterpret_cast in DataCallback() (#5573)
Conversions from void* to the proper data type are well-defined and
supported by static_cast. We don't need to use reinterpret_cast here.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>

Co-authored-by: LC <712067+lioncash@users.noreply.github.com>
2020-12-07 16:06:16 +01:00
Tobias f0e3637c7a
codec: Make lookup table static constexpr (#5572)
Allows compilers to elide needing to push these values on the stack
every time the function is called.

Co-authored-by: Lioncash <mathew1800@gmail.com>
2020-12-07 16:05:45 +01:00
Tobias 702af87f0d
Port yuzu-emu/yuzu#4700: "game_list: Eliminate redundant argument copies" (#5571)
* game_list: Eliminate redundant argument copies

Several functions can be taken by const reference to avoid copies

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>

* game_list: Make game list function naming consistent

Makes the naming consistent with the rest of the functions that are
present.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>

Co-authored-by: Lioncash <mathew1800@gmail.com>
Co-authored-by: LC <712067+lioncash@users.noreply.github.com>
2020-12-07 16:05:13 +01:00
Tobias c557b290af
microprofile: Don't memset through std::atomic types (#5528)
Two of the members of the MicroProfileThreadLog contains two std::atomic
instances. Given these aren't trivially-copyable types, we shouldn't be
memsetting the structure, given implementation details can contain other
members within it.

To avoid potential undefined behavior on platforms, we can use aggregate
initialization to zero out the members while still having well-defined
behavior.

While we're at it we can also silence some sign conversion warnings.

Co-authored-by: Lioncash <mathew1800@gmail.com>
2020-12-07 16:04:31 +01:00
Vitor K 4888a14c12
Make UNIMPLEMENTED_MSG consistent with UNIMPLEMENTED (#5631)
The current inconsistency can result in a developer unintentionally
creating a crash when using UNIMPLEMENTED_MSG, if they're only
familiar with UNIMPLEMENTED. The two macros shouldn't have such
wildly different behaviors.
2020-12-06 23:36:04 +01:00
FearlessTobi c37dc23481 udp/client: Take std::function by const reference with TestCommunication()
Avoids redundant copies.

Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>
2020-12-05 23:07:08 +01:00
mnml 6f45b402e7
UDS: implement GetApplicationData (#5533) 2020-12-05 22:27:57 +01:00
Tobias 664f5da105
tests: Fix warning about comparison between signed and unsigned (#5632)
Co-authored-by: comex <comexk@gmail.com>
2020-12-05 22:20:50 +01:00
xperia64 36780040a6
Update dynarmic to last compatible version (#5618) 2020-12-05 22:18:07 +01:00
Vitor K 2f5eec3576
Fixes to "hide mouse on inactivity" (#5476)
The feature wasn't working when the "single window mode" was off.
Changed the cursor setting to only affect the render_window and
moved to a signal/slot model to show the mouse.
2020-12-05 22:12:17 +01:00
Pengfei Zhu 7ae0fc7338
Merge pull request #5626 from zhaowenlan1779/deliver-arg-fix
service/apt: Fix deliver arg hmac size
2020-12-05 06:49:53 +08:00
zhupengfei 8f0aebcd4f
service/apt: Fix deliver arg hmac size 2020-11-28 08:52:35 +08:00
xperia64 a13a230511
Update inih (#5615) 2020-11-24 18:25:10 -05:00
Pengfei Zhu 21fb9d63f4
service/apt: Implement Deliver Args (#5611)
* service/apt: Add GetModule and GetAppletManager

These will be used to retrieve and set deliver args across system resets (which are currently implemented as complete restarts)

* applet_manager: Implement DeliverArg

`flags` was added to `ApplicationJumpParameters` as flags 0x2 is handled differently from 0x0.

* service/apt: Add ReceiveDeliverArg, implement GetStartupArgument

Some based on guesses.

* Address review comments
2020-11-24 20:10:31 +01:00
Ben 182ffa4243
APT: implement Set and GetWirelessRebootInfo (#5328)
* APT: implement Set and GetWirelessRebootInfo

* make wireless_reboot_info a member of APT::Module

* Removed stubbed from log message
2020-11-23 15:52:35 +01:00
xperia64 3fa12d43f5
Fix fmt crash from deprecated percent specifier (#5616)
* Fix fmt crash from deprecated percent specifier

* ...clang format
2020-11-22 20:55:45 -05:00