Commit Graph

3873 Commits (8b685c430857e94937c49d73a406b0cb2119d587)
 

Author SHA1 Message Date
Subv 64da2bf0cd Memory: Fixed a regression caused by #1695 and #1689.
Reserve enough space in the vector that holds the linear heap memory to prevent relocations of the backing memory when growing too much.

Closes #1790
2016-05-14 11:24:19 +07:00
Jannik Vogel 5389dedfa1 OpenGL: Only update depth uniforms if the depth changed 2016-05-14 10:31:18 +07:00
Jannik Vogel f8a11a664f OpenGL: value-initialize variables which cause uninitialised access otherwise 2016-05-14 10:16:11 +07:00
bunnei 18b517e236 Merge pull request #1689 from Subv/shmem
Kernel: Implemented shared memory.
2016-05-13 15:33:44 +07:00
Tony Wasserka 193ea9df29 Merge pull request #1788 from MerryMage/ext-soundtouch
gitmodules: citra-emu/soundtouch → citra-emu/ext-soundtouch
2016-05-13 12:34:24 +07:00
MerryMage 32b1d8ebb0 gitmodules: citra-emu/soundtouch → citra-emu/ext-soundtouch 2016-05-13 11:31:36 +07:00
Jannik Vogel 1308afe2c2 Use new shader-jit signature for interpreter 2016-05-13 09:41:55 +07:00
Jannik Vogel 4e01e9ffc5 Refactor access to state in shader-jit 2016-05-13 09:20:14 +07:00
bunnei 0d8bd3ba36 Merge pull request #1695 from Subv/tls_alloc
Kernel/Threads: Dynamically allocate the TLS region for threads.
2016-05-12 21:51:35 +07:00
Subv ac2de12ed8 HLE/Applets: Give each applet its own block of heap memory, and use that when creating the framebuffer shared memory block. 2016-05-12 20:01:59 +07:00
Subv d261984f54 Kernel: Account for automatically-allocated shared memories in the amount of used linear heap memory. 2016-05-12 20:01:59 +07:00
Subv abf8dcd700 APT: Move the shared font loading and relocation functions to their own subdirectory services/apt/bcfnt. 2016-05-12 20:01:54 +07:00
Subv 5679d066b5 Kernel/SharedMemory: Log an error when Map fails. 2016-05-12 20:01:27 +07:00
Subv 0fb6d2a247 Kernel: Implemented shared memory permissions. 2016-05-12 20:01:26 +07:00
Subv 9005cda664 APT: Implement relocating the shared font to its true address. 2016-05-12 20:01:20 +07:00
Subv f72bd57212 Kernel/Memory: Remove the Shared Memory region from the legacy memory map. 2016-05-12 20:00:33 +07:00
Subv 1bd0cf542f Kernel/SharedMemory: Properly implemented shared memory support.
Applications can request the kernel to allocate a piece of the linear heap for them when creating a shared memory object.
Shared memory areas are now properly mapped into the target processes when calling svcMapMemoryBlock.

Removed the APT Shared Font hack as it is no longer needed.
2016-05-12 20:00:32 +07:00
Subv 42a50da76b Kernel/SVC: Fixed the register order for svcCreateMemoryBlock.
R0 is used as the last parameter instead of R4.
2016-05-12 20:00:29 +07:00
bunnei d474d117f6 Merge pull request #1783 from JayFoxRox/cleanup-shadersetup
Cleanup ShaderSetup (Part 1)
2016-05-12 19:32:44 +07:00
Jannik Vogel 5864cb7e00 OpenGL: Support blend equation 2016-05-12 22:57:40 +07:00
MerryMage 9b4187974b Microprofile: DPI-aware drawing 2016-05-12 21:49:02 +07:00
Jannik Vogel 7e756faaba Move program_counter and call_stack from UnitState to interpreter 2016-05-12 19:05:42 +07:00
Jannik Vogel 6c6d99ca51 Move default_attributes into Pica state 2016-05-12 19:05:41 +07:00
bunnei f6eb62d062 Merge pull request #1690 from JayFoxRox/tex-type-3
Pica: Implement texture type 3 (Projection2D)
2016-05-11 21:47:08 +07:00
bunnei 996f14f757 Merge pull request #1780 from JayFoxRox/shadersetup-class
Turn ShaderSetup into a class
2016-05-11 21:37:47 +07:00
Jannik Vogel ae7a82fa1c Turn ShaderSetup into struct 2016-05-11 23:48:24 +07:00
Jannik Vogel 5a7306d6df OpenGL: Implement texture type 3 2016-05-11 08:07:37 +07:00
Jannik Vogel 4311297eb1 Rasterizer: Implement texture type 3 2016-05-11 08:07:36 +07:00
Jannik Vogel 2f8e8e1455 Pica: Add tc0.w to OutputVertex 2016-05-11 08:07:36 +07:00
Jannik Vogel 9cfebb9334 Pica: Add texture type to state 2016-05-11 08:07:36 +07:00
bunnei 86ecbdfa4d Merge pull request #1621 from JayFoxRox/w-buffer
Implement W-buffer and fix depth-mapping
2016-05-10 23:00:40 +07:00
bunnei feecc76333 Merge pull request #1774 from lioncash/warn
gdbstub: Silence missing prototype warnings
2016-05-10 12:14:41 +07:00
Mat M 1ec1325117 Merge pull request #1773 from lioncash/debug-build
gl_rasterizer: Fix compilation for debug builds
2016-05-10 09:52:05 +07:00
Lioncash 75e5d0a6a0 gl_rasterizer: Fix compilation for debug builds 2016-05-10 09:22:02 +07:00
Lioncash 0a52e1f587 gdbstub: Silence missing prototype warnings 2016-05-10 09:17:07 +07:00
Jannik Vogel fc9cc21024 OpenGL: Implement W-Buffers and fix depth-mapping 2016-05-10 08:58:52 +07:00
Jannik Vogel 4c98113b57 Pica: Implement W-Buffer in SW rasterizer 2016-05-10 08:58:52 +07:00
linkmauve 006fe5fc0f Merge pull request #1704 from JayFoxRox/pod-config
Pica: PicaShaderConfig is TC and cleared before use
2016-05-10 01:16:53 +07:00
bunnei 976bacf5f7 Merge pull request #1771 from lioncash/user
dyncom: Reset the context into user mode correctly
2016-05-09 18:54:09 +07:00
Lioncash 0f941d0245 dyncom: Reset the context into user mode correctly
The other mode was system mode.
2016-05-09 16:30:55 +07:00
bunnei 21b040bd8c Merge pull request #1770 from lioncash/format
source: Fix missing logging arguments
2016-05-09 10:37:15 +07:00
Lioncash da2400a601 source: Fix missing logging arguments
Silences two warnings on OSX.
2016-05-09 09:41:03 +07:00
bunnei 3c3831906b Merge pull request #1768 from lioncash/swap
Swap: Minor changes
2016-05-09 09:04:15 +07:00
Lioncash d5b983a8c0 swap: Get rid of pointer casting for swapping structs
These shouldn't haphazardly convert types
2016-05-08 23:33:52 +07:00
Lioncash 47ca79ba4b swap: Get rid of undefined behavior in swapf and swapd
This isn't well-defined in C++.
2016-05-08 23:21:47 +07:00
Lioncash aef4630102 swap: Remove unused methods
Also gets rid of pointer data variants as this prevents the use of
the regular swapping routines as unary predicates in std lib functions.

They also cast to stricter alignment types, which is undefined behavior.
2016-05-08 23:12:04 +07:00
Lioncash 6d5f2a3cff vertex_loader: Correct forward declaration of InputVertex
It's actually a struct, not a class.
2016-05-08 23:08:18 +07:00
Lioncash 5587383eb7 vertex_loader: Provide an assertion for ensuring the loader has been setup
Also adds an assert to ensure that Setup is not called more than once
during a VertexLoader's lifetime.
2016-05-08 23:08:12 +07:00
Lioncash 1357724cd9 vertex_loader: Add constructors to facilitate immediate and two-step initialization 2016-05-08 23:03:32 +07:00
Lioncash 769f4a7018 vertex_loader: initialize_num_total_attributes.
Keeps the public API sane.
2016-05-08 23:03:32 +07:00