2009-05-12 20:05:00 +02:00

43 lines
833 B
C++
Executable File

#include "counter.hpp"
class PPU : public PPUcounter, public MMIO {
public:
virtual void enter() = 0;
uint16 *output;
struct {
bool render_output;
bool frame_executed;
bool frames_updated;
unsigned frames_rendered;
unsigned frames_executed;
} status;
//PPU1 version number
//* 1 is known
//* reported by $213e
uint8 ppu1_version;
//PPU2 version number
//* 1 and 3 are known
//* reported by $213f
uint8 ppu2_version;
virtual bool interlace() const = 0;
virtual bool overscan() const = 0;
virtual bool hires() const = 0;
virtual void latch_counters() = 0;
virtual void frame();
virtual void power();
virtual void reset();
virtual void enable_renderer(bool r);
virtual bool renderer_enabled();
PPU();
virtual ~PPU();
};