Exploring Keyboard Fundamentals.
Sheftel, Paul