It seems some of the Shift+x codes were incorrect (had unshifted as high byte and shifted as low byte).