Commit Graph

16058 Commits

Author SHA1 Message Date
David Marcec
a5af1161c9 Place in anonymous namespace 2020-08-03 21:31:28 +10:00
David Marcec
6cfff2c3f6 loader: Make IdentifyFile typesafe
Relies on #4465 for concept.h Common::IsBaseOf
2020-08-03 21:31:27 +10:00
David
9b75481755
ipc: Allow all trivially copyable objects to be passed directly into WriteBuffer (#4465)
* ipc: Allow all trivially copyable objects to be passed directly into WriteBuffer

With the support of C++20, we can use concepts to deduce if a type is an STL container or not.

* More agressive concept for stl containers

* Add -fconcepts

* Move to common namespace

* Add Common::IsBaseOf
2020-08-03 07:28:54 -04:00
David
6c7292de33
Merge pull request #4263 from lat9nq/fix-screencaps-2
screenshots: Option to save screenshots immediately in a specified directory + Linux workaround
2020-08-03 21:00:14 +10:00
David
0ca42c806f
Merge pull request #4439 from lioncash/cpu
cpu_manager: Remove redundant std::function declarations
2020-08-03 20:58:31 +10:00
David
50d8264833
Merge pull request #4438 from lioncash/localizing
yuzu/main: Remove redundant usages of QStringLiteral("")
2020-08-03 20:58:00 +10:00
Lioncash
0105368cc1 ci: Make use of clang-format 10.0
10.0 seems to play nicer with C++ attributes compared to clang-format
6.0.
2020-08-02 20:55:54 -04:00
David Marcec
0947f613b1 mix buffer depopping 2020-08-01 16:25:08 +10:00
Morph
fc86cb4ca2 minor nits 2020-07-31 11:02:59 -04:00
David Marcec
e586921c28 am: Unstub SetScreenShotPermission 2020-08-01 00:44:14 +10:00
Morph
1241020093 fsp-srv: Stub Read/WriteSaveDataFileSystemExtraDataWithMaskBySaveDataAttribute
Stub these 2 service commands required for Animal Crossing: New Horizons Update 1.4.0
2020-07-30 15:39:44 -04:00
Morph
45fd67c109 fs: Rename SaveDataDescriptor to SaveDataAttribute 2020-07-30 15:29:39 -04:00
David
0c262f8ac2
Merge pull request #4392 from lioncash/guard
compatible_formats: Add missing header guard
2020-07-31 01:08:56 +10:00
David Marcec
1b8fe7073b adpcm streaming 2020-07-30 18:16:57 +10:00
bunnei
4c0f6f1bc8
Merge pull request #4396 from lioncash/comma
surface_params: Replace questionable usages of the comma operator with semicolons
2020-07-29 19:55:44 -04:00
bunnei
b8a7b530f8
Merge pull request #4372 from Morph1984/remove_context_menu
game_list: Add "Remove" context menu
2020-07-29 14:20:40 -07:00
Morph
e0d02d032b game_list_worker: Fix game list subdirectory scanning
Oddly enough the scan that feeds the manual content provider is hardcoded to scan 2 nested directories deep.
This effectively rendered the scan subdirectories setting useless as the manual content provider cannot find any games located more than 2 nested directories deep.
Furthermore, this behavior causes game files to be picked up by the manual content provider even if scan subdirectories is disabled.

FIx this by utilizing the behavior described when populating the game list for populating the content provider.
2020-07-29 09:22:29 -04:00
Morph
e59d17167d main: Add support for removing SDMC installed titles 2020-07-29 06:50:30 -04:00
Morph
ed46f3c62a xts_archive: Check if the file is nullptr prior to parsing
Fixes an access violation where the file no longer exists at the specified path while being parsed.
2020-07-29 06:50:30 -04:00
Morph
2ec852dd9f registered_cache: Add support for removing folder ncas 2020-07-29 06:50:30 -04:00
Morph
b317942131 game_list: Limit context menu options for homebrew
Hides the following options when the title id is 0:
- Open Save Location
- Open Mod Data Location
- Open Transferable Shader Cache
- All removal options except Remove Custom Configuration
2020-07-29 06:50:30 -04:00
Morph
cd814bfdfe main: Remove assert for opening savedata when program_id = 0 2020-07-29 06:50:30 -04:00
Morph
f78e44762a main: Silence [[fallthrough]] warning 2020-07-29 06:50:30 -04:00
Morph
ef02370816 main: Split removal cases into their individual functions and address feedback 2020-07-29 06:50:30 -04:00
Morph
85e1facfe6 main: Connect game list remove signals to removal functions 2020-07-29 06:50:30 -04:00
Morph
de6b852dc2 game_list: Add "Remove" context menu
Adds the following actions:
- Remove Installed Update
- Remove All Installed DLC
- Remove Shader Cache
- Remove Custom Configuration
- Remove All Installed Contents
2020-07-29 06:50:30 -04:00
bunnei
b205b12e75
Merge pull request #4442 from lioncash/devicemem
device_memory: Remove unused system member
2020-07-28 13:03:30 -07:00
LC
33d789524e
Merge pull request #4446 from Morph1984/remove-30fps-hack
configure_graphics: Remove Force 30 FPS mode
2020-07-28 14:17:47 -04:00
Morph
8d42456dc2 configure_graphics: Remove Force 30 FPS mode
The introduction of multicore rendered this setting non-functional as timing code was changed.

This removes the setting entirely.
2020-07-28 08:07:26 -04:00
Morph
e8f22730d1 renderer_opengl: Use 1/4 of all threads for async shader compilation 2020-07-28 05:08:27 -04:00
Lioncash
e3f0c93230 common/atomic_ops: Don't cast away volatile from pointers
Preserves the volatility of the pointers being casted.
2020-07-28 04:36:53 -04:00
ReinUsesLisp
bc699ace15 service/bsd: Handle Poll with no entries accurately
Testing shows that Poll called with zero entries returns -1 and signals
an errno of zero.
2020-07-28 01:51:47 -03:00
ReinUsesLisp
f7d59f3e0e services/bsd: Implement most of bsd:s
This implements: Socket, Poll, Accept, Bind, Connect, GetPeerName,
GetSockName, Listen, Fcntl, SetSockOpt, Shutdown, Recv, RecvFrom,
Send, SendTo, Write, and Close

The implementation was done referencing: SwIPC, switchbrew, testing
with libnx and inspecting its code, general information about bsd
sockets online, and analysing official software.

Not everything from these service calls is implemented, but everything
that is not implemented will be logged in some way.
2020-07-28 01:48:42 -03:00
ReinUsesLisp
2c67bbf609 service/sockets: Add worker pool abstraction
Manage worker threads with an easy to use abstraction.
We can expand this to support thread deletion in the future.
2020-07-28 01:47:03 -03:00
ReinUsesLisp
5692c48ab7 service/sockets: Add worker abstraction to execute blocking calls asynchronously
This abstraction allows executing blocking functions (like recvfrom on a
socket configured for blocking) without blocking the service thread.
It is intended to be used with SleepClientThread.
2020-07-28 01:47:03 -03:00
ReinUsesLisp
80b4bd3583 service/sockets: Add translate functions
These functions translate from Network enumerations/structures to guest
enumerations/structures and viceversa.
2020-07-28 01:47:03 -03:00
ReinUsesLisp
22263ccaa4 service/sockets: Add enumerations and structures
Add guest enumerations and structures used in socket services
2020-07-28 01:47:03 -03:00
ReinUsesLisp
ef8acc9c3d services/nifm: Implement GetCurrentIpAddress
This is trivially implemented using the Network abstraction

- Used by ftpd
2020-07-28 01:47:03 -03:00
Lioncash
2258f33ee4 device_memory: Remove unused system member
This isn't used by anything in particular, so it can be removed.
2020-07-27 23:37:49 -04:00
bunnei
05781ce8c4
Merge pull request #4437 from lioncash/ptr
core_timing: Make use of uintptr_t to represent user_data
2020-07-27 19:29:22 -07:00
Lioncash
2e68282214 CMakeLists: Update boost to 1.73
Keeps the library up to date.
2020-07-27 22:10:01 -04:00
Lioncash
6bb77b06dc CMakeLists: Update catch to 2.13
Keeps the library up to date
2020-07-27 22:09:04 -04:00
Lioncash
5b785232de CMakeLists: Update zstd to 1.4.5
Keeps the library version up to date.
2020-07-27 22:07:34 -04:00
Lioncash
d25265d63a CMakeFiles: Update json to 3.8.0
Keeps the tracked version of the library up to date.
2020-07-27 22:06:11 -04:00
Lioncash
989ad52dc1 cpu_manager: Remove redundant std::function declarations
We can just return the function directly. Making for less reading.
2020-07-27 21:57:05 -04:00
bunnei
312c3788df
Merge pull request #4420 from lat9nq/fix-themed-label-bg
qt_themes: Set QLabel background color to transparent for Dark and Midnight Blue themes
2020-07-27 18:29:06 -07:00
bunnei
db94457205
Update src/core/hle/service/nvdrv/devices/nvmap.cpp
Co-authored-by: LC <mathew1800@gmail.com>
2020-07-27 18:27:20 -07:00
Lioncash
a7af349dae core_timing: Make use of uintptr_t to represent user_data
Makes the interface future-proofed for supporting other platforms in the event we ever support platforms with differing pointer sizes. This way, we have a type in place that is always guaranteed to be able to represent a pointer exactly.
2020-07-27 21:21:01 -04:00
Lioncash
2e303095d5 yuzu/main: Remove redundant usages of QStringLiteral("")
An empty QStringLiteral can more efficiently be replaced with an empty
QString.
2020-07-27 21:04:17 -04:00
bunnei
6b35317ff3
Merge pull request #4419 from lioncash/initializer
vulkan: Resolve -Wmissing-field-initializer warnings
2020-07-27 15:52:03 -07:00