Thanks Robin, that helped. In the light of this, here are some suggested changes for the PS2000con.c example file shipped with the library.
Line 111, change to
#define BUFFER_SIZE 16384
Around line 400 we want
oversample = 1;
no_of_samples = 1;
Then before the call to ps2000_run_block a few lines further down, put
no_of_samples = max_samples;
And it will aquire a suitable number of samples regardless of the user changing the oversample value. The other collect_block functions will need this change too.