Skip to content
Techniques & Technology

VSP

Variable Screen Positioning, or HSP, or DMA delay, or Wanker

A C64 trick that shifts the whole screen horizontally by deliberately delaying the VIC-II's DMA. It has at least four names, none of them agreed, and it can crash real hardware.

commodore-64graphicsrastervic-iidemoscenescrollingadvanced1987–present

VSP shifts the entire C64 screen sideways by deliberately delaying the VIC-II’s DMA fetch, so the chip starts drawing each line from a different point in memory.

It does not have a name

This is one technique with at least four names, and the scene has never settled on one. Codebase64’s own page for it is titled:

Horizontal Screen Positioning (HSP) aka Wanker aka DMA-Delay

while the world-firsts page calls the same thing VSP — Variable Screen Positioning, and the VIC-II hardware documentation files it under 3.14.6. DMA delay. A 2008 CSDb thread argued for HSP/DMA Delay.

The names are not synonyms in origin. “DMA delay” describes the mechanism, “HSP” and “VSP” describe the result, and “Wanker” is scene vernacular that stuck. Which one a source uses is a reasonable clue to where and when it was written.

This entry files it under VSP because that is the name the first release used.

Who did it first

JCB/Meanteam, in a release called VSP&IK+, on 30 October 1987. The production is named after the trick.

A year later Exilon/MDT/Horizon’s Bonanza (November 1988) combined it with linecrunch, giving movement on both axes — the combination later formalised as AGSP, Any Given Screen Positioning.

It needs a stable raster underneath

VSP is not a standalone effect. The AGSP implementation “uses VSP (Variable Screen Positioning) (DMA delay) with a stable raster plus a line crunch”. Without cycle-exact timing the delay lands in the wrong place and the screen tears.

The published demonstration code is by Martin Piper, and is PAL-only: “to make it work for NTSC you have to do some minor timing modifications for each scan-line.”

See also

Not yet fact-checked. This entry was drafted by an AI and nobody has verified it. The dates, figures and technical details may be wrong. Use it to find your bearings, then confirm anything that matters against a primary source.