greggameplayer
39efd5a7f0
Implement SurfaceTarget Texture2DArray
...
( needed by Mario+Rabbids Kingdom Battle )
2018-10-31 04:29:15 +01:00
Rodolfo Bogado
cbbb016f34
Improve OpenGL state handling
2018-10-30 21:19:04 -03:00
Lioncash
1429e2ca92
service/usb: Update IPdSession's function table
...
Updated based off information on SwitchBrew.
2018-10-30 15:23:49 -04:00
ReinUsesLisp
58988435c2
video_core: Move surface declarations out of gl_rasterizer_cache
2018-10-30 16:07:20 -03:00
FernandoS27
906d2fd5af
Assert Control Codes Generation
2018-10-30 13:37:55 -04:00
bunnei
6ce20c4d1f
Merge pull request #1624 from lioncash/boost
...
general: Remove unused boost inclusions where applicable
2018-10-30 13:13:39 -04:00
bunnei
a090b0a28c
Merge pull request #1595 from FreddyFunk/cast
...
configure_system: Fix compiler warning
2018-10-30 00:27:41 -04:00
Lioncash
70e4492d49
general: Remove unused boost inclusions where applicable
...
Cleans up unused includes and trims off some dependencies on externals.
2018-10-30 00:09:46 -04:00
Frederic L
c76f4b6aec
global: Use std::optional instead of boost::optional ( #1578 )
...
* get rid of boost::optional
* Remove optional references
* Use std::reference_wrapper for optional references
* Fix clang format
* Fix clang format part 2
* Adressed feedback
* Fix clang format and MacOS build
2018-10-30 00:03:25 -04:00
bunnei
bc45d67f35
Merge pull request #1621 from lioncash/ipc
...
hle_ipc: Make GetDomainMessageHeader return a regular pointer
2018-10-29 23:55:59 -04:00
Lioncash
6f2cb1a437
hle_ipc: Add member function for querying the existence of a domain header
...
Gets rid of the need to call the getter and then check for null.
2018-10-29 23:28:04 -04:00
Lioncash
abf974f2f5
hle_ipc: Make GetDomainMessageHeader return a regular pointer
...
Nothing requires the shared owner ship here, so we can just return a
plain pointer.
2018-10-29 23:18:25 -04:00
bunnei
2bf8ae7730
Merge pull request #1611 from lioncash/const
...
core: Add missing const variants of getters for the System class
2018-10-29 22:48:59 -04:00
bunnei
7a504b045b
Merge pull request #1580 from FernandoS27/mm-impl
...
Implemented Mipmaps
2018-10-29 22:34:00 -04:00
bunnei
3465685c93
Merge pull request #1617 from FearlessTobi/fix-stretch-delay
...
time_stretch: Switch to values of Citra
2018-10-29 19:09:30 -04:00
Zach Hilman
08ce39a982
ns: Implement command 400: GetApplicationControlData
...
Returns the raw NACP bytes and the raw icon bytes into a title-provided buffer. Pulls from Registration Cache for control data, returning all zeros should it not exist.
2018-10-29 16:20:16 -04:00
Zach Hilman
c41c8d5cc1
patch_manager: Add support for dumping decompressed NSOs
...
When enabled in settings, PatchNSO will dump the unmodified NSO that it was passed to a file named <build id>.nso in the dump root for the current title ID.
2018-10-29 16:10:16 -04:00
Zach Hilman
c8bc8ba008
settings: Add setting to control NSO dumping
...
Also adds UI option in Debug > Dump section, with the idea later things to be dumped (i.e. other game data or textures, etc) will use the same group box.
2018-10-29 16:09:08 -04:00
Zach Hilman
2775303246
bis_factory: Add getter for mod dump root for a title ID
...
Equates to yuzu_dir/dump/<title id>/
2018-10-29 16:08:03 -04:00
Zach Hilman
6403fcec90
fsp_srv: Implement ISaveDataInfoReader
...
An object to read SaveDataInfo objects, which describe a unique save on the system. This implementation iterates through all the directories in the save data space and uses the paths to reconstruct the metadata.
2018-10-29 13:54:39 -04:00
Zach Hilman
28a569a78b
fsp_srv: Implement command 61: OpenSaveDataInfoReaderBySaveDataSpaceId
...
Needed by Checkpoint. Returns an object that can iterate through all savedata on the system.
2018-10-29 13:54:39 -04:00
Zach Hilman
1f01627bbc
savedata_factory: Expose accessors for SaveDataSpace
2018-10-29 13:54:38 -04:00
Zach Hilman
706f466e9f
loader/nro: Call RegisterRomFS from Load
...
Allows NRO homebrew to use the RomFS in the ASET section.
2018-10-29 13:54:38 -04:00
Zach Hilman
7c8d9d5960
control_metadata: Add GetRawBytes function to NACP
...
Returns the raw bytes of the NACP file. Needed for GetApplicationControlData which returns the raw, unprocessed NACP to the game.
2018-10-29 13:54:38 -04:00
bunnei
b8d04591e5
Merge pull request #1613 from ReinUsesLisp/gl-utils
...
video_core: Move OpenGL specific utils to its renderer
2018-10-29 13:22:14 -04:00
fearlessTobi
0470bc90ce
time_stretch: Switch to values of Citra
2018-10-29 14:49:36 +01:00
bunnei
24c7e153b7
Merge pull request #1610 from slashiee/dxt1-alpha
...
renderer_opengl: Enable alpha channel for DXT1 texture format
2018-10-28 21:29:43 -04:00
ReinUsesLisp
06aee386b7
video_core: Move OpenGL specific utils to its renderer
2018-10-28 22:22:30 -03:00
Rodolfo Bogado
c7a7479993
renderer_opengl: Correct bpp value for ASTC_2D_8X5_SRGB
2018-10-28 20:52:57 -03:00
FernandoS27
8b69038887
Assert Control Flow Instructions using Control Codes
2018-10-28 19:16:41 -04:00
FernandoS27
af83b683d8
Fixed black textures, pixelation and we no longer require to auto-generate mipmaps
2018-10-28 19:00:49 -04:00
FernandoS27
be78be20dc
Fixed mipmap block autosizing algorithm
2018-10-28 19:00:05 -04:00
FernandoS27
c9f347e156
Fixed Invalid Image size and Mipmap calculation
2018-10-28 19:00:04 -04:00
FernandoS27
b6e94867b9
Fixed Block Resizing algorithm and Clang Format
2018-10-28 19:00:03 -04:00
FernandoS27
5d5236c512
Implement Mip Filter
2018-10-28 19:00:01 -04:00
FernandoS27
76ce66359d
Zero out memory region of recreated surface before flushing
2018-10-28 19:00:00 -04:00
FernandoS27
87d1001720
Implement Mipmaps
2018-10-28 18:59:59 -04:00
Lioncash
55233bbdd2
core: Make System references const where applicable
2018-10-28 17:45:29 -04:00
Lioncash
9497f1d93f
core: Add missing const variants of getters for the System class
...
Many of the Current<Thing> getters (as well as a few others) were
missing const qualified variants, which makes it a pain to retrieve
certain things from const qualified references to System.
2018-10-28 17:44:58 -04:00
Michael
df99f996f8
Enable alpha channel for DXT1 texture format
2018-10-28 14:11:04 -07:00
Frederic Laing
d0eea8fc3a
configure_system: Fix compiler warning
2018-10-28 21:13:09 +01:00
Tobias
8a7dd746c1
Correct bpp value for ASTC_2D_8X5
2018-10-28 19:49:10 +01:00
bunnei
e35ba30edc
Merge pull request #1601 from FernandoS27/shader-precision
...
Improved Shader accuracy on Vertex and Geometry Shaders.
2018-10-28 13:06:21 -04:00
FernandoS27
95576a248a
Refactor precise usage and add FMNMX, MUFU, FMUL32 and FADD332
2018-10-28 11:38:40 -04:00
fearlessTobi
381e04453a
compatdb: Use a seperate endpoint for testcase submission
2018-10-28 13:23:02 +01:00
bunnei
9ec2b90746
Merge pull request #1593 from lioncash/svc
...
svc: Implement svcGetInfo command 0xF0000002
2018-10-28 04:38:48 -04:00
Frederic L
cbe1bbf1bd
file_sys/patch_manager: Remove unnecessary if-statements ( #1586 )
...
* remove unnecessary if-statements
* Addressed feedback
2018-10-28 02:30:29 -04:00
bunnei
705fd08ea1
Merge pull request #1598 from DeeJayBro/delete-directory
...
service/filesystem: Implemented DeleteDirectory & DeleteDirectoryRecursive
2018-10-28 02:29:52 -04:00
bunnei
8cda0ea59f
Merge pull request #1600 from DarkLordZach/nsp-secondary-loader-fix
...
loader/nsp: Move secondary loader initialization to constructor
2018-10-28 02:29:14 -04:00
Rodolfo Bogado
1670155ee2
Implement sRGB Support, including workarounds for nvidia driver issues and QT sRGB support
2018-10-28 01:13:55 -03:00
bunnei
7323124f91
Merge pull request #1602 from DarkLordZach/key-derivation-isxdigit
...
key_manager: Use isxdigit instead of isdigit when reading key file
2018-10-27 23:54:48 -04:00
Zach Hilman
74802ed32a
key_manager: Use isxdigit instead of isdigit when reading key file
...
Crypto revisions are hex numbers and this function only checks if the string is valid for stoul in base 16, so it should be isxdigit.
2018-10-27 21:56:10 -04:00
bunnei
3ca995cd9a
Merge pull request #1597 from lioncash/error
...
configure_system: Indicate when filesystem operations fail
2018-10-27 21:09:31 -04:00
bunnei
ca9c311f85
Merge pull request #1594 from FreddyFunk/static-cast
...
gl_rasterizer_cache: Fix compiler warning
2018-10-27 21:09:06 -04:00
FernandoS27
6eb07feeea
Improved Shader accuracy on Vertex and Geometry Shaders with FFMA, FMUL and FADD
2018-10-27 20:09:26 -04:00
bunnei
5bff98c4be
Merge pull request #1596 from FearlessTobi/port-4367
...
Port citra-emu/citra#4367 : "cubeb_sink: ignore null-name device when selecting"
2018-10-27 13:26:24 -04:00
bunnei
d9cfb9dc15
Merge pull request #1592 from bunnei/prim-restart
...
gl_rasterizer: Implement primitive restart.
2018-10-27 13:25:00 -04:00
FernandoS27
6540abe0d7
Implement Default Block Height for each format
2018-10-27 10:17:39 -04:00
Zach Hilman
bd78dc0c29
loader/nsp: Move secondary loader initialization to constructor
...
Prevents nullptr bug when trying to dump the RomFS of an NSP resulting from secondary_loader not being initialized.
2018-10-27 10:16:29 -04:00
Frederic Laing
a2ce78114e
gl_rasterizer_cache: Fix compiler warning
2018-10-27 13:06:26 +02:00
DeeJayBro
d29877e73e
service/filesystem: Add DirectoryDelete & DirectoryDeleteRecursively
2018-10-27 11:56:39 +02:00
Lioncash
f7d6c35085
configure_system: Make GetIcon() return the scaled 64x64 icon
...
Avoids the need to put the scaling parameters all over the place for the
common case. The only other time scaling is done is to generate the
smaller 48x48 image, so this is fine.
2018-10-27 01:05:56 -04:00
Lioncash
f4272e65b8
configure_system: Move entry formatting for the user account list entries to its own function
...
Avoids the need to duplicate this all over the place, and makes it
translator-friendly across the board.
2018-10-27 01:05:56 -04:00
Lioncash
2099e41b17
configure_system: Display errors to the user if file operations fail when setting user images
...
We should display an error to the user if setting a user image for an
account fails, rather than continuing onwards.
2018-10-27 01:05:50 -04:00
Weiyi Wang
8c7a40434a
cubeb_sink: ignore null-name device when selecting
...
We already ignore them on listing devices. We should do the same when selecting devices. This fix a crash when opening a specific device while there is a null device in the list
2018-10-27 00:43:04 +02:00
Lioncash
2aa6e317d6
svc: Localize the GetInfo enum class to the function itself
...
Nothing from this enum is intended to be used outside of this function.
2018-10-26 12:49:14 -04:00
Lioncash
9bb7bc911f
svc: Implement svcGetInfo command 0xF0000002
...
This retrieves:
if (curr_thread == handle_thread) {
result = total_thread_ticks + (hardware_tick_count - last_context_switch_ticks);
} else if (curr_thread == handle_thread && sub_id == current_core_index) {
result = hardware_tick_count - last_context_switch_ticks;
}
2018-10-26 12:49:11 -04:00
bunnei
b22ff96e0a
gl_rasterizer: Implement primitive restart.
2018-10-26 00:42:57 -04:00
bunnei
688ddb4c94
Merge pull request #1533 from FernandoS27/lmem
...
Implemented Shader Local Memory
2018-10-26 00:16:25 -04:00
bunnei
96d131ebc1
Merge pull request #1430 from DarkLordZach/remove-promote-dir
...
vfs: Remove InterpretAsDirectory and related functions
2018-10-26 00:15:34 -04:00
bunnei
37f48fefb7
Merge pull request #1591 from bunnei/depth-range
...
gl_rasterizer: Implement depth range.
2018-10-26 00:12:20 -04:00
bunnei
2bc1f075bb
maxwell_3d: Add code for initializing register defaults.
2018-10-25 23:42:39 -04:00
bunnei
2854218179
Merge pull request #1569 from lioncash/amiibo
...
yuzu/main: Notify user of loading errors with Amiibo data
2018-10-25 22:10:08 -04:00
bunnei
101c0f30b3
Merge pull request #1587 from lioncash/private
...
configure_system: Minor cleanup-related changes
2018-10-25 22:08:06 -04:00
bunnei
419b62982f
gl_rasterizer: Implement depth range.
2018-10-25 21:53:24 -04:00
bunnei
c86d76d65c
ldr: Partially implement LoadNro.
...
- This is an incomplete implementation. It was tested with Super Mario Party.
2018-10-25 18:03:54 -04:00
bunnei
bdb2835028
process: LoadModule should clear JIT instruction cache.
2018-10-25 18:03:54 -04:00
bunnei
59b8f91cb2
Kernel/Memory: Added a function to first a suitable guest address at which to allocate a region of a given size.
2018-10-25 18:03:54 -04:00
bunnei
ae5b0d437f
nro: Make LoadNro method accessible outside of apploader code.
2018-10-25 18:03:54 -04:00
Lioncash
062bf90622
configure_system: Make the file selector text translatable
...
This should be localizable, since it's user-facing text.
2018-10-25 17:27:30 -04:00
Lioncash
73dea24300
configure_system: Make GetAccountUsername() an internal function
...
We can just make the function accept an arbitrary ProfileManager
reference and operate on that instead of tying the function to the class
itself. This allows us to keep the function internal to the cpp file and
removes the need to forward declare the UUID struct.
2018-10-25 17:27:25 -04:00
Lioncash
f38577db9a
configure_system: Default initialize member variables
...
These should be initialized to deterministic values so it's easier to
catch improper behavior, as it'll always be reproducable, instead of
performing uninitialized reads.
2018-10-25 16:52:23 -04:00
Lioncash
45c01544a6
configure_system: Simplify UUID generation call in AddUser()
...
This is a static function so we can just perform an assignment directly.
2018-10-25 16:50:07 -04:00
Lioncash
e39e875547
configure_system: Amend function casing
2018-10-25 16:47:09 -04:00
Lioncash
6a0e8f4357
configure_system: Add missing override specifier on the destructor
2018-10-25 16:45:13 -04:00
Lioncash
49882458f5
configure_system: Make public slots private
...
These are only used within this class, so we can make them private to
keep their use contained. This also gets rid of the pre-Qt5 'slot'
identifier, since Qt 5's connection syntax doesn't require a function to
be declared a slot anymore.
2018-10-25 16:43:44 -04:00
Zach Hilman
0bb4dbc74b
ips_layer: Use rle_size instead of data_size in RLE patch application
...
Prevents a potential bug when using RLE records in an IPS patch.
2018-10-25 14:23:56 -04:00
bunnei
47ca03016e
Merge pull request #1579 from lioncash/usb
...
service/usb: Update service function tables
2018-10-25 12:22:57 -04:00
bunnei
1c59a4234a
Merge pull request #1576 from lioncash/acc-warn
...
service/acc: Silence compiler truncation warnings
2018-10-25 12:22:10 -04:00
bunnei
b113cf4aab
Merge pull request #1577 from lioncash/err
...
kernel/error: Amend error return code values
2018-10-25 01:10:26 -04:00
bunnei
6bf7e0d83d
Merge pull request #1524 from FernandoS27/layers-fix
...
rasterizer: Fix Layered Textures Loading and Cubemaps
2018-10-25 00:29:18 -04:00
bunnei
418febe1e4
Merge pull request #1575 from lioncash/qstring
...
game_list_worker: Use QString's formatting instead of fmt in FormatPatchNameVersions()
2018-10-24 19:39:43 -04:00
Lioncash
64968341b7
service/usb: Update service function tables
...
Updated based off the information provided by Hexkyz on Switchbrew.
2018-10-24 19:07:55 -04:00
Lioncash
9c03c5ac8a
service/acc: Move fallback image to file scope
...
This is just flat data, so it doesn't really need to be in the function
itself. This also allows deduplicating the constant for the backup size
in GetImageSize().
2018-10-24 18:22:24 -04:00
Lioncash
6da246b0c2
service/acc: Silence compiler warnings
...
Silences compiler warnings related to truncation. This also introduces a
small helper function to perform the clamping of the image size.
2018-10-24 18:22:24 -04:00
Lioncash
8eec717cce
service/acc: Early return in failure case in LoadImage()
...
Allows unindenting the other branch's code.
2018-10-24 18:22:20 -04:00
bunnei
05575b9663
Merge pull request #1570 from lioncash/optional
...
profile_manager: Use std::optional instead of boost::optional
2018-10-24 18:11:03 -04:00
bunnei
f7a85d507e
Merge pull request #1558 from lioncash/ptr
...
yuzu/configuration/config: Use a std::unique_ptr for qt_config instead of a raw pointer
2018-10-24 18:07:14 -04:00
FernandoS27
159bedd74f
Implemented LD_L and ST_L
2018-10-24 17:51:53 -04:00
FernandoS27
2d0d8fa85c
Implement Shader Local Memory
2018-10-24 17:50:43 -04:00
bunnei
518860a969
Merge pull request #1565 from lioncash/audio
...
time_stretch: Remove unused m_channel_count member variable
2018-10-24 17:39:53 -04:00
bunnei
4322798a5d
Merge pull request #1554 from FernandoS27/pointsize
...
Implement PointSize Output Attribute.
2018-10-24 17:38:38 -04:00
bunnei
c12009039b
Merge pull request #1571 from lioncash/debug-translate
...
graphic_breakpoints: Correct translation of strings in BreakpointModel's data() function
2018-10-24 17:37:18 -04:00
bunnei
d24184d9a8
Merge pull request #1564 from lioncash/npad
...
npad: Remove unused controller variable from OnInit()
2018-10-24 17:36:55 -04:00
bunnei
7163b7d506
Merge pull request #1568 from lioncash/dir
...
game_list: Use QFileInfo instead of common's file functions
2018-10-24 17:13:51 -04:00
bunnei
16570698af
Merge pull request #1567 from lioncash/translate
...
game_list: Make game list column headers translatable
2018-10-24 17:13:08 -04:00
bunnei
61020333e0
Merge pull request #1566 from lioncash/str
...
bootmanager: Use QStringLiteral instead of std::string to represent the window title.
2018-10-24 17:12:53 -04:00
bunnei
bd15d839a1
Merge pull request #1563 from lioncash/frame
...
perf_stats: Remove unused variable within DoFrameLimiting()
2018-10-24 16:29:16 -04:00
bunnei
233d8e639d
Merge pull request #1562 from lioncash/aoc
...
aoc_u: Make use of previously-unused CheckAOCTitleIDMatchesBase() function
2018-10-24 16:28:56 -04:00
bunnei
0410a06792
Merge pull request #1560 from lioncash/unused
...
maxwell_3d/decoders: Remove unused variables
2018-10-24 16:28:38 -04:00
bunnei
5028d18da4
Merge pull request #1561 from lioncash/fs
...
file_sys: Remove unused variables
2018-10-24 16:28:17 -04:00
bunnei
3123d38658
Merge pull request #1559 from lioncash/log
...
logging/backend: Add missing services to the log filters
2018-10-24 16:28:01 -04:00
Lioncash
dd17fc6213
kernel/errors: Remove now-unused, unnecessary, error codes
...
Now that we've gotten the innaccurate error codes out of the way, we can
finally toss away a bunch of these, trimming down the error codes to
ones that are actually used and knocking out two TODO comments.
2018-10-24 14:58:37 -04:00
Lioncash
815d526a6a
kernel/shared_memory: Return ERR_INVALID_MEMORY_PERMISSIONS instead of ERR_INVALID_COMBINATION
...
This is more consistent with what the kernel does.
2018-10-24 14:54:36 -04:00
Lioncash
2438be15a9
kernel/server_port: Simplify emptiness check within ShouldWait()
2018-10-24 14:24:36 -04:00
Lioncash
1bec1b6e99
kernel/server_port: Change error case return value in Accept() to ERR_NOT_FOUND
...
This is what the kernel does in this instance.
2018-10-24 14:23:38 -04:00
Lioncash
1206987215
kernel/error: Remove leftover 3DS error codes
...
These are now entirely unused and can be removed.
2018-10-24 14:21:37 -04:00
Lioncash
fc5b2b9f14
kernel/svc: Amend returned error code for invalid priorities in CreateThread
...
Like with the previous change, the kernel doesn't return NOT_AUTHORIZED
here. It returns INVALID_THREAD_PRIORITY.
2018-10-24 14:11:11 -04:00
Lioncash
e71849e099
kernel/svc: Move and correct returned error code for invalid thread priorities in SetThreadPriority()
...
All priority checks are supposed to occur before checking the validity
of the thread handle, we're also not supposed to return
ERR_NOT_AUTHORIZED here.
2018-10-24 14:10:48 -04:00
Lioncash
ad85a2da06
kernel/error: Add error code for invalid pointers
...
The kernel appears to return 0xE601 for this situation. Particularly in
svcWaitSynchronization, svcReplyAndReceive, and svcGetThreadContext
2018-10-24 13:41:32 -04:00
Lioncash
7748fd0e43
kernel/error: Add error code for closed sessions
...
The kernel appears to return 0xF601 for this case.
2018-10-24 13:38:39 -04:00
Lioncash
ebe361a343
game_list_worker: Use QString's formatting instead of fmt in FormatPatchNameVersions()
...
Using fmt here requires unnecessary string conversions back into
QString. Instead, we can just use QString's formatting and get the end
result of the formatting operation in the proper type.
2018-10-24 11:27:35 -04:00
Lioncash
94daae2847
profile_manager: Use std::optional instead of boost::optional
...
Now that we can actually use std::optional on macOS, we don't need to
continue using boost::optional here.
2018-10-24 11:06:52 -04:00
Lioncash
7b6546451e
graphic_breakpoints: Correct translation of strings in BreakpointModel's data() function
...
tr() will not function properly on static/global data like this, as the
object is only ever constructed once, so the strings won't translate if
the language is changed without restarting the program, which is
undesirable. Instead we can just turn the map into a plain old function
that maps the values to their equivalent strings. This is also lessens
the memory allocated, since it's only allocating memory for the strings
themselves, and not an encompassing map as well.
2018-10-24 11:01:23 -04:00
Lioncash
e89f14a0af
yuzu/main: Notify user of loading errors with Amiibo data
...
We shouldn't silently continue if loading failed, since the general
assumption is that no messages showing up implicitly indicates success.
2018-10-24 10:39:31 -04:00
Mat M
393d92efce
Merge pull request #1468 from DarkLordZach/profile-manager-ui
...
qt: Add UI to manage emulated user profiles
2018-10-24 10:10:29 -04:00
Zach Hilman
5c294cdb5d
configure_system: Clear current username before overwriting
...
Prevents bug where old username would remain if the new username was shorter in length.
2018-10-24 09:25:20 -04:00
Lioncash
849265a3de
game_list: Use QFileInfo instead of common's file functions
...
We can just use the facilities that Qt provides instead of pulling in
stuff from common. While we're at it, we can also simplify the nearby
logging statement's argument by just calling .toStdString()
2018-10-24 08:40:22 -04:00
Lioncash
17c920b7a4
game_list: Make game list column headers translatable
...
These are user-facing strings, so they should be marked as translatable
2018-10-24 08:20:35 -04:00
Lioncash
d9003838c6
bootmanager: Use QStringLiteral instead of std::string to represent the window title
...
This gets rid of an unnecessary type conversion. We can just use the
regular QStringLiteral to already format the string as the type
setWindowTitle accepts instead of converting from a std::string
instance.
2018-10-24 08:14:26 -04:00
Lioncash
75ed1149fb
time_stretch: Remove unused m_channel_count member variable
...
This is only stored to, but never read from.
2018-10-24 00:46:17 -04:00
Lioncash
b34685863a
npad: Remove unused controller variable from OnInit()
...
This also gets rid of variable shadowing related to the lambda parameter
a little bit below this code as well.
2018-10-24 00:38:03 -04:00
Lioncash
eb1e5a40e9
perf_stats: Remove unused variable within DoFrameLimiting()
...
This hasn't been used since fc6901c205
2018-10-24 00:33:26 -04:00
Lioncash
add5a47fd9
yuzu/configuration/config: Use a std::unique_ptr for qt_config instead of a raw pointer
...
Same behavior, less code.
2018-10-24 00:24:02 -04:00
Lioncash
8e4c18f8b1
aoc_u: Make use of previously-unused CheckAOCTitleIDMatchesBase() function
...
We can just call the function instead of duplicating the code here. This
also prevents an unused function warning.
We also don't need to take the lambda capture by reference. It's just a
u64 value, so by value is fine here.
2018-10-24 00:13:08 -04:00
Lioncash
b932d4b420
vfs: Handle failure of file reading within VfsRawCopy()
...
Also gets rid of an unused variable.
2018-10-24 00:01:32 -04:00
Lioncash
c2b6cc4692
key_manager: Remove unused variable in DeriveBase()
2018-10-24 00:00:12 -04:00
Lioncash
a3c2defab1
decoders: Remove unused variable within SwizzledData()
2018-10-23 23:51:13 -04:00
Lioncash
0afddad95c
maxwell_3d: Remove unused variable within ProcessQueryGet()
2018-10-23 23:50:16 -04:00
Lioncash
8aa910b315
logging/backend: Add missing services to the log filters
...
Just a few overlooked services.
2018-10-23 22:35:59 -04:00
Lioncash
6082c55e30
yuzu/configuration/config: Reorganize member variable and function layout
...
Makes the class layout consistent with the others.
2018-10-23 21:46:49 -04:00
bunnei
56725f2913
Merge pull request #1551 from ogniK5377/improved-svcbreak
...
Added break types to svcBreak
2018-10-23 19:56:42 -04:00
Zach Hilman
1977ed3d9f
profile_manager: Create save data if it doesn't exist on use
2018-10-23 19:31:28 -04:00
Zach Hilman
da04134ce6
acc: Fix account UUID duplication error
2018-10-23 19:31:28 -04:00
Zach Hilman
e1784822f2
configure_system: Clear selection after user delete
2018-10-23 19:31:28 -04:00
Zach Hilman
8bdf2fe7b7
profile_manager: Load user icons, names, and UUIDs from system save
2018-10-23 19:31:28 -04:00
Zach Hilman
fe98903bfe
acc: Load user images from config dir
2018-10-23 19:31:28 -04:00
Zach Hilman
286b3a20b8
qt: Allow user to select emu user on open save data
2018-10-23 19:31:28 -04:00
Zach Hilman
22e74d049b
qt: Add Profile Manager UI to system settings
2018-10-23 19:31:28 -04:00
Zach Hilman
89d1743f1f
am: Pass current user UUID to launch parameters
2018-10-23 19:31:28 -04:00
Zach Hilman
9fbe44d36e
profile_manager: Load users from emulator settings
2018-10-23 19:31:28 -04:00
Zach Hilman
64595bddaf
settings: Add users and current_user settings and remove username
2018-10-23 19:31:28 -04:00
David
0d7783ba66
Added Amiibo support ( #1390 )
...
* Fixed conflict with nfp
* Few fixups for nfc
* Conflict 2
* Fixed AttachAvailabilityChangeEvent
* Conflict 3
* Fixed byte padding
* Refactored amiibo to not reside in "System"
* Removed remaining references of nfc from system
* used enum for Nfc GetStateOld
* Added missing newline
* Moved file operations to front end
* Conflict 4
* Amiibos now use structs and added mutexes
* Removed amiibo_path
2018-10-23 19:28:17 -04:00
bunnei
4085eddac9
Merge pull request #1515 from DarkLordZach/dlc-lfs
...
patch_manager: Add support for LayeredFS on DLC RomFS
2018-10-23 19:26:57 -04:00
bunnei
77c463e249
Merge pull request #1542 from lioncash/project
...
CMakeLists: Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
2018-10-23 18:44:08 -04:00
bunnei
8320ad0709
Merge pull request #1553 from lioncash/mem
...
common: Remove memory_util.h/.cpp
2018-10-23 18:43:45 -04:00
bunnei
2669367f35
Merge pull request #1540 from lioncash/handle
...
kernel/process: Make the handle table per-process
2018-10-23 18:43:11 -04:00
FernandoS27
3326b552d0
Implement PointSize
2018-10-23 15:08:00 -04:00
FernandoS27
88ff802e1a
Fixed Layered Textures Loading and Cubemaps
2018-10-23 14:27:36 -04:00
Lioncash
443b1a6341
common: Remove memory_util.cpp/.h
...
Everything from here is completely unused and also written with the
notion of supporting 32-bit architecture variants in mind. Given the
Switch itself is on a 64-bit architecture, we won't be supporting 32-bit
architectures. If we need specific allocation functions in the future,
it's likely more worthwhile to new functions for that purpose.
2018-10-23 12:21:34 -04:00
bunnei
8072fc78ca
Merge pull request #1552 from FearlessTobi/port-4336
...
Port citra-emu/citra#4336 : "Only redefine some 64-bit file operation for MSVC"
2018-10-23 10:23:41 -04:00
bunnei
a12540e948
Merge pull request #1519 from ReinUsesLisp/vsetp
...
gl_shader_decompiler: Implement VSETP
2018-10-23 10:22:37 -04:00
bunnei
c1e228e29c
Merge pull request #1539 from lioncash/dma
...
maxwell_dma: Silence compilation warnings
2018-10-23 10:22:12 -04:00
bunnei
ad2c4e1b45
Merge pull request #1470 from FernandoS27/alpha_testing
...
Implemented Alpha Test using Shader Emulation
2018-10-23 10:21:30 -04:00
Weiyi Wang
bbd5e63bdf
only redefine 64 bit file operation for MSVC
...
MinGW provides POSIX functions
2018-10-23 15:11:18 +02:00
David Marcec
1b21fca8d6
Added assertion failed, reworked logging levels
2018-10-23 15:17:13 +11:00
ReinUsesLisp
3c72944105
gl_shader_decompiler: Implement VSETP
2018-10-23 01:07:20 -03:00
ReinUsesLisp
95ebbee064
gl_shader_decompiler: Abstract VMAD into a video subset
2018-10-23 01:07:20 -03:00
David Marcec
8363276d6e
Added break types to svcBreak
...
There seems to be more such as type 1, and 2. Unsure what these currently are but when a game hits them we can investigate and add the rest
2018-10-23 15:03:59 +11:00
bunnei
3b07693b50
Merge pull request #1512 from ReinUsesLisp/brk
...
gl_shader_decompiler: Implement PBK and BRK
2018-10-23 00:01:38 -04:00
bunnei
e4463a9117
Merge pull request #1550 from FernandoS27/fmul32
...
Added Saturation to FMUL32I
2018-10-22 23:58:09 -04:00
bunnei
3c262c7bf4
Merge pull request #1543 from lioncash/target
...
CMakeLists: Use target_compile_definitions instead of add_definitions to define YUZU_ENABLE_COMPATIBILITY_REPORTING
2018-10-22 22:50:10 -04:00
bunnei
085aaeb200
Merge pull request #1537 from lioncash/shader
...
gl_shader_decompiler: Minor changes
2018-10-22 22:49:49 -04:00
FernandoS27
9183b82847
Added Saturation to FMUL32I
2018-10-22 20:22:15 -04:00
FernandoS27
d8a54902f0
Assert that multiple render targets are not set while alpha testing
2018-10-22 15:35:45 -04:00
bunnei
4f429abfc4
Merge pull request #1545 from DarkLordZach/psm
...
psm: Add psm service and stub commands 0 and 1
2018-10-22 15:27:05 -04:00
FernandoS27
f785872dd5
Use standard UBO and fix/stylize the code
2018-10-22 15:07:33 -04:00
FernandoS27
d51cdee070
Cache uniform locations and restructure the implementation
2018-10-22 15:07:32 -04:00
FernandoS27
f4c9ebb9fc
Remove SyncAlphaTest and clang format
2018-10-22 15:07:31 -04:00
FernandoS27
ceb985fcb0
Added Alpha Func
2018-10-22 15:07:30 -04:00
FernandoS27
de4f14e756
Implemented Alpha Testing
2018-10-22 15:07:30 -04:00
bunnei
a505ae172d
Merge pull request #1541 from lioncash/define
...
web_service/CMakeLists: Make the CPPHTTPLIB_OPENSSL_SUPPORT constrained to the web_service library only
2018-10-22 13:02:16 -04:00
bunnei
0360d5b114
Merge pull request #1538 from lioncash/query
...
svc: Fix vma boundary check in svcQueryMemory
2018-10-22 12:55:36 -04:00
bunnei
5716ecc248
Merge pull request #1547 from FernandoS27/fix-fset
...
Fixed FSETP and FSET
2018-10-22 12:53:47 -04:00
FernandoS27
2dc066f8f5
Fixed FSETP and FSET
2018-10-22 11:31:17 -04:00
bunnei
ab068c6d67
Merge pull request #1546 from lioncash/svc-again
...
service: Update service function tables
2018-10-22 11:06:55 -04:00
bunnei
a7a14e3675
Merge pull request #1548 from FernandoS27/fix-vao
...
Fixed VAOs Float types only returning GL_FLOAT
2018-10-22 10:58:47 -04:00
FernandoS27
2f976c550a
Fixed VAOs Float types only returning GL_FLOAT in cases that they had to return GL_HALF_FLOAT
2018-10-22 09:27:00 -04:00
Zach Hilman
157368b56b
psm: Stub GetChargerType
...
Used by LovePotion Lua Homebrew. Stubbed as connected to official Nintendo Switch dock.
2018-10-21 22:03:25 -04:00
bunnei
7c16c078dd
Merge pull request #1544 from DarkLordZach/reinitialize-keys-tools
...
qt: Move Reinitialize Keys to Tools menu
2018-10-21 21:49:11 -04:00
Lioncash
da95baa5de
service: Add the basic skeleton for the NPNS services
2018-10-21 17:11:05 -04:00
Lioncash
633b95adce
hid: Update service function table for hidbus
...
Updated based off information provided by Switchbrew.
2018-10-21 16:51:46 -04:00
Lioncash
aa09b18f97
am: Add the basic skeleton for the tcap service
...
Added based off information provided by Switchbrew.
2018-10-21 16:50:17 -04:00
Lioncash
85df255cd1
am: Update service function tables
...
Updated based off information from Switchbrew
2018-10-21 16:40:20 -04:00
Lioncash
f8220c84fc
prepo: Update service function table.
...
Also introduces the new prepo:a2 service.
Updated based off information provided by Switchbrew.
2018-10-21 16:22:10 -04:00
Lioncash
4c7235b008
lbl: Update service function table names
...
Updated based off information provided by Switchbrew.
2018-10-21 16:15:32 -04:00
bunnei
559ab35dec
Merge pull request #1531 from ogniK5377/hid-fixes
...
Added auto controller switching to supported controllers and single joycon button rotation
2018-10-20 21:47:15 -04:00
Zach Hilman
a6d950540b
qt: Move Reinitialize Keys to Tools menu
2018-10-20 18:04:28 -04:00
Zach Hilman
1180af1627
psm: Stub GetBatteryChargePercentage
...
Used by LovePotion Lua Homebrew. Stubbed to return 100% charge.
2018-10-20 18:01:11 -04:00
Zach Hilman
e37e15fd1e
service: Add skeleton for psm service
...
Seems to be the power controller. Listed in switchbrew under the category PTM services.
2018-10-20 18:01:07 -04:00
Lioncash
62d2810fa6
CMakeLists: Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
...
This is more localized to what we want to enforce directory-wise with
the project. CMAKE_SOURCE_DIR indicates the root of the source tree, but
this would cause the wrong behavior if someone included yuzu as part of
a larger buildsystem (for whatever reason). Instead, we want to use the
directory where the "project(yuzu)" command was declared as the root
path reference.
2018-10-20 17:36:31 -04:00
Lioncash
babaf8301f
CMakeLists: Use target_compile_definitions instead of add_definitions to define YUZU_ENABLE_COMPATIBILITY_REPORTING
...
Keeps the definition constrained to the yuzu target and prevents
polluting anything else in the same directory (should that ever happen).
It also keeps it consistent with how the USE_DISCORD_PRESENCE definition
is introduced below it.
2018-10-20 17:28:29 -04:00
Lioncash
ef0db6d459
web_service/CMakeLists: Make the CPPHTTPLIB_OPENSSL_SUPPORT constrained to the web_service library only
...
Given we link in httplib privately, we can also make the definition
enabling OpenSSL support private as well. Prevents leaking a definition
into other libraries that link with this one, like the core library.
2018-10-20 16:59:10 -04:00
Lioncash
e13c95fbe5
kernel/process: Make the handle table per-process
...
In the kernel, there isn't a singular handle table that everything gets
tossed into or used, rather, each process gets its own handle table that
it uses. This currently isn't an issue for us, since we only execute one
process at the moment, but we may as well get this out of the way so
it's not a headache later on.
2018-10-20 16:38:32 -04:00
Lioncash
cdea084c7d
engines/maxwell_*: Use nested namespace specifiers where applicable
...
These three source files are the only ones within the engines directory
that don't use nested namespaces. We may as well change these over to
keep things consistent.
2018-10-20 15:58:09 -04:00
Lioncash
92996ab8b3
maxwell_dma: Make variables const where applicable within HandleCopy()
...
These are never modified, so we can make that assumption explicit.
2018-10-20 15:56:01 -04:00
Lioncash
04e8b81de0
maxwell_dma: Make FlushAndInvalidate's size parameter a u64
...
This prevents truncation warnings at the lambda's usage sites.
2018-10-20 15:54:45 -04:00
Lioncash
5ddbef9c8a
maxwell_dma: Remove unused variables in HandleCopy()
...
These pointer variables are never used, so we can get rid of them.
2018-10-20 15:53:24 -04:00
Lioncash
3c47ef0927
svc: Fix vma boundary check in svcQueryMemory
...
This should be comparing against the queried process' vma_map, not the
current process'. The only reason this hasn't become an issue yet is we
currently only handle one process being active at any time.
2018-10-20 14:56:51 -04:00
Lioncash
ce07dbf817
gl_shader_decompiler: Allow std::move to function in SetPredicate
...
If the variable being moved is const, then std::move will always perform
a copy (since it can't actually move the data).
2018-10-20 14:25:15 -04:00
Lioncash
82194e57de
gl_shader_decompiler: Get rid of variable shadowing warnings
...
A variable with the same name was previously declared in an outer scope.
2018-10-20 14:22:37 -04:00
Lioncash
8ff87912da
gl_shader_decompiler: Fix a few comment typos
2018-10-20 14:19:28 -04:00
ReinUsesLisp
5056401c89
gl_shader_decompiler: Move position varying declaration back to gl_shader_gen
...
The intention of declaring them in gl_shader_decompiler was to be able
to use blocks to implement geometry shaders. But that wasn't needed in
the end and it caused issues when both vertex stages were being used,
resulting in a redeclaration of "position".
2018-10-20 02:19:30 -03:00
David Marcec
d4034559b1
Added auto controller switching to supported controllers and single joycon button rotation
...
This is a subset of the better-hid-2 changes, this fixes input in various games which don't support dual joycons. This pr will search for the next best controller which is supported by the current game
2018-10-20 15:07:18 +11:00
bunnei
9af9217dea
Merge pull request #1501 from ReinUsesLisp/half-float
...
gl_shader_decompiler: Implement H* instructions
2018-10-19 23:47:19 -04:00
bunnei
d86dfb8a22
Merge pull request #1520 from lioncash/san
...
svc: Add missing sanitizing checks for MapSharedMemory/UnmapSharedMemory
2018-10-19 22:58:57 -04:00
bunnei
62dc06772c
Merge pull request #1517 from bunnei/dma
...
GPU/DMA: Flush the source region and invalidate the destination region when doing a DMA transfer.
2018-10-19 22:58:30 -04:00
bunnei
cda20dc917
Merge pull request #1526 from lioncash/svc-id
...
service: Update function tables
2018-10-19 22:53:26 -04:00
bunnei
73ef015b24
Merge pull request #1530 from DarkLordZach/aoc-8
...
aoc_u: Stub GetAddOnContentListChangedEvent
2018-10-19 22:53:00 -04:00
bunnei
6b55f1d9f9
Merge pull request #1516 from lioncash/hid
...
hid: Minor cleanup-related changes
2018-10-19 22:52:31 -04:00
Zach Hilman
50ee6b4082
aoc_u: Stub GetAddOnContentListChangedEvent
...
This event signals the game when new DLC is purchased from the eShop while the game is running. Since, for the forseeable future, yuzu will not have this ability, it seems safe to stub with a dummy event that will never fire. This is needed to boot Sonic Mania Plus (update v1.04).
2018-10-19 21:21:37 -04:00
Zach Hilman
2241677092
crypto: Use compressed sizes in offset calculation for KIP decompression
...
Fixes a fatal crash on start when deriving keys.
2018-10-19 18:37:58 -04:00
Zach Hilman
2aa6989cee
vfs: Remove InterpretAsDirectory and related functions
...
When writing VFS, it initally seemed useful to include a function to in-place convert container files into directories in one homogenous directory structure, but re-evaluating it now there have been plenty of chances to use it and there has always been a better way. Removing as it is unused and likely will not be used.
2018-10-19 14:02:07 -04:00
David Marcec
69140470d7
Stubbed home blocking
...
Needed by arms due to new hid rework
2018-10-20 00:01:10 +11:00
Lioncash
72461fb8f4
es: Update service function tables
...
Updated based off information provided by Switchbrew.
2018-10-19 04:12:28 -04:00
Lioncash
b35b5073aa
audio: Update service function tables
...
Updated based off information provided by Switchbrew.
2018-10-19 04:09:12 -04:00
Lioncash
9fc0851d40
omm: Update service function tables
...
Updated based off information provided by Switchbrew.
2018-10-19 04:04:59 -04:00
Lioncash
668ab6ec8b
nifm: Update service function tables
...
Updated based off information provided by switchbrew.
2018-10-19 04:00:41 -04:00
Lioncash
9abf6af0f1
hid: Update service function tables
...
Updated based off information provided by Switchbrew.
2018-10-19 03:59:15 -04:00
Lioncash
48c8e17b99
nim: Add the basic skeleton of the nim:eca service
...
Added based off information provided by Switchbrew
2018-10-19 03:46:18 -04:00
Lioncash
f6aee09f02
ns: Update service function table
...
Updated based off information provided by Switchbrew.
2018-10-19 03:41:38 -04:00
Lioncash
3294204b2a
set_cal: Update service function table
...
Updated based on information from Switchbrew.
2018-10-19 03:26:56 -04:00
bunnei
cb438209c7
GPU: Improved implementation of maxwell DMA (Subv).
2018-10-18 22:41:53 -04:00
bunnei
fa24c17b95
decoders: Introduce functions for un/swizzling subrects.
2018-10-18 22:41:43 -04:00
bunnei
6a6fbb1478
GPU: Invalidate destination address of kepler_memory writes.
2018-10-18 22:41:13 -04:00
bunnei
e3fdb2ff4b
fermi_2d: Add support for more accurate surface copies.
2018-10-18 22:41:12 -04:00
bunnei
6af379e62c
Merge pull request #1523 from lioncash/lock
...
svc: Add missing error checks in svcArbitrateLock/svcArbitrateUnlock
2018-10-18 21:50:45 -04:00
bunnei
57e45734a3
Merge pull request #1511 from lioncash/content
...
content_archive: Minor reorganization changes
2018-10-18 21:48:09 -04:00
bunnei
94d2738c05
Merge pull request #1521 from ogniK5377/imp-mmu
...
Used better names for mm:u and fixed a bad stub
2018-10-18 21:46:59 -04:00
Lioncash
c015a42cc2
svc: Check for word alignment of addresses within svcArbitrateLock/svcArbitrateUnlock
...
The kernel itself checks whether or not the provided addresses are word
aligned before continuing, so we should be doing the same.
2018-10-18 13:01:29 -04:00
Lioncash
da8827def6
common: Add function for checking word alignment to alignment.h
...
This will be used in a following change to svcArbitrateLock() and
svcArbitrateUnlock()
2018-10-18 12:58:27 -04:00
Lioncash
7784a1ca44
common: Move Is4KBAligned() to alignment.h
...
Aligning on 4KB pages isn't a Switch-specific thing, so this can be
moved to common so it can be used with other things as well.
2018-10-18 12:57:02 -04:00
Lioncash
3813aafaaf
core: Remove unnecessary assert in ArmInterface()
...
CpuCore already does this sort of checking, so we can just call that
instead of duplicating the assertions.
2018-10-18 12:07:25 -04:00
bunnei
c08893660f
Merge pull request #1510 from lioncash/xci
...
XCI: Add function for checking the existence of the program NCA
2018-10-18 11:51:47 -04:00
bunnei
1504e6bc71
Merge pull request #1505 from FernandoS27/tex-3d
...
Implemented 3D Textures
2018-10-18 11:50:42 -04:00
David Marcec
9aa32c18b6
Used better names for mm:u and fixed bad stub
...
InitializeWithId needs to return an id which is a u32 which should be a non zero value
2018-10-19 01:09:34 +11:00
Lioncash
489f59e45f
svc: Add missing sanitizing checks for MapSharedMemory/UnmapSharedMemory
...
Now that the changes clarifying the address spaces has been merged, we
can wrap the checks that the kernel performs when mapping shared memory
(and other forms of memory) into its own helper function and then use
those within MapSharedMemory and UnmapSharedMemory to complete the
sanitizing checks that are supposed to be done.
2018-10-18 02:01:21 -04:00
Lioncash
374ea27a8b
hid/controller: Remove unused header inclusions
...
swap.h only needs to be present in the header for the type aliases and
definitions, it's not actually needed in the cpp files though. input.h
is just unused entirely in xpad.h
2018-10-17 20:52:45 -04:00
Lioncash
ca3d440f78
hid/controller/npad: Remove unused dump_idx member variable
...
Given it's unused, we may as well toss it.
2018-10-17 20:52:45 -04:00
Lioncash
72aa1f10f6
hid/controller/npad: Remove unnecessary semicolon from the closing brace of LedPattern's constructor
2018-10-17 20:52:45 -04:00
Lioncash
5583e4f15d
hid/controller/npad: Remove #pragma once from the cpp file
...
This is only useful in headers.
2018-10-17 20:52:45 -04:00
Lioncash
fd85f5b847
hid/controller/npad: Move npad_id_list into the cpp file
...
This is just a lookup table, and since it's private, there's nothing
really stateful about it, so we can just move it into the cpp file.
2018-10-17 20:52:45 -04:00
Lioncash
9338428f43
hid/controller/npad: Remove unnecessary const from void return type
...
This literally does nothing.
2018-10-17 20:52:45 -04:00
Lioncash
f864e487b9
hid/controller: Default the destructors of all controller types in the cpp file
...
These classes are non-trivial and are definitely going to be changed in
the future, so we default these to prevent issues with forward
declarations, and to keep the compiler from inlining tear-down code.
2018-10-17 20:52:43 -04:00
Lioncash
6f8f5f1d0a
controller_base: Default the base class constructor and destructor in the cpp file
...
The destructor doesn't need to be a pure-virtual function.
2018-10-17 20:51:54 -04:00
ReinUsesLisp
57b3166673
gl_shader_decompiler: Implement PBK and BRK
2018-10-17 21:30:45 -03:00
bunnei
cc962d05af
Merge pull request #1444 from ogniK5377/better-hid
...
"Better Hid" Rework Part 1
2018-10-17 20:25:17 -04:00
bunnei
cb9b63b186
Merge pull request #1489 from FernandoS27/fix-tlds
...
shader_decompiler: Fix TLDS
2018-10-17 18:58:38 -04:00
FernandoS27
efa39b1b35
Clang format and other fixes
2018-10-17 18:52:11 -04:00
FernandoS27
c841b2ec48
Implement Reinterpret Surface, to accurately blit 3D textures
2018-10-17 18:52:10 -04:00
FernandoS27
893e144b02
Implement GetInRange in the Rasterizer Cache
2018-10-17 18:52:10 -04:00
FernandoS27
1469c546c3
Implement 3D Textures
2018-10-17 18:52:08 -04:00
bunnei
9ed245a363
Merge pull request #1497 from bunnei/flush-framebuffers
...
Implement flushing in the rasterizer cache
2018-10-17 18:40:34 -04:00
bunnei
70d4649954
Merge pull request #1498 from lioncash/aslr
...
svc: Clarify enum values for AddressSpaceBaseAddr and AddressSpaceSize in svcGetInfo()
2018-10-17 18:31:51 -04:00
bunnei
f0924b6e95
Merge pull request #1496 from FernandoS27/tex-array
...
Implement Arrays on Tex Instruction
2018-10-17 18:30:44 -04:00
Zach Hilman
a0f408400b
qt: Add support for dumping a DLC Data RomFS
2018-10-17 18:27:29 -04:00
bunnei
7fe8c12342
Merge pull request #1509 from DarkLordZach/device-save-data
...
savedata_factory: Add DeviceSaveData and fix TemporaryStorage
2018-10-17 18:22:05 -04:00
bunnei
898c5576b5
gl_rasterizer_cache: Remove unnecessary block_depth=1 on Flush.
2018-10-17 18:20:15 -04:00
bunnei
a205f5a4df
gl_rasterizer_cache: Remove unnecessary temporary buffer with unswizzle.
2018-10-17 18:19:35 -04:00
Zach Hilman
148b28bad1
registered_cache: Deduplicate results of ListEntry and ListEntryFilter
...
Prevents a Entry from appearing in the list twice if the user has it installed in two places (e.g. User NAND and SDMC)
2018-10-17 14:04:18 -04:00
David Marcec
128f14d60e
Using dual joycons as the default controller
...
Reason for the change is to allow both docked and undocked mode to work
2018-10-18 00:11:47 +11:00
Zach Hilman
b36874c0b7
fsp_srv: Apply patches to Data storage in OpenDataStorageByDataId
2018-10-17 09:04:20 -04:00
Zach Hilman
ee70cf8a1a
patch_manager: Add support for using LayeredFS with Data
2018-10-17 09:03:56 -04:00
bunnei
30c357b12b
gl_rasterizer_cache: Use AccurateCopySurface for use_accurate_gpu_emulation.
2018-10-16 17:20:49 -04:00
bunnei
b1c31be284
config: Rename use_accurate_framebuffers -> use_accurate_gpu_emulation.
...
- This will be used as a catch-all for slow-but-accurate GPU emulation paths.
2018-10-16 17:02:29 -04:00
bunnei
b3ee8ceca5
rasterizer_cache: Refactor to support in-order flushing.
2018-10-16 16:51:53 -04:00
Lioncash
b00f4831b0
content_archive: Simpify assignment of bktr_base_romfs in the constructor
...
std::move doesn't actually dereference the data, so it doesn't matter
whether or not the type is null.
2018-10-16 13:22:31 -04:00
Lioncash
6adf7a6f99
content_archive: Make IsValidNCA() an internally linked function
...
This is only ever used within the cpp file, so it can just be an
internal function.
2018-10-16 13:22:31 -04:00
Lioncash
401a947c41
content_archive: Simplify rights ID check
...
This is the same as using std::any_of with an inverted predicate.
2018-10-16 13:22:31 -04:00
Lioncash
33363de6df
content_archive: Split loading into separate functions
...
The constructor alone is pretty large, the reading code should be split
into its consistuent parts to make it easier to understand it without
having to build a mental model of a 300+ line function.
2018-10-16 13:22:28 -04:00
Lioncash
067a174e00
content_archive: Pass and take NCASectionHeader instance by reference
...
Each header is 512 bytes in size, which is kind of an excessive amount
to copy all the time when it's possible to avoid doing so.
2018-10-16 12:08:17 -04:00
Lioncash
54ff822f66
XCI: Add function for checking the existence of the program NCA
...
The only reason the getter existed was to check whether or not the
program NCA was null. Instead, we can just provide a function to query
for the existence of it, instead of exposing it entirely.
2018-10-16 11:36:58 -04:00
bunnei
f5df68346c
gl_rasterizer_cache: Refactor to only call GetRegionEnd on surface creation.
2018-10-16 11:31:02 -04:00
bunnei
5084ec9509
gl_rasterizer_cache: Only flush when use_accurate_framebuffers is enabled.
2018-10-16 11:31:02 -04:00
bunnei
54918b45fe
gl_rasterizer_cache: Separate guest and host surface size managment.
2018-10-16 11:31:01 -04:00
bunnei
1b8aabcb7b
gl_rasterizer_cache: Rename GetGLBytesPerPixel to GetBytesPerPixel.
...
- This does not really have anything to do with OpenGL.
2018-10-16 11:31:01 -04:00
bunnei
7a80c6f83f
gl_rasterizer_cache: Remove unused FlushSurface method.
2018-10-16 11:31:01 -04:00
bunnei
6ac61f1799
gl_rasterizer: Implement flushing.
2018-10-16 11:31:01 -04:00
bunnei
1aba2e2fe9
gl_rasterizer_cache: Remove usage of Memory::Read/Write functions.
...
- These cannot be used within the cache, as they change cache state.
2018-10-16 11:31:00 -04:00
bunnei
4f43267355
gl_rasterizer_cache: Clamp cached surface size to mapped GPU region size.
2018-10-16 11:31:00 -04:00
bunnei
ac8ab8f305
memory_manager: Add a method for querying the end of a mapped GPU region.
2018-10-16 11:31:00 -04:00
bunnei
a8c8207341
rasterizer_cache: Reintroduce method for flushing.
2018-10-16 11:31:00 -04:00
bunnei
5ec58fa78f
gl_rasterizer_cache: Reintroduce code for handling swizzle and flush to guest RAM.
2018-10-16 11:30:59 -04:00
bunnei
57e652436a
Merge pull request #1443 from DarkLordZach/lower-loader-logs-1
...
content_archive/patch_manager: Lower log levels to eliminate some unnecessary logs
2018-10-16 11:26:54 -04:00
David
e160ae78c8
Implement VI ConvertScalingMode ( #1475 )
...
* Implement VI ConvertScalingMode
* Fixed push enum
* Scale mode now uses Nintendo scale mode as an enum as well
2018-10-16 11:25:42 -04:00
bunnei
10792dbff6
Merge pull request #1502 from lioncash/unique
...
core: Convert shared_ptr instances into unique_ptr instances where applicable for System and Cpu
2018-10-16 11:21:42 -04:00
Zach Hilman
82da4930c1
savedata_factory: Add TemporaryStorage SaveDataSpaceId
...
Required for TemporaryStorage saves (in addition to SaveDataType)
2018-10-16 10:20:04 -04:00
Zach Hilman
0595fc9947
savedata_factory: Add support for DeviceSaveData
...
Uses the same path as SaveData except with UID 0. Adds a warning if UID is not 0.
2018-10-16 10:19:21 -04:00
Lioncash
92495f4f70
file_sys/registered_cache: Use unique_ptr and regular pointers instead of shared_ptrs where applicable
...
The data retrieved in these cases are ultimately chiefly owned by either
the RegisteredCache instance itself, or the filesystem factories. Both
these should live throughout the use of their contained data. If they
don't, it should be considered an interface/design issue, and using
shared_ptr instances here would mask that, as the data would always be
prolonged after the main owner's lifetime ended.
This makes the lifetime of the data explicit and makes it harder to
accidentally create cyclic references. It also makes the interface
slightly more flexible than the previous API, as a shared_ptr can be
created from a unique_ptr, but not the other way around, so this allows
for that use-case if it ever becomes necessary in some form.
2018-10-16 09:38:52 -04:00
bunnei
2850c1f53c
Merge pull request #1473 from lioncash/cmake
...
web_service: Make linkage of web_service-related externals and the library private
2018-10-15 21:33:32 -04:00
bunnei
1fe77d3986
Merge pull request #1487 from lioncash/maybe-unused
...
yuzu/main: Apply the [[maybe_unused]] attribute to the parameter of SetDiscordEnabled
2018-10-15 21:33:14 -04:00
Lioncash
e83e140e3f
file_sys/control_metadata: Get rid of magic constants
...
These are just the size of the data being passed in, so we can specify
that via the size() member function.
2018-10-15 20:11:44 -04:00
bunnei
a25c737572
Merge pull request #1494 from DarkLordZach/aoc-signature-fixes
...
aoc: Fix various bugs in current AOC implementation
2018-10-15 18:34:02 -04:00
bunnei
b01be90de4
Merge pull request #1499 from lioncash/nro
...
nro/nso: Minor error handling changes
2018-10-15 17:48:36 -04:00
bunnei
1a6f2f8a99
Merge pull request #1500 from DarkLordZach/key-derivation-6.0.0
...
crypto: Various crypto fixes for quickstart guide
2018-10-15 17:48:13 -04:00
Lioncash
3b0b8c3f80
nso: Return an optional address from LoadModule
...
If a malformed NSO is attempted to be loaded, we shouldn't continue
onwards. We should be reporting an error and bailing out.
2018-10-15 17:02:11 -04:00
ReinUsesLisp
40845c39c9
shader_bytecode: Add Control Code enum 0xf
...
Control Code 0xf means to unconditionally execute the instruction. This
value is passed to most BRA, EXIT and SYNC instructions (among others)
but this may not always be the case.
2018-10-15 15:36:47 -03:00
ReinUsesLisp
4af6ab7d85
gl_shader_decompiler: Fixup style inconsistencies
2018-10-15 15:35:26 -03:00
ReinUsesLisp
0370d2a62e
gl_rasterizer: Silence implicit cast warning in glBindBufferRange
2018-10-15 15:26:50 -03:00
Lioncash
f94bf1a29f
core_cpu: Make Cpu scheduler instances unique_ptrs instead of shared_ptrs
2018-10-15 14:15:56 -04:00
Lioncash
c6474b9321
core: Make the live Cpu instances unique_ptrs instead of shared_ptrs
...
There's no need for shared ownership here, as the only owning class
instance of those Cpu instances is the System class itself. We can also
make the thread_to_cpu map use regular pointers instead of shared_ptrs,
given that the Cpu instances will always outlive the cases where they're
used with that map.
2018-10-15 14:15:56 -04:00
Lioncash
16a332fee0
core: Make the exclusive monitor a unique_ptr instead of a shared_ptr
...
Like the barrier, this is owned entirely by the System and will always
outlive the encompassing state, so shared ownership semantics aren't
necessary here.
2018-10-15 14:15:50 -04:00
Lioncash
0575e2639a
core: Make CPUBarrier a unique_ptr instead of a shared_ptr
...
This will always outlive the Cpu instances, since it's destroyed after
we destroy the Cpu instances on shutdown, so there's no need for shared
ownership semantics here.
2018-10-15 09:11:47 -04:00
ReinUsesLisp
f1a2fd02a5
gl_shader_decompiler: Implement HSET2_R
2018-10-15 02:55:51 -03:00
ReinUsesLisp
4769eac4b7
gl_shader_decompiler: Implement HSETP2_R
2018-10-15 02:55:51 -03:00
ReinUsesLisp
f4c2f0c35d
gl_shader_decompiler: Implement HFMA2 instructions
2018-10-15 02:55:51 -03:00
ReinUsesLisp
d3a031608d
gl_shader_decompiler: Implement HADD2_IMM and HMUL2_IMM
2018-10-15 02:07:16 -03:00
ReinUsesLisp
cc74fe2cef
gl_shader_decompiler: Implement non-immediate HADD2 and HMUL2 instructions
2018-10-15 02:04:31 -03:00
ReinUsesLisp
fcb96ae125
gl_shader_decompiler: Setup base for half float unpacking and setting
2018-10-15 01:58:30 -03:00
Zach Hilman
1d2f86949b
crypto: Various crypto fixes for quickstart guide
2018-10-14 21:57:52 -04:00
Lioncash
07bc96400e
nso: Make LoadModule take a VfsFile by const reference
2018-10-14 20:38:19 -04:00
Lioncash
a48ea56c38
nro: Make LoadNro take a VfsFile by const reference
...
This function doesn't need to care about ownership semantics, so we can
just pass it a reference to the file itself, rather than a
std::shared_ptr alias.
2018-10-14 20:24:18 -04:00
Lioncash
94a82d0966
svc: Clarify enum values for AddressSpaceBaseAddr and AddressSpaceSize in svcGetInfo()
...
So, one thing that's puzzled me is why the kernel seemed to *not* use
the direct code address ranges in some cases for some service functions.
For example, in svcMapMemory, the full address space width is compared
against for validity, but for svcMapSharedMemory, it compares against
0xFFE00000, 0xFF8000000, and 0x7FF8000000 as upper bounds, and uses
either 0x200000 or 0x8000000 as the lower-bounds as the beginning of the
compared range. Coincidentally, these exact same values are also used in
svcGetInfo, and also when initializing the user address space, so this
is actually retrieving the ASLR extents, not the extents of the address
space in general.
2018-10-14 20:11:16 -04:00
Zach Hilman
a9af7113be
aoc: Read DLC base title ID from RegisteredCache
...
Falls back to title ID + 0x1000, which is what HOS does.
2018-10-14 18:58:14 -04:00
bunnei
6f3e47f66d
Merge pull request #1486 from lioncash/file
...
key_manager/partition_data_manager: Minor changes
2018-10-14 14:46:47 -04:00
bunnei
2a8f961bd6
Merge pull request #1490 from lioncash/boot
...
yuzu/main: Simplify OnMenuLoadFile()
2018-10-14 14:44:49 -04:00
bunnei
7ce1c004c4
Merge pull request #1488 from Hexagon12/astc-types
...
video_core: Added ASTC 5x4; 8x5 types
2018-10-14 14:44:24 -04:00
bunnei
7b9f0e3b9d
Merge pull request #1491 from lioncash/reference
...
filesystem: Make CreateFactories() and InstallInterface() take a VfsFilesystem by reference
2018-10-14 14:42:57 -04:00
bunnei
1ea758cb9e
Merge pull request #1480 from FernandoS27/neue-swizzle
...
Introduce 3D Swizzle seamlessly
2018-10-14 14:42:38 -04:00
bunnei
34c9e07ea3
Merge pull request #1492 from lioncash/proc
...
svc: Implement svcGetProcessInfo
2018-10-14 14:37:58 -04:00
FernandoS27
130f4b6aeb
Implement Arrays on Tex Instruction
2018-10-14 13:31:02 -04:00
David Marcec
e2901a4e1c
Stop all threads on svcBreak
...
This should help diagnose crashes easier and prevent many users thinking that a game is still running when in fact it's just an audio thread still running(this is typically not killed when svcBreak is hit since the game expects us to do this)
2018-10-14 18:14:51 +11:00
Zach Hilman
d5e666d21c
aoc: Return size in ListAddOnContent
2018-10-13 22:52:54 -04:00
FernandoS27
a64816ae9d
Fix TLDS
2018-10-13 22:14:25 -04:00
FernandoS27
39ba6950b8
Shorten the implementation of 3D swizzle to only 3 functions
2018-10-13 20:58:00 -04:00
Lioncash
ddf344c119
svc: Implement svcGetProcessInfo
...
A fairly basic service function, which only appears to currently support
retrieving the process state. This also alters the ProcessStatus enum to
contain all of the values that a kernel process seems to be able of
reporting with regards to state.
2018-10-13 17:00:43 -04:00
FernandoS27
92e9faba25
Fix a Crash on Zelda BotW and Splatoon 2, and simplified LoadGLBuffer
2018-10-13 16:11:11 -04:00
FernandoS27
1a70753709
Propagate depth and depth_block on modules using decoders
2018-10-13 15:25:18 -04:00
FernandoS27
8b1e913058
Remove old Swizzle algorithms and use 3d Swizzle
2018-10-13 15:25:17 -04:00
FernandoS27
2650e33c48
Implement Precise 3D Swizzle
2018-10-13 15:25:16 -04:00
FernandoS27
8b32bd526b
Implement Fast 3D Swizzle
2018-10-13 15:25:15 -04:00
Lioncash
c4f04533d9
filesystem: Make CreateFactories() and InstallInterface() take a VfsFilesystem instance by reference
...
Neither of these functions alter the ownership of the provided pointer,
so we can simply make the parameters a reference rather than a direct
shared pointer alias. This way we also disallow passing incorrect memory values like
nullptr.
2018-10-13 11:36:35 -04:00
Lioncash
561f039432
yuzu/main: Simplify OnMenuLoadFile()
...
We can utilize QStringList's join() function to perform all of the
appending in a single function call.
While we're at it, make the extension list a single translatable string
and add a disambiguation comment to explain to translators what %1
actually is.
2018-10-13 10:35:18 -04:00
Lioncash
ab69b81d98
yuzu/main: Apply the [[maybe_unused]] attribute to the parameter of SetDiscordEnabled()
...
Depending on whether or not USE_DISCORD_PRESENCE is defined, the "state"
parameter can be used or unused. If USE_DISCORD_PRESENCE is not defined,
the parameter will be considered unused, which can lead to compiler
warnings. So, we can explicitly mark it with [[maybe_unused]] to inform
the compiler that this is intentional.
2018-10-13 10:10:29 -04:00
Hexagon12
f50514b25b
Added ASTC 5x4; 8x5
2018-10-13 17:10:26 +03:00
Lioncash
18db0f1107
partition_data_manager: Reserve and insert data within output vector in DecryptPackage2()
...
We can just reserve the memory then perform successive insertions
instead of needing to use memcpy. This also avoids the need to zero out
the output vector's memory before performing the insertions.
We can also std::move the output std::vector into the destination so
that we don't need to make a completely new copy of the vector, getting
rid of an unnecessary allocation.
Additionally, we can use iterators to determine the beginning and end
ranges of the std::vector instances that comprise the output vector, as
the end of one range just becomes the beginning for the next successive
range, and since std::vector's iterator constructor copies data within
the range [begin, end), this is more straightforward and gets rid of the
need to have an offset variable that keeps getting incremented to
determine where to do the next std::memcpy.
2018-10-13 09:50:08 -04:00
Lioncash
20a95f7e90
partition_data_manager: Remove unused std::map instance within DecryptPackage2()
...
Aside from emplacing elements into the map, the map itself is never
actually queried for contained data.
2018-10-13 09:27:12 -04:00
Lioncash
283f111f7d
partition_data_manager: Take package2_keys by const reference
...
These are only ever read from, so we don't need to make a copy of all
the keys here.
2018-10-13 09:24:41 -04:00
Lioncash
461cd4b81c
partition_data_manager: Move IV data to where it's needed in DecryptPackage2()
...
Given it's only used in one spot and has a fairly generic name, we can
just specify it directly in the function call. This also the benefit of
automatically moving it.
2018-10-13 09:20:21 -04:00
Lioncash
7095c2fa42
partition_data_manager: Remove commented out code
...
Commented out code shouldn't be left in without a reason indicating why
in a comment.
2018-10-13 09:17:02 -04:00