Difference between revisions of "Simple graphics language"

From ScienceZero
Jump to: navigation, search
Line 31: Line 31:
 
   left          ( angle -- )
 
   left          ( angle -- )
 
   right        ( angle -- )
 
   right        ( angle -- )
 +
 
 +
Loops:
 +
  for
 +
  next
 
   
 
   
  Loops:
+
  Conditionals:
  for
+
  if
  next
+
  else
+
  endif
Conditionals:
+
  if
+
  else
+
  endif
+

Revision as of 16:24, 14 April 2011

A simple graphics language for microcontrollers

We start with a very simple reverse polish notation interpreter with a preprocessor stage

Sample code:

360 for 1 forward 1 right next

Registers:

0 X
1 Y
2 Angle
3 Scale
4 Colour
5 Pen up/down
6
7

Commands:

Absolute commands
  setpixel      ( x y colour -- )
  readpixel     ( x y -- colour )
  colour        (colour -- )
  goto          (x y -- )

Relative commands:
  penup         ( -- )
  pendown       ( -- )
  forward       ( length -- )
  backward      ( length -- )
  left          ( angle -- )
  right         ( angle -- )
 

Loops:

  for
  next

Conditionals:
  if
  else
  endif