News for hackers. Stuff that matters.
Re:Uncovering a 30 year-old hardware bug by ars on Sunday March 03, 2013 @03:45PM (#5315172)
What is VSP? Made it very hard to understand what this is talking about.
Re:Uncovering a 30 year-old hardware bug by jacquesm on Sunday March 03, 2013 @05:14PM (#5315455)
VSP or 'screen offset' is a technique that allows all kinds of scrolling tricks. If you offset by a single byte you get a horizontal scroll (combine with horizontal retrace timing trickery to get smooth scrolling), offset by a whole scanline and you scroll vertically, offset by a character box height*line width and you get jump character scroll, all without moving a single byte of memory, just write a few hardware registers.

Of course that only works when the screen is not divided up into windows. Tricks like these allowed many of the scrolling games on 80 bitters, and are why you could have smooth scrolled text on a 1 MHz cpu with very little software overhead. Even in the PC era these tricks were commonplace on character generator screen modes for lightning fast scrolling. Bitmapped windows are super CPU intensive if you don't have a graphic card that can move around chunks of memory quickly.

Re:Uncovering a 30 year-old hardware bug by jpollock on Sunday March 03, 2013 @04:08PM (#5315235)
That's very nifty, I learned a bit about hardware in there.

C64 modding wikipedia page has more:

http://en.wikipedia.org/wiki/Commodore_64_demos

    VSP (Variable Screen Positioning), also known as HSP, 
    allows arbitrary x-placement of a bitmap, with the bitmap 
    wrapping around at the border.
It appears that it is possible to quickly shift the starting memory location of the buffer that contains the video memory, which means the rasteriser shifts everything around. This allows smooth horizontal/vertical scrolling - the program only needs to write the changed column/row instead of the entire screen.

http://www.lemon64.com/forum/viewtopic.php?t=42580&sid=c...

Re:Uncovering a 30 year-old hardware bug by hluska on Sunday March 03, 2013 @03:53PM (#5315195)
According to http://en.wikipedia.org/wiki/Commodore_64_demos, VSP is:

"VSP (Variable Screen Positioning), also known as HSP, allows arbitrary x-placement of a bitmap, with the bitmap wrapping around at the border."