diff --git a/changelog.txt b/changelog.txt
index a6f5019a6..1109e46bb 100644
--- a/changelog.txt
+++ b/changelog.txt
@@ -1,4 +1,4 @@
-0036-Beta ReplicatorG
+0036 ReplicatorG
 * Updated for acceleration behavior
 * Updated to have temperature as part of PrintOMatic settings
 * Updated for smarter acceleration related configuration
@@ -9,6 +9,16 @@
 0034-Beta ReplicatorG
 * Updated t0 to t1 tolerance code 
 
+0034 ReplicatorG
+ * Updated toolhead offset t0 to t1 code to store offset of out of tolerance 
+ * Tools directory location sourcing updated to fix avr-dude on mac problems. 
+ * Toolhead start heating gcode updates for faster heating-up on slow HBP's
+ * Fixes and updates to alternative preferences system.
+ * Ant run command line commands support
+ * Expected Toolhead offset stored as part of machine settings
+ * Spelling mistake fixes
+ * Updated print anchor code 
+ 
 0033 ReplicatorG
 * Updated version number to avoid confusion
 * Minor UI changes
diff --git a/scripts/s3g-decompiler.py b/scripts/s3g-decompiler.py
index 062695532..c75abc836 100755
--- a/scripts/s3g-decompiler.py
+++ b/scripts/s3g-decompiler.py
@@ -1,6 +1,8 @@
 #!/usr/bin/python
 import struct
 import sys
+import pprint
+pp = pprint.PrettyPrinter(indent=4)
 
 toolCommandTable = {
     3: ("<H", "Set target temperature to %i"),
@@ -38,6 +40,42 @@ def printToolAction(tuple):
     if type(disp) == type(""):
         print disp % parsed
 
+def parseBuildStart():
+    global s3gFile
+    packetStr = s3gFile.read(4)
+    if len(packetStr) != 4:
+      raise "Incomplete s3g file during tool parse build start"
+    (stepCount,) = struct.unpack("<I",packetStr)
+    buildName = ""
+    while (1):
+      nextChar = s3gFile.read(1)
+      if nextChar == "\0":
+        break
+      buildName += nextChar
+    return (stepCount, buildName)
+
+def printBuildStart(tuple):
+  # pp.pprint(tuple)
+  print "Build start (%i): %s" % (0, tuple[1])
+
+def parseMessage():
+    global s3gFile
+    packetStr = s3gFile.read(4)
+    if len(packetStr) != 4:
+      raise "Incomplete s3g file during tool parse build start"
+    (options,x,y,seconds) = struct.unpack("<bbbb",packetStr)
+    message = ""
+    while (1):
+      nextChar = s3gFile.read(1)
+      if nextChar == "\0":
+        break
+      message += nextChar
+    return (options,x,y,seconds, message)
+
+def printMessage(tuple):
+  # pp.pprint(tuple)
+  print "Display message (options %d, x: %d y: %d for %d seconds):\n  %s" % (tuple[0], tuple[1], tuple[2], tuple[3], tuple[4])
+
 # Command table entries consist of:
 # * The key: the integer command code
 # * A tuple:
@@ -68,6 +106,15 @@ def printToolAction(tuple):
     142: ("<iiiiiIB","Move to (%i,%i,%i,%i,%i) in %i us (relative: %X)"),
     143: ("<b","Store home position for axes %d"),
     144: ("<b","Recall home position for axes %d"),
+    145: ("<bb","Set stepper #%ddigital pot value to %d"),
+    146: ("<bbbb","Set LED strip color to R:%d G:%d B:%d Blink rate:%d Reserved:%d"),
+    147: ("<HHb","Beep at %iHz for %i ms with Effect ID:%d"),
+    148: ("<bHb","Pause for button with mask %X, timout in %i seconds, with options %d"),
+    149: (parseMessage,printMessage),
+    150: ("<bb","Set build to %d%% (%d)"),
+    151: ("<b","Queue song id %d"),
+    153: (parseBuildStart,printBuildStart),
+    154: ("<b","End build (%d)"),
 }
 
 def parseNextCommand():
@@ -80,6 +127,7 @@ def parseNextCommand():
         print "EOF"
         return False
     (command) = struct.unpack("B",commandStr)
+    # print command[0]
     (parse, disp) = commandTable[command[0]]
     if type(parse) == type(""):
         packetLen = struct.calcsize(parse)
diff --git a/src/replicatorg/app/Base.java b/src/replicatorg/app/Base.java
index 25c025c8b..a5af01f9f 100644
--- a/src/replicatorg/app/Base.java
+++ b/src/replicatorg/app/Base.java
@@ -107,7 +107,7 @@ public enum InitialOpenBehavior {
 	/**
 	 * The textual representation of this version (4 digits, zero padded).
 	 */
-	public static final String VERSION_NAME = String.format("%04d-Beta",VERSION);
+	public static final String VERSION_NAME = String.format("%04d",VERSION);
 
 	/**
 	 * The machine controller in use.
diff --git a/src/replicatorg/drivers/gen3/MightyBoard.java b/src/replicatorg/drivers/gen3/MightyBoard.java
index 59f71e438..929823eee 100644
--- a/src/replicatorg/drivers/gen3/MightyBoard.java
+++ b/src/replicatorg/drivers/gen3/MightyBoard.java
@@ -277,7 +277,7 @@ public MightyBoard() {
 		// Make sure this accurately reflects the minimum preferred
 		// firmware version we want this driver to support.
 		minimumVersion = new Version(5,2);
-		preferredVersion = new Version(5,2);
+		preferredVersion = new Version(5,4);
 		minimumAccelerationVersion = new Version(5,3);
 
 	}