I think that's right. The basic idea is that the instructions are issued out-of-order, so it does the delay slot first, and then the branch.
There are two register mappings, first the registers that are used by the delay slot instruction, which go into regs[i].regmap, then (under "branch...