forked from suyu/suyu
citra-qt: Properly specify the framebuffer format.
This commit is contained in:
parent
884b681cca
commit
88df3fbf27
2 changed files with 28 additions and 3 deletions
|
@ -184,8 +184,32 @@ void GraphicsFramebufferWidget::OnUpdate()
|
|||
framebuffer_address = framebuffer.GetColorBufferPhysicalAddress();
|
||||
framebuffer_width = framebuffer.GetWidth();
|
||||
framebuffer_height = framebuffer.GetHeight();
|
||||
// TODO: It's unknown how this format is actually specified
|
||||
framebuffer_format = Format::RGBA8;
|
||||
|
||||
switch (framebuffer.color_format) {
|
||||
case Pica::Regs::ColorFormat::RGBA8:
|
||||
framebuffer_format = Format::RGBA8;
|
||||
break;
|
||||
|
||||
case Pica::Regs::ColorFormat::RGB8:
|
||||
framebuffer_format = Format::RGB8;
|
||||
break;
|
||||
|
||||
case Pica::Regs::ColorFormat::RGB5A1:
|
||||
framebuffer_format = Format::RGB5A1;
|
||||
break;
|
||||
|
||||
case Pica::Regs::ColorFormat::RGB565:
|
||||
framebuffer_format = Format::RGB565;
|
||||
break;
|
||||
|
||||
case Pica::Regs::ColorFormat::RGBA4:
|
||||
framebuffer_format = Format::RGBA4;
|
||||
break;
|
||||
|
||||
default:
|
||||
framebuffer_format = Format::Unknown;
|
||||
break;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -35,7 +35,8 @@ class GraphicsFramebufferWidget : public BreakPointObserverDock {
|
|||
RGBA4 = 4,
|
||||
D16 = 5,
|
||||
D24 = 6,
|
||||
D24S8 = 7
|
||||
D24S8 = 7,
|
||||
Unknown = 8
|
||||
};
|
||||
|
||||
static u32 BytesPerPixel(Format format);
|
||||
|
|
Loading…
Reference in a new issue