summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2018-11-23memory_manager: Do not allow 0 to be a valid GPUVAddr.bunnei
- Fixes a bug with Undertale using 0 for a render target.
2018-11-23Merge pull request #1770 from DarkLordZach/applet-stubbunnei
applets: Add StubApplet and use it as fallback when AppletId is not implemented
2018-11-23Merge pull request #1777 from lioncash/core-mgrbunnei
core: Relocate CPU core management to its own class
2018-11-23Merge pull request #1773 from lioncash/threadbunnei
common/thread: Minor cleanup
2018-11-23Added predicate comparison LessEqualWithNan (#1736)Hexagon12
* Added predicate comparison LessEqualWithNan * oops * Clang fix
2018-11-23Merge pull request #1756 from ReinUsesLisp/fix-texturesbunnei
gl_shader_decompiler: Fix register overwriting on texture calls
2018-11-23Merge pull request #1766 from FernandoS27/fix-txqbunnei
Properly Implemented TXQ Instruction
2018-11-23Merge pull request #1762 from bunnei/getgputimebunnei
nvhost_ctrl_gpu: Implement IoctlGetGpuTime.
2018-11-22am: Return StubApplet instead of nullptr when AppletId not foundZach Hilman
2018-11-22debug_pad: Avoid loading input for nonexistent buttons (Home and Screenshot)Zach Hilman
Prevents memory exceptions when the debug pad is enabled.
2018-11-22Merge pull request #1775 from bunnei/blend-eqbunnei
maxwell_3d: Implement alternate blend equations.
2018-11-22Merge pull request #1765 from bunnei/multi-audoutbunnei
audout_u: Add support for multiple IAudioOut streams.
2018-11-22Merge pull request #1764 from bunnei/macrointerpreterbunnei
macro_interpreter: Implement AddWithCarry and SubtractWithBorrow.
2018-11-22core: Relocate CPU core management to its own classLioncash
Keeps the CPU-specific behavior from being spread throughout the main System class. This will also act as the home to contain member functions that perform operations on all cores. The reason for this being that the following pattern is sort of prevalent throughout sections of the codebase: If clearing the instruction cache for all 4 cores is necessary: Core::System::GetInstance().ArmInterface(0).ClearInstructionCache(); Core::System::GetInstance().ArmInterface(1).ClearInstructionCache(); Core::System::GetInstance().ArmInterface(2).ClearInstructionCache(); Core::System::GetInstance().ArmInterface(3).ClearInstructionCache(); This is kind of... well, silly to copy around whenever it's needed. especially when it can be reduced down to a single line. This change also puts the basics in place to begin "ungrafting" all of the forwarding member functions from the System class that are used to access CPU state or invoke CPU-specific behavior. As such, this change itself makes no changes to the direct external interface of System. This will be covered by another changeset.
2018-11-22macro_interpreter: Implement AddWithCarry and SubtractWithBorrow.bunnei
- Used by Undertale.
2018-11-22audout_u: Add support for multiple IAudioOut streams.bunnei
- Used by Undertale.
2018-11-22maxwell_3d: Implement alternate blend equations.bunnei
- Used by Undertale.
2018-11-22common/thread: Drop Hungarian notation on SetCurrentThreadName's parameterLioncash
This is inconsistent with our coding style.
2018-11-21Merge pull request #1737 from FernandoS27/layer-copybunnei
Implemented Fast Layered Copy
2018-11-21Merge pull request #1771 from lioncash/bit-setbunnei
common: Remove bit_set.h
2018-11-21Merge pull request #1767 from lioncash/handlebunnei
kernel/handle_table: Minor changes
2018-11-21common/thread: Make Barrier's 'count' member non-constLioncash
While admirable as a means to ensure immutability, this has the unfortunate downside of making the class non-movable. std::move cannot actually perform a move operation if the provided operand has const data members (std::move acts as an operation to "slide" resources out of an object instance). Given Barrier contains move-only types such as std::mutex, this can lead to confusing error messages if an object ever contained a Barrier instance and said object was attempted to be moved.
2018-11-21common/thread: Initialize class member variables where applicableLioncash
Simplifies the constructor interfaces for Barrier and Event classes.
2018-11-21common/thread: Group non-member functions togetherLioncash
Keeps the non-member interface in one spot instead of split into two places, making it nicer to locate functions.
2018-11-21common/thread: Remove SleepCurrentThread()Lioncash
This is also unused and superceded by standard functionality. The standard library provides std::this_thread::sleep_for(), which provides a much more flexible interface, as different time units can be used with it.
2018-11-21common/thread: Remove unused CurrentThreadId()Lioncash
This is an old function that's no longer necessary. C++11 introduced proper threading support to the language and a thread ID can be retrieved via std::this_thread::get_id() if it's ever needed.
2018-11-21common: Remove bit_set.hLioncash
This is an analog of BitSet from Dolphin that was introduced to allow iterating over a set of bits. Given it's currently unused, and given that std::bitset exists, we can remove this. If it's ever needed in the future it can be brought back.
2018-11-21applets: Add StubAppletZach Hilman
This will log all data it receives, log all calls to its methods and push dummy data into both channels on execution.
2018-11-21gl_shader_decompiler: Fix register overwriting on texture callsReinUsesLisp
2018-11-21kernel/handle_table: Move private static functions into the cpp fileLioncash
These don't depend on class state, and are effectively implementation details, so they can go into the cpp file .
2018-11-21kernel/handle_table: Restrict handle table size to 1024 entriesLioncash
The previous handle table size is a holdover from Citra. The actual handle table construct on Horizon only allows for a maximum of 1024 entries.
2018-11-21kernel/handle_table: Default destructor in the cpp fileLioncash
We don't need to potentially inline the teardown logic of all of the handle instances.
2018-11-21Merge pull request #1753 from FernandoS27/ufbtypebunnei
Use default values for unknown framebuffer pixel format
2018-11-21Merge pull request #1752 from ReinUsesLisp/unimpl-decompilerbunnei
gl_shader_decompiler: Use UNIMPLEMENTED when applicable
2018-11-21Properly Implemented TXQ InstructionFernandoS27
2018-11-21Merge pull request #1742 from lioncash/hle-swkbdbunnei
am/applets: Minor cleanup
2018-11-21nvhost_ctrl_gpu: Implement IoctlGetGpuTime.bunnei
- Used by Undertale.
2018-11-21Merge pull request #1754 from ReinUsesLisp/zero-registerbunnei
gl_shader_decompiler: Remove UNREACHABLE when setting RZ
2018-11-21Merge pull request #1758 from lioncash/rectbunnei
common/math_util: Minor cleanup
2018-11-21Use default values for unknown framebuffer pixel formatFernandoS27
2018-11-21common: Remove dependency on xbyakLioncash
Xbyak is currently entirely unused. Rather than carting it along, remove it and get rid of a dependency. If it's ever needed in the future, then it can be re-added (and likely be more up to date at that point in time).
2018-11-21common/math_util: Simplify std::make_signed usages to std::make_signed_tLioncash
Gets rid of the need to use typename to access the ::type alias.
2018-11-21common/math_util: Make Rectangle's constructors constexprLioncash
Allows objects that contain rectangle instances to be constexpr constructible as well.
2018-11-21common/math_util: Remove unnecessary static from PILioncash
const/constexpr variables have internal linkage by default.
2018-11-21common/math_util: Remove unused IntervalsIntersect() functionLioncash
This hasn't been used since the project started, so we may as well get rid of it to keep it from bit rotting.
2018-11-20Merge pull request #1751 from bunnei/color-mask-fixbunnei
maxwell_3d: Initialize rasterizer color mask registers as enabled.
2018-11-20gl_shader_decompiler: Remove UNREACHABLE when setting RZReinUsesLisp
2018-11-20gl_shader_decompiler: Use UNIMPLEMENTED instead of LOG+UNREACHABLE when ↵ReinUsesLisp
applicable
2018-11-20maxwell_3d: Initialize rasterizer color mask registers as enabled.bunnei
- Fixes rendering regression with Sonic Mania.
2018-11-20am: Correct build failureLioncash
The interface for shared memory was changed, but another commit was merged that relied on the (previously public) internals of SharedMemory. This amends that discrepancy.