I have made some progress on this tonight, and while I would still love to use the asynchronous mode purely for the satisfaction of knowing how, I've got the damn thing to behave itself and display some characters.
Tackling the problem again with a fresh head, and a can of calm-down juice, I re-read the shiftOut tutorials and figured out what I've been doing wrong. So, using the board like a giant shift register, I made it do this:http://www.youtube.com/watch?v=RqTqKlXYwZ8&feature=youtu.be
Which is a huge step forward from what it was doing before (either nothing, or garbage
I'll try my best not to beg to be spoon-fed without fiddling around on my own for a bit first, but I'll probably run into more problems before too long!