--- sbbs/src/xpdev/sdlfuncs.h 2018/04/24 16:41:24 1.1.1.1 +++ sbbs/src/xpdev/sdlfuncs.h 2018/04/24 16:45:43 1.1.1.2 @@ -19,11 +19,14 @@ struct sdlfuncs { Uint8 (*EventState) (Uint8 type, int state); SDL_Surface *(*CreateRGBSurface) (Uint32 flags, int width, int height, int depth, Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask); + SDL_Surface *(*CreateRGBSurfaceFrom)(void *pixels, int width, int height, int depth, int pitch, + Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask); int (*FillRect) (SDL_Surface *dst, SDL_Rect *dstrect, Uint32 color); int (*SetColors) (SDL_Surface *surface, SDL_Color *colors, int firstcolor, int ncolors); int (*BlitSurface) (SDL_Surface *src, SDL_Rect *srcrect, SDL_Surface *dst, SDL_Rect *dstrect); void (*UpdateRects) (SDL_Surface *screen, int numrects, SDL_Rect *rects); + void (*UpdateRect) (SDL_Surface *screen, Sint32 x, Sint32 y, Uint32 w, Uint32 h); SDL_sem *(*SDL_CreateSemaphore) (Uint32 initial_value); void (*SDL_DestroySemaphore) (SDL_sem *semaphore); SDL_mutex *(*SDL_CreateMutex) (void); @@ -34,6 +37,7 @@ struct sdlfuncs { SDL_Surface *(*SetVideoMode) (int width, int height, int bpp, Uint32 flags); void (*FreeSurface) (SDL_Surface *surface); void (*WM_SetCaption) (const char *title, const char *icon); + void (*WM_SetIcon) (SDL_Surface *icon, Uint8 *mask); int (*ShowCursor) (int toggle); Uint32 (*WasInit) (Uint32 flags); int (*EnableUNICODE) (int enable); @@ -48,6 +52,19 @@ struct sdlfuncs { void (*UnlockAudio)(void); void (*PauseAudio)(int pause_on); SDL_audiostatus (*GetAudioStatus)(void); + Uint32 (*MapRGB) (SDL_PixelFormat *fmt, Uint8 r, Uint8 g, Uint8 b); + int (*LockSurface) (SDL_Surface *surface); + void (*UnlockSurface) (SDL_Surface *surface); + SDL_Surface *(*DisplayFormat)(SDL_Surface *surf); + int (*Flip) (SDL_Surface *surface); + SDL_Overlay *(*CreateYUVOverlay)(int width, int height, Uint32 format, SDL_Surface *display); + int (*DisplayYUVOverlay)(SDL_Overlay *overlay, SDL_Rect *dstrect); + void (*FreeYUVOverlay) (SDL_Overlay *overlay); + int (*LockYUVOverlay) (SDL_Overlay *overlay); + void (*UnlockYUVOverlay) (SDL_Overlay *overlay); + const SDL_VideoInfo *(*GetVideoInfo)(void); + const SDL_version *(*Linked_Version)(void); + SDL_VideoInfo initial_videoinfo; int gotfuncs; };