bsnes/higan/sfc/ppu/screen/screen.hpp

37 lines
694 B
C++
Executable File

struct Screen {
uint32 *output;
struct Regs {
bool addsub_mode;
bool direct_color;
bool color_mode;
bool color_halve;
bool bg1_color_enable;
bool bg2_color_enable;
bool bg3_color_enable;
bool bg4_color_enable;
bool oam_color_enable;
bool back_color_enable;
uint5 color_b;
uint5 color_g;
uint5 color_r;
} regs;
void scanline();
void run();
void reset();
uint32 get_pixel(bool swap);
uint16 addsub(unsigned x, unsigned y, bool halve);
uint16 get_color(unsigned palette);
uint16 get_direct_color(unsigned palette, unsigned tile);
void serialize(serializer&);
Screen(PPU &self);
PPU &self;
friend class PPU;
};