¿ Y por qué un PIC12, por qué esas ganas de sufrir teniendo que programar en ensamblador y sin apenas recursos ?, no hay motivos, ni técnicos, ni económicos para usar esas reliquias. Si optas por un PIC, mínimo un PIC18, y con suficiente flash para trabajar en C.
Programador, 4 pines, eso debe de ser ICSP. Si lo quieres programar sobre el circuito y no tener que estar quita y pon sobre un zócalo, es lo correcto. Yo hace tiempo que no uso pines en el PCB, uso un conector TC2050 que no necesita conector en la placa, le pones la huella para que el conector TC2050 toque unos pequeños pads redondos en el PCB, el conector se engancha a la placa con 4 pestañas a cuatro agujeros.
Todos los microcontroladores, una vez los programas, mantienen el código objeto hasta que los vuelves a programar o los borras.