blob: 5ec66ba79bbca85a321ab478039ea232ca6ffc80 [file] [log] [blame] [edit]
#ifndef DISPLAY_H
#define DISPLAY_H
#include "stm32h7xx_hal.h"
#include "engine/engine.hpp"
#include "graphics/surface.hpp"
extern "C" {
void LTDC_IRQHandler(void);
void DMA2D_IRQHandler(void);
}
using namespace blit;
namespace display {
extern ScreenMode mode;
extern bool needs_render;
void init();
void enable_vblank_interrupt();
Surface &set_screen_mode(ScreenMode new_mode);
void set_screen_palette(const Pen *colours, int num_cols);
void flip(const Surface &source);
void screen_init();
void ltdc_init();
uint32_t get_dma2d_count(void);
void dma2d_lores_flip_Step2(void);
void dma2d_lores_flip_Step3(void);
void dma2d_lores_flip_Step4(void);
}
#endif