Hi John, May I suggest an idea, separate in two parts, peripherals and heart: - lines interfaces (internal or external, it's near the same). - control with 2 pics using a one multiport memory like PLX. When a ring or hang-up occurs, line interface send wait message for external call or a waiting for dial ring for internal. The two Pics try each line : one stop when it get an interruption and the connecting work. With dual port ram, one Pic can lock line and the other Pic see when it is busy. You can handle 4x8 lines without problems. Hope it help. SP