since the placement is based on a keypress. what you can do is run a counter around the keypress, then the seed will depend on when the key is pressed, each time will be a little different.
many original random generators revolved around noise in the ram on start up. but everything kind of resets itself to a known state and it makes randomness not so random.
what i did in a dice program i wrote was when the program loads it gives you a little blurb and waits for a keypress. the idea was distract you a little so you take a little time to hit the key that generates the first random seed and starts the dice program.
then i added a second seed when you re-roll the dice together with the first seed. so you get decent randomization.
all that bit shifting and grabbing a piece of memory or a sector from a disk ends up being not so random and usual repeatable.
In machines where you have a Real time clock then you would take the time down to the 1/60th of a second and generate the seed from that.