AmBored
AmBored is an esoteric language written by User:Is this the Krusty Krab. It is a Brainfuck derivative written in C++ which adds more commands and features primitive graphics. It was named so due to the fact that I am bored, so I am making this for fun. (The author has neither confirmed nor denied if it is also a pun on 'board', given that the program state is like a blackboard.)
Features
AmBored has an array the size of 256 by 256 cells, each cell represents a color.
Another two feature of AmBored are a stack, which operates like a normal stack you probably studied in school, college, or your room at night instead of sleeping, and a buffer able to store a value to be used later.
Syntax
The syntax is classic Brainfuck syntax, with a few changes and additions.
CMD | Description |
---|---|
> |
Move the memory pointer right |
< |
Move the memory pointer left |
V |
Move the memory pointer down |
^ |
Move the memory pointer up |
+ |
Increment the pointed cell's colour |
- |
Decrement the pointed cell's colour |
[ |
Jump past the matching ] if the pointed cell is 0 (black)
|
] |
Jump back to the matching [ if the pointed cell is nonzero (not black)
|
, |
Input a number and write it to the pointed cell |
. |
Refresh the screen |
( |
Push the value of the pointed cell to the stack |
) |
Pop the top value of the stack to the pointed cell |
@ |
Assign the value at the top of the stack to the pointed cell |
$ |
Pop the top value of the stack without writing it to the pointed cell |
{ |
Rotate the value of the pointed cell to the left |
} |
Rotate the value of the pointed cell to the right |
/ |
Store the value of the pointed cell into the buffer |
\ |
Write the value of the buffer to the pointed cell |
0 - 7 |
Store the color corresponding to the number in the pointed cell. |
Interface
As mentioned, the output is a screen of pixels, each with the color stored in them. There is also a command to refresh the screen. This is because the screen needs to be refreshed manually, to prevent the user from seeing the whole process of changing the frame.
Why? Because I said so.
The colors that can be represented by the pixels are:
Number | Binary (RGB ) |
Color |
---|---|---|
0 | 000 |
Black |
1 | 001 |
Blue |
2 | 010 |
Green |
3 | 011 |
Cyan |
4 | 100 |
Red |
5 | 101 |
Magenta |
6 | 110 |
Yellow |
7 | 111 |
White |
Ay btw
If you create something serious with AmBored, please send it to me at harambethe[email protected] so I can add it to this page and give you credit.
Interpriter
User:Monochromeninja made a python 3 interpriter. Try it!