Sorry for the late reply.
I'm pretty sure I have the checksum algorithm somewhere... I will take a look in my notes and report my findings.
EDIT: This is all I can find. Just so we're clear, that seed calculation and checksum calculation are universal for DPPt, HGSS, and BW / B2W2. The usage will be slightly different for the Gen V games, because the blocks are structured differently.
I'm sure Codr gave me more specific instructions on how to fix Pokémon Black & White save files, as the structures are (obviously) different from previous games, but I guess I didn't keep that conversation logged. >_> You can contact him with more specific questions.