diff options
| -rw-r--r-- | src/video_core/debug_utils/debug_utils.cpp | 11 | ||||
| -rw-r--r-- | src/video_core/pica.h | 2 |
2 files changed, 12 insertions, 1 deletions
diff --git a/src/video_core/debug_utils/debug_utils.cpp b/src/video_core/debug_utils/debug_utils.cpp index 2d9d8ab1f..883df48a5 100644 --- a/src/video_core/debug_utils/debug_utils.cpp +++ b/src/video_core/debug_utils/debug_utils.cpp | |||
| @@ -393,6 +393,17 @@ const Math::Vec4<u8> LookupTexture(const u8* source, int x, int y, const Texture | |||
| 393 | } | 393 | } |
| 394 | } | 394 | } |
| 395 | 395 | ||
| 396 | case Regs::TextureFormat::I4: | ||
| 397 | { | ||
| 398 | u32 morton_offset = VideoCore::GetMortonOffset(x, y, 1); | ||
| 399 | const u8* source_ptr = source + morton_offset / 2; | ||
| 400 | |||
| 401 | u8 i = (morton_offset % 2) ? ((*source_ptr & 0xF0) >> 4) : (*source_ptr & 0xF); | ||
| 402 | i = Color::Convert4To8(i); | ||
| 403 | |||
| 404 | return { i, i, i, 255 }; | ||
| 405 | } | ||
| 406 | |||
| 396 | case Regs::TextureFormat::A4: | 407 | case Regs::TextureFormat::A4: |
| 397 | { | 408 | { |
| 398 | u32 morton_offset = VideoCore::GetMortonOffset(x, y, 1); | 409 | u32 morton_offset = VideoCore::GetMortonOffset(x, y, 1); |
diff --git a/src/video_core/pica.h b/src/video_core/pica.h index 5e169ff69..a53429716 100644 --- a/src/video_core/pica.h +++ b/src/video_core/pica.h | |||
| @@ -156,7 +156,7 @@ struct Regs { | |||
| 156 | I8 = 7, | 156 | I8 = 7, |
| 157 | A8 = 8, | 157 | A8 = 8, |
| 158 | IA4 = 9, | 158 | IA4 = 9, |
| 159 | 159 | I4 = 10, | |
| 160 | A4 = 11, | 160 | A4 = 11, |
| 161 | ETC1 = 12, // compressed | 161 | ETC1 = 12, // compressed |
| 162 | ETC1A4 = 13, // compressed | 162 | ETC1A4 = 13, // compressed |