mirror of https://github.com/JorjBauer/aiie
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
494 B
C++
33 lines
494 B
C++
#ifndef __VMDISPLAY_H
|
|
#define __VMDISPLAY_H
|
|
|
|
#include <stdint.h>
|
|
|
|
class MMU;
|
|
|
|
typedef struct {
|
|
uint8_t top;
|
|
uint16_t left;
|
|
uint8_t bottom;
|
|
uint16_t right;
|
|
} AiieRect;
|
|
|
|
class VMDisplay {
|
|
public:
|
|
VMDisplay() { }
|
|
virtual ~VMDisplay() { };
|
|
|
|
virtual void SetMMU(MMU *m) { mmu = m; }
|
|
|
|
virtual bool needsRedraw() = 0;
|
|
virtual void didRedraw() = 0;
|
|
virtual AiieRect getDirtyRect() = 0;
|
|
|
|
virtual void lockDisplay() = 0;
|
|
virtual void unlockDisplay() = 0;
|
|
|
|
MMU *mmu;
|
|
};
|
|
|
|
#endif
|