diff --git a/Lib/pickle.py b/Lib/pickle.py
index 96ee5c1..541624a 100644
--- a/Lib/pickle.py
+++ b/Lib/pickle.py
@@ -101,8 +101,8 @@
 EMPTY_TUPLE     = ')'
 SETITEMS        = 'u'
 BINFLOAT        = 'G'
-TRUE            = 'Z'
-FALSE           = 'z'
+TRUE            = 'I01\n'
+FALSE           = 'I00\n'
 
 
 __all__.extend([x for x in dir() if re.match("[A-Z][A-Z0-9_]+$",x)])
@@ -639,20 +639,18 @@
         self.append(None)
     dispatch[NONE] = load_none
 
-    def load_false(self):
-        self.append(False)
-    dispatch[FALSE] = load_false
-
-    def load_true(self):
-        self.append(True)
-    dispatch[TRUE] = load_true
-
     def load_int(self):
         data = self.readline()
-        try:
-            self.append(int(data))
-        except ValueError:
-            self.append(long(data))
+        if data == FALSE[1:]:
+            val = False
+        elif data == TRUE[1:]:
+            val = True
+        else:
+            try:
+                val = int(data)
+            except ValueError:
+                val = long(data)
+        self.append(val)
     dispatch[INT] = load_int
 
     def load_binint(self):
diff --git a/Lib/test/test_bool.py b/Lib/test/test_bool.py
index ee5d5fa..0a60a3b 100644
--- a/Lib/test/test_bool.py
+++ b/Lib/test/test_bool.py
@@ -224,5 +224,11 @@
 veris(cPickle.loads(pickle.dumps(True)), True)
 veris(cPickle.loads(pickle.dumps(False)), False)
 
+# Test for specific backwards-compatible pickle values
+vereq(pickle.dumps(True), "I01\n.")
+vereq(pickle.dumps(False), "I00\n.")
+vereq(cPickle.dumps(True), "I01\n.")
+vereq(cPickle.dumps(False), "I00\n.")
+
 if verbose:
     print "All OK"
