diff options
Diffstat (limited to 'GPU2D.h')
-rw-r--r-- | GPU2D.h | 20 |
1 files changed, 12 insertions, 8 deletions
@@ -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); |