work in memory port handlers (unfinished)