Commit Graph

8826 Commits (fd312abedd437bc22b34da65eb1ff42dadce7388)
 

Author SHA1 Message Date
Lioncash fd312abedd submission_package: Move NCA reading code to its own function
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.
6 years ago
Lioncash 4f18d35888 submission_package: Move ticket key setting to its own function
This behavior is entirely independent of the surrounding code, so it can
be put in its own function to keep the behavior separate.
6 years ago
Lioncash 0d83f8f255 submission_package: Invert conditionals within NSP's constructor to reduce nesting
We can use early continues here to reduce the amount of nesting.
6 years ago
bunnei bc679c9b8c
Merge pull request #1330 from raven02/tlds
TLDS: Add 1D sampler
6 years ago
bunnei 7c61f0c322
Merge pull request #1420 from MerryMage/dynarmic
externals: Update dynarmic to 4e6848d
6 years ago
bunnei 8391048a83
Merge pull request #1322 from bunnei/tex-cubemap
gl_rasterizer_cache: Implement cubemap textures.
6 years ago
bunnei decc319634
Merge pull request #1403 from DarkLordZach/install-sysnand
qt: Install System TitleTypes to System NAND
6 years ago
bunnei 8f2ad3a66d
Merge pull request #1338 from raven02/service_vi
Implement ISystemDisplayService::GetDisplayMode
6 years ago
bunnei 5e2f23e2b1
Merge pull request #1417 from lioncash/context
svc: Implement svcGetThreadContext
6 years ago
bunnei df3799a008 gl_rasterizer_cache: Fixes to how we do render to cubemap.
- Fixes issues with Splatoon 2.
6 years ago
MerryMage 3031aa9d27 externals: Update dynarmic to 4e6848d
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
6 years ago
bunnei 29782273ec gl_rasterizer_cache: Add check for array rendering to cubemap texture. 6 years ago
bunnei f543b43fd0 gl_rasterizer_cache: Implement render to cubemap. 6 years ago
bunnei 15cc729ebd gl_shader_decompiler: TEXS: Implement TextureType::TextureCube. 6 years ago
bunnei ed2e0e85c9 gl_rasterizer_cache: Add support for SurfaceTarget::TextureCubemap. 6 years ago
bunnei 871580dcd8 gl_rasterizer_cache: Implement LoadGLBuffer for Texture2DArray. 6 years ago
bunnei a9aa1db552 gl_rasterizer_cache: Update BlitTextures to support non-Texture2D ColorTexture surfaces. 6 years ago
bunnei 2e1cdde994 gl_rasterizer_cache: Track texture target and depth in the cache. 6 years ago
bunnei fefb003b23 gl_rasterizer_cache: Workaround for Texture2D -> Texture2DArray scenario. 6 years ago
bunnei ce452049d3 gl_rasterizer_cache: Keep track of surface 2D size separately from total size. 6 years ago
raven02 b92b4bbeaf Fix trailing whitespace 6 years ago
Merry f8e46d335f
Merge pull request #1418 from FearlessTobi/port-4269
Port citra-emu/citra#4269: "OSX: Set MACOSX_DEPLOYMENT_TARGET to 10.13"
6 years ago
B3n30 56901912cb OSX: Set MACOSX_DEPLOYMENT_TARGET to 10.13 6 years ago
Lioncash 541c550753 kernel/svc: Implement svcGetThreadContext()
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).
6 years ago
Lioncash dccfe193a9 kernel/process: Add a data member to determine if a process is 64-bit or not.
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).
6 years ago
Lioncash cf9d6c6f52 kernel/process: Make data member variables private
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.
6 years ago
Lioncash 16145e2f21 arm_interface: Add missing fpsr/tpidr members to the ThreadContext struct
Internally within the kernel, it also includes a member variable for the
floating-point status register, and TPIDR, so we should do the same here to match
it.

