Chip8 Wiki


A display interrupt routine is used to feed screen data byte by byte to the Pixie Display chip which converts the bit data to a scanline output to a monitor or a TV screen.

The internal register R0 is used to point to each byte and is incremented to the next location after the byte has been sent to the Pixie chip.

After each line is complete, a timed set of instructions are executed to cause the CPU to wait until the next scanline is ready to be output.


A software modification can be made to decrease the pixel height shown.

This requires more memory within the machine and may need the screen memory to be relocated.

The number of pixels shown can be altered by changing the display interrupt routine.

Normally the same row of screen bytes are read repeatedly a number of times to get a square pixel.

This causes the same set of bytes to be repeated down a TV screen, for example, for four scan lines.

By reducing the number of times the row is repeated more pixels can be shown, resulting in a set of more flat and less square pixels.

The ELF Invaders game from 1978 sets up a custom interrupt routine to allow for more vertical pixels.[1]