Dudas compilador XC8

Hola, estoy aprendiendo a programar en C con el compilador XC8 de Microchip ya que programo desde Mac. Tengo dudas en cuanto a la sintaxis ya que según que tutorial o ejemplo sigo… declaran/definen unos comandos u otros y eso me marea mucho.

Uso: MPLAB IDE X, COMPILADOR XC8, LENGUAGE C.

DUDAS:

#include <delays.h> // No lo he usado pero algunos lo ponen.

#include <pic16f84a.h> // Yo uso este Pic.

#include <stdio.h> // El MPLAB IDE X lo crea automáticamente

#include <stdlib.h> // El MPLAB IDE X lo crea automáticamente

#include <xc.h> // Librerías del compilador XC8 creo.

#include <pic.h> // No lo he usado pero algunos lo ponen.

Me podéis explicar la necesidad de poner estos includes?? Según donde miro lo ponen o no (Siempre hablando del XC8). Hay algún orden a tener en cuenta?

__CONFIG (FOSC_XT & WDTE_OFF & CP_OFF & PWRTE_OFF);

o

#pragma config FOSC=XT, WDTE=ON, PWRTE=OFF, CP=OFF

Lo mismo… según que programas/tutoriales usan __CONFIG o #pragma, en que casos o con que criterio se usa uno u otro y con __CONFIG cual es la sintaxis correcta de los Bits de configuración? Para el 16F84A según el datasheet sólo hay estos 4 bits, así que entiendo que no hay nada más que configurar ahí, cierto? Importa el orden de configuración de los Bits? el MPLAB me indica error en la sintaxis usando __CONFIG.

while (1)

el “1” que significa? Loop infinito? y cuando ponen “TRUE”?. He de decir que aún no me he leído el comando while aunque se de que va.

_delay_ms

Porque el editor del MPLAB me lo subraya en rojo??? aún asi compila bien y se programa el chip, funcionando OK (encender y apagar un led).

return;

Hay que ponerlo? según donde miro no lo ponen.

Finalmente me gustaría que me dijérais que compiladores son mejor en su versión Free; los de Microchip o los de Hi-Tech?

Os adjunto una captura de mi primer programa en base al cual tengo las dudas (encender y apagar un led), el programa funciona OK en el pic. Os agradecería enormemente que comentárais el programa: que me falta… que me sobra… que es recomendable… cuestiones a tener en cuenta… Si hay formas más correctas… si hablo con propiedad en los comentarios… etc.