Neat. Having more than 8 sprites on screen is not hard, it just requires some well-timed interrupts to move a sprite from above the current raster location to below it, so that the same sprite is drawn multiple times.
But I'm not sure about the end of the demo where they are all rotating on the same line. I guess it could be done with interrupts occurring partway through the horizontal scanline, but I didn't think they could be that precise?
I don't like how you worded this post. You know the demo's point is having all 9 go at the same time, so it's quite misleading to start off describing something that sounds like the demo's point, but is not the demo's point, and saying it's "not hard". Your second paragraph mostly corrects that false impression, but I dislike that you gave a false impression to start with.
9 sprites on screen at the same time is trivial (this is known as sprite multiplexing), 9 sprites on the same raster line is the actual 'aha effect' because the C64 can only do 8 sprites per line.
This is an extremely common type of comment on articles like this. The commenter has to ensure everyone knows their credentials before offering any sort of praise to the creator. I also despise this type of self-serving comment.
But in this case, that (alone) can't be it because all 9 sprites clip (smoothly) in and out of the border. So they've really gotten cheeky with this one.
Yeah, you can x and/or y expand a sprite, then change it to make it look like it contains more data by cleverly drawing the sprite because 1 pixel becomes 2 pixels wide in expanded mode.
The VIC-II reads the data for each sprite at hardwired horizontal positions outside the visible area, so this sort of 'horizontal multiplexing' shouldn't work.
But I'm not sure about the end of the demo where they are all rotating on the same line. I guess it could be done with interrupts occurring partway through the horizontal scanline, but I didn't think they could be that precise?