In mpsse.c, lines 274-275:
/* Clock, data out, chip select pins are outputs; all others are inputs. */
mpsse->tris = DEFAULT_TRIS;
in mpsse.h, line 114:
'#define DEFAULT_TRIS (SK | DO | CS | GPIO0 | GPIO1 | GPIO2 | GPIO3) /* SK/DO/CS and GPIOs are outputs, DI is an input */
Pins that should be set as inputs are set as outputs.
Quick fix:
#define DEFAULT_TRIS (SK | DO | CS) /* SK/DO/CS are outputs, others are inputs */