py: Make native emitter handle multi-compare and not/is not/not in ops.
diff --git a/py/objbool.c b/py/objbool.c
index e6b5230..47c9135 100644
--- a/py/objbool.c
+++ b/py/objbool.c
@@ -74,9 +74,16 @@
         case MP_UNARY_OP_BOOL: return o_in;
         case MP_UNARY_OP_POSITIVE: return MP_OBJ_NEW_SMALL_INT(value);
         case MP_UNARY_OP_NEGATIVE: return MP_OBJ_NEW_SMALL_INT(-value);
-        case MP_UNARY_OP_INVERT:
+        case MP_UNARY_OP_INVERT: return MP_OBJ_NEW_SMALL_INT(~value);
+
+        // only bool needs to implement MP_UNARY_OP_NOT
+        case MP_UNARY_OP_NOT:
         default: // no other cases
-            return MP_OBJ_NEW_SMALL_INT(~value);
+            if (value) {
+                return mp_const_false;
+            } else {
+                return mp_const_true;
+            }
     }
 }