Commit Graph

209 Commits (12181c8a64678e73281e893b6ba108d5a125c1aa)

Author SHA1 Message Date
bunnei 12181c8a64 Merge pull request #529 from Subv/master
Build: Fixed some warnings
11 years ago
Subv 8e2b248e05 Build: Fixed some warnings 11 years ago
Darius Goad 5db62cc758 Fix Min and Max blend equations 11 years ago
archshift ef24e72b26 Asserts: break/crash program, fit to style guide; log.h->assert.h
Involves making asserts use printf instead of the log functions (log functions are asynchronous and, as such, the log won't be printed in time)
As such, the log type argument was removed (printf obviously can't use it, and it's made obsolete by the file and line printing)

Also removed some GEKKO cruft.
11 years ago
Darius Goad 536958fb29 Add more blend equations from 3dbrew 11 years ago
bunnei 1eb591d6fd Rasterizer: Implement the other color and alpha modifiers. 11 years ago
bunnei 8c93a28fed VideoCore: Added same-component swizzlers to math utility functions. 11 years ago
bunnei 72cc512b1e Pica: Implement blend factors. 11 years ago
bunnei b522cf4e6a Pica: Implement color/alpha channel enable. 11 years ago
bunnei b2c55bf772 Rasterizer: Implemented alpha testing. 11 years ago
bunnei ff83d23ed5 GPU: Implement the remaining depth testing functions. 11 years ago
Yuri Kunde Schlesner 5961a2852d GSP: Update framebuffer info on all interrupts
Hardware testing determined that the GSP processes shared memory
framebuffer update info even when no memory transfer or filling GX
commands are used. They are now updated on every interrupt, which isn't
confirmed correct but matches hardware behaviour more closely.

This also reverts the hack introduced in #404. It made a few games
behave better, but I believe it's incorrect and also breaks other games.
11 years ago
bunnei 93f36c49f7 Merge pull request #473 from archshift/pp3ports
Pica/Rasterizer: Add ETC1 texture decompression support.
11 years ago
Tony Wasserka f2b74b4fb3 Pica/Rasterizer: Add ETC1 texture decompression support. 11 years ago
bunnei 99c0716d4d Merge pull request #478 from archshift/pp3ports4
Pica/VertexShader: Implement the MAD instruction.
11 years ago
Tony Wasserka 2b9a9a45b7 Pica/VertexShader: Implement JMPC/JMPU/CALLC/CALLU. 11 years ago
Tony Wasserka e02db3904b Pica/VertexShader: Implement the MAD instruction. 11 years ago
bunnei f7a3f45f1e GSP: Toggle active framebuffer each frame 11 years ago
Tony Wasserka bc187be0c1 Pica/Rasterizer: Remove some redundant casts. 11 years ago
Tony Wasserka 9675d19b47 Pica/Rasterizer: Make orient2d a free function and rename it to SignedArea. 11 years ago
Tony Wasserka 47543d62cf Pica: Cleanup color conversion. 11 years ago
Tony Wasserka 614baa39d1 VideoCore: Remove some unused functions. 11 years ago
Tony Wasserka d13bd327ba Pica/Rasterizer: Fix a bug related to multitexturing and texture wrapping. 11 years ago
Tony Wasserka 195d73a385 Pica/Rasterizer: Clean up long code lines. 11 years ago
Tony Wasserka 40c7200841 Pica/VertexShader: Coding style fixes. 11 years ago
Tony Wasserka 323a56f898 Pica/CommandProcessor: Cleanups. 11 years ago
Tony Wasserka b2d461020d Pica/CommandProcessor: Workaround games not setting the input position's w component. 11 years ago
Tony Wasserka 0f49424022 Pica/Rasterizer: Implement backface culling. 11 years ago
Tony Wasserka 3b78af904e Pica/Rasterizer: Textures seem to be laid out flipped vertically.
Not sure if this is a correct fix. Probably should instead change the decoding logic itself.
11 years ago
Tony Wasserka 3da52ead9b Pica/DebugUtils: Fix a bug in RGBA4 texture decoding. 11 years ago
Tony Wasserka a7ae0330b1 Pica/Rasterizer: Implement alpha blending. 11 years ago
Tony Wasserka e229ff8c83 Pica/Rasterizer: Implement depth testing. 11 years ago
Tony Wasserka 77bb58afeb Pica/Rasterizer: Further enhance Tev support. 11 years ago
Tony Wasserka 36291bc3f6 Pica: Add output merger definitions. 11 years ago
Tony Wasserka 632655e292 Pica: Fix A4, IA4 and IA8 texture formats.
Both IA4 and IA8 had their component order mixed up. Additionally, IA4 used the wrong number of nibbles per texel. A4 skipped every second texel.
11 years ago
Tony Wasserka b7a48c422a Pica/CommandProcessor: Add support for integer uniforms. 11 years ago
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.
11 years ago
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.
11 years ago
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.
11 years ago
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.
11 years ago
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.
11 years ago
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.
11 years ago
bunnei 3b9d181b8e GPU: Implement frameskip and remove forced framebuffer swap hack. 11 years ago
bunnei 01c675685e Merge pull request #327 from Apology11/master
Fix visual studio ambiguous symbol error
11 years ago
bunnei 2188af4a65 Merge pull request #322 from chinhodado/master
More warning cleanups
11 years ago
bunnei 0de6a08d75 Merge pull request #291 from purpasmart96/license
License change
11 years ago
Apology11 8d81e23d6e Fix visual studio ambiguous symbol error 11 years ago
Chin 0199a7d9ef More warning cleanups 11 years ago
purpasmart96 ebfd831ccb License change 11 years ago
Tony Wasserka 08f42c2b8c Pica/VertexShader: Promote a log message to critical status. 11 years ago