PPU: Minor refactoring

This commit is contained in:
Sour 2019-02-19 23:37:27 -05:00
parent de9e71eabf
commit 77ac5a50dc
2 changed files with 20 additions and 20 deletions

View file

@ -115,26 +115,6 @@ void Ppu::Exec()
}
}
struct SpriteInfo
{
int16_t X;
bool HorizontalMirror;
bool VerticalMirror;
uint8_t Priority;
uint8_t TileColumn;
uint8_t TileRow;
uint8_t Palette;
bool UseSecondTable;
uint8_t LargeSprite;
};
SpriteInfo _sprites[32] = {};
uint8_t _spriteCount = 0;
uint8_t _spritePriority[256] = {};
uint8_t _spritePalette[256] = {};
uint16_t _spritePixels[256] = {};
template<uint8_t priority, bool forMainScreen>
void Ppu::DrawSprites()
{

View file

@ -5,6 +5,20 @@
class Console;
class InternalRegisters;
struct SpriteInfo
{
int16_t X;
bool HorizontalMirror;
bool VerticalMirror;
uint8_t Priority;
uint8_t TileColumn;
uint8_t TileRow;
uint8_t Palette;
bool UseSecondTable;
uint8_t LargeSprite;
};
class Ppu
{
public:
@ -52,6 +66,12 @@ private:
uint16_t *_outputBuffers[2];
SpriteInfo _sprites[32] = {};
uint8_t _spriteCount = 0;
uint8_t _spritePriority[256] = {};
uint8_t _spritePalette[256] = {};
uint16_t _spritePixels[256] = {};
uint8_t _rowPixelFlags[256];
uint16_t *_currentBuffer;