The reason you can't close the screen normally is because you didn't handle SDL_QUIT properly. SDL_QUIT is a type of event you get from SDL_PollEvent(), not a macro or anything. In your key handler, instead of using "SDL_QUIT;" you'd call SDL_Quit() along with an exit(0), because SQL_Quit() doesn't actually quit your app (it just shuts down SDL's subsystems). Just do the same thing in your SDL_QUIT handler.

I don't know why your SDL_UpdateRect() call isn't working. Try passing in SDL_GetVideoSurface() instead of your displaySurface variable and see if that works.

I even got the same image they were using. When i build and go I get the error that it can't load the BMP file and app closes. I have the BMP file in my resources folder now but tried it everywhere i can imagine it being in the project. Do i have to put it somewhere special for SDL to pick it up?

Awsome! I added the files in where the app is located in the debug folder. Is there a way that I can have it pick up the resources that are inside the app? When I "Show Package Contents" and open the resources i see all my resources that are in xcode.