aiie/vmdisplay.h
Jorj Bauer 99d0c8e72c Squashed commit of
* New BIOS interface
 * New linux framebuffer version
 * Unified linuxfb and SDL with Teensy
 * Abstracted VM RAM
 * Fixed disk image corruption due to bad cache handling
 * Variable CPU speed support
2018-02-07 10:28:40 -05:00

34 lines
567 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(uint8_t *vb) { videoBuffer = vb; }
virtual ~VMDisplay() { videoBuffer = NULL; };
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;
uint8_t *videoBuffer;
};
#endif