diff --git a/res/raw/rollo3.c b/res/raw/rollo3.c
index 253709a..77db74a 100644
--- a/res/raw/rollo3.c
+++ b/res/raw/rollo3.c
@@ -247,9 +247,9 @@
     } else {
         matrixLoadTranslate(mat1, x, -0.9f, 0.f);
         matrixScale(mat1, scale, -scale, 1.f);
-        matrixTranslate(mat1, 0, p * 2, 0.f);
-        matrixRotate(mat1, -p * 50, 1, 0, 0);
     }
+    matrixTranslate(mat1, 0, p * 2, 0.f);
+    matrixRotate(mat1, -p * 50, 1, 0, 0);
     vpLoadModelMatrix(mat1);
 
     float soff = -(row * 1.4);
@@ -365,7 +365,7 @@
     drawSimpleMeshRange(NAMED_SMMesh, offset * 6, 20 * 6);
 }
 
-void drawTop(float rowOffset)
+void drawTop(float rowOffset, float p)
 {
     int row, col;
     int iconNum = 0;
@@ -374,7 +374,7 @@
             if (iconNum >= state->iconCount) {
                 return;
             }
-            drawStrip(rowOffset - row, col, 1, iconNum, 0);
+            drawStrip(rowOffset - row, col, 1, iconNum, p);
             iconNum++;
         }
     }
@@ -471,7 +471,7 @@
     bindProgramFragment(NAMED_PFTexLinear);
 
 
-    drawTop(g_PosPage);
+    drawTop(g_PosPage, 1-g_Zoom);
     drawBottom(g_PosPage, 1-g_Zoom);
 
     {
