Code falls back to old implementation for nx1 != 9,12.

Still a bit messy, but getting better.