I've gone down that rabbit hole and written countless versions of space invaders. What's really cool to me is that - to get it right - the secret is moving only one invader in the pack every 1/60th of a second, this gives the pack movement the same feeling as the original. The genius of the original coder in creating this illusion never escapes me.
This distinctive movement is a compromise with the limitations of a 2mhz 8080 with no video support hardware to speak of.
Looking at a commented disassembly (https://www.computerarcheology.com/Arcade/SpaceInvaders/), there's so little time available that each frame redraws nothing more than the player, their shot, one of the 55 aliens, and one of the three alien shots. Four things. When every moving object has to be manually erased and redrawn within the space of one frame, you kinda have to stagger the movement.
After 25 years of writing random space invaders clones - I finally achieved perfection after reading the Computer Archeology site, then I made my last clone and IMHO I'm finally happy to put this obsession down.
I've gone down that rabbit hole and written countless versions of space invaders. What's really cool to me is that - to get it right - the secret is moving only one invader in the pack every 1/60th of a second, this gives the pack movement the same feeling as the original. The genius of the original coder in creating this illusion never escapes me.
This distinctive movement is a compromise with the limitations of a 2mhz 8080 with no video support hardware to speak of.
Looking at a commented disassembly (https://www.computerarcheology.com/Arcade/SpaceInvaders/), there's so little time available that each frame redraws nothing more than the player, their shot, one of the 55 aliens, and one of the three alien shots. Four things. When every moving object has to be manually erased and redrawn within the space of one frame, you kinda have to stagger the movement.
Yes - this is where I learned of the technique!
After 25 years of writing random space invaders clones - I finally achieved perfection after reading the Computer Archeology site, then I made my last clone and IMHO I'm finally happy to put this obsession down.
https://datsuco.itch.io/video-invaders