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 |
Examples
Color Cat
,[>,].
Graphical Hello, World!
>>>>>>>>>>>>>>>>>>>>>>>>>7>7>>>>>7>7>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>7>7>>>>>>>>>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v7>7>7>7>7>7>>>7>7>7>7>7>7>7>>>>>>>>>7>7>7>7>>>7>7>7>7>>>>>>>>>>>>>>>>>>7>7>7>7>7>7>>>>>>7>>>>>>7>7>7>7>7>>>>>>>>>>>>>>>>>>7>7>7>7>>>>>>>>7>7>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>7>7>7>7>>>>>7>7>7>7>>>>>>>>>>>>7>7>7>>>>7>7>7>>>>>>>>>>>>>>>>>>>7>7>7>7>>>>>>>7>>>>>>>7>7>7>>>>>>>>>>>>>>>>>>>>7>7>7>>>>>>>>>7>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>>>>>>>7>7>>>>>>>>>>>>>>7>7>>>>>7>7>>>>>>>>>>>>>>>>>>>>7>7>7>>>>>>>7>7>>>>>>>7>>>>>>>>>>>>>>>>>>>>>>7>7>>>>>>>>>>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>>>>>>>7>7>>>>>>>>>>>>>>7>7>>>>>7>7>>>>>>>>>>>>>>>>>>>>>7>7>>>>>>7>7>7>>>>>>7>7>>>>>>>>>>>>>>>>>>>>>>7>7>>>>>>>>>>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>>>>>>>7>7>>>>>>>7>7>7>7>>>>7>7>>>>>7>7>>>>>7>7>7>7>7>>>>>>>>>>>>7>7>>>>>>7>7>7>>>>>>7>>>>>>7>7>7>7>7>>7>7>7>7>>7>7>7>>>>7>7>>>>>>7>7>7>7>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>>>>>>>7>7>>>>>7>7>7>>7>7>>>>7>7>>>>>7>7>>>>7>7>7>>7>7>7>>>>>>>>>>>7>7>7>>>>7>7>7>7>7>>>>7>7>>>>>7>7>7>>7>7>7>>7>7>7>7>7>7>7>>>>7>7>>>>>7>7>>>7>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>7>7>7>7>7>7>7>7>>>>>7>7>>>>7>7>>>7>7>>>>>7>7>>>7>7>7>>>>7>7>7>>>>>>>>>>>7>7>>>>7>7>7>7>7>>>>7>7>>>>7>7>7>>>>7>7>7>>7>7>7>>7>7>>>>7>7>>>>7>7>>>>>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>7>7>7>7>7>7>7>7>>>>7>7>>>>>7>7>>>7>7>>>>>7>7>>>7>7>>>>>>7>7>>>>>>>>>>>7>7>7>>>7>>>7>7>7>>>7>>>>>7>7>>>>>>7>7>>7>7>>>>>>>>7>7>>>7>7>7>>>>>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>>>>>>>7>7>>>>7>7>7>7>7>7>7>7>>>7>7>>>>>7>7>>>7>7>>>>>>7>7>>>>>>>>>>>7>7>7>>7>7>>>7>7>7>>7>7>>>>>7>7>>>>>>7>7>>7>7>>>>>>>>7>7>>>7>7>7>>>>>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>>>>>>>7>7>>>>7>7>>>>>>>>>7>7>>>>>7>7>>>7>7>>>>>>7>7>>>>>>>>>>>>7>7>>7>>>>>7>7>>7>>>>>>7>7>>>>>>7>7>>7>7>>>>>>>>7>7>>>7>7>7>>>>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>>>>>>>7>7>>>>7>7>>>>>>>>>7>7>>>>>7>7>>>7>7>>>>>>7>7>>>>>>>>>>>>>7>7>>>>>>>7>7>>>>>>>7>7>>>>>>7>7>>7>7>>>>>>>>7>7>>>7>7>7>>>>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>7>7>>>>>>>7>7>>>>7>7>7>>>>>7>>>7>7>>>>>7>7>>>7>7>7>>>>7>7>7>>7>7>>>>>>>>>7>7>7>7>>>>>7>7>7>7>>>>>>7>7>7>>>>7>7>7>>7>7>>>>>>>>7>7>>>>7>7>>>>>7>7>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>7>7>7>7>>>>>7>7>7>7>>>>7>7>7>7>7>7>7>>7>7>7>7>>>7>7>7>7>>>7>7>7>7>7>7>7>>>7>>>>>>>>>>>7>7>>>>>>>7>7>>>>>>>>7>7>7>7>7>7>7>>7>7>7>7>>>>>>7>7>7>7>>>7>7>7>7>7>7>7>7>7>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v7>7>7>7>7>7>>>7>7>7>7>7>7>7>>>7>7>7>7>7>>7>7>7>7>7>7>7>7>7>7>7>7>>>7>7>7>7>7>>>>7>7>>>>>>>>>>7>7>>>>>>>7>7>>>>>>>>>7>7>7>7>7>>7>7>7>7>7>7>>>>7>7>7>7>7>7>>>7>7>7>7>>7>7>7>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>7>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>7<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<v>>>>>>>>>>>>>7<<<<<<<<<<<<<v.
This outputs (ASCII representation):
▄▄ ▄▄ ▄▄ ▄▄
▀████▀ ▀████▀▀ ▀███ ▀███ ▀████▀ █ ▀███▀ ▀███ ▀███ ██
██ ██ ██ ██ ▀██ ▄██ ▄█ ██ ██ ██
██ ██ ▄▄█▀██ ██ ██ ▄██▀██▄ ██▄ ▄███▄ ▄█ ▄██▀██▄▀███▄███ ██ ▄█▀▀███ ██
██████████ ▄█▀ ██ ██ ██ ██▀ ▀██ ██▄ █▀ ██▄ █▀ ██▀ ▀██ ██▀ ▀▀ ██ ▄██ ██ ██
██ ██ ██▀▀▀▀▀▀ ██ ██ ██ ██ ▀██ █▀ ▀██ █▀ ██ ██ ██ ██ ███ ██ ▀▀
██ ██ ██▄ ▄ ██ ██ ██▄ ▄██ ▄▄ ▄██▄ ▄██▄ ██▄ ▄██ ██ ██ ▀██ ██ ▄▄
▄████▄ ▄████▄▄ ▀█████▀▄████▄▄████▄ ▀█████▀ █▄ ██ ██ ▀█████▀▄████▄ ▄████▄ ▀████▀███▄█
▄█
▄▀
Ay btw
If you create something serious with AmBored, please send it to me at harambethereligiousgorilla@gmail.com so I can add it to this page and give you credit.
Interpriter
User:Monochromeninja made a python 3 interpriter. Try it out!
An ASCII image to AmBored converter by User:RikoMamaBala:
t=input();d=[];c=""
while t!='end':
d.append(t);t=input()
for i in d:
for j in i:c+=f'{j}>'if j in'01234567'else'>'
c+='<'*len(i)+'v'
while'<>'in c or'><'in c:c=c.replace('<>',"").replace('><',"")
print(c+'.')
With this converter, a Hello, World! program can be constructed.
AmBored interpreter in Scratch, also by User:RikoMamaBala