curses is as portable as you'll get. It's the defacto lib, on Unix compatible OSes, for your needs. DOS/Win has something else that is just as unportable, but I can't think of what it's called.