Entonces, si te he entendido bien, lo que has hecho es grabar los dos programas en el chip, en regiones de memoria diferentes, y mediante el interruptor (entrada 15) selecciona una u otra?

Pero para eso habrás tenido que añadir algo al codigo del programa para que esté escaneando la entrada continuamente y salte de una direccion a otra, o solo comprueba al arrancar?

De todas formas eres un hacha porque habrás tenido que meterle mano con mucho cuidado a todo el segundo programa para modificarlo y que funcione como si estuviera el solo.

Un saludo.