You can draw on the screen directly by altering the data in the "pixels" part of an SDL_Surface:
But most of the time you'll want to draw sprites onto the screen.Uint16 *bufp; ... bufp = (Uint16 *)(scr->pixels + y * (scr->pitch / 2) + x); *bufp = color; SDL_UpdateRect(scr, x, y, 1, 1);
You can do this by copying all or part of another SDL_Surface onto your screen surface...