archshift
7d43aef4d0
Update nihstro submodule to the initial release version.
Includes more opcodes to implement in the future.
11 years ago
bunnei
9960c49c21
Set framebuffer layout from EmuWindow.
11 years ago
Subv
4b8d4d0ed5
GPU/Textures: Fixed ETC texture decoding.
11 years ago
bunnei
34c31db14a
GPU: Added RGB565/RGB8 framebuffer support and various cleanups.
- Centralizes color format encode/decode functions.
- Fixes endianness issues.
- Implements remaining framebuffer formats in the debugger.
11 years ago
Yuri Kunde Schlesner
cd1fbfcf1b
Add profiling infrastructure and widget
11 years ago
archshift
7f9ee69a2b
Added RGBA5551 compatibility in the rasterizer
This allows Virtual Console games to display properly.
11 years ago
Subv
c564c21668
GPU: Implemented bits 3 and 1 from the display transfer flags.
Bit 3 is used to specify a raw copy, where no processing is done to the data, seems to behave exactly as a DMA.
Bit 1 is used to specify whether to convert from a tiled format to a linear format or viceversa.
11 years ago
Yuri Kunde Schlesner
ea3c99f3a2
Video core: Fix A4 texture decoding
It was trying to take the LSB from `coarse_x`, which would always be 0
and thus would always return the same texel from each byte. To add
insult to the injury, the conditional was actually the wrong way around
too.
Fixes blocky text in OoT.
11 years ago
Yuri Kunde Schlesner
3c50da6fc0
Video core: Fix pixelation/blockiness in textures.
This was caused during morton decoding by me not masking the bits of
each coordinate before merging them, so the bits from x could set bits
in y if it was >255.
11 years ago
bunnei
ed255ebaec
Rasterizer: Add support for RGBA4 framebuffer format.
11 years ago
bunnei
733c19ddd3
Rasterize with the correct color component order.
- Fixes a regression with #594 .
11 years ago
Subv
9a03e9c61d
Pica/VertexShader: Fixed LOOP with more than one iteration.
Previously it wouldn't jump back to the start of the loop code once it reached the end of the block.
Fixes the texture problems in a lot of games.
11 years ago
archshift
302f0b32f5
Remove duplication of INSERT_PADDING_WORDS between pica.h and gpu.h
11 years ago
Subv
5410367ebf
Rasterizer: Fixed a warning in GetWrappedTexCoord.
Redeclaring the variable inside the switch was causing weird behavior.
11 years ago
Tony Wasserka
2eee3a87f9
Pica/Rasterizer: Replace exit() calls with UNIMPLEMENTED().
11 years ago
Tony Wasserka
6e5a903286
Pica/Rasterizer: Make some local lambdas static.
11 years ago
Tony Wasserka
1561204342
Pica/BlendUnit: Implement separate color/alpha blend equations.
11 years ago
Tony Wasserka
81ebb4d682
Pica/TextureEnvironment: Add a note.
11 years ago
Tony Wasserka
e11fb96408
Pica/TextureEnvironment: Treat texture combiner source 1 as the PrimaryColor.
Not really sure where the difference is, but some applications seem to use this 1:1 the same way...
11 years ago
Tony Wasserka
04cd06d5c2
Pica/TextureEnvironment: Add support for the MAD-like texture combiners and clean up texture environment logic.
11 years ago
Tony Wasserka
087edcfbec
Pica/OutputMerger: Fix flipped framebuffers.
11 years ago
Tony Wasserka
6ca752ccbc
Pica/TextureUnit: Implement mirrored repeating texture wrapping.
11 years ago
Tony Wasserka
8bd7a896ea
Pica: Fix a bug in the register definitions, relating to texture wrapping.
11 years ago
Tony Wasserka
aaf30ca4ee
Pica/OutputMerger: Implement color format checking.
11 years ago
Tony Wasserka
3b5710bae6
Pica/Rasterizer: Rasterize actual pixel centers instead of pixel corners.
11 years ago
Tony Wasserka
3cb22d31a7
Pica/Rasterizer: Fix garbage pixels at triangle borders.
11 years ago
Tony Wasserka
638b370fb5
Pica/Rasterizer: Clean up and fix backface culling.
11 years ago
Tony Wasserka
365236fa4c
Pica: Cleanup clipping code and change screenspace z to range from -1..0.
The change in depth range seems to reflect better to what applications are expecting, and makes for cleaner code overall (hence is more likely to reflect hardware behavior).
11 years ago
Tony Wasserka
70a764d992
Pica/VertexShader: Implement the LOOP instruction.
11 years ago
Tony Wasserka
6c26ec72a5
Pica/CommandProcessor: Properly implement shader load destination offset registers.
11 years ago
Tony Wasserka
67120270f2
Pica/CommandProcessor: Work around initialized vertex attributes some more.
11 years ago
Lioncash
5d2366e1e9
core/video_core: Use in-place construction where possible
11 years ago
Emmanuel Gil Peyrot
8a1c08a0af
VideoCore: Fix a typo in Vec4 MakeVec(T, Vec3<T>), where the second argument was Vec2<T> instead.
11 years ago
Emmanuel Gil Peyrot
c439b3074d
video_core: Implement the remaining framebuffer formats in the OpenGL renderer.
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
Tony Wasserka
f2b74b4fb3
Pica/Rasterizer: Add ETC1 texture decompression support.
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