DATA statements to store media isn't a good idea for two reasons: for each byte of your media file, you'll get TWO longs (one long is the byte converted as long because Blitz handles just longs.. and the 2nd long is always 0 and it's used by Blitz for internal use). OK, you can compress the MEDIA file, but then it comes the 2nd reason: you'll load your media files two times in memory. A solution is to use the resource section of EXE files and access it with WinAPI functions. Resources aren't loaded when you run the EXE (like DATA), but only when you call the function (LoadResource() , etc..) and then they can be freed when you'll have your image created. It works fine with Blitz.