(define-sdl-func (* sdl-surface-t) sdl-create-rgb-surface ((flags uint32) (width int) (height int) (depth int) (Rmask uint32) (Gmask uint32) (Bmask uint32) (Amask uint32)) "SDL_CreateRGBSurface")
(define-sdl-func (* sdl-surface-t) sdl-create-rgb-surface-with-format ((flags uint32) (width int) (height int) (depth int) (format uint32)) "SDL_CreateRGBSurfaceWithFormat")
(define-sdl-func (* sdl-surface-t) sdl-create-rgb-surface-from ((pixels void*) (width int) (height int) (depth int) (pitch int) (Rmask uint32) (Gmask uint32) (Bmask uint32) (Amask uint32)) "SDL_CreateRGBSurfaceFrom")
(define-sdl-func (* sdl-surface-t) sdl-create-rgb-surface-with-format-from ((pixels void*) (width int) (height int) (depth int) (pitch int) (format uint32)) "SDL_CreateRGBSurfaceWithFormatFrom")
(define-sdl-func void sdl-free-surface ((surface (* sdl-surface-t))) "SDL_FreeSurface")
(define-sdl-func int sdl-set-surface-palette ((surface (* sdl-surface-t)) (palette (* sdl-palette-t))) "SDL_SetSurfacePalette")
(define-sdl-func int sdl-lock-surface ((surface (* sdl-surface-t))) "SDL_LockSurface")
(define-sdl-func void sdl-unlock-surface ((surface (* sdl-surface-t))) "SDL_UnlockSurface")
(define-sdl-func (* sdl-surface-t) sdl-load-bmp-rw ((src (* sdl-rw-ops-t)) (freesrc int)) "SDL_LoadBMP_RW")
(define-sdl-func int sdl-save-bmp-rw ((surface (* sdl-surface-t)) (dst (* sdl-rw-ops-t)) (freedst int)) "SDL_SaveBMP_RW")
(define-sdl-func int sdl-set-surface-rle ((surface (* sdl-surface-t)) (flag int)) "SDL_SetSurfaceRLE")
(define-sdl-func int sdl-set-color-key ((surface (* sdl-surface-t)) (flag int) (key uint32)) "SDL_SetColorKey")
(define-sdl-func int sdl-get-color-key ((surface (* sdl-surface-t)) (key (* uint32))) "SDL_GetColorKey")
(define-sdl-func int sdl-set-surface-color-mod ((surface (* sdl-surface-t)) (r uint8) (g uint8) (b uint8)) "SDL_SetSurfaceColorMod")
(define-sdl-func int sdl-get-surface-color-mod ((surface (* sdl-surface-t)) (r (* uint8)) (g (* uint8)) (b (* uint8))) "SDL_GetSurfaceColorMod")
(define-sdl-func int sdl-set-surface-alpha-mod ((surface (* sdl-surface-t)) (alpha uint8)) "SDL_SetSurfaceAlphaMod")
(define-sdl-func int sdl-get-surface-alpha-mod ((surface (* sdl-surface-t)) (alpha (* uint8))) "SDL_GetSurfaceAlphaMod")
(define-sdl-func int sdl-set-surface-blend-mode ((surface (* sdl-surface-t)) (blendMode sdl-blend-mode-t)) "SDL_SetSurfaceBlendMode")
(define-sdl-func int sdl-get-surface-blend-mode ((surface (* sdl-surface-t)) (blendMode (* sdl-blend-mode-t))) "SDL_GetSurfaceBlendMode")
(define-sdl-func sdl-bool-t sdl-set-clip-rect ((surface (* sdl-surface-t)) (rect (* sdl-rect-t))) "SDL_SetClipRect")
(define-sdl-func void sdl-get-clip-rect ((surface (* sdl-surface-t)) (rect (* sdl-rect-t))) "SDL_GetClipRect")
(define-sdl-func (* sdl-surface-t) sdl-duplicate-surface ((surface (* sdl-surface-t))) "SDL_DuplicateSurface")
(define-sdl-func (* sdl-surface-t) sdl-convert-surface ((src (* sdl-surface-t)) (fmt (* sdl-pixel-format-t)) (flags uint32)) "SDL_ConvertSurface")
(define-sdl-func (* sdl-surface-t) sdl-convert-surface-format ((src (* sdl-surface-t)) (pixel_format uint32) (flags uint32)) "SDL_ConvertSurfaceFormat")
(define-sdl-func int sdl-convert-pixels ((width int) (height int) (src_format uint32) (src void*) (src_pitch int) (dst_format uint32) (dst void*) (dst_pitch int)) "SDL_ConvertPixels")
(define-sdl-func int sdl-fill-rect ((dst (* sdl-surface-t)) (rect (* sdl-rect-t)) (color uint32)) "SDL_FillRect")
(define-sdl-func int sdl-fill-rects ((dst (* sdl-surface-t)) (rects (* sdl-rect-t)) (count int) (color uint32)) "SDL_FillRects")
(define-sdl-func int sdl-upper-blit ((src (* sdl-surface-t)) (srcrect (* sdl-rect-t)) (dst (* sdl-surface-t)) (dstrect (* sdl-rect-t))) "SDL_UpperBlit")
(define-sdl-func int sdl-lower-blit ((src (* sdl-surface-t)) (srcrect (* sdl-rect-t)) (dst (* sdl-surface-t)) (dstrect (* sdl-rect-t))) "SDL_LowerBlit")
(define-sdl-func int sdl-soft-stretch ((src (* sdl-surface-t)) (srcrect (* sdl-rect-t)) (dst (* sdl-surface-t)) (dstrect (* sdl-rect-t))) "SDL_SoftStretch")
(define-sdl-func int sdl-upper-blit-scaled ((src (* sdl-surface-t)) (srcrect (* sdl-rect-t)) (dst (* sdl-surface-t)) (dstrect (* sdl-rect-t))) "SDL_UpperBlitScaled")
(define-sdl-func int sdl-lower-blit-scaled ((src (* sdl-surface-t)) (srcrect (* sdl-rect-t)) (dst (* sdl-surface-t)) (dstrect (* sdl-rect-t))) "SDL_LowerBlitScaled")
