Based on some discussion on the Arduino forum, some discussion in Freenode/#fmcg, and some Googling, I think I might have a solution to reading this keyboard.
Digital pins 0 through 7 on the Arduino are all on one "port," something that can be quickly read, and operated on.
The "Data Av." pin is apparently Data Available, so it should be something I can interrupt on. So, ignoring POR, and ignoring the PS/2 stuff, here's what I'm thinking this will look like:
Main:
Interrupt on Data Av.
Read PORTD
Call decode routine, passing value of PORTD
Decode routine:
If top bit = 1, then set make/break accordingly
Look up bottom 7 bits in 5251 to AT lookup table (I'll use AT scancodes instead of PS/2, even though it's on a PS/2 port. AT scancodes match up more closely to the XT layout.)
Create scancode from make/break and the looked up scancode
Call PS/2 send routine, passing formed scancode