---
title: "Retro Palettes: NES, Game Boy, PICO-8, C64 | Pixel Rumble"
description: "Hex codes for the NES, Game Boy, PICO-8, CGA and Commodore 64 palettes. Click to copy, download GPL, PNG, JSON or HEX files, or convert your own palette."
url: https://pixelrumble.buzz/retro-palettes/
---

**Stage 05** · colour select

# Retro console palettes

The colours of the NES, Game Boy, PICO-8, CGA and Commodore 64, with hex codes to copy and palette files for Aseprite, GIMP, Krita and your game engine.

**NES**

The Nintendo Entertainment System's picture chip (the 2C02 PPU) has 64 palette entries, numbered $00 to $3F, in four rows of brightness. It produces an analogue TV signal rather than RGB, so this is one widely used RGB rendering. A game can show up to 25 of these at once: a shared background colour plus four 3-colour background palettes and four 3-colour sprite palettes.

### NES (2C02)

64 entries · 55 distinct colours

- `#7c7c7c` $00
- `#0000fc` $01
- `#0000bc` $02
- `#4428bc` $03
- `#940084` $04
- `#a80020` $05
- `#a81000` $06
- `#881400` $07
- `#503000` $08
- `#007800` $09
- `#006800` $0A
- `#005800` $0B
- `#004058` $0C
- `#000000` $0D
- `#000000` $0E
- `#000000` $0F
- `#bcbcbc` $10
- `#0078f8` $11
- `#0058f8` $12
- `#6844fc` $13
- `#d800cc` $14
- `#e40058` $15
- `#f83800` $16
- `#e45c10` $17
- `#ac7c00` $18
- `#00b800` $19
- `#00a800` $1A
- `#00a844` $1B
- `#008888` $1C
- `#000000` $1D
- `#000000` $1E
- `#000000` $1F
- `#f8f8f8` $20
- `#3cbcfc` $21
- `#6888fc` $22
- `#9878f8` $23
- `#f878f8` $24
- `#f85898` $25
- `#f87858` $26
- `#fca044` $27
- `#f8b800` $28
- `#b8f818` $29
- `#58d854` $2A
- `#58f898` $2B
- `#00e8d8` $2C
- `#787878` $2D
- `#000000` $2E
- `#000000` $2F
- `#fcfcfc` $30
- `#a4e4fc` $31
- `#b8b8f8` $32
- `#d8b8f8` $33
- `#f8b8f8` $34
- `#f8a4c0` $35
- `#f0d0b0` $36
- `#fce0a8` $37
- `#f8d878` $38
- `#d8f878` $39
- `#b8f8b8` $3A
- `#b8f8d8` $3B
- `#00fcfc` $3C
- `#f8d8f8` $3D
- `#000000` $3E
- `#000000` $3F

Download

**Game Boy**

The original Game Boy (DMG-01, 1989) shows four shades on a greenish reflective LCD. The hardware only knows shade numbers 0 to 3, so these four greens are the common approximation of how the screen looks. Game Boy sprites use three of the four shades, because shade 0 is transparent for them.

### Game Boy (DMG-01)

4 colours

- `#0f380f` darkest
- `#306230` dark
- `#8bac0f` light
- `#9bbc0f` lightest

Download

**PICO-8**

PICO-8 is a fantasy console by Lexaloffle with a fixed 16-colour palette, listed in its manual. Because the colours are defined exactly, these hex values match what PICO-8 shows. The colour names are the ones the PICO-8 community usually uses.

### PICO-8

16 colours

- `#000000` 0 black
- `#1d2b53` 1 dark-blue
- `#7e2553` 2 dark-purple
- `#008751` 3 dark-green
- `#ab5236` 4 brown
- `#5f574f` 5 dark-grey
- `#c2c3c7` 6 light-grey
- `#fff1e8` 7 white
- `#ff004d` 8 red
- `#ffa300` 9 orange
- `#ffec27` 10 yellow
- `#00e436` 11 green
- `#29adff` 12 blue
- `#83769c` 13 lavender
- `#ff77a8` 14 pink
- `#ffccaa` 15 light-peach

Download

**CGA**

IBM's Color Graphics Adapter (1981) builds 16 colours from red, green, blue and an intensity bit. Colour 6 would be a dark yellow, but IBM monitors turned it into brown, which is the version listed here. In the 320 × 200 graphics mode a program picks one of the four-colour sets below; the background is black by default but can be any of the 16.

### CGA 16 colours

16 colours

- `#000000` 0 black
- `#0000aa` 1 blue
- `#00aa00` 2 green
- `#00aaaa` 3 cyan
- `#aa0000` 4 red
- `#aa00aa` 5 magenta
- `#aa5500` 6 brown
- `#aaaaaa` 7 light grey
- `#555555` 8 dark grey
- `#5555ff` 9 light blue
- `#55ff55` 10 light green
- `#55ffff` 11 light cyan
- `#ff5555` 12 light red
- `#ff55ff` 13 light magenta
- `#ffff55` 14 yellow
- `#ffffff` 15 white

