A fruit machine is a better exercise than it sounds, because the whole thing lives or dies on the random source, and on 8 bit BASIC that is not a given.
Did you end up seeding it? The classic Spectrum gotcha is that without a RANDOMIZE the sequence is identical from a cold boot, so the first few spins repeat every single time the game is loaded. RANDOMIZE with no argument pulls from the frame counter, which is about as close to free entropy as that machine has.
Doing the ZX81 as well is the part I would have found hardest. Between those two the display handling is less a port than a rewrite.