Commodore64 was an 8-bit home computer released in 1982.
🦀 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/commodore64
set_color(Color::from(1), RGB::new(0x00, 0x00, 0x00));
set_color(Color::from(2), RGB::new(0x62, 0x62, 0x62));
set_color(Color::from(3), RGB::new(0x89, 0x89, 0x89));
set_color(Color::from(4), RGB::new(0xad, 0xad, 0xad));
set_color(Color::from(5), RGB::new(0xff, 0xff, 0xff));
set_color(Color::from(6), RGB::new(0x9f, 0x4e, 0x44));
set_color(Color::from(7), RGB::new(0xcb, 0x7e, 0x75));
set_color(Color::from(8), RGB::new(0x6d, 0x54, 0x12));
set_color(Color::from(9), RGB::new(0xa1, 0x68, 0x3c));
set_color(Color::from(10), RGB::new(0xc9, 0xd4, 0x87));
set_color(Color::from(11), RGB::new(0x9a, 0xe2, 0x9b));
set_color(Color::from(12), RGB::new(0x5c, 0xab, 0x5e));
set_color(Color::from(13), RGB::new(0x6a, 0xbf, 0xc6));
set_color(Color::from(14), RGB::new(0x88, 0x7e, 0xcb));
set_color(Color::from(15), RGB::new(0x50, 0x45, 0x9b));
set_color(Color::from(16), RGB::new(0xa0, 0x57, 0xa3));
}
🏃 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/commodore64
firefly.SetColor(1, firefly.RGB{R: 0x00, G: 0x00, B: 0x00})
firefly.SetColor(2, firefly.RGB{R: 0x62, G: 0x62, B: 0x62})
firefly.SetColor(3, firefly.RGB{R: 0x89, G: 0x89, B: 0x89})
firefly.SetColor(4, firefly.RGB{R: 0xad, G: 0xad, B: 0xad})
firefly.SetColor(5, firefly.RGB{R: 0xff, G: 0xff, B: 0xff})
firefly.SetColor(6, firefly.RGB{R: 0x9f, G: 0x4e, B: 0x44})
firefly.SetColor(7, firefly.RGB{R: 0xcb, G: 0x7e, B: 0x75})
firefly.SetColor(8, firefly.RGB{R: 0x6d, G: 0x54, B: 0x12})
firefly.SetColor(9, firefly.RGB{R: 0xa1, G: 0x68, B: 0x3c})
firefly.SetColor(10, firefly.RGB{R: 0xc9, G: 0xd4, B: 0x87})
firefly.SetColor(11, firefly.RGB{R: 0x9a, G: 0xe2, B: 0x9b})
firefly.SetColor(12, firefly.RGB{R: 0x5c, G: 0xab, B: 0x5e})
firefly.SetColor(13, firefly.RGB{R: 0x6a, G: 0xbf, B: 0xc6})
firefly.SetColor(14, firefly.RGB{R: 0x88, G: 0x7e, B: 0xcb})
firefly.SetColor(15, firefly.RGB{R: 0x50, G: 0x45, B: 0x9b})
firefly.SetColor(16, firefly.RGB{R: 0xa0, G: 0x57, B: 0xa3})
}
⚡️ Zig
const ff = @import("firefly");
pub export fn update() void {
setColors()
}
fn setColors() void {
// https://lospec.com/palette-list/commodore64
ff.setColor(@enumFromInt(1), ff.RGB{.r = 0x00, .g = 0x00, .b = 0x00});
ff.setColor(@enumFromInt(2), ff.RGB{.r = 0x62, .g = 0x62, .b = 0x62});
ff.setColor(@enumFromInt(3), ff.RGB{.r = 0x89, .g = 0x89, .b = 0x89});
ff.setColor(@enumFromInt(4), ff.RGB{.r = 0xad, .g = 0xad, .b = 0xad});
ff.setColor(@enumFromInt(5), ff.RGB{.r = 0xff, .g = 0xff, .b = 0xff});
ff.setColor(@enumFromInt(6), ff.RGB{.r = 0x9f, .g = 0x4e, .b = 0x44});
ff.setColor(@enumFromInt(7), ff.RGB{.r = 0xcb, .g = 0x7e, .b = 0x75});
ff.setColor(@enumFromInt(8), ff.RGB{.r = 0x6d, .g = 0x54, .b = 0x12});
ff.setColor(@enumFromInt(9), ff.RGB{.r = 0xa1, .g = 0x68, .b = 0x3c});
ff.setColor(@enumFromInt(10), ff.RGB{.r = 0xc9, .g = 0xd4, .b = 0x87});
ff.setColor(@enumFromInt(11), ff.RGB{.r = 0x9a, .g = 0xe2, .b = 0x9b});
ff.setColor(@enumFromInt(12), ff.RGB{.r = 0x5c, .g = 0xab, .b = 0x5e});
ff.setColor(@enumFromInt(13), ff.RGB{.r = 0x6a, .g = 0xbf, .b = 0xc6});
ff.setColor(@enumFromInt(14), ff.RGB{.r = 0x88, .g = 0x7e, .b = 0xcb});
ff.setColor(@enumFromInt(15), ff.RGB{.r = 0x50, .g = 0x45, .b = 0x9b});
ff.setColor(@enumFromInt(16), ff.RGB{.r = 0xa0, .g = 0x57, .b = 0xa3});
}
🐀 C
#include "./vendor/firefly/firefly.c"
BOOT void boot()
{
set_colors();
}
void set_colors()
{
// https://lospec.com/palette-list/commodore64
RGB color1 = {0x00, 0x00, 0x00};
set_color(1, color1);
RGB color2 = {0x62, 0x62, 0x62};
set_color(2, color2);
RGB color3 = {0x89, 0x89, 0x89};
set_color(3, color3);
RGB color4 = {0xad, 0xad, 0xad};
set_color(4, color4);
RGB color5 = {0xff, 0xff, 0xff};
set_color(5, color5);
RGB color6 = {0x9f, 0x4e, 0x44};
set_color(6, color6);
RGB color7 = {0xcb, 0x7e, 0x75};
set_color(7, color7);
RGB color8 = {0x6d, 0x54, 0x12};
set_color(8, color8);
RGB color9 = {0xa1, 0x68, 0x3c};
set_color(9, color9);
RGB color10 = {0xc9, 0xd4, 0x87};
set_color(10, color10);
RGB color11 = {0x9a, 0xe2, 0x9b};
set_color(11, color11);
RGB color12 = {0x5c, 0xab, 0x5e};
set_color(12, color12);
RGB color13 = {0x6a, 0xbf, 0xc6};
set_color(13, color13);
RGB color14 = {0x88, 0x7e, 0xcb};
set_color(14, color14);
RGB color15 = {0x50, 0x45, 0x9b};
set_color(15, color15);
RGB color16 = {0xa0, 0x57, 0xa3};
set_color(16, color16);
}
➕ C++
#include "./vendor/firefly/firefly.c"
BOOT void boot()
{
set_colors();
}
void set_colors()
{
// https://lospec.com/palette-list/commodore64
set_color(1, {0x00, 0x00, 0x00});
set_color(2, {0x62, 0x62, 0x62});
set_color(3, {0x89, 0x89, 0x89});
set_color(4, {0xad, 0xad, 0xad});
set_color(5, {0xff, 0xff, 0xff});
set_color(6, {0x9f, 0x4e, 0x44});
set_color(7, {0xcb, 0x7e, 0x75});
set_color(8, {0x6d, 0x54, 0x12});
set_color(9, {0xa1, 0x68, 0x3c});
set_color(10, {0xc9, 0xd4, 0x87});
set_color(11, {0x9a, 0xe2, 0x9b});
set_color(12, {0x5c, 0xab, 0x5e});
set_color(13, {0x6a, 0xbf, 0xc6});
set_color(14, {0x88, 0x7e, 0xcb});
set_color(15, {0x50, 0x45, 0x9b});
set_color(16, {0xa0, 0x57, 0xa3});
}
🐰 MoonBit
///|
using @firefly {type Color, type RGB}
///|
pub fn boot() -> Unit {
set_colors()
}
///|
fn set_colors() -> Unit {
// https://lospec.com/palette-list/commodore64
@firefly.set_color(Color::from_int(1), RGB::new(0x00, 0x00, 0x00));
@firefly.set_color(Color::from_int(2), RGB::new(0x62, 0x62, 0x62));
@firefly.set_color(Color::from_int(3), RGB::new(0x89, 0x89, 0x89));
@firefly.set_color(Color::from_int(4), RGB::new(0xad, 0xad, 0xad));
@firefly.set_color(Color::from_int(5), RGB::new(0xff, 0xff, 0xff));
@firefly.set_color(Color::from_int(6), RGB::new(0x9f, 0x4e, 0x44));
@firefly.set_color(Color::from_int(7), RGB::new(0xcb, 0x7e, 0x75));
@firefly.set_color(Color::from_int(8), RGB::new(0x6d, 0x54, 0x12));
@firefly.set_color(Color::from_int(9), RGB::new(0xa1, 0x68, 0x3c));
@firefly.set_color(Color::from_int(10), RGB::new(0xc9, 0xd4, 0x87));
@firefly.set_color(Color::from_int(11), RGB::new(0x9a, 0xe2, 0x9b));
@firefly.set_color(Color::from_int(12), RGB::new(0x5c, 0xab, 0x5e));
@firefly.set_color(Color::from_int(13), RGB::new(0x6a, 0xbf, 0xc6));
@firefly.set_color(Color::from_int(14), RGB::new(0x88, 0x7e, 0xcb));
@firefly.set_color(Color::from_int(15), RGB::new(0x50, 0x45, 0x9b));
@firefly.set_color(Color::from_int(16), RGB::new(0xa0, 0x57, 0xa3));
}
🌙 Lua
function boot()
set_colors()
end
function set_colors()
-- https://lospec.com/palette-list/commodore64
firefly.set_color(1, {r=0x00, g=0x00, b=0x00});
firefly.set_color(2, {r=0x62, g=0x62, b=0x62});
firefly.set_color(3, {r=0x89, g=0x89, b=0x89});
firefly.set_color(4, {r=0xad, g=0xad, b=0xad});
firefly.set_color(5, {r=0xff, g=0xff, b=0xff});
firefly.set_color(6, {r=0x9f, g=0x4e, b=0x44});
firefly.set_color(7, {r=0xcb, g=0x7e, b=0x75});
firefly.set_color(8, {r=0x6d, g=0x54, b=0x12});
firefly.set_color(9, {r=0xa1, g=0x68, b=0x3c});
firefly.set_color(10, {r=0xc9, g=0xd4, b=0x87});
firefly.set_color(11, {r=0x9a, g=0xe2, b=0x9b});
firefly.set_color(12, {r=0x5c, g=0xab, b=0x5e});
firefly.set_color(13, {r=0x6a, g=0xbf, b=0xc6});
firefly.set_color(14, {r=0x88, g=0x7e, b=0xcb});
firefly.set_color(15, {r=0x50, g=0x45, b=0x9b});
firefly.set_color(16, {r=0xa0, g=0x57, b=0xa3});
end