Thanks for your help, but I wanted to put a bitmap into an executable to avoid space waste, because it's only 3k. I want to make the whole application under 32k so I'll have to pass on VCL units. I have seen people loading a bitmap from resource with LoadImage windows API call and bliting it onto DirectDraw surface (I think SDL uses DirectDraw in windows?) so there should be a way to do this without streams.