Sounds like the periodic update of altitude is correct. Here's the latest from a 744 pilot (hope he doesn't mind me quoting him)...
"In VNAV I selected 1013 on the altimeter to tie up with standard then lowered the QNH to make the altimeter under read, by about 100ft, the aircraft slowly climbed back up to the bug. I put the aircraft in ALT HOLD and wound off some more QHN with the same result. As it was climbing up to reach the magenta bug I selected VS 0 and the aircraft leveled below the bug, once it was level changing QNH had no affect the aircraft remained level. I didnt try FLCH for question 2 as it was already hunting for the bug in alt hold, FLCH would have just done exactly the same and regained the selected altitude."
Thanks for all the comments.
Cheers.
NSEU