diff --git a/README.md b/README.md
index da75e4d9eb0fedc01ee8ff9ed3892e18cacde3e0..2d4b128fc96310c29cf837b69894b441f481f3cf 100644
--- a/README.md
+++ b/README.md
@@ -7,7 +7,7 @@ Status](http://cpt-obvious.ethercasts.com:8010/buildstatusimage?builder=go-ether
 
 Ethereum Go Client © 2014 Jeffrey Wilcke.
 
-Current state: Proof of Concept 0.6.3.
+Current state: Proof of Concept 0.6.4.
 
 For the development package please see the [eth-go package](https://github.com/ethereum/eth-go).
 
diff --git a/ethereal/assets/qml/wallet.qml b/ethereal/assets/qml/wallet.qml
index 80481f1bc1da48d8ba42c93a91fcfd17bc1b9819..90cc42a1fa45c0f64da4e0db3fb0c647075d8e9a 100644
--- a/ethereal/assets/qml/wallet.qml
+++ b/ethereal/assets/qml/wallet.qml
@@ -157,6 +157,21 @@ ApplicationWindow {
 					})
 				}
 			}
+
+			MenuSeparator {}
+
+			MenuItem {
+				id: miningSpeed
+				text: "Mining: Turbo"
+				onTriggered: {
+					gui.toggleTurboMining()
+					if(text == "Mining: Turbo") {
+						text = "Mining: Normal";
+					} else {
+						text = "Mining: Turbo";
+					}
+				}
+			}
 		}
 
 		Menu {
@@ -218,6 +233,15 @@ ApplicationWindow {
 			}
 		}
 
+		Label {
+			y: 6
+			objectName: "miningLabel"
+			visible: true
+			font.pixelSize: 10
+			anchors.right: lastBlockLabel.left
+			anchors.rightMargin: 5
+		}
+
 		Label {
 			y: 6
 			id: lastBlockLabel
diff --git a/ethereal/gui.go b/ethereal/gui.go
index f450acde677d8b4fedaf5b6ce0e44724afe32c3b..6d16ec484d12f9f86dcd421badf6a3d2a66e0a1e 100644
--- a/ethereal/gui.go
+++ b/ethereal/gui.go
@@ -150,10 +150,14 @@ func (gui *Gui) ToggleMining() {
 	if gui.eth.Mining {
 		utils.StopMining(gui.eth)
 		txt = "Start mining"
+
+		gui.getObjectByName("miningLabel").Set("visible", false)
 	} else {
 		utils.StartMining(gui.eth)
 		gui.miner = utils.GetMiner()
 		txt = "Stop mining"
+
+		gui.getObjectByName("miningLabel").Set("visible", true)
 	}
 
 	gui.win.Root().Set("miningButtonText", txt)
@@ -415,6 +419,7 @@ func (gui *Gui) update() {
 	gui.getObjectByName("syncProgressIndicator").Set("visible", !gui.eth.IsUpToDate())
 
 	lastBlockLabel := gui.getObjectByName("lastBlockLabel")
+	miningLabel := gui.getObjectByName("miningLabel")
 
 	go func() {
 		for {
@@ -476,13 +481,12 @@ func (gui *Gui) update() {
 				}
 			case <-generalUpdateTicker.C:
 				statusText := "#" + gui.eth.BlockChain().CurrentBlock.Number.String()
+				lastBlockLabel.Set("text", statusText)
+
 				if gui.miner != nil {
 					pow := gui.miner.GetPow()
-					if pow.GetHashrate() != 0 {
-						statusText = "Mining @ " + strconv.FormatInt(pow.GetHashrate(), 10) + "Khash - " + statusText
-					}
+					miningLabel.Set("text", "Mining @ "+strconv.FormatInt(pow.GetHashrate(), 10)+"Khash")
 				}
-				lastBlockLabel.Set("text", statusText)
 			}
 		}
 	}()
@@ -548,6 +552,10 @@ func (gui *Gui) GetCustomIdentifier() string {
 	return gui.clientIdentity.GetCustomIdentifier()
 }
 
+func (gui *Gui) ToggleTurboMining() {
+	gui.miner.ToggleTurbo()
+}
+
 // functions that allow Gui to implement interface ethlog.LogSystem
 func (gui *Gui) SetLogLevel(level ethlog.LogLevel) {
 	gui.logLevel = level
diff --git a/ethereal/main.go b/ethereal/main.go
index 4101efbcad4e3b2ac188226b112ecc38bf21225e..4cb8630e80da1e941e3dc35e8163dc1beccab79a 100644
--- a/ethereal/main.go
+++ b/ethereal/main.go
@@ -12,7 +12,7 @@ import (
 
 const (
 	ClientIdentifier = "Ethereal"
-	Version          = "0.6.3"
+	Version          = "0.6.4"
 )
 
 var ethereum *eth.Ethereum
diff --git a/ethereum/main.go b/ethereum/main.go
index a8e60dec7201610bb9d0af98210ac293e039fdaf..b7c8ea1e77fd36cddbfed9ffb42dd84706ba2eef 100644
--- a/ethereum/main.go
+++ b/ethereum/main.go
@@ -13,7 +13,7 @@ import (
 
 const (
 	ClientIdentifier = "Ethereum(G)"
-	Version          = "0.6.3"
+	Version          = "0.6.4"
 )
 
 var logger = ethlog.NewLogger("CLI")