Download

### CGA mode 4, palette 1, high intensity

4 colours

- `#000000` background (black)
- `#55ffff` light cyan
- `#ff55ff` light magenta
- `#ffffff` white

Download

### CGA mode 4, palette 1, low intensity

4 colours

- `#000000` background (black)
- `#00aaaa` cyan
- `#aa00aa` magenta
- `#aaaaaa` light grey

Download

### CGA mode 4, palette 0, high intensity

4 colours

- `#000000` background (black)
- `#55ff55` light green
- `#ff5555` light red
- `#ffff55` yellow

Download

### CGA mode 4, palette 0, low intensity

4 colours

- `#000000` background (black)
- `#00aa00` green
- `#aa0000` red
- `#aa5500` brown

Download

**Commodore 64**

The Commodore 64's VIC-II chip has 16 fixed colours. Like the NES it outputs a video signal, so RGB versions differ; this is Philip "Pepto" Timmermann's widely used set, calculated from measurements of the chip's output, which many emulators adopted.

### Commodore 64 (Pepto)

16 colours

- `#000000` 0 black
- `#ffffff` 1 white
- `#68372b` 2 red
- `#70a4b2` 3 cyan
- `#6f3d86` 4 purple
- `#588d43` 5 green
- `#352879` 6 blue
- `#b8c76f` 7 yellow
- `#6f4f25` 8 orange
- `#433900` 9 brown
- `#9a6759` 10 light red
- `#444444` 11 dark grey
- `#6c6c6c` 12 grey
- `#9ad284` 13 light green
- `#6c5eb5` 14 light blue
- `#959595` 15 light grey

Download

## Using a retro palette

Click any colour to copy its hex code. Each palette can be downloaded in five formats: **GPL** (GIMP palette, also opened by Aseprite, Krita, Inkscape and LibreSprite), **HEX** (one code per line), **PNG** (a strip of swatches; choose 1 px per colour when a program loads palettes from images), **JSON** (an array of hex strings, with names and NES index numbers where the palette has them) and **CSS** custom properties.

Working inside a real console's limits is part of the look. On the NES each 16 × 16 pixel area of the background uses one 3-colour palette plus the shared background colour, and a sprite has three colours plus transparency. Game Boy art lives in four shades, so contrast does all the work. PICO-8 and the C64 give you 16 colours for the whole screen. Picking a palette first and sticking to it is the quickest way to make a set of sprites look like they belong together.

For a picture rather than a drawing, use [image to pixel art](https://pixelrumble.buzz/image-to-pixel-art/): it maps every pixel to the palette you choose and can dither to suggest in-between colours. To draw by hand, pick the same palette in the [pixel art editor](https://pixelrumble.buzz/).

## Sources

- NESdev Wiki, [PPU palettes](https://www.nesdev.org/wiki/PPU_palettes): the 64 entries, why the NES has no single RGB palette, and the $0D black.
- Pan Docs, [Palettes](https://gbdev.io/pandocs/Palettes.html): the Game Boy's four shades and sprite transparency.
- Lexaloffle, [PICO-8 User Manual](https://www.lexaloffle.com/dl/docs/pico-8_manual.html): the 16-colour palette.
- Wikipedia, [Color Graphics Adapter](https://en.wikipedia.org/wiki/Color_Graphics_Adapter): the RGBI colours, the brown adjustment and the 320 × 200 four-colour palettes.
- Philip Timmermann, [Calculating the color palette of the VIC II](https://www.pepto.de/projects/colorvic/): the Commodore 64 values.

## Questions

**Are these the exact colours of the real consoles?**

PICO-8 and CGA colours are defined digitally, so their hex values are standard. The NES and the Commodore 64 send an analogue TV signal and the original Game Boy has a greenish LCD, so any RGB version of those is an approximation. The sets here are widely used ones; emulators offer many variants.

**Which file format should I download?**

GPL for GIMP, Aseprite, Krita and Inkscape. HEX for Lospec-style lists and Aseprite. PNG with one pixel per colour for tools that load a palette from an image. JSON for your own code, and CSS for web projects.

**Why does the NES table repeat black?**

The NES has 64 palette entries, but several of them all display black. The table keeps the hardware order so the $ index numbers line up with what you write in code, and the downloads list each distinct colour once. Avoid $0D on real hardware: that black is darker than the TV expects.

**Can I draw with these palettes?**

Yes. The pixel art editor has PICO-8, Game Boy, NES, Commodore 64 and CGA in its palette menu, and image to pixel art can convert a picture to any of them, with dithering if you like.
