diff --git a/src/level/TMXLayer.js b/src/level/TMXLayer.js
index <HASH>..<HASH> 100644
--- a/src/level/TMXLayer.js
+++ b/src/level/TMXLayer.js
@@ -246,8 +246,8 @@
 				// parallax / scrolling image
 				if (!this.lastpos.equals(vpos)) {
 					// viewport changed
-					this.pos.x = (this.imagewidth + this.pos.x + ((vpos.x - this.lastpos.x) * this.ratio)) % this.imagewidth;
-					this.pos.y = (this.imageheight + this.pos.y + ((vpos.y - this.lastpos.y) * this.ratio)) % this.imageheight;
+					this.pos.x += ((vpos.x - this.lastpos.x) * this.ratio) % this.imagewidth;
+					this.pos.y += ((vpos.y - this.lastpos.y) * this.ratio) % this.imageheight;
 					this.lastpos.setV(vpos);
 					return true;
 				}
Fix me.ImageLayer.ratio on Firefox & Opera

- When me.ImageLayer is smaller than viewport, and ratio < 1, moving the viewport left will cause the viewport position to be a negative number.
- Negative image sources work fine in Webkit, but fail in Mozilla and Opera.