A robot adapted to operate in association with an interface surface having
disposed therein or thereon coded data indicative of a plurality of
reference points of the interface surface, the robot comprising:
movement means to allow the robot to move over the interface surface; a
sensing device which senses at least some of the coded data and generates
indicating data indicative of a position of the robot on the interface
surface; communication means to transmit the indicating data to a
computer system running a computer application, and to receive movement
instructions from the computer application; and, a marking device adapted
to selectively mark the interface surface in response to marking
instructions received from the computer application.