aboutsummaryrefslogtreecommitdiff
path: root/GPU2D.h
diff options
context:
space:
mode:
Diffstat (limited to 'GPU2D.h')
-rw-r--r--GPU2D.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/GPU2D.h b/GPU2D.h
index ced8879..2bd4521 100644
--- a/GPU2D.h
+++ b/GPU2D.h
@@ -27,7 +27,7 @@ public:
void Reset();
- void SetFramebuffer(u16* buf);
+ void SetFramebuffer(u32* buf);
u8 Read8(u32 addr);
u16 Read16(u32 addr);
@@ -41,7 +41,7 @@ public:
private:
u32 Num;
- u16* Framebuffer;
+ u32* Framebuffer;
u32 DispCnt;
u16 BGCnt[4];
@@ -56,14 +56,18 @@ private:
s16 BGRotC[2];
s16 BGRotD[2];
- template<u32 bgmode> void DrawScanlineBGMode(u32 line, u32* spritebuf, u16* dst);
- void DrawScanline_Mode1(u32 line, u16* dst);
+ u32 BlendFunc;
- void DrawBG_3D(u32 line, u16* dst);
- void DrawBG_Text(u32 line, u16* dst, u32 num);
- void DrawBG_Extended(u32 line, u16* dst, u32 bgnum);
+ template<u32 bgmode> void DrawScanlineBGMode(u32 line, u32* spritebuf, u32* dst);
+ void DrawScanline_Mode1(u32 line, u32* dst);
- void InterleaveSprites(u32* buf, u32 prio, u16* dst);
+ static void DrawPixel_Normal(u32 bgnum, u32* dst, u16 color, u32 blendfunc);
+
+ void DrawBG_3D(u32 line, u32* dst);
+ void DrawBG_Text(u32 line, u32* dst, u32 num);
+ void DrawBG_Extended(u32 line, u32* dst, u32 bgnum);
+
+ void InterleaveSprites(u32* buf, u32 prio, u32* dst);
void DrawSprites(u32 line, u32* dst);
void DrawSprite_Rotscale(u16* attrib, u16* rotparams, u32 boundwidth, u32 boundheight, u32 width, u32 height, s32 xpos, u32 ypos, u32* dst);
void DrawSprite_Normal(u16* attrib, u32 width, s32 xpos, u32 ypos, u32* dst);