Well, the flickering is because you are redrawing the entire screen each time. Really you should be using a cursor
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
You can take a look in to it if you want, google something like "c cursor console tutorial". If you use a cursor then you only need to clear the screen and redraw when you change maps, after that you just tell it to change only the characters you need it to.