While we're at it, also fix up the size of the struct and add a static
assertion to ensure it always stays the correct size.
6 years ago
raven02 4092907687 Implement ISystemDisplayService::GetDisplayMode 6 years ago
bunnei 334090fe6f
Merge pull request #1414 from lioncash/ref
loader: Make the Load() function take a process as a regular reference, not a SharedPtr
6 years ago
Lioncash a63e6f9dfd loader: Make the Load() function take a process as a regular reference, not a SharedPtr
A process should never require being reference counted in this
situation. If the handle to a process is freed before this function is
called, it's definitely a bug with our lifetime management, so we can
put the requirement in place for the API that the process must be a
valid instance.
6 years ago
bunnei 0921558a9f
Merge pull request #1388 from FearlessTobi/port-4258
Port citra-emu/citra#4258: "Meta: Add gitattributes file"
6 years ago
bunnei 97c0ac3545
Merge pull request #1412 from lioncash/move
kernel/object: Remove unnecessary std::move from DynamicObjectCast()
6 years ago
bunnei fe5962e073
Merge pull request #1411 from ReinUsesLisp/point-size
video_core: Implement point_size and add point state sync
6 years ago
bunnei 8d8366b602
Merge pull request #1406 from ReinUsesLisp/multibind-samplers
gl_state: Pack sampler bindings into a single ARB_multi_bind
6 years ago
bunnei f7b69d61f2
Merge pull request #1395 from lioncash/vm
process/vm_manager: Initial modifications to load NPDM metadata
6 years ago
Lioncash f4c24d0832 kernel/object: Remove unnecessary std::move from DynamicObjectCast()
boost::static_pointer_cast for boost::intrusive_ptr (what SharedPtr is),
takes its parameter by const reference. Given that, it means that this
std::move doesn't actually do anything other than obscure what the
function's actual behavior is, so we can remove this. To clarify, this
would only do something if the parameter was either taking its argument
by value, by non-const ref, or by rvalue-reference.
6 years ago
ReinUsesLisp e3e51d3ddb video_core: Implement point_size and add point state sync 6 years ago
ReinUsesLisp b8f1506aa5 gl_state: Pack sampler bindings into a single ARB_multi_bind 6 years ago
bunnei f7da74d18e
Merge pull request #1360 from FearlessTobi/port-3979
Port citra-emu/citra#3979 game_list: move SearchField to game_list_p.h and fix untranslated text
6 years ago
bunnei fc2419e441
Merge pull request #1394 from lioncash/stream
stream: Preserve enum class type in GetState()
6 years ago
Mat M 29ff84ea99
Merge pull request #1389 from PhiBabin/valgrind
FPCR register was uninitialized at start up
6 years ago
bunnei a75740b298
Merge pull request #1397 from spycrab/cmake_bin
CMake: Remove superfluous CMAKE_RUNTIME_OUTPUT_DIRECTORY assignment
6 years ago
bunnei 62048edc15
Merge pull request #1377 from FernandoS27/faster-swizzle
Improved Fast Swizzle and Legacy Swizzle
6 years ago
bunnei 8731ac87fa
Merge pull request #1404 from lioncash/vfs
fsmitm_romfsbuild: Minor changes
6 years ago
Zach Hilman 70e86248fd qt: Install System TitleTypes to System NAND
Fixes an issue where installed system archive NCAs would be installed to user NAND and not recognized by games.
6 years ago
Lioncash 861580f6d2 fsmitm_romfsbuild: std::move std::vector instances in Build()
Avoids making copies of large std::vector instances where it's trivially
avoidable to do so.
6 years ago
Lioncash 7ecdaaf189 fsmitm_romfsbuild: Replace manual value aligning with Common::AlignUp()
Theres no need to do explicit bitwise arithmetic here, when we have a
function that does this with a more descriptive name.
6 years ago
bunnei c0445006af
Merge pull request #1399 from lioncash/sched
kernel/scheduler: Take ARM_Interface instances by reference
6 years ago
bunnei efcb83fb41
Merge pull request #1400 from lioncash/header
service: Add missing headers inclusions where applicable
6 years ago
bunnei cc866d1384
Merge pull request #1402 from ReinUsesLisp/asserts
video_core: Add asserts for CS, TFB and alpha testing
6 years ago