diff options
Diffstat (limited to 'src/video_core/debug_utils')
| -rw-r--r-- | src/video_core/debug_utils/debug_utils.cpp | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/src/video_core/debug_utils/debug_utils.cpp b/src/video_core/debug_utils/debug_utils.cpp index 5921185a6..9c0fbc453 100644 --- a/src/video_core/debug_utils/debug_utils.cpp +++ b/src/video_core/debug_utils/debug_utils.cpp | |||
| @@ -389,13 +389,11 @@ const Math::Vec4<u8> LookupTexture(const u8* source, int x, int y, const Texture | |||
| 389 | { | 389 | { |
| 390 | const u8* source_ptr = source + offset * 2; | 390 | const u8* source_ptr = source + offset * 2; |
| 391 | 391 | ||
| 392 | // TODO: component order not verified | ||
| 393 | |||
| 394 | if (disable_alpha) { | 392 | if (disable_alpha) { |
| 395 | // Show intensity as red, alpha as green | 393 | // Show intensity as red, alpha as green |
| 396 | return { source_ptr[0], source_ptr[1], 0, 255 }; | 394 | return { source_ptr[1], source_ptr[0], 0, 255 }; |
| 397 | } else { | 395 | } else { |
| 398 | return { source_ptr[0], source_ptr[0], source_ptr[0], source_ptr[1]}; | 396 | return { source_ptr[1], source_ptr[1], source_ptr[1], source_ptr[0]}; |
| 399 | } | 397 | } |
| 400 | } | 398 | } |
| 401 | 399 | ||
| @@ -418,12 +416,10 @@ const Math::Vec4<u8> LookupTexture(const u8* source, int x, int y, const Texture | |||
| 418 | 416 | ||
| 419 | case Regs::TextureFormat::IA4: | 417 | case Regs::TextureFormat::IA4: |
| 420 | { | 418 | { |
| 421 | const u8* source_ptr = source + offset / 2; | 419 | const u8* source_ptr = source + offset; |
| 422 | |||
| 423 | // TODO: component order not verified | ||
| 424 | 420 | ||
| 425 | u8 i = (*source_ptr) & 0xF; | 421 | u8 i = ((*source_ptr) & 0xF0) >> 4; |
| 426 | u8 a = ((*source_ptr) & 0xF0) >> 4; | 422 | u8 a = (*source_ptr) & 0xF; |
| 427 | a |= a << 4; | 423 | a |= a << 4; |
| 428 | i |= i << 4; | 424 | i |= i << 4; |
| 429 | 425 | ||
| @@ -439,15 +435,13 @@ const Math::Vec4<u8> LookupTexture(const u8* source, int x, int y, const Texture | |||
| 439 | { | 435 | { |
| 440 | const u8* source_ptr = source + offset / 2; | 436 | const u8* source_ptr = source + offset / 2; |
| 441 | 437 | ||
| 442 | // TODO: component order not verified | ||
| 443 | |||
| 444 | u8 a = (coarse_x % 2) ? ((*source_ptr)&0xF) : (((*source_ptr) & 0xF0) >> 4); | 438 | u8 a = (coarse_x % 2) ? ((*source_ptr)&0xF) : (((*source_ptr) & 0xF0) >> 4); |
| 445 | a |= a << 4; | 439 | a |= a << 4; |
| 446 | 440 | ||
| 447 | if (disable_alpha) { | 441 | if (disable_alpha) { |
| 448 | return { *source_ptr, *source_ptr, *source_ptr, 255 }; | 442 | return { a, a, a, 255 }; |
| 449 | } else { | 443 | } else { |
| 450 | return { 0, 0, 0, *source_ptr }; | 444 | return { 0, 0, 0, a }; |
| 451 | } | 445 | } |
| 452 | } | 446 | } |
| 453 | 447 | ||