Text output

SVG output

<path d=" M 0 0 L 500 0 M 0 5 L 495 0 M 0 10 L 490 0 M 0 15 L 485 0 M 0 20 L 480 0 M 0 25 L 475 0 M 0 30 L 470 0 M 0 35 L 465 0 M 0 40 L 460 0 M 0 45 L 455 0 M 0 50 L 450 0 M 0 55 L 445 0 M 0 60 L 440 0 M 0 65 L 435 0 M 0 70 L 430 0 M 0 75 L 425 0 M 0 80 L 420 0 M 0 85 L 415 0 M 0 90 L 410 0 M 0 95 L 405 0 M 0 100 L 400 0 M 0 105 L 395 0 M 0 110 L 390 0 M 0 115 L 385 0 M 0 120 L 380 0 M 0 125 L 375 0 M 0 130 L 370 0 M 0 135 L 365 0 M 0 140 L 360 0 M 0 145 L 355 0 M 0 150 L 350 0 M 0 155 L 345 0 M 0 160 L 340 0 M 0 165 L 335 0 M 0 170 L 330 0 M 0 175 L 325 0 M 0 180 L 320 0 M 0 185 L 315 0 M 0 190 L 310 0 M 0 195 L 305 0 M 0 200 L 300 0 M 0 205 L 295 0 M 0 210 L 290 0 M 0 215 L 285 0 M 0 220 L 280 0 M 0 225 L 275 0 M 0 230 L 270 0 M 0 235 L 265 0 M 0 240 L 260 0 M 0 245 L 255 0 M 0 250 L 250 0 M 0 255 L 245 0 M 0 260 L 240 0 M 0 265 L 235 0 M 0 270 L 230 0 M 0 275 L 225 0 M 0 280 L 220 0 M 0 285 L 215 0 M 0 290 L 210 0 M 0 295 L 205 0 M 0 300 L 200 0 M 0 305 L 195 0 M 0 310 L 190 0 M 0 315 L 185 0 M 0 320 L 180 0 M 0 325 L 175 0 M 0 330 L 170 0 M 0 335 L 165 0 M 0 340 L 160 0 M 0 345 L 155 0 M 0 350 L 150 0 M 0 355 L 145 0 M 0 360 L 140 0 M 0 365 L 135 0 M 0 370 L 130 0 M 0 375 L 125 0 M 0 380 L 120 0 M 0 385 L 115 0 M 0 390 L 110 0 M 0 395 L 105 0 M 0 400 L 100 0 M 0 405 L 95 0 M 0 410 L 90 0 M 0 415 L 85 0 M 0 420 L 80 0 M 0 425 L 75 0 M 0 430 L 70 0 M 0 435 L 65 0 M 0 440 L 60 0 M 0 445 L 55 0 M 0 450 L 50 0 M 0 455 L 45 0 M 0 460 L 40 0 M 0 465 L 35 0 M 0 470 L 30 0 M 0 475 L 25 0 M 0 480 L 20 0 M 0 485 L 15 0 M 0 490 L 10 0 M 0 495 L 5 0 M 0 500 L 0 0" />

Input

Height (px)

Width (px)

Max iterations

Perlin seed (0 for random)

Perlin octaves

Perlin scale

Perlin persistence

Perlin amplification

Befunsvge commands

Regular befunge-93 commands

< > ^ v: Change flow direction
#: Jump over next cell
?: Move in a random direction
+ - * / %: Pop two values and push the result
`: Pop a and b, push 1 if b > a, 0 otherwise
:: Duplicate the stack head
\: swap the two elements at the front
$: pop a stack element
!: pop a value, push 1 if the value is 0, 0 otherwise
_: pop a value, go right if the value is 0, go left otherwise
|: pop a value, go down if the value is 0, go up otherwise
@: stop execution
": toggle string mode (push char codepoints between to quotes)
p: pop coords and value, set the corresponding cell to the value
g: pop coords, push the corresponding cell value
.: pop a value, display the corresponding number
$: pop a value, display the corresponding char (codepoint)

SVG extensions

κ ρ ε: pop values, output the corresponding SVG tag (circle, rect, ellipse)
A a C c S s Q q M m L l T t H h Z z: pop values, push the corresponding directive to the current path buffer
W w: pop values, push the corresponding directive (V v) to the current path buffer
π: flush the path buffer, output the corresponding path_ directive

External input extension

i: pop x y z coordinates and push f(x,y,z). For now, f is just Perlin noise, with parameters below.