Emulator: Move LCDC inside PPU class
This commit is contained in:
@@ -23,23 +23,23 @@
|
|||||||
#define TILE_HEIGHT 8
|
#define TILE_HEIGHT 8
|
||||||
#define TILE_SIZE 16
|
#define TILE_SIZE 16
|
||||||
|
|
||||||
enum LCDC : uint8_t {
|
|
||||||
None = 0,
|
|
||||||
BGandWindowEnable = BIT(0),
|
|
||||||
OBJEnable = BIT(1),
|
|
||||||
OBJSize = BIT(2), // 0 = 8x8, 1 = 8x16
|
|
||||||
BGTileMapArea = BIT(3), // 0 = 0x9800-9bff, 1 = 0x9c00-9fff
|
|
||||||
BGandWindowTileDataArea = BIT(4), // 0 = 0x8800-97ff, 1 = 0x8000-8fff
|
|
||||||
WindowEnable = BIT(5), //
|
|
||||||
WindowTileMapArea = BIT(6), // 0 = 0x9800-9bff, 1 = 0x9c00-9fff
|
|
||||||
LCDandPPUEnable = BIT(7),
|
|
||||||
};
|
|
||||||
|
|
||||||
class PPU final : public ProcessingUnit {
|
class PPU final : public ProcessingUnit {
|
||||||
public:
|
public:
|
||||||
PPU(uint32_t frequency);
|
PPU(uint32_t frequency);
|
||||||
~PPU();
|
~PPU();
|
||||||
|
|
||||||
|
enum LCDC : uint8_t {
|
||||||
|
None = 0,
|
||||||
|
BGandWindowEnable = BIT(0),
|
||||||
|
OBJEnable = BIT(1),
|
||||||
|
OBJSize = BIT(2), // 0 = 8x8, 1 = 8x16
|
||||||
|
BGTileMapArea = BIT(3), // 0 = 0x9800-9bff, 1 = 0x9c00-9fff
|
||||||
|
BGandWindowTileDataArea = BIT(4), // 0 = 0x8800-97ff, 1 = 0x8000-8fff
|
||||||
|
WindowEnable = BIT(5), //
|
||||||
|
WindowTileMapArea = BIT(6), // 0 = 0x9800-9bff, 1 = 0x9c00-9fff
|
||||||
|
LCDandPPUEnable = BIT(7),
|
||||||
|
};
|
||||||
|
|
||||||
enum State : uint8_t {
|
enum State : uint8_t {
|
||||||
HBlank = 0,
|
HBlank = 0,
|
||||||
VBlank = 1,
|
VBlank = 1,
|
||||||
|
|||||||
Reference in New Issue
Block a user