Fixed bug in keyboard driver

Prevent integer overflow from stopping the loop.
Added keyboard playback return address
Added more keyboard values to constants file
Added test to find keyboard value.