Well, here's the source of the scrolling a tile at a time, but note: Y doesn't scroll, only X does.
(this is the full source)
:.MSEDIT
:.metal slug level editor
:DiagnosticOff
:.store some crap into the tilemap
:For(A,0,711
:rand^2+0->{L1+A}
:End
:.curser
:[3C3CFFFFFFFF3C3C]->Pic1
:.the tile (only 1 currently)
:[FFFFFFFFFFFFFFFF]->Pic2
:.X position of tilemap
:0->X
:.X position of curser
:48->J
:.Y position of curser
:32->K
:Repeat getKey(15)
:.get the tilemap's position
:X/8->E
:X^8->F
:For(A,0,12
:A*8-F->C
:For(B,0,8
:Pt-On(C,B*8,{B*89+A+E+L1}*8+Pic2
:End
:End
:Pt-Change(J,K,Pic1
:DispGraphClrDraw
:If getKey(1) and (K<55)
:K+8->K
:End
:.see if at left side of tilemap
:If X=0
:If getKey(2) and (J>0)
:J-8->J
:End
:If getKey(3) and (J=48)
:8->X
:End
:If getKey(3) and (J<48)
:J+8->J
:End
:End
:.see if at right side of tilemap
:If X=704
:If getKey(3) and (J<87)
:J+8->J
:End
:If getKey(2) and (J=48)
:696->X
:End
:If getKey(2) and (J>48)
:J-8->J
:End
:End
:If getKey(2) and (X>0) and (X<704)
:X-8->X
:End
:If getKey(3) and (X<704) and (X>0)
:X+8->X
:End
:If getKey(4) and (K>0)
:K-8->K
:End
:End
screenie:
and that's it. ask with any questions
EDIT: included source/executable
EDIT 2: screenie!