I just noticed, there are 12 semitones in an Octave, and there are 12 keys in a grid from "y" at the top left, and "." at the bottom right.
How about making a computer keyboard map the linear notes of a piano onto an XY grid like that?
Only, don't just assign them "y=a", "u=a#", but assign the keys ergonomically, to be the easiest to play.
And then the various function key modifiers will change the octave up or down.
And map all those funky keys all over the keyboard.