This is some code that will move the camera around when the cursor is at one of the four edges of the screen.
You need my Memory plug-in to compile it.
#constant MOVESPEED 50
#constant DECSPEED 170000
#constant CAMERASPEED 15000
sync on
sync rate 0
initTimeMovement
speed#=updateTimeMovement()
x#=0.0
y#=0.0
z#=100.0
move#=MOVESPEED
randomize timer()
for x=1 to 50
make object cube x,25
position object x,rnd(16)*25,0.0,rnd(16)*25.0
color object x,(rnd(255)<<16)+(rnd(255)<<8)+rnd(255)
next x
position camera x#,z#,y#
xrotate camera 90
lastWheel=mousez()
repeat
x=mousex()
y=mousey()
newMouseWheel=mousez()
if newMouseWheel<>lastWheel
diff=newMouseWheel-lastWheel
lastWheel=newMouseWheel
text 0,100,str$(diff)
if diff>0
if z#<200.0 then inc z#,10.0
else
if diff<0
if z#>70.0 then dec z#,10.0
endif
endif
endif
if x>0 and y>0 and x+1<screen width() and y+1<screen height()
move#=MOVESPEED
else
if (x=0 or x+1=screen width() or y=0 or y+1=screen height()) and move#>0.0
dec move#,DECSPEED*speed#
else
if x=0
dec x#,CAMERASPEED*speed#
else
if x+1=screen width()
inc x#,CAMERASPEED*speed#
endif
endif
if y=0
inc y#,CAMERASPEED*speed#
else
if y+1=screen height()
dec y#,CAMERASPEED*speed#
endif
endif
endif
endif
position camera x#,z#,y#
text 0,0,str$(move#)+" "+str$(x#)+" "+str$(z#)
speed#=updateTimeMovement()
sync
until 1=0
Walk softly... and carry a big gun...