Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

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.


I'm not sure why you replied to me? Are you nitpicking that I said "go at the same time" because I think it's clear enough in context.


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.


Nope, that’s not it. There’s a video out there already that dissects it and figures out the trick.


I don't know the trick, but take a look at the "7". It looks like it's made from the vertical line in "4" and a portion of another number.


This is true, but not relevant to the trick.


you can't multiplex sprites so that more than 8 appear on the same line.

the secret is to pretend you have a 9th sprite by emulating it with characters that look exactly like one of the sprites would.


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.


That stops working when you open the borders and put sprites outside the area the video chip will render characters/bitmaps.


Yes, but the demo is really cheeky about that.

The borders are open when you can still do the normal multiplexing, because there's lots of vertical separation between the sprites.

Later, when they put the sprites together on the same line, the borders are closed.


Youtube comments said something about "multiple apparent sprites per actual sprite, with stretching"?


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.


All you need is a little “Just”(TM) and everything is possible.

Typical HN comment minimising the immense effort required to do %thing% due to their own arrogance.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: