Lines Matching refs:surface
57 static int readRlePixels(SDL_Surface * surface, SDL_RWops * src, int isRle8) in readRlePixels() argument
62 int pitch = surface->pitch; in readRlePixels()
63 int height = surface->h; in readRlePixels()
64 Uint8 *start = (Uint8 *)surface->pixels; in readRlePixels()
143 static void CorrectAlphaChannel(SDL_Surface *surface) in CorrectAlphaChannel() argument
152 Uint8 *alpha = ((Uint8*)surface->pixels) + alphaChannelOffset; in CorrectAlphaChannel()
153 Uint8 *end = alpha + surface->h * surface->pitch; in CorrectAlphaChannel()
164 alpha = ((Uint8*)surface->pixels) + alphaChannelOffset; in CorrectAlphaChannel()
179 SDL_Surface *surface; in SDL_LoadBMP_RW() local
214 surface = NULL; in SDL_LoadBMP_RW()
394 surface = in SDL_LoadBMP_RW()
397 if (surface == NULL) { in SDL_LoadBMP_RW()
403 palette = (surface->format)->palette; in SDL_LoadBMP_RW()
449 was_error = (SDL_bool)readRlePixels(surface, src, biCompression == BI_RLE8); in SDL_LoadBMP_RW()
453 top = (Uint8 *)surface->pixels; in SDL_LoadBMP_RW()
454 end = (Uint8 *)surface->pixels+(surface->h*surface->pitch); in SDL_LoadBMP_RW()
465 pad = ((surface->pitch % 4) ? (4 - (surface->pitch % 4)) : 0); in SDL_LoadBMP_RW()
471 bits = end - surface->pitch; in SDL_LoadBMP_RW()
479 for (i = 0; i < surface->w; ++i) { in SDL_LoadBMP_RW()
499 if (SDL_RWread(src, bits, 1, surface->pitch) != surface->pitch) { in SDL_LoadBMP_RW()
505 for (i = 0; i < surface->w; ++i) { in SDL_LoadBMP_RW()
520 for (i = 0; i < surface->w; i++) in SDL_LoadBMP_RW()
527 for (i = 0; i < surface->w; i++) in SDL_LoadBMP_RW()
543 bits += surface->pitch; in SDL_LoadBMP_RW()
545 bits -= surface->pitch; in SDL_LoadBMP_RW()
549 CorrectAlphaChannel(surface); in SDL_LoadBMP_RW()
556 if (surface) { in SDL_LoadBMP_RW()
557 SDL_FreeSurface(surface); in SDL_LoadBMP_RW()
559 surface = NULL; in SDL_LoadBMP_RW()
564 return (surface); in SDL_LoadBMP_RW()
572 SDL_Surface *surface; in SDL_SaveBMP_RW() local
609 surface = NULL; in SDL_SaveBMP_RW()
621 surface = saveme; in SDL_SaveBMP_RW()
637 surface = saveme; in SDL_SaveBMP_RW()
648 surface = SDL_ConvertSurface(saveme, &format, 0); in SDL_SaveBMP_RW()
649 if (!surface) { in SDL_SaveBMP_RW()
664 if (surface && (SDL_LockSurface(surface) == 0)) { in SDL_SaveBMP_RW()
665 const int bw = surface->w * surface->format->BytesPerPixel; in SDL_SaveBMP_RW()
684 biWidth = surface->w; in SDL_SaveBMP_RW()
685 biHeight = surface->h; in SDL_SaveBMP_RW()
687 biBitCount = surface->format->BitsPerPixel; in SDL_SaveBMP_RW()
689 biSizeImage = surface->h * surface->pitch; in SDL_SaveBMP_RW()
692 if (surface->format->palette) { in SDL_SaveBMP_RW()
693 biClrUsed = surface->format->palette->ncolors; in SDL_SaveBMP_RW()
743 if (surface->format->palette) { in SDL_SaveBMP_RW()
747 colors = surface->format->palette->colors; in SDL_SaveBMP_RW()
748 ncolors = surface->format->palette->ncolors; in SDL_SaveBMP_RW()
768 bits = (Uint8 *) surface->pixels + (surface->h * surface->pitch); in SDL_SaveBMP_RW()
770 while (bits > (Uint8 *) surface->pixels) { in SDL_SaveBMP_RW()
771 bits -= surface->pitch; in SDL_SaveBMP_RW()
795 SDL_UnlockSurface(surface); in SDL_SaveBMP_RW()
796 if (surface != saveme) { in SDL_SaveBMP_RW()
797 SDL_FreeSurface(surface); in SDL_SaveBMP_RW()