This is your lucky day. I just took a wild guess at it, and it works, and it shows why your code already worked for Streblo.
Your view dimensions are multiples of 16. The scrolling code (which is very innovative btw, I can't quite figure it out) uses some kind of 20ths. I'm thinking that it somehow made the view scroll too far, and then because it scrolls based on Link's x and the current view_xview, it starts to scroll back and forth because it thinks it should. I don't know, I can't explain what's happening.
view_xview[0] -= sign(view_xview[0]-Wx)*view_wview[0]/20
view_yview[0] -= sign(view_yview[0]-Wy)*view_hview[0]/20
But if you change the
20 to
16 on both lines, it seems to work fine.
BTW, the collision with the rocks is a little off, because you went with your own sprites with a different origin than the ones supplied in my movement engine, but the object mask (sprLinkShadow) still uses my origin, and it's too high on your sprites. Try changing its y origin to -14.