I can't figure out a way to get the 64/48 thing to work without calling POINT multiple times, otherwise it only detexts a single position... check out the example - move the CYAN square with the arrow keys. Detection only occurs on the upper left corner of the block:
set display mode 800,600,32
sync on
sync rate 60
rem make some random boxes and a bitmap of dots
white=rgb(255,255,255)
blue=255
green=rgb(0,255,0)
red=rgb(255,0,0)
black=0
create bitmap 1,81,61
create bitmap 2,screen width(),screen height()
for n=1 to 100
r=rnd(4)
select r
case 0 : color=white : endcase
case 1 : color=green : endcase
case 2 : color=blue : endcase
case 3 : color=red : endcase
case 4 : color=black : endcase
endselect
ink color,0
x1=(rnd(screen width())/10)*10
y1=(rnd(screen height())/10)*10
x2=x1+10
y2=y1+10
set current bitmap 2
box x1,y1,x2,y2
set current bitmap 1
dot x1/10,y1/10
next n
sync
set current bitmap 0
cls 0
ink rgb(0,255,255),0
rem make a character
box 0,0,9,9
get image 1,0,0,10,10
sync
ink white,0
testy=10
testx=10
do
copy bitmap 2,0
set current bitmap 0
text 0,0,str$(color)
rem move character around
inc cx,(rightkey()-leftkey())*2
inc cy,(downkey()-upkey())*2
testx=cx/10
testy=cy/10
paste image 1,cx,cy
set current bitmap 1
color=point(testx,testy)
loop
If you check around the forums, I've posted the memblock formula many times to get the colors.
Enjoy your day.