RC RANDOM CHAOS

How Amiga 'Screens' Let One Display Mix Resolutions, Palettes, and Copper Tricks

· via Hacker News

Original source

Amiga Screens: A Primer

Hacker News →

On the Amiga, a ‘screen’ is an OS-level drawing surface, and unlike modern single-resolution displays, a program could open several at once — each with its own resolution and color depth. The original chipset (OCS) offered low-res (320x256 PAL, up to 32 colors) and high-res (640x256, up to 16 colors), with overscan and interlace variants. Color came from indexed palettes drawn from a 12-bit space, and depth was built up with bitplanes: each added plane doubled the number of available color indices, up to five planes for 32 colors. Special low-res modes pushed further — HAM unlocked all 4096 colors at once with caveats, while Extra Half-Brite mirrored a 32-color palette at half brightness.

This design was a direct response to the era’s scarce, expensive RAM shared between CPU, video, and audio. Planar graphics let a program allocate only the bits it actually needed, so a two-color text editor and a 32-color paint program could run side by side under the Amiga’s preemptive multitasking without wasting memory. Screens could also be arbitrarily sized and positioned, and repositioning or scrolling them was effectively instant thanks to dedicated graphics hardware.

The real magic came from the copper co-processor, which ran in lockstep with video rendering and could switch resolution, color depth, and palette values mid-frame — even on a per-scanline basis. That enabled overlapping screens of different modes on one display, and ‘copper bar’ gradients that produced far more on-screen colors than the 32 palette registers alone allowed. A game might show 64+ colors by giving the playfield and the UI separate 32-color palettes, then layering copper gradients on top. It’s a concise look at why the Amiga’s graphics architecture felt so flexible compared to its contemporaries.

Read the full article

Continue reading at Hacker News →

This is an AI-generated summary. Read the original for the full story.