Hi,

I'm using the 16F676 - this is the code that I have (I think its the same as per the 1st post in this thread)

Code:
@ __CONFIG  _HS_OSC & _WDT_ON & _PWRTE_ON & _MCLRE_OFF 

DEFINE OSC 20

ANSEL = %00010111    			        ' Set which ports are digital and which are analogue
CMCON=7                                 ' Turm Comparitors off
TRISA=%11111111        			        ' set PORTA as all input 
TRISC=%00000001        			        ' set PORTC as all output apart from RC0

DEFINE ADC_BITS  8     			        ' ADCIN resolution  (Bits)
DEFINE ADC_CLOCK 2     			        ' ADC clock source  (Fosc/32)
DEFINE ADC_SAMPLEUS 11 			        ' ADC sampling time (uSec)

INCLUDE "DT_INTS-14.bas"            	' Base Interrupt System
INCLUDE "SPWM_INT.bas"              	' Software PWM module

DEFINE SPWM_FREQ  150                	' SPWM Frequency (Hz)
DEFINE SPWM_RES   254               	' SPWM Resolution (0 - 255)

DutyVar VAR byte[4]                     ' Array used to store ADC [channels]

ASM
SPWM_LIST  macro                    	; Define Pin's to use for SPWM
    SPWM_PIN  PORTC, 2, _DutyVar        ; and the associated DutyCycle variables
    SPWM_PIN  PORTC, 3, _DutyVar+1      ; (Additional channels DutyVar+2, +3 etc)
  endm
  SPWM_INIT  SPWM_LIST              	; Initialize the Pins
ENDASM

ASM
INT_LIST  macro                         ; IntSource,        Label,  Type, ResetFlag?
        INT_Handler   TMR1_INT,  SPWMhandler,  ASM,  yes
    endm
    INT_CREATE                      	; Creates the interrupt processor
ENDASM

@ INT_ENABLE  TMR1_INT              	; enable Timer 1 interrupts

Main:                               
 ADCIN 0, DUTYVAR[0]                    ; if having more channels add ADCIN 2, DUTYVAR[2] etc
 ADCIN 1, DUTYVAR[1]
GOTO Main                               ; program simply loops round reading ADC and sending corresponding PWM out
Compiles fine here