Palettes / AAP-16

AAP-16 by Adigun A. Polack

Meant for beginners.

🦀 Rust

#![no_std]
#![no_main]
use firefly_rust::*;

#[unsafe(no_mangle)]
extern "C" fn boot() {
    set_colors();
}

fn set_colors() {
    // https://lospec.com/palette-list/aap-16
    set_color(Color::from(1), RGB::new(0x07, 0x07, 0x08));
    set_color(Color::from(2), RGB::new(0x33, 0x22, 0x22));
    set_color(Color::from(3), RGB::new(0x77, 0x44, 0x33));
    set_color(Color::from(4), RGB::new(0xcc, 0x88, 0x55));
    set_color(Color::from(5), RGB::new(0x99, 0x33, 0x11));
    set_color(Color::from(6), RGB::new(0xdd, 0x77, 0x11));
    set_color(Color::from(7), RGB::new(0xff, 0xdd, 0x55));
    set_color(Color::from(8), RGB::new(0xff, 0xff, 0x33));
    set_color(Color::from(9), RGB::new(0x55, 0xaa, 0x44));
    set_color(Color::from(10), RGB::new(0x11, 0x55, 0x22));
    set_color(Color::from(11), RGB::new(0x44, 0xee, 0xbb));
    set_color(Color::from(12), RGB::new(0x33, 0x88, 0xdd));
    set_color(Color::from(13), RGB::new(0x55, 0x44, 0xaa));
    set_color(Color::from(14), RGB::new(0x55, 0x55, 0x77));
    set_color(Color::from(15), RGB::new(0xaa, 0xbb, 0xbb));
    set_color(Color::from(16), RGB::new(0xff, 0xff, 0xff));
}

🏃 Go

package main

import "github.com/firefly-zero/firefly-go/firefly"

func init() {
    firefly.Boot = boot
}

func boot() {
    setColors()
}

func setColors() {
    // https://lospec.com/palette-list/aap-16
    firefly.SetColor(1, firefly.RGB{R: 0x07, G: 0x07, B: 0x08})
    firefly.SetColor(2, firefly.RGB{R: 0x33, G: 0x22, B: 0x22})
    firefly.SetColor(3, firefly.RGB{R: 0x77, G: 0x44, B: 0x33})
    firefly.SetColor(4, firefly.RGB{R: 0xcc, G: 0x88, B: 0x55})
    firefly.SetColor(5, firefly.RGB{R: 0x99, G: 0x33, B: 0x11})
    firefly.SetColor(6, firefly.RGB{R: 0xdd, G: 0x77, B: 0x11})
    firefly.SetColor(7, firefly.RGB{R: 0xff, G: 0xdd, B: 0x55})
    firefly.SetColor(8, firefly.RGB{R: 0xff, G: 0xff, B: 0x33})
    firefly.SetColor(9, firefly.RGB{R: 0x55, G: 0xaa, B: 0x44})
    firefly.SetColor(10, firefly.RGB{R: 0x11, G: 0x55, B: 0x22})
    firefly.SetColor(11, firefly.RGB{R: 0x44, G: 0xee, B: 0xbb})
    firefly.SetColor(12, firefly.RGB{R: 0x33, G: 0x88, B: 0xdd})
    firefly.SetColor(13, firefly.RGB{R: 0x55, G: 0x44, B: 0xaa})
    firefly.SetColor(14, firefly.RGB{R: 0x55, G: 0x55, B: 0x77})
    firefly.SetColor(15, firefly.RGB{R: 0xaa, G: 0xbb, B: 0xbb})
    firefly.SetColor(16, firefly.RGB{R: 0xff, G: 0xff, B: 0xff})
}

⚡️ Zig

const ff = @import("firefly");

pub export fn update() void {
    setColors()
}

