RasterCore
Ready to execute

Hardware Heritage

The "Copper" (Coprocessor) was a specialized stream processor within the Amiga OCS/AGA chipset. It operated independently of the CPU, synchronized directly to the video beam's position to manipulate hardware registers in real-time.

Amiga Heritage

The Copper is the defining chip of the Amiga. It allowed for "impossible" color counts by changing the background register on every scanline with zero CPU overhead.

PC Simulation

PC VGA hardware lacked a Copper. Programmers had to "race the beam" by polling the VGA status register in a tight loop—consuming 100% CPU cycles.

Modern Logic

Modern GPUs compute the entire frame in parallel. This demo simulates the "beam" using the pixel's Y coordinate as a time-offset variable in shader math.

Copper Bars

Racing the beam for the ultimate gradient.

Legacy M68k ASM

COPPER_LIST:
    ; Wait for line $80
    DC.W  $8001,$FFFE
    ; Set BG to White
    DC.W  $0180,$0FFF

    ; Wait for line $81
    DC.W  $8101,$FFFE
    ; Set BG to Red
    DC.W  $0180,$0F00

    DC.W  $FFFF,$FFFE ; END

Modern GLSL

void main() {
    float y = gl_FragCoord.y / res.y;
    float t = iTime;

    // Wave movement
    float pos = 0.5 + 0.4 * sin(t);
    float dist = abs(y - pos);

    // Gradient falloff
    float i = pow(1.0 - dist/0.1, 4.0);
    gl_FragColor = vec4(vec3(1,0,0) * i, 1.0);
}