diff --git a/pyparallel/parallel/parallelppdev.py b/pyparallel/parallel/parallelppdev.py
index 64c89f4..347a851 100644
--- a/pyparallel/parallel/parallelppdev.py
+++ b/pyparallel/parallel/parallelppdev.py
@@ -1,6 +1,7 @@
 #!/usr/bin/env python
 # parallel port access using the ppdev driver
 
+import sys
 import struct
 import fcntl
 import os
@@ -8,6 +9,8 @@
 #----
 # Generated by h2py 0.1.1 from <linux/ppdev.h>,
 # then cleaned up a bit by Michael P. Ashton and then a gain by chris ;-)
+# Changes for Python2.2 support (c) September 2004 Alex.Perry@qm.com
+
 
 def sizeof(type): return struct.calcsize(type)
 def _IOC(dir, type, nr, size):  return (dir << _IOC_DIRSHIFT ) | (type << _IOC_TYPESHIFT ) |\
@@ -25,11 +28,20 @@
 _IOC_SIZESHIFT  = _IOC_TYPESHIFT + _IOC_TYPEBITS
 IOCSIZE_MASK    = _IOC_SIZEMASK << _IOC_SIZESHIFT
 IOCSIZE_SHIFT   = _IOC_SIZESHIFT
-_IOC_WRITE      = 1L
+
+# Python 2.2 uses a signed int for the ioctl() call, so ...
+if ( sys.version_info[0] < 3 ) or ( sys.version_info[1] < 3 ):
+ _IOC_WRITE      =  1L
+ _IOC_READ       = -2L
+ _IOC_INOUT      = -1L
+else:
+ _IOC_WRITE      =  1L
+ _IOC_READ       =  2L
+ _IOC_INOUT      =  3L
+
 _IOC_DIRSHIFT   = _IOC_SIZESHIFT + _IOC_SIZEBITS
+IOC_INOUT       = _IOC_INOUT << _IOC_DIRSHIFT
 IOC_IN          = _IOC_WRITE << _IOC_DIRSHIFT
-_IOC_READ       = 2L
-IOC_INOUT       = (_IOC_WRITE | _IOC_READ) << _IOC_DIRSHIFT
 IOC_OUT         = _IOC_READ << _IOC_DIRSHIFT
 
 _IOC_NONE       = 0
