summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-10-03Merge pull request #1429 from lioncash/translatebunnei
configure_input: Make analog mapping strings translatable
2018-10-03Merge pull request #1436 from lioncash/viewbunnei
submission_package: Cleanup and bug fixes
2018-10-03Merge pull request #1432 from lioncash/lblbunnei
service/lbl: Update service function table
2018-10-03Merge pull request #1426 from FearlessTobi/port-4253bunnei
Port citra-emu/citra#4253: "common/string_util cleanup"
2018-10-03Merge pull request #1435 from lioncash/xcibunnei
card_image: Ensure program_nca_status is always initialized
2018-10-03submission_package: Avoid dangling std::string_view within SetTicketKeys()Lioncash
GetName() returns a std::string by value, not by reference, so after the std::string_view is constructed, it's not well defined to actually execute any member functions of std::string_view that attempt to access the data, as the std::string has already been destroyed. Instead, we can just use a std::string and erase the last four characters.
2018-10-03submission_package: Correct location of null check within SetTicketKeys()Lioncash
If a ticket file was ever a null pointer, we'd cause a null pointer dereference, as we were calling GetExtension() on the pointer instance.
2018-10-03submission_package: Use std::string's rfind() when looking for the extension ↵Lioncash
in InitializeExeFSAndRomFS() When searching for a file extension, it's generally preferable to begin the search at the end of the string rather than the beginning, as the whole string isn't going to be walked just to check for something at the end of it.
2018-10-03submission_package: Ensure the 'extracted' member variable is always initializedLioncash
If an error occurs when constructing the PartitionFilesystem instance, the constructor would be exited early, which wouldn't initialize the extracted data member, making it possible for other code to perform an uninitialized read by calling the public IsExtractedType() member function. This prevents that.
2018-10-03submission_package: Move ExeFS and RomFS initialization to its own functionLioncash
Like the other two bits of factored out code, this can also be put within its own function. We can also modify the code so that it accepts a const reference to a std::vector of files, this way, we can deduplicate the file retrieval. Now the constructor for NSP isn't a combination of multiple behaviors in one spot. It's nice and separate.
2018-10-03submission_package: Move NCA reading code to its own functionLioncash
This too, is completely separate behavior from what is in the constructor, so we can move this to its own isolated function to keep everything self-contained.
2018-10-03submission_package: Move ticket key setting to its own functionLioncash
This behavior is entirely independent of the surrounding code, so it can be put in its own function to keep the behavior separate.
2018-10-03submission_package: Invert conditionals within NSP's constructor to reduce ↵Lioncash
nesting We can use early continues here to reduce the amount of nesting.
2018-10-02card_image: Ensure program_nca_status is always initializedLioncash
If any of the error paths before the NCA retrieval are taken, it'll result in program_nca_status being left in an inconsistent state. So we initialize it by default with a value indicating an error.
2018-10-02service/lbl: Update service function tableLioncash
Amends the lbl service table to include new names of functions that were added to Switchbrew.
2018-10-02configure_input: Make analog mapping strings translatableLioncash
These strings are user-facing, so they should be specified as translatable with tr().
2018-10-02string_util: unify UTF8<->UTF16 conversion to codecvtWeiyi Wang
2018-10-02string_util: remove TString conversion for windowsWeiyi Wang
First of all they are foundamentally broken. As our convention is that std::string is always UTF-8, these functions assume that the multi-byte character version of TString (std::string) from windows is also in UTF-8, which is almost always wrong. We are not going to build multi-byte character build, and even if we do, this dirty work should be handled by frontend framework early.
2018-10-02string_util: remove ShiftJIS/CP1252 conversion functionWeiyi Wang
We always use unicode internally. Any dirty work of conversion with other codec should be handled by frontend framework (Qt). Further more, ShiftJIS/CP1252 are not special (they are not code set used by 3ds, or any guest/host dependencies we have), so there is no reason to specifically include them
2018-10-01Merge pull request #1407 from DarkLordZach/dlcbunnei
aoc_u: Implement functions and add support for DLC loading
2018-10-01Merge pull request #1422 from ReinUsesLisp/fixup-pointsbunnei
gl_rasterizer: Fixup unassigned point sizes
2018-10-01gl_rasterizer: Fixup unassigned point sizesReinUsesLisp
2018-09-30Merge pull request #1330 from raven02/tldsbunnei
TLDS: Add 1D sampler
2018-09-30Merge pull request #1420 from MerryMage/dynarmicbunnei
externals: Update dynarmic to 4e6848d
2018-09-30Merge pull request #1322 from bunnei/tex-cubemapbunnei
gl_rasterizer_cache: Implement cubemap textures.
2018-09-30Merge pull request #1403 from DarkLordZach/install-sysnandbunnei
qt: Install System TitleTypes to System NAND
2018-09-30aoc_u: Extract AccumulateAOCTitleIDs to separate functionZach Hilman
2018-09-30aoc_u: Implement GetAddOnContentBaseIdZach Hilman
Command #5
2018-09-30aoc_u: Implement Count, List and Prepare AddOnContentZach Hilman
Commands #2, #3, and #7
2018-09-30romfs_factory: Read from all locations with StorageId NoneZach Hilman
Previous behavior was to assert. Seems to mirror expected game behavior.
2018-09-30patch_manager: Add DLC recognition to PatchManagerZach Hilman
2018-09-30Merge pull request #1338 from raven02/service_vibunnei
Implement ISystemDisplayService::GetDisplayMode
2018-09-30Merge pull request #1417 from lioncash/contextbunnei
svc: Implement svcGetThreadContext
2018-09-30gl_rasterizer_cache: Fixes to how we do render to cubemap.bunnei
- Fixes issues with Splatoon 2.
2018-09-30externals: Update dynarmic to 4e6848dMerryMage
4e6848d A32/ir_emitter: Bugfix: ExceptionRaised was producing incorrect PC 41ba9fd value: Move ImmediateToU64() to be a part of Value's interface c6a6271 reg_alloc: Emit AVX instructions where able aedd32a abi: Emit AVX instructions where able f2d9337 a64_exclusive_monitor: Loosen memory ordering requirements 7ca709d travis: Make macOS builds use Xcode 10 14dd45e Fix VShift terminology 88554c4 emit_x64_vector: AVX512 implementation of EmitVectorLogicalVShiftS16 ab4e316 emit_x64_vector: AVX512 implementation of EmitVectorLogicalVShiftS64 0ea84f3 emit_x64_vector: AVX2 implementation of EmitVectorLogicalVShiftS32 c77a2c5 emit_x64_vector: AVX512 implementation of EmitVectorLogicalVShiftU16() e9441fd emit_x64_vector: AVX2 implementation of EmitVectorLogicalVShiftU64() 0e9c33c emit_x64_vector: AVX2 implementation of EmitVectorLogicalVShiftU32() 8f85274 emit_x64_vector: SSSE3 variant of EmitVectorCountLeadingZeros8() be05e75 Merge pull request #397 from VelocityRa/dec-shift-fix bc328fc decoders: Cast to correctly-sized type before shifting 9c3d2d1 a64_emit_x64: Lowercase PAGE_SIZE f538d29 emit_x64_vector_floating_point: SSE4.1 implementation of EmitFPVectorToFixed 1603a6e emit_x64_vector_floating_point: EmitFPVectorRoundInt: Use FCODE 2e1ccaf emit_x64_vector: AVX implementation for EmitVectorCountLeadingZeros8 555bfda emit_x64_vector: SSE implementation of EmitVectorCountLeadingZeros16 71c2589 externals: Update Xbyak to 5.73 1ec1b2f Squashed 'externals/xbyak/' changes from 1de435ed..42462ef9
2018-09-30gl_rasterizer_cache: Add check for array rendering to cubemap texture.bunnei
2018-09-30gl_rasterizer_cache: Implement render to cubemap.bunnei
2018-09-30gl_shader_decompiler: TEXS: Implement TextureType::TextureCube.bunnei
2018-09-30gl_rasterizer_cache: Add support for SurfaceTarget::TextureCubemap.bunnei
2018-09-30gl_rasterizer_cache: Implement LoadGLBuffer for Texture2DArray.bunnei
2018-09-30gl_rasterizer_cache: Update BlitTextures to support non-Texture2D ↵bunnei
ColorTexture surfaces.
2018-09-30gl_rasterizer_cache: Track texture target and depth in the cache.bunnei
2018-09-30gl_rasterizer_cache: Workaround for Texture2D -> Texture2DArray scenario.bunnei
2018-09-30gl_rasterizer_cache: Keep track of surface 2D size separately from total size.bunnei
2018-09-30Fix trailing whitespaceraven02
2018-09-30Merge pull request #1418 from FearlessTobi/port-4269Merry
Port citra-emu/citra#4269: "OSX: Set MACOSX_DEPLOYMENT_TARGET to 10.13"
2018-09-30OSX: Set MACOSX_DEPLOYMENT_TARGET to 10.13B3n30
2018-09-30kernel/svc: Implement svcGetThreadContext()Lioncash
Now that we have all of the rearranging and proper structure sizes in place, it's fairly trivial to implement svcGetThreadContext(). In the 64-bit case we can more or less just write out the context as is, minus some minor value sanitizing. In the 32-bit case we'll need to clear out the registers that wouldn't normally be accessible from a 32-bit AArch32 exectuable (or process).
2018-09-30kernel/process: Add a data member to determine if a process is 64-bit or not.Lioncash
This will be necessary for the implementation of svcGetThreadContext(), as the kernel checks whether or not the process that owns the thread that has it context being retrieved is a 64-bit or 32-bit process. If the process is 32-bit, then the upper 15 general-purpose registers and upper 16 vector registers are cleared to zero (as AArch32 only has 15 GPRs and 16 128-bit vector registers. not 31 general-purpose registers and 32 128-bit vector registers like AArch64).
2018-09-30kernel/process: Make data member variables privateLioncash
Makes the public interface consistent in terms of how accesses are done on a process object. It also makes it slightly nicer to reason about the logic of the process class, as we don't want to expose everything to external code.