Note: ABC is currently unstable! There have been no releases yet.
ABC is a C-like scripting language with an associated interpreter designed for the Arduboy FX. It includes runtime error checking and support for various FX assets, such as sprites, fonts, strings, and arbitrary data. Read the language reference or try out the online IDE.
int x = 20, y = 30;
int dx = 1, dy = -1;
void loop()
{
// wait for frame timing to maintain constant FPS
while(!$next_frame())
;
// draw some text with one of the built-in fonts
$draw_text_P(29, 36, "Hello World!");
x += dx;
y += dy;
if(x < 0 || x > 120) { dx = -dx; x += dx * 2; }
if(y < 0 || y > 56) { dy = -dy; y += dy * 2; }
// Draw an 8x8 sprite with a sprite literal: sprites{ WxH [pixels] }
// '-' is a transparent pixel
// '.' is a black pixel
// all other non-whitespace characters are white pixels
$draw_sprite(x, y, sprites{
8x8
--XXXX--
-X....X-
X......X
X......X
X......X
X......X
-X....X-
--XXXX-- }, 0);
// push display buffer to display and clear it
$display();
}
void main()
{
$set_text_font(FONT_ADAFRUIT);
while(true)
loop();
}