ShiftIn/Out - SPI transfer with 89c4051

I am trying to read some data from a 89c4051 clocked at 12MHz. The program was written in BASCOM and the shiftout routine is known:

(Int = P1.5)
(2 – LSB shifted out first when clock goes low)

Transfer_data:
Int = 0
Delay
Int = 1
Shiftout P1.7 , P1.6 , Inf , 2
Shiftout P1.7 , P1.6 , Cur , 2
Shiftout P1.7 , P1.6 , Pea , 2
Shiftout P1.7 , P1.6 , For , 2
Shiftout P1.7 , P1.6 , Ref , 2
Shiftout P1.7 , P1.6 , Tem , 2
Return

The 89c4051 was originaly designed to send only data so there is noway of accepting anything. I have wired an Uno as an SPI slave

P1.7 -> 11 (MOSI - dataPin)
P1.6 -> 13 (CLK - clockPin)
P1.5 -> 10 (SS - ssPin)

but I was not able to receive correctly any valid data using a very similar arduino routine.

while (!digitalRead(ssPin)) {}
Inf = shiftIn(dataPin, clockPin, LSBFIRST);
Cur = shiftIn(dataPin, clockPin, LSBFIRST);
Pea = shiftIn(dataPin, clockPin, LSBFIRST);
For = shiftIn(dataPin, clockPin, LSBFIRST);
Ref = shiftIn(dataPin, clockPin, LSBFIRST);
Tem = shiftIn(dataPin, clockPin, LSBFIRST);

From everything I have read so far, I suspect Arduino's shiftIn is probably too slow but I am not sure. Is it possible to decode it correctly using SPI?

I have wired an Uno as an SPI slave

P1.7 -> 11 (MOSI - dataPin)
P1.6 -> 13 (CLK - clockPin)
P1.5 -> 10 (SS - ssPin)

Then you need to bring data in on MISO, pin 12.

See Nick Gammon's SPI write up

SPI as slave is ~ 1/4 of the way down the page.

Can it be done without this? It is next to impossible to change the original hardware design and program.

SPI will send out on MOSI and read in on MISO. Can't change the internals of the chip.
Maybe lift the MOSI pin and wire MISO to its pad on the board.

Then I guess hardware SPI is completly uselsess in this case. Would it be possible to use software SPI routines without using MISO at all? The BASCOM routine of the 89c4051 uses the shiftout to send six consecutive bytes.