fix mp structures to be 64bit safe

The embedded pointer types caused them to grow in the 64bit build.
Switch them over to 32bit integers so the structures remain correct.