@RedOktober
You don't move the map, you change the
start-of-reading point within the map. Something like this :
'-- MAP(?,?) is the stored Map-data
'-- Guess what MapWidth & MapHeight are

'-- Where do I draw my map on the screen ?
BoxX=3:BoxY=2
'-- What's the width & height of the drawn map
BoxW=15:BoxH=15
'-- What's the Top-left of my map's viewpoint ?
MapX=7:MapY=5
'-- Show a portion of BoxW+1 * BoxH+1 of the map
for Y=0 to BoxH
for X=0 to BoxW
if MapX+X<0 or MapX+X>MapWidth or _
MapY+Y<0 or MapY+Y>MapHeight then
Code={Outside-of-map symbol})
else
Code=Map(MapXOffs+X,MapYOffs+Y)
endif
locate BoxY+Y,BoxX+X
Print chr$(Code);
next X
next Y
Change MapX and/or MapY and you will see other portions of your map appear. Draw a few lines outlining the box, and it will look quite nice too.