make oneshot port mapping simpler
add pause and reset controls