hi here is a section of code that i used for the same sort of thing you wanted, this is in dbc, but i assume this will work in dbp, or it will be easy to translate
load image "floor1.bmp",2
load image "brickwall.jpg",4
sync on
make object plain 8,1010,1010
texture object 8,2
xrotate object 8,90
position object 8,100,0,100
scale object texture 8,100,100
rem make outer walls
make object plain 4,1100,50
texture object 4,4
scale object texture 4,50,5
position object 4,100,0,600
make object plain 5,1100,50
texture object 5,4
scale object texture 5,50,5
position object 5,100,0,-400
make object plain 6,1100,50
texture object 6,4
scale object texture 6,50,5
yrotate object 6,90
position object 6,-400,0,100
make object plain 7,1100,50
texture object 7,4
scale object texture 7,50,5
yrotate object 7,90
position object 7,600,0,100
rem camera position
x#=10
y#=10
z#=10
ay#=0
ax#=0
playerspeed#=1
do
sync
rem CAMERA
ax#=ax#+mousemovex()
ay#=ay#+mousemovey()
xrotate camera wrapvalue(ay#)
yrotate camera wrapvalue(ax#)
if ay#<-90 then ay#=-90
if ay#>90 then ay#=90
rem movement
if upkey()=1 then x#=newxvalue(x#,ax#,playerspeed#) : z#=newzvalue(z#,ax#,playerspeed#)
if shiftkey()=1 then y#=2 else y#=10
rem wall collisions
if x#>=599 then x#=x#-1
if x#<=-399 then x#=x#+1
if z#>=599 then z#=z#-1
if z#<=-399 then z#=z#+1
position camera x#,y#,z#
loop
hope this was of help to you. I have included the media files in the download
abit fatal1ty an8 sli mobo, ati raedon 1800 XT, 1.5GB RAM
250GB SATA HDD, AMD Athlon 64 x2 4200 (overclocked further)