readMHX() now takes filename instead of fp