why 8 lines of shiftout and tons of hardware while you can use a single line of I2CWRITE with a MAX6955 OR a single HSEROUT/SEROUT with built an external 7-segment display driver with a PIC?