Ok; I don't have a 299 handy so I can't test this, but it looks to me like:
OE1/ and OE2/ get tied to +5V; this causes the parallel data pins to NOT be outputs.
MR/ gets connected to +5V (master reset; active low.)
IO0 through IO7 get connected to whatever you're reading.
Q0 gets connected to an Arduino input. This is the "Serial out" of the shift register. (shifting RIGHT: IO0, IO1, ... IO7)
CP gets connected to an Arduino output. This is "Clock" for the SR.
Connect S0 to +5V, and S1 to and Arduino output. These are "mode", which is somewhat different than "load" for most parallel-in SRs.
DSR and/or DSL can be used for cascading.
So on most SRs, you'd load the SR by toggling the "Load" signal (from high to low and back, or vis-versa depending on the exact chip), and this would load the data into the SR, so that you could clock it out one bit at a time.
On the 299, you have to set the "mode" signal HIGH, and toggle the "clock" signal (low to high and back), then set the mode to LOW again to start using "clock" to perform shifts. The clock signal has two separate functions depending on the S0/S1 bit settings (actually three, since you can get it to shift left instead of right.)