Sprites have precomputed shifted versions so they can be drawn with fewer than 8 pixels alignment.
The number of cached sprite versions can be set per sprite, and ranges from 1 to 4, so sprites can never be placed at odd pixels.
EGA has hardware scrolling to compensate for the 8 pixel wide bytes, where you set the ”pel panning register” to a value from 0 to 7. For some reason, Keen Dreams ANDs this with 6, removing the last bit. I’am guessing it is to avoid stuttering when the player sprite moves sideways at the same speed as the viewport is scrolling.
https://games.slashdot.org/story/14/09/17/133228/commander-k...
The game was bought by fans, the source was released and Keen Dreams was published on steam.
https://github.com/keendreams/keen
https://store.steampowered.com/app/356200/Keen_Dreams/
The ownership of the older stuff is quite fragmented.