Logo is off by 1 pixel in each axis because of
sprites.drawSelfMasked(1,1,Logo,0);, but that’s easily fixed by swapping to
(Screen coordinates are 0-based, so they range from (0, 0) to (127, 63).)
After doing that the arrow needs adjusting too, to
Otherwise everything works as intended.
You’ll want to rethink the movement later though, moving one pixel every time you release a button isn’t exactly smooth movement.