1 /* 2 * OpenBOR - http://www.LavaLit.com 3 * ----------------------------------------------------------------------- 4 * All rights reserved, see LICENSE in OpenBOR root for details. 5 * 6 * Copyright (c) 2004 - 2011 OpenBOR Team 7 */ 8 9 #ifndef SCREEN_H 10 #define SCREEN_H 11 #include "types.h" 12 #include "globals.h" 13 s_screen * allocscreen(int width, int height, int pixelformat); 14 void freescreen(s_screen **screen); 15 void copyscreen(s_screen * dest, s_screen * src); 16 void copyscreen_o(s_screen * dest, s_screen * src, int x, int y); 17 18 void clearscreen(s_screen * s); 19 void scalescreen(s_screen * dest, s_screen * src); 20 21 void copyscreen_trans(s_screen * dest, s_screen * src, int x, int y); 22 void copyscreen_remap(s_screen * dest, s_screen * src, int x, int y, unsigned char* remap); 23 void blendscreen(s_screen * dest, s_screen * src, int x, int y, unsigned char* lut); 24 void putscreen(s_screen* dest, s_screen* src, int x, int y, s_drawmethod* drawmethod); 25 void zoomscreen(s_screen* dest, s_screen* src, int centerx, int centery, int scalex, int scaley); 26 27 //------------------------------16 28 29 void putscreenx8p16(s_screen * dest, s_screen * src, int x, int y, int key, u16* remap, u16(*blendfp)(u16,u16)); 30 void blendscreen16(s_screen * dest, s_screen * src, int x, int y, int key, u16(*blendfp)(u16, u16)); 31 void scalescreen16(s_screen * dest, s_screen * src); 32 33 34 //------------------------------24 35 36 void putscreenx8p24(s_screen * dest, s_screen * src, int x, int y, int key, unsigned char* remap, u32(*blendfp)(u32,u32)); 37 void blendscreen24(s_screen * dest, s_screen * src, int x, int y, int key, u32(*blendfp)(u32, u32)); 38 39 40 //------------------------------32 41 42 void putscreenx8p32(s_screen * dest, s_screen * src, int x, int y, int key, u32* remap, u32(*blendfp)(u32,u32)); 43 void blendscreen32(s_screen * dest, s_screen * src, int x, int y, int key, u32(*blendfp)(u32, u32)); 44 void scalescreen32(s_screen * dest, s_screen * src); 45 46 47 #endif 48 49