DOCS
The code is interpreted by a stack machine.
The stack is initialized with the value: time, x coord, y coord.
The coordinates are given in the 0..1 range.
The origin (0,0) is the top left corner of the image.
Time is currently always zero.
The result is read from the top of the stack:
x0 = R, x1 = G, x2 = B
xN denotes the Nth value of the stack, with x0 being the top of the stack.
Symbol |
Effect |
a |
x0+x1 |
b |
rem(x0, abs(x1)+1e-10) |
c |
put copy of x0 on stack |
d |
x0/x1 |
e |
e^x0 |
f |
1/(1+e^-x0) |
g |
sin(x0) [radians] |
h |
cos(x0) [radians] |
i |
tan(x0) [radians] |
j |
cotan(x0) [radians] |
k |
mod(x0, abs(x1)+1e-10) |
l |
log(x0) |
m |
x0*x1 |
n |
sqrt(x0) |
o |
x^2 |
p |
put PI on stack |
q |
2x0 - 1 |
r |
(x0+1)/2 |
s |
x0-x1 |
t |
put time value on stack [0 for images] |
u |
x0*x0 + x1*x1 |
v |
x0*x0 + x1*x1 + x2*x2 |
w |
rotate 2D vector (x1, x0) by 90° |
x |
put x coordinate on stack |
y |
put y coordinate on stack |
z |
abs(x0) |
0 |
put 0 on stack |
1 |
put 1 on stac |
2-9 |
move x(n-1) to top of the stack |
A |
x0 + x1i + x2 + x3i |
B |
clamp top item to 0..1 |
C |
copy x0 and x1 on to stack |
D |
x0 xor x1 [bitwise] |
E |
x0 and x1 [bitwise] |
F |
x0 or x1 [bitwise] |
G |
shift 0 bit from right |
H |
shift 1 bit form right |
I |
floor(x0) |
J |
ceil(x0) |
K |
(x0, x1, x2) as RGB to HSV [hue 0..1] |
L |
(x0, x1, x2) as HSV to RGB [hue 0..1] |
M |
(x0 + x1i) * (x2 + x3i) |
N |
|
O |
|
P |
|
Q |
|
R |
|
S |
|
T |
|
U |
min(x0, x1) |
V |
max(x0, x1) |
W |
|
X |
|
Y |
|
Z |
|