fn setColors() void {
    // https://lospec.com/palette-list/aap-16
    ff.setColor(@enumFromInt(1), ff.RGB{.r = 0x07, .g = 0x07, .b = 0x08});
    ff.setColor(@enumFromInt(2), ff.RGB{.r = 0x33, .g = 0x22, .b = 0x22});
    ff.setColor(@enumFromInt(3), ff.RGB{.r = 0x77, .g = 0x44, .b = 0x33});
    ff.setColor(@enumFromInt(4), ff.RGB{.r = 0xcc, .g = 0x88, .b = 0x55});
    ff.setColor(@enumFromInt(5), ff.RGB{.r = 0x99, .g = 0x33, .b = 0x11});
    ff.setColor(@enumFromInt(6), ff.RGB{.r = 0xdd, .g = 0x77, .b = 0x11});
    ff.setColor(@enumFromInt(7), ff.RGB{.r = 0xff, .g = 0xdd, .b = 0x55});
    ff.setColor(@enumFromInt(8), ff.RGB{.r = 0xff, .g = 0xff, .b = 0x33});
    ff.setColor(@enumFromInt(9), ff.RGB{.r = 0x55, .g = 0xaa, .b = 0x44});
    ff.setColor(@enumFromInt(10), ff.RGB{.r = 0x11, .g = 0x55, .b = 0x22});
    ff.setColor(@enumFromInt(11), ff.RGB{.r = 0x44, .g = 0xee, .b = 0xbb});
    ff.setColor(@enumFromInt(12), ff.RGB{.r = 0x33, .g = 0x88, .b = 0xdd});
    ff.setColor(@enumFromInt(13), ff.RGB{.r = 0x55, .g = 0x44, .b = 0xaa});
    ff.setColor(@enumFromInt(14), ff.RGB{.r = 0x55, .g = 0x55, .b = 0x77});
    ff.setColor(@enumFromInt(15), ff.RGB{.r = 0xaa, .g = 0xbb, .b = 0xbb});
    ff.setColor(@enumFromInt(16), ff.RGB{.r = 0xff, .g = 0xff, .b = 0xff});
}

🐀 C

#include "./vendor/firefly/firefly.c"

BOOT void boot()
{
    set_colors();
}

void set_colors()
{
    // https://lospec.com/palette-list/aap-16
    RGB color1 = {0x07, 0x07, 0x08};
    set_color(1, color1);
    RGB color2 = {0x33, 0x22, 0x22};
    set_color(2, color2);
    RGB color3 = {0x77, 0x44, 0x33};
    set_color(3, color3);
    RGB color4 = {0xcc, 0x88, 0x55};
    set_color(4, color4);
    RGB color5 = {0x99, 0x33, 0x11};
    set_color(5, color5);
    RGB color6 = {0xdd, 0x77, 0x11};
    set_color(6, color6);
    RGB color7 = {0xff, 0xdd, 0x55};
    set_color(7, color7);
    RGB color8 = {0xff, 0xff, 0x33};
    set_color(8, color8);
    RGB color9 = {0x55, 0xaa, 0x44};
    set_color(9, color9);
    RGB color10 = {0x11, 0x55, 0x22};
    set_color(10, color10);
    RGB color11 = {0x44, 0xee, 0xbb};
    set_color(11, color11);
    RGB color12 = {0x33, 0x88, 0xdd};
    set_color(12, color12);
    RGB color13 = {0x55, 0x44, 0xaa};
    set_color(13, color13);
    RGB color14 = {0x55, 0x55, 0x77};
    set_color(14, color14);
    RGB color15 = {0xaa, 0xbb, 0xbb};
    set_color(15, color15);
    RGB color16 = {0xff, 0xff, 0xff};
    set_color(16, color16);
}

➕ C++

#include "./vendor/firefly/firefly.c"

BOOT void boot()
{
    set_colors();
}

