#include #include #include #include #include #include #include #define SIZE 203164 SDL_Surface* screen; char *buffer; int testImage() { SDL_Surface *image = IMG_Load_RW(SDL_RWFromMem(buffer, SIZE), 1); if (!image) { printf("IMG_Load: %s\n", IMG_GetError()); return 0; } printf("load succeeded\n"); assert(image->format->BitsPerPixel == 32); assert(image->format->BytesPerPixel == 4); assert(image->pitch == 4*image->w); int result = image->w; SDL_BlitSurface (image, NULL, screen, NULL); SDL_FreeSurface (image); return result; } void ready() { testImage(); SDL_Flip(screen); } int main() { SDL_Init(SDL_INIT_VIDEO); screen = SDL_SetVideoMode(600, 450, 32, SDL_SWSURFACE); printf("prepare..\n"); FILE *f = fopen("screenshot.not", "rb"); buffer = malloc(SIZE); fread(buffer, SIZE, 1, f); fclose(f); ready(); return 0; }