in reply to ReadKey can't see 0 key...
The first thing that comes to mind is that zero is a false value.
Are you sure about what your while condition is evaluating to?