void set_colors()
{
    // https://lospec.com/palette-list/aap-16
    set_color(1, {0x07, 0x07, 0x08});
    set_color(2, {0x33, 0x22, 0x22});
    set_color(3, {0x77, 0x44, 0x33});
    set_color(4, {0xcc, 0x88, 0x55});
    set_color(5, {0x99, 0x33, 0x11});
    set_color(6, {0xdd, 0x77, 0x11});
    set_color(7, {0xff, 0xdd, 0x55});
    set_color(8, {0xff, 0xff, 0x33});
    set_color(9, {0x55, 0xaa, 0x44});
    set_color(10, {0x11, 0x55, 0x22});
    set_color(11, {0x44, 0xee, 0xbb});
    set_color(12, {0x33, 0x88, 0xdd});
    set_color(13, {0x55, 0x44, 0xaa});
    set_color(14, {0x55, 0x55, 0x77});
    set_color(15, {0xaa, 0xbb, 0xbb});
    set_color(16, {0xff, 0xff, 0xff});
}

🐰 MoonBit

///|
using @firefly {type Color, type RGB}

///|
pub fn boot() -> Unit {
  set_colors()
}

///|
fn set_colors() -> Unit {
  // https://lospec.com/palette-list/aap-16
  @firefly.set_color(Color::from_int(1), RGB::new(0x07, 0x07, 0x08));
  @firefly.set_color(Color::from_int(2), RGB::new(0x33, 0x22, 0x22));
  @firefly.set_color(Color::from_int(3), RGB::new(0x77, 0x44, 0x33));
  @firefly.set_color(Color::from_int(4), RGB::new(0xcc, 0x88, 0x55));
  @firefly.set_color(Color::from_int(5), RGB::new(0x99, 0x33, 0x11));
  @firefly.set_color(Color::from_int(6), RGB::new(0xdd, 0x77, 0x11));
  @firefly.set_color(Color::from_int(7), RGB::new(0xff, 0xdd, 0x55));
  @firefly.set_color(Color::from_int(8), RGB::new(0xff, 0xff, 0x33));
  @firefly.set_color(Color::from_int(9), RGB::new(0x55, 0xaa, 0x44));
  @firefly.set_color(Color::from_int(10), RGB::new(0x11, 0x55, 0x22));
  @firefly.set_color(Color::from_int(11), RGB::new(0x44, 0xee, 0xbb));
  @firefly.set_color(Color::from_int(12), RGB::new(0x33, 0x88, 0xdd));
  @firefly.set_color(Color::from_int(13), RGB::new(0x55, 0x44, 0xaa));
  @firefly.set_color(Color::from_int(14), RGB::new(0x55, 0x55, 0x77));
  @firefly.set_color(Color::from_int(15), RGB::new(0xaa, 0xbb, 0xbb));
  @firefly.set_color(Color::from_int(16), RGB::new(0xff, 0xff, 0xff));
}

🌙 Lua

function boot()
  set_colors()
end

function set_colors()
  -- https://lospec.com/palette-list/aap-16
  firefly.set_color(1, {r=0x07, g=0x07, b=0x08});
  firefly.set_color(2, {r=0x33, g=0x22, b=0x22});
  firefly.set_color(3, {r=0x77, g=0x44, b=0x33});
  firefly.set_color(4, {r=0xcc, g=0x88, b=0x55});
  firefly.set_color(5, {r=0x99, g=0x33, b=0x11});
  firefly.set_color(6, {r=0xdd, g=0x77, b=0x11});
  firefly.set_color(7, {r=0xff, g=0xdd, b=0x55});
  firefly.set_color(8, {r=0xff, g=0xff, b=0x33});
  firefly.set_color(9, {r=0x55, g=0xaa, b=0x44});
  firefly.set_color(10, {r=0x11, g=0x55, b=0x22});
  firefly.set_color(11, {r=0x44, g=0xee, b=0xbb});
  firefly.set_color(12, {r=0x33, g=0x88, b=0xdd});
  firefly.set_color(13, {r=0x55, g=0x44, b=0xaa});
  firefly.set_color(14, {r=0x55, g=0x55, b=0x77});
  firefly.set_color(15, {r=0xaa, g=0xbb, b=0xbb});
  firefly.set_color(16, {r=0xff, g=0xff, b=0xff});
end