The problem is a common bug in the OS 3.5/3.9 drivers that stops them from working in OS 3.1.4. In particular, the drivers return an incorrect result code from their initialization function, and the 3.9 printer.device never cared about whether initialization succeeded or not. This has been fixed in 3.1.4, with the side effect of OS 3.9 drivers no longer working. Note, however, that all models supported in 3.9 are also supported by native 3.1.4 drivers, so no harm done.