// GRAPHICS EXTRACTION PROGRAM FOR TRICKY QUIKY GAMES 2 #include #include int main() { WIN32_FIND_DATA wfd; HANDLE fHandle = FindFirstFile("*.SRB",&wfd); int num_of_files = 0; short width, height; char buffer [640*400]; // maximum possible sprite size do { FILE * fsrb = fopen(wfd.cFileName, "rb"); fseek(fsrb, 258, SEEK_SET); // skip file header while (!feof(fsrb)) { fseek(fsrb, 6, SEEK_CUR); // go to first width/height info fread(&width, 1, 2, fsrb); // read sprite width fread(&height, 1, 2, fsrb); // read sprite height fseek(fsrb, 3, SEEK_CUR); // go to sprite bitmap fread(buffer, 1, width * height, fsrb); // read sprite bitmap FILE * fout = fopen(wfd.cFileName, "wb"); for (long i = width * height - 1; i >= 0; --i) fwrite(&buffer[i], 1, 1, fout); // write in reverse order fclose(fout); } fclose(fsrb); } while (FindNextFile(fHandle, &wfd)); FindClose(fHandle); return 0; }