Event-driven keyboard engine avoids a forever loop to check for a key pressed. Demo set up to recognize W, A, S, D, <up arrow>, <left arrow>, <down arrow>, <right arrow>. See inside.
Update - Sept. 16 Now handles more than "single-character" keyboard entries (<left arrow>, <right arrow> etc.)