Lioncash
14aca37172
file_sys/card_image: Remove obsolete TODO
We already support Rev 1+.
7 years ago
Lioncash
348c03b1bd
file_sys/nca_metadata: Update CNMT structures
Names a few more entries in relevant structures. Information based off
SwitchBrew and my own RE.
7 years ago
Lioncash
c45be86d6e
file_sys/card_image: Deduplicate casts within AddNCAFromPartition()
Makes for nicer reading.
7 years ago
Lioncash
f5f9c52900
file_sys/card_image: Make bracing consistent
Makes for more consistent reading.
7 years ago
Lioncash
8bfb8e3dce
file_sys/card_image: Assign collapsed NCA contents directly to ncas member
Same thing, significantly less noisy.
7 years ago
Lioncash
907c499608
file_sys/card_image: Deduplicate type cast
Same thing, less duplication. We can also std::move raw into the
PartitionFilesystem constructor.
7 years ago
Lioncash
c305601f9b
file_sys/card_image: Get rid of a magic number
We can just use the size of the array to dehardcode it.
7 years ago
Lioncash
bfafb5f7d1
file_sys/card_image: Use std::array deduction guides
Same thing, less code.
7 years ago
Zach Hilman
e62e715ac2
nsp: Correct status codes for extracted NSPs
Avoids all extracted NSPs being marked as error file type because they don't have program NCAs.
7 years ago
Zach Hilman
5231fb95e6
nsp: Use title ID from NPDM metadata for extracted type NSPs
Avoids 0 being used as title ID for all extracted NSPs.
7 years ago
Zach Hilman
ae00309771
kernel_executable: Optimize BLZ decompression
7 years ago
Zach Hilman
5f6dba8ece
game_list: Accept *.kip as a file extension of executables
7 years ago
Zach Hilman
04a69eb6c7
program_metadata: Add function to load meta from raw parameters
Needed for KIP loading as KIPs do not have an NPDM but do have the essential parts of the data within.
7 years ago
Zach Hilman
48bb330ad1
file_sys: Add classes to parse KIP1 and INI1 files
7 years ago
Michael Scire
e417da5070
Implement IApplicationFunctions::GetDesiredLanguage
7 years ago
Lioncash
633d55d503
file_sys/program_metadata: Remove obsolete TODOs
BitField has been trivially copyable since
b20657a36f , so we can eliminate these
TODO comments and use ReadObject() directly instead of memcpying the
data.
7 years ago
Lioncash
0359cba0f3
file_sys/nca_metadata: Remove unnecessary comparison operators for TitleType
enum class elements from the same enum can already be compared against
one another without the need for explicitly defined comparison
operators.
7 years ago
Lioncash
d7f670204b
file_sys/fsmitm_romfsbuild: Utilize a string_view in romfs_calc_path_hash()
The given string instance doesn't need to be copied entirely, we can
just use a view instead.
7 years ago
Lioncash
7d93ed3f70
service/fsp_srv: Don't pass SaveDataDescriptor instances by value.
Passing around a 64 byte data struct by value is kind of wasteful,
instead pass a reference to the struct.
7 years ago
Lioncash
90abd76bd9
service/fsp_srv: Update SaveDataInfo and SaveDataDescriptor structs
I realized that I updated the documentation on SwitchBrew a while ago,
but never actually updated the structs within yuzu.
7 years ago
Lioncash
74c41c4095
file_sys/control_metadata: Amend naming of members
Quite a bit of these were out of sync with Switchbrew (and in some cases
entirely wrong). While we're at it, also expand the section of named
members. A segment within the control metadata is used to specify
maximum values for the user, device, and cache storage max sizes and
journal sizes.
These appear to be generally used by the am service (e.g. in
CreateCacheStorage, etc).
7 years ago
Zach Hilman
d6744d9b06
patch_manager: Dump NSO name with build ID
7 years ago
Zach Hilman
3f62d06b38
core: Port current uses of RegisteredCache to ContentProvider
7 years ago
Zach Hilman
0cfcb928ce
file_sys: Create ContentProvider interface and default implementations
7 years ago
Lioncash
ff47991967
core/cheat_engine: Make MemoryReadImpl and MemoryWriteImpl internally linked
These don't need to be visible outside of the translation unit, so they
can be enclosed within an anonymous namespace.
7 years ago
Lioncash
0d44c061fe
file_sys/cheat_engine: Silence truncation and sign-conversion warnings
7 years ago
Lioncash
b59b7084c7
file_sys/cheat_engine: Remove use of global system accessors
Instead, pass in the core timing instance and make the dependency
explicit in the interface.
7 years ago
Lioncash
be2b64e8bc
file_sys/patch_manager: Deduplicate NSO header
This source file was utilizing its own version of the NSO header.
Instead of keeping this around, we can have the patch manager also use
the version of the header that we have defined in loader/nso.h
7 years ago
Lioncash
782461221f
file_sys/patch_manager: Remove two magic values
These correspond to the NSOBuildHeader.
7 years ago
Lioncash
43fd362174
file_sys/content_archive: Amend name of Data_Unknown5 enum entry
While we're at it, give each entry some documentation.
7 years ago
Zach Hilman
03c5d788da
set_sys: Use official nintendo version string
7 years ago
Zach Hilman
d741f8ee90
system_version: Correct sizes on VectorVfsFile construction
7 years ago
Zach Hilman
d9ef55ed76
set_sys: Implement GetFirmwareVersion(2) for libnx hosversion
Uses the synthesized system archive 9 (SystemVersion) and reports v5.1.0-0.0
7 years ago
Zach Hilman
20c46b9242
vm_manager: Remove cheat-specific ranges from VMManager
7 years ago
Zach Hilman
b6ac32dc35
cheat_engine: Add parser and interpreter for game cheats
7 years ago
Zach Hilman
81302571bf
patch_manager: Display cheats in game list add-ons
7 years ago
Zach Hilman
57c6d77be0
patch_manager: Add support for loading cheats lists
Uses load/<title_id>/<mod_name>/cheats as root dir, file name is all upper or lower hex first 8 bytes build ID.
7 years ago
Frederic L
b0f1eaee7a
file_sys/vfs_vector: Fix ignored offset on Write
7 years ago
Lioncash
a5d7387d47
file_sys/directory: Remove unused DirectoryBackend class
This isn't used at all, so we can just get rid of it.
7 years ago
Zach Hilman
fa4a624cc6
content_archive: Add getter for logo section of NCA
7 years ago
Zach Hilman
94149affe0
romfs: Add SingleDiscard extraction type
Needed for manual RomFS extraction, as Full generates an extra directory and Truncated generates variable results.
7 years ago
Lioncash
a72bda4ecc
file_sys/program_metadata: Print out more descriptive address space descriptions
Provides extra information that makes it easier to tell if an executable
being run is using a 36-bit address space or a 39-bit address space.
While we don't support AArch32 executables yet, this also puts in
distinguishing information for the 32-bit address space types as well.
7 years ago
Zach Hilman
9121887ae4
am: Implement GetSaveDataSize and ExtendSaveData
These functions come in a pair and are needed by Smash Ultimate, Minecraft, and Skyrim, amongst others.
7 years ago
Zach Hilman
cfb21a8781
savedata_factory: Partially implement IVFC save sizes using files
This stores a file in the save directory called '.yuzu_save_size' which stores the two save sizes (normal area and journaled area) sequentially as u64s.
7 years ago
Zach Hilman
80ae27c5fc
control_metadata: Update NACP fields with latest Switchbrew data
7 years ago
Zach Hilman
8e1160d668
control_metadata: Use value member instead of unique_ptr to store struct
Serves no actual purpose in this instance besides making NACP's copy assignment deleted, which is not intended behavior.
7 years ago
Zach Hilman
f6755b94db
vfs: Add reinterpret_casts to WriteArray and Object
Allows these functions to compile when T is not u8.
7 years ago
Lioncash
b221836d5d
kernel/process: Hook up the process capability parser to the process itself
While we're at it, we can also toss out the leftover capability parsing
from Citra.
7 years ago
David Marcec
1dfb0a513a
Fixed uninitialized memory due to missing returns in canary
Functions which are suppose to crash on non canary builds usually don't return anything which lead to uninitialized memory being used.
7 years ago
Lioncash
9cb11d1ae4
patch_manager: Prevent use of a dangling pointer within PatchRomFS
fmt::format() returns a std::string instance by value, so calling
.c_str() on it here is equivalent to doing:
auto* ptr = std::string{}.c_str();
The data being pointed to isn't guaranteed to actually be valid anymore
after that expression ends. Instead, we can just take the string as is,
and provide the necessary formatting parameters.
7 years ago