"moduler" n´est pas une fin en soi. Si c´est nécessaire pour ton programme, où si c´est plus simple, il faut le faire. Mais tu ne peut pas vouloir "moduler" telle ou telle fonction juste comme ça.
Si tu module ton code source (c´est-à-dire dans un premier temps, si tu utilise plusieurs fichiers sources) il faut d´abord réfléchir à pourquoi tu le fait : il faut trouver une ensemble de fonction et de variable qui peuvent être un petit peu isolé du reste du programme.
Là, dans ton code, la fonction affichage dépend de dizaine d´autre variable. Il ne faut donc pas la séparer du reste du code. Ou alors, il faut (par exemple) trouver touteles fonctions qui traite de l´affichage (y compris initialisation, etc. de la SDL) et voir comment celles là, tu peut les regrouper dans un fichier.
Mais c´est pas évident donc toi seul doit le faire (pour ton programme je veux dire).
Néanmoins si tu n´y arrive pas à cause d´erreur de ton compilateur, tu peut bien sûr reposter ici en donnant précisement les erreurs en question et le code source (soit sur un wall : http://rafb.net/paste/ soit dans un zip, mais alors ne mets QUE le code source, pas d´exécutable, pas de DLL, etc (à la limite, tu peut mettre le fichier de dev C++)).