A method of enabling user interaction with computer software executed in a computer
system using an interface surface including information relating to the computer
software. The interface surface includes a plurality of regions, each having coded
data indicative of a plurality of reference points and an identity of the region.
The user uses a sensing device to capture images of the coded data, identify and
decode the coded data from the captured images, and then generate indicating data
indicative of an identity of the region and movement or a position of the sensing
device in the region. The computer system uses the indicating data to operate the
computer software at least partly in accordance with instructions associated with
the region.