bunnei
472ec0d0cf
Merge pull request #360 from lioncash/dynuxt
...
dyncom: Implement UXTB16/UXTAB16
2014-12-28 23:20:30 -05:00
Yuri Kunde Schlesner
8369ee5803
Rasterizer: Pre-divide vertex attributes by W
...
Execute the division-by-W for perspective-correct interpolation of
values in the clipper, moving them out of the rasterization inner loop.
2014-12-29 02:08:11 -02:00
Yuri Kunde Schlesner
fe186d3a59
GPU: Bitwise texture swizzling
...
Replace the loop-based texture address swizzling code by a bit-twiddling
implementation, providing a very small speed up. Also simplify
addressing code.
2014-12-29 02:08:11 -02:00
Yuri Kunde Schlesner
2012e1420f
Rasterizer: Common sub-expression elimination
...
Move the computation of some values out of loops so that they're not
constantly recalculated even when they don't change.
2014-12-29 02:08:10 -02:00
Yuri Kunde Schlesner
7e9bc85cc8
Clipper: Compact buffers on each clipping pass
...
Use a new buffer management scheme in the clipper that allows using a
bounded minimal amount of buffer space. Even though it copies more data
it is still slightly faster likely due to using less cache.
2014-12-29 02:08:10 -02:00
Yuri Kunde Schlesner
da04976437
CMake: Require Boost 1.57.0 (fixes Travis OS X)
2014-12-29 02:08:10 -02:00
Yuri Kunde Schlesner
a320d1a5b4
Clipper: Avoid dynamic allocations
...
The triangle clipper was allocating its temporary input, output and work
buffers using a std::vector. Since this is a hot path, it's desirable to
use stack allocation instead.
2014-12-29 02:08:09 -02:00
Yuri Kunde Schlesner
d151d797b1
Vertex Shader: Zero OutputVertex to avoid denormals
...
Unused OutputVertex attributes were being left un-initialized. The
leftover garbage sometimes decoded as floating-point denormalized
values, causing fallbacks to microcode and massive slowdowns in the rest
of the rasterization pipeline even though the results were unused. By
zeroing the structure we ensure these attributes only contain harmless
zeros.
2014-12-29 02:08:09 -02:00
Lioncash
5c198686ce
dyncom: Implement UXTB16/UXTAB16
2014-12-28 22:45:04 -05:00
bunnei
487a80f9f7
Merge pull request #347 from bunnei/frameskip
...
Frameskip
2014-12-28 22:39:17 -05:00
bunnei
df728cb4c2
Merge pull request #355 from lioncash/simp
...
armemu: Simplify some instructions.
2014-12-28 22:20:49 -05:00
bunnei
3b9d181b8e
GPU: Implement frameskip and remove forced framebuffer swap hack.
2014-12-28 22:14:05 -05:00
bunnei
5763d40319
Merge pull request #352 from xdec/PR_XDEC_172
...
Qt: Citra crashes if disassembler pause button is pressed while no game is running. #172
2014-12-28 22:00:47 -05:00
bunnei
9a403d7dfb
Merge pull request #359 from lioncash/vfp
...
vfp: Actually make the code somewhat readable
2014-12-28 21:54:53 -05:00
bunnei
77363d9590
Merge pull request #331 from yuriks/handle-reform
...
New Handle manager
2014-12-28 21:11:55 -05:00
Lioncash
9c7f2570f7
vfp: Actually make the code somewhat readable
2014-12-28 18:55:01 -05:00
bunnei
4bf803579f
Merge pull request #357 from bunnei/dyncom-pkhbt-pkhtb
...
Implement PKHBT and PKHTB on dyncom, fix on armemu
2014-12-28 16:57:16 -05:00
bunnei
bf9b33aa9f
dyncom: Implement PKHBT and PKHTB.
2014-12-28 16:50:08 -05:00
bunnei
58cb62fe7b
armemu: Fix PKHTB to do an arithmetic shift and correctly decode immediate field.
2014-12-28 16:18:52 -05:00
bunnei
082f5b2311
Merge pull request #356 from lioncash/dynusad
...
dyncom: Implement USAD8/USADA8
2014-12-28 13:40:22 -05:00
xdec
e6162ed91e
Qt: we don't need to check if model is valid.
2014-12-28 10:11:51 -08:00
Lioncash
7d322b5c6f
dyncom: Implement USAD8/USADA8
2014-12-28 12:40:51 -05:00
Lioncash
6ce2a38ec4
armemu: Simplify SSAT/SSAT16/SXTB/SXTAB
2014-12-28 12:19:31 -05:00
Lioncash
9f5b53f9ff
armemu: Simplify REV/REV16/SXTH/SXTAH
2014-12-28 12:13:13 -05:00
bunnei
762f16c4ad
Merge pull request #354 from lioncash/usaduflow
...
armemu: Fix underflows in USAD8/USADA8
2014-12-28 11:57:25 -05:00
Lioncash
914ecfe04f
armemu: Simplify USAT16/UXTB/UXTAB
2014-12-28 11:57:14 -05:00
Lioncash
5e16216afb
armemu: Simplify REVSH/UXTH/UXTAH
2014-12-28 11:57:09 -05:00
Yuri Kunde Schlesner
7e2903cb74
Kernel: New handle manager
...
This handle manager more closely mirrors the behaviour of the CTR-OS
one. In addition object ref-counts and support for DuplicateHandle have
been added.
Note that support for DuplicateHandle is still experimental, since parts
of the kernel still use Handles internally, which will likely cause
troubles if two different handles to the same object are used to e.g.
wait on a synchronization primitive.
2014-12-28 11:52:55 -02:00
Yuri Kunde Schlesner
23f2142009
Kernel: Replace GetStaticHandleType by HANDLE_TYPE constants
2014-12-28 11:52:53 -02:00
Yuri Kunde Schlesner
73fba22c01
Rename ObjectPool to HandleTable
2014-12-28 11:52:52 -02:00
Lioncash
059c65a27a
armemu: Fix underflows in USAD8/USADA8
...
Initially reported by xdec.
2014-12-28 06:09:43 -05:00
xdec
8de09d87ab
Fix crash when the disassembler pause button is pressed while no game is running.
2014-12-28 01:56:07 -08:00
bunnei
3422d81f05
Merge pull request #350 from lioncash/qops
...
Implement the rest of the UQ* ops.
2014-12-27 21:15:13 -05:00
Lioncash
af69b0840b
dyncom: Implement UQADD8, UQADD16, UQSUB8, UQSUB16, UQASX, and UQSAX.
2014-12-27 17:24:34 -05:00
Lioncash
60523113a9
armemu: Implement UQADD8, UQADD16, UQSUB16, UQASX, and UQSAX
2014-12-27 17:06:19 -05:00
bunnei
28e64806cd
Merge pull request #349 from lioncash/uhdync
...
dyncom: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAX
2014-12-27 01:04:18 -05:00
Lioncash
52d889d85d
dyncom: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAX
2014-12-27 00:57:32 -05:00
bunnei
b48ca7878b
Merge pull request #348 from lioncash/uhops
...
armemu: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAX
2014-12-27 00:34:39 -05:00
Lioncash
84a0438cf5
armemu: Implement UHADD8, UHADD16, UHSUB8, UHSUB16, UHASX, and UHSAX
2014-12-26 23:55:39 -05:00
bunnei
a2005d0657
GPU: Change internal framerate to 30fps.
2014-12-26 21:48:32 -05:00
bunnei
01c675685e
Merge pull request #327 from Apology11/master
...
Fix visual studio ambiguous symbol error
2014-12-26 21:43:59 -05:00
Daniel Lundqvist
7e3f62a367
Remove duplicate work
2014-12-26 20:12:11 +01:00
Daniel Lundqvist
ba4ca041f4
Allow focus only when in popout mode
...
Only allow manually setting focus to the rendering widget when in Single Window mode. Apply this behavior to when changing the mode while an app is running.
2014-12-26 19:42:27 +01:00
bunnei
e5ddbfee02
Merge pull request #339 from bunnei/fixup-gsp-synch
...
Fixup gsp synch
2014-12-25 22:52:40 -05:00
bunnei
5d2ee78d8f
Merge pull request #330 from purpasmart96/new_srv
...
More services & small clean ups
2014-12-25 22:51:38 -05:00
bunnei
5799025ac4
GPU: Further improve synchronization.
2014-12-25 22:46:55 -05:00
bunnei
4783133bbd
ARM: Add a mechanism for faking CPU time elapsed during HLE.
...
- Also a few cleanups.
2014-12-25 22:46:44 -05:00
purpasmart96
9796bc1fa2
More services & small clean ups
2014-12-25 19:08:33 -08:00
bunnei
9c8ec675d9
Merge pull request #343 from lioncash/smmla
...
armemu: Implement SMMUL, SMMLA, and SMMLS.
2014-12-25 21:57:31 -05:00
bunnei
254567056f
Merge pull request #341 from lioncash/moresmops
...
armemu: Implement SMLALD/SMLSLD
2014-12-25 21:46:54 -05:00