GEM starts by spreading 100 circles and ovals around HOME (limited by the GOHOME program). The PX command is activated so that all overlapping areas go from white to black or from black to white. Then the black&white picture is colored by either PICKCOLORS which paints everything it hits again and again, or PICKCOLORSDOT which checks where it hits and only paints the same place once. This is one of the numerous ways the PX function can create surprising effects. If you don’t want the background to be colored, start by painting it light gray [254 254 254] before running the procedure.
TO GEM CS FS SETPC 0 PX REPEAT 100 [PU GOHOME FD RANDOM 220 RT RANDOM 70 RT RANDOM 40 FD RANDOM 220 LT RANDOM 70 PD PX (STAMPOVAL 30 + RANDOM 150 30 + RANDOM 150 TRUE) (STAMPOVAL 75 + RANDOM 50 75 + RANDOM 50 TRUE)] PICKCOLORS 1000 PU SETXY (LIST 300 300) SETPC 15 PD FILL WAIT RANDOM 100 END TO PICKCOLORS :G PU HOME REPEAT :G [PU HOME RT RANDOM 360 FD RANDOM 400 PD SETPC (LIST RANDOM 255 RANDOM 255 RANDOM 255) FILL] END TO PICKCOLORSDOT :T PU HOME HT REPEAT :T [PU HOME RT RANDOM 360 FD RANDOM 500 PD SETPC (LIST RANDOM 255 RANDOM 255 RANDOM 255) PD TEST DOT? IFT [PU] FILL PU HOME] END TO GOHOME IF OR (XCOR > 300) (YCOR > 300) SETH TOWARDS [0 0] IF OR (XCOR < -300) (YCOR < 300) SETH TOWARDS [0 0] END