diff --git a/res/drawable-hdpi/all_apps_button_pow2.png b/res/drawable-hdpi/all_apps_button_pow2.png
deleted file mode 100644
index ab93e94..0000000
--- a/res/drawable-hdpi/all_apps_button_pow2.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/home_button.png b/res/drawable-hdpi/home_button.png
index 3124a7f..40fbbfd 100644
--- a/res/drawable-hdpi/home_button.png
+++ b/res/drawable-hdpi/home_button.png
Binary files differ
diff --git a/res/raw/rollo.c b/res/raw/rollo.c
index eb019ee..01781e2 100644
--- a/res/raw/rollo.c
+++ b/res/raw/rollo.c
@@ -275,6 +275,23 @@
     }
 }
 
+void
+draw_home_button()
+{
+    color(1.0f, 1.0f, 1.0f, 1.0f);
+    bindTexture(NAMED_PFTexLinear, 0, params->homeButtonId);
+
+    float scale = 2.0f / SCREEN_WIDTH_PX;
+
+    float x = 0.0f;
+
+    float y = -(SCREEN_HEIGHT_PX / (float)SCREEN_WIDTH_PX);
+    y += g_Zoom * (scale * params->homeButtonTextureHeight / 2);
+
+    float z = 0.0f;
+    drawSprite(x, y, z, params->homeButtonTextureWidth, params->homeButtonTextureHeight);
+}
+
 int
 main(int launchID)
 {
@@ -312,7 +329,7 @@
     } else if (g_Zoom < 0.85f) {
         pfClearColor(0.0f, 0.0f, 0.0f, g_Zoom);
     } else {
-        pfClearColor(0.0f, 0.0f, 0.0f, 0.85f);
+        pfClearColor(0.0f, 0.0f, 0.0f, g_Zoom);
     }
 
     // icons & labels
@@ -362,7 +379,9 @@
     }
     */
 
-    // Draw the scroll handle ========================================
+    // Draw the home button ========================================
+    draw_home_button();
+
     /*
     bindTexture(NAMED_PFOrtho, 0, loadI32(ALLOC_PARAMS, PARAM_SCROLL_HANDLE_ID));
     float handleLeft = 40 + (320 * (scrollXPx/(float)(maxScrollXPx)));
