;---------------------------------------------------------- ; Code Produced by the Proton+ 3.3.4.8 ; Copyright Rosetta Technologies/Crownhill Associates Ltd ; Written by Les Johnson. July 2008 ;---------------------------------------------------------- ; LIST P = 16F877, F = INHX8M, W = 2, X = ON, R = DEC, MM = ON, N = 0, C = 255 INDF EQU 0X0000 TMR0 EQU 0X0001 PCL EQU 0X0002 STATUS EQU 0X0003 FSR EQU 0X0004 PORTA EQU 0X0005 PORTB EQU 0X0006 PORTC EQU 0X0007 PORTD EQU 0X0008 PORTE EQU 0X0009 PCLATH EQU 0X000A INTCON EQU 0X000B PIR1 EQU 0X000C PIR2 EQU 0X000D TMR1L EQU 0X000E TMR1LH EQU 0X000F TMR1H EQU 0X000F T1CON EQU 0X0010 TMR2 EQU 0X0011 T2CON EQU 0X0012 SSPBUF EQU 0X0013 SSPCON EQU 0X0014 CCPR1L EQU 0X0015 CCPR1LH EQU 0X0016 CCPR1H EQU 0X0016 CCP1CON EQU 0X0017 RCSTA EQU 0X0018 TXREG EQU 0X0019 RCREG EQU 0X001A CCPR2L EQU 0X001B CCPR2LH EQU 0X001C CCPR2H EQU 0X001C CCP2CON EQU 0X001D ADRESLH EQU 0X001E ADRESH EQU 0X001E ADCON0 EQU 0X001F OPTION_REG EQU 0X0081 TRISA EQU 0X0085 TRISB EQU 0X0086 TRISC EQU 0X0087 TRISD EQU 0X0088 TRISE EQU 0X0089 PIE1 EQU 0X008C PIE2 EQU 0X008D PCON EQU 0X008E SSPCON2 EQU 0X0091 PR2 EQU 0X0092 SSPADD EQU 0X0093 SSPSTAT EQU 0X0094 TXSTA EQU 0X0098 SPBRG EQU 0X0099 ADRESL EQU 0X009E ADCON1 EQU 0X009F EEDATL EQU 0X010C EEDATA EQU 0X010C EEDAT EQU 0X010C EEADR EQU 0X010D EEDATLH EQU 0X010E EEDATH EQU 0X010E EEADRH EQU 0X010F EECON1 EQU 0X018C EECON2 EQU 0X018D _I2C_SCL_PORT = TRISC _I2C_SCL_PIN = 3 _I2C_SDA_PORT = TRISC _I2C_SDA_PIN = 4 IRP=7 RP1=6 RP0=5 NOT_TO=4 NOT_PD=3 Z=2 DC=1 C=0 GIE=7 PEIE=6 T0IE=5 INTE=4 RBIE=3 T0IF=2 INTF=1 RBIF=0 PSPIF=7 ADIF=6 RCIF=5 PP_RCIF=5 TXIF=4 PP_TXIF=4 SSPIF=3 CCP1IF=2 TMR2IF=1 TMR1IF=0 EEIF=4 BCLIF=3 CCP2IF=0 T1CKPS1=5 T1CKPS0=4 T1OSCEN=3 NOT_T1SYNC=2 T1INSYNC=2 T1SYNC=2 TMR1CS=1 TMR1ON=0 TOUTPS3=6 TOUTPS2=5 TOUTPS1=4 TOUTPS0=3 TMR2ON=2 PP_TMR2ON=2 T2CKPS1=1 PP_T2CKPS1=1 T2CKPS0=0 PP_T2CKPS0=0 WCOL=7 SSPOV=6 SSPEN=5 CKP=4 SSPM3=3 SSPM2=2 SSPM1=1 SSPM0=0 CCP1X=5 CCP1Y=4 CCP1M3=3 CCP1M2=2 CCP1M1=1 CCP1M0=0 SPEN=7 RX9=6 RC9=6 NOT_RC8=6 RC8_9=6 SREN=5 CREN=4 PP_CREN=4 ADDEN=3 FERR=2 OERR=1 PP_OERR=1 RX9D=0 RCD8=0 CCP2X=5 CCP2Y=4 CCP2M3=3 CCP2M2=2 CCP2M1=1 CCP2M0=0 ADCS1=7 ADCS0=6 CHS2=5 CHS1=4 CHS0=3 GO=2 NOT_DONE=2 GO_DONE=2 PP_GO_DONE=2 ADON=0 NOT_RBPU=7 INTEDG=6 T0CS=5 T0SE=4 PSA=3 PS2=2 PS1=1 PS0=0 IBF=7 OBF=6 IBOV=5 PSPMODE=4 TRISE2=2 TRISE1=1 TRISE0=0 PSPIE=7 ADIE=6 RCIE=5 TXIE=4 SSPIE=3 CCP1IE=2 TMR2IE=1 TMR1IE=0 EEIE=4 BCLIE=3 CCP2IE=0 NOT_POR=1 NOT_BO=0 NOT_BOR=0 GCEN=7 ACKSTAT=6 PP_ACKSTAT=6 ACKDT=5 ACKEN=4 PP_ACKEN=4 RCEN=3 PP_RCEN=3 PEN=2 PP_PEN=2 RSEN=1 PP_RSEN=1 SEN=0 PP_SEN=0 SMP=7 CKE=6 D=5 I2C_DATA=5 NOT_A=5 NOT_ADDRESS=5 D_A=5 DATA_ADDRESS=5 P=4 I2C_STOP=4 S=3 I2C_START=3 R=2 I2C_READ=2 NOT_W=2 NOT_WRITE=2 R_W=2 PP_R_W=2 READ_WRITE=2 UA=1 BF=0 PP_BF=0 CSRC=7 TX9=6 NOT_TX8=6 TX8_9=6 TXEN=5 SYNC=4 BRGH=2 TRMT=1 TX9D=0 TXD8=0 ADFM=7 PCFG3=3 PCFG2=2 PCFG1=1 PCFG0=0 EEPGD=7 PP_EEPGD=7 WRERR=3 WREN=2 PP_WREN=2 WR=1 PP_WR=1 RD=0 PP_RD=0 __MAXRAM 0X1FF __BADRAM 0X8F-0X90, 0X95-0X97, 0X9A-0X9D __BADRAM 0X105, 0X107-0X109 __BADRAM 0X185, 0X187-0X189, 0X18E-0X18F CP_ALL EQU 0X0FCF CP_HALF EQU 0X1FDF CP_UPPER_256 EQU 0X2FEF CP_OFF EQU 0X3FFF DEBUG_ON EQU 0X37FF DEBUG_OFF EQU 0X3FFF WRTE_ON EQU 0X3FFF WRT_ENABLE_ON EQU 0X3FFF WRTE_OFF EQU 0X3DFF WRT_ENABLE_OFF EQU 0X3DFF CPD_ON EQU 0X3EFF CPD_OFF EQU 0X3FFF LVP_ON EQU 0X3FFF LVP_OFF EQU 0X3F7F BODEN_ON EQU 0X3FFF BODEN_OFF EQU 0X3FBF PWRTE_OFF EQU 0X3FFF PWRTE_ON EQU 0X3FF7 WDT_ON EQU 0X3FFF WDT_OFF EQU 0X3FFB LP_OSC EQU 0X3FFC XT_OSC EQU 0X3FFD HS_OSC EQU 0X3FFE RC_OSC EQU 0X3FFF __CONFIG HS_OSC & WDT_OFF & PWRTE_ON & BODEN_OFF & LVP_OFF & WRTE_ON & CP_OFF & DEBUG_OFF #DEFINE __16F877 1 #DEFINE XTAL 4 #DEFINE _CORE 14 #DEFINE _MAXRAM 368 #DEFINE _RAM_END 368 #DEFINE _MAXMEM 8192 #DEFINE _ADC 8 #DEFINE _ADC_RES 10 #DEFINE _EEPROM 256 #DEFINE _PAGES 4 #DEFINE _BANKS 3 #DEFINE RAM_BANKS 4 #DEFINE _USART 1 #DEFINE _USB 0 #DEFINE _FLASH 1 #DEFINE BANK0_START 32 #DEFINE BANK0_END 127 #DEFINE BANK1_START 160 #DEFINE BANK1_END 239 #DEFINE BANK2_START 272 #DEFINE BANK2_END 367 #DEFINE BANK3_START 400 #DEFINE BANK3_END 495 #DEFINE _SYSTEM_VARIABLE_COUNT 0 RAM_BANK = 0 CURRENT@PAGE = 0 DEST@PAGE = 0 #DEFINE LCD#TYPE 0 F@CALL MACRO DEST IF (DEST < 1) IF ((DEST & 2048) == 0) BCF 10,3 ELSE BSF 10,3 ENDIF IF ((DEST & 4096) == 0) BCF 10,4 ELSE BSF 10,4 ENDIF ELSE IF (DEST > $) IF ((DEST & 2048) == 0) BCF 10,3 ELSE BSF 10,3 ENDIF IF ((DEST & 4096) == 0) BCF 10,4 ELSE BSF 10,4 ENDIF ELSE IF ((DEST & 6144) == 0) CLRF 10 ELSE IF ((DEST & 2048) == 0) BCF 10,3 ELSE BSF 10,3 ENDIF IF ((DEST & 4096) == 0) BCF 10,4 ELSE BSF 10,4 ENDIF ENDIF ENDIF ENDIF CALL DEST ENDM F@JUMP MACRO DEST IF (DEST < 1) IF ((DEST & 2048) == 0) BCF 10,3 ELSE BSF 10,3 ENDIF IF ((DEST & 4096) == 0) BCF 10,4 ELSE BSF 10,4 ENDIF ELSE IF (DEST > $) IF ((DEST & 2048) == 0) BCF 10,3 ELSE BSF 10,3 ENDIF IF ((DEST & 4096) == 0) BCF 10,4 ELSE BSF 10,4 ENDIF ELSE IF ((DEST & 6144) == 0) CLRF 10 ELSE IF ((DEST & 2048) == 0) BCF 10,3 ELSE BSF 10,3 ENDIF IF ((DEST & 4096) == 0) BCF 10,4 ELSE BSF 10,4 ENDIF ENDIF ENDIF ENDIF GOTO DEST ENDM SET@PAGE MACRO DEST IF ((DEST & 2048) == 0) BCF 10,3 ELSE BSF 10,3 ENDIF IF ((DEST & 4096) == 0) BCF 10,4 ELSE BSF 10,4 ENDIF ENDM S@B MACRO VARIN IF((VARIN & 384) == 0) IF(RAM_BANK == 1) BCF 3,5 ENDIF IF(RAM_BANK == 2) BCF 3,6 ENDIF IF(RAM_BANK == 3) BCF 3,5 BCF 3,6 ENDIF RAM_BANK = 0 ENDIF IF((VARIN & 384) == 128) IF(RAM_BANK == 0) BSF 3,5 ENDIF IF(RAM_BANK == 2) BSF 3,5 BCF 3,6 ENDIF IF(RAM_BANK == 3) BCF 3,6 ENDIF RAM_BANK = 1 ENDIF IF((VARIN & 384) == 256) IF(RAM_BANK == 0) BSF 3,6 ENDIF IF(RAM_BANK == 1) BCF 3,5 BSF 3,6 ENDIF IF(RAM_BANK == 3) BCF 3,5 ENDIF RAM_BANK = 2 ENDIF IF((VARIN & 384) == 384) IF(RAM_BANK == 0) BSF 3,5 BSF 3,6 ENDIF IF(RAM_BANK == 1) BSF 3,6 ENDIF IF(RAM_BANK == 2) BSF 3,5 ENDIF RAM_BANK = 3 ENDIF ENDM R@B MACRO IF((RAM_BANK & 1) != 0) BCF 3,5 ENDIF IF((RAM_BANK & 2) != 0) BCF 3,6 ENDIF RAM_BANK = 0 ENDM JUMP MACRO LABEL GOTO LABEL ENDM WREG_BYTE MACRO M#BYTEOUT S@B M#BYTEOUT MOVWF M#BYTEOUT R@B ENDM WREG_BIT MACRO M#VAROUT,M#BITOUT S@B M#VAROUT ANDLW 1 SKPNZ BCF M#VAROUT,M#BITOUT SKPZ BSF M#VAROUT,M#BITOUT R@B ENDM WREG_WORD MACRO M#WORDOUT S@B M#WORDOUT MOVWF M#WORDOUT S@B M#WORDOUT + 1 CLRF M#WORDOUT + 1 R@B ENDM WREG_DWORD MACRO M#DWORDOUT S@B M#DWORDOUT + 3 CLRF M#DWORDOUT + 3 S@B M#DWORDOUT + 2 CLRF M#DWORDOUT + 2 S@B M#DWORDOUT + 1 CLRF M#DWORDOUT + 1 S@B M#DWORDOUT MOVWF M#DWORDOUT R@B ENDM BYTE_WREG MACRO M#BYTEIN S@B M#BYTEIN MOVFW M#BYTEIN R@B ENDM NUM_WREG MACRO M#NUMIN MOVLW (M#NUMIN & 255) ENDM NUM_BYTE MACRO M#NUMIN,M#BYTEOUT S@B M#BYTEOUT IF(M#NUMIN == 0) CLRF M#BYTEOUT ELSE MOVLW (M#NUMIN & 255) MOVWF M#BYTEOUT ENDIF R@B ENDM NUM_BIT MACRO M#NUMIN,M#VAROUT,M#BITOUT S@B M#VAROUT IF((M#NUMIN & 1) == 1) BSF M#VAROUT,M#BITOUT ELSE BCF M#VAROUT,M#BITOUT ENDIF R@B ENDM NUM_WORD MACRO M#NUMIN,M#WORDOUT IF((M#NUMIN & 255) == 0) S@B M#WORDOUT CLRF M#WORDOUT ELSE S@B M#WORDOUT MOVLW LOW (M#NUMIN) MOVWF M#WORDOUT ENDIF IF(((M#NUMIN >> 8) & 255) == 0) S@B M#WORDOUT + 1 CLRF M#WORDOUT + 1 ELSE S@B M#WORDOUT + 1 MOVLW HIGH (M#NUMIN) MOVWF M#WORDOUT + 1 ENDIF R@B ENDM NUM_DWORD MACRO M#NUMIN,M#DWORDOUT IF ((M#NUMIN >> 24 & 255) == 0) S@B M#DWORDOUT + 3 CLRF M#DWORDOUT + 3 ELSE S@B M#DWORDOUT + 3 MOVLW ((M#NUMIN >> 24) & 255) MOVWF M#DWORDOUT + 3 ENDIF IF( ((M#NUMIN >> 16) & 255) == 0) S@B M#DWORDOUT + 2 CLRF M#DWORDOUT + 2 ELSE S@B M#DWORDOUT + 2 MOVLW ((M#NUMIN >> 16) & 255) MOVWF M#DWORDOUT + 2 ENDIF IF( ((M#NUMIN >> 8) & 255) == 0) S@B M#DWORDOUT + 1 CLRF M#DWORDOUT + 1 ELSE S@B M#DWORDOUT + 1 MOVLW HIGH (M#NUMIN) MOVWF M#DWORDOUT + 1 ENDIF IF((M#NUMIN & 255) == 0) S@B M#DWORDOUT CLRF M#DWORDOUT ELSE S@B M#DWORDOUT MOVLW LOW (M#NUMIN) MOVWF M#DWORDOUT ENDIF R@B ENDM BIT_WREG MACRO M#VARIN,M#BITIN S@B M#VARIN CLRW BTFSC M#VARIN,M#BITIN MOVLW 1 R@B ENDM BIT_BYTE MACRO M#VARIN,M#BITIN,M#BYTEOUT S@B M#VARIN CLRW BTFSC M#VARIN,M#BITIN MOVLW 1 S@B M#BYTEOUT MOVWF M#BYTEOUT R@B ENDM BIT_BIT MACRO M#VARIN,M#BITIN,M#VAROUT,M#BITOUT IF((M#VARIN & 65408) == (M#VAROUT & 65408)) S@B M#VAROUT BTFSC M#VARIN,M#BITIN BSF M#VAROUT,M#BITOUT BTFSS M#VARIN,M#BITIN BCF M#VAROUT,M#BITOUT ELSE S@B M#VARIN CLRDC BTFSC M#VARIN,M#BITIN SETDC S@B M#VAROUT SKPNDC BSF M#VAROUT,M#BITOUT SKPDC BCF M#VAROUT,M#BITOUT ENDIF ENDM BIT_WORD MACRO M#VARIN,M#BITIN,M#WORDOUT S@B M#WORDOUT + 1 CLRF M#WORDOUT + 1 BIT_BYTE M#VARIN,M#BITIN,M#WORDOUT ENDM BIT_DWORD MACRO M#VARIN,M#BITIN,M#DWORDOUT S@B M#DWORDOUT + 3 CLRF M#DWORDOUT + 3 S@B M#DWORDOUT + 2 CLRF M#DWORDOUT + 2 S@B M#DWORDOUT + 1 CLRF M#DWORDOUT + 1 BIT_BYTE M#VARIN,M#BITIN,M#DWORDOUT ENDM WORD_WREG MACRO M#WORDIN BYTE_WREG M#WORDIN ENDM WORD_BYTE MACRO M#WORDIN,M#BYTEOUT BYTE_BYTE M#WORDIN,M#BYTEOUT ENDM WORD_BIT MACRO M#WORDIN,M#VAROUT,M#BITOUT BYTE_BIT M#WORDIN, M#VAROUT, M#BITOUT ENDM WORD_WORD MACRO M#WORDIN,M#WORDOUT S@B M#WORDIN + 1 MOVFW M#WORDIN + 1 S@B M#WORDOUT + 1 MOVWF M#WORDOUT + 1 BYTE_BYTE M#WORDIN,M#WORDOUT ENDM WORD_DWORD MACRO M#WORDIN,M#DWORDOUT S@B M#DWORDOUT + 3 CLRF M#DWORDOUT + 3 S@B M#DWORDOUT + 2 CLRF M#DWORDOUT + 2 BYTE_BYTE M#WORDIN + 1,M#DWORDOUT + 1 BYTE_BYTE M#WORDIN,M#DWORDOUT ENDM BYTE_BYTE MACRO M#BYTEIN,M#BYTEOUT S@B M#BYTEIN MOVFW M#BYTEIN S@B M#BYTEOUT MOVWF M#BYTEOUT R@B ENDM BYTE_WORD MACRO M#BYTEIN,M#WORDOUT S@B M#WORDOUT + 1 CLRF M#WORDOUT + 1 BYTE_BYTE M#BYTEIN,M#WORDOUT ENDM BYTE_DWORD MACRO M#BYTEIN,M#DWORDOUT S@B M#DWORDOUT + 3 CLRF M#DWORDOUT + 3 S@B M#DWORDOUT + 2 CLRF M#DWORDOUT + 2 S@B M#DWORDOUT + 1 CLRF M#DWORDOUT + 1 BYTE_BYTE M#BYTEIN,M#DWORDOUT ENDM BYTE_BIT MACRO M#BYTEIN,M#VAROUT,M#BITOUT IF((M#BYTEIN & 65408) == (M#VAROUT & 65408)) S@B M#BYTEIN BTFSC M#BYTEIN,0 BSF M#VAROUT,M#BITOUT BTFSS M#BYTEIN,0 BCF M#VAROUT,M#BITOUT ELSE S@B M#BYTEIN RRF M#BYTEIN,W S@B M#VAROUT SKPNC BSF M#VAROUT,M#BITOUT SKPC BCF M#VAROUT,M#BITOUT ENDIF R@B ENDM DWORD_WREG MACRO M#DWORDIN BYTE_WREG M#DWORDIN ENDM DWORD_BYTE MACRO M#DWORDIN,M#BYTEOUT BYTE_BYTE M#DWORDIN,M#BYTEOUT ENDM DWORD_WORD MACRO M#DWORDIN,M#WORDOUT S@B M#DWORDIN + 1 MOVFW M#DWORDIN + 1 S@B M#WORDOUT + 1 MOVWF M#WORDOUT + 1 BYTE_BYTE M#DWORDIN,M#WORDOUT ENDM DWORD_DWORD MACRO M#DWORDIN,M#DWORDOUT BYTE_BYTE M#DWORDIN + 3,M#DWORDOUT + 3 BYTE_BYTE M#DWORDIN + 2,M#DWORDOUT + 2 BYTE_BYTE M#DWORDIN + 1,M#DWORDOUT + 1 BYTE_BYTE M#DWORDIN,M#DWORDOUT ENDM DWORD_BIT MACRO M#DWORDIN,M#VAROUT,M#BITOUT BYTE_BIT M#DWORDIN,M#VAROUT,M#BITOUT ENDM VARIABLE CURRENT@PAGE = 0 VARIABLE M#DEST@PAGE = 0 FIND@PAGE MACRO LABELIN LOCAL CURRENT_ADDR = $ LOCAL DEST_ADDR = LABELIN IF((CURRENT_ADDR >= 0X1800) && (CURRENT_ADDR <= 0X2000)) CURRENT@PAGE = 3 ENDIF IF((CURRENT_ADDR >= 0X1000) && (CURRENT_ADDR <= 0X1800)) CURRENT@PAGE = 2 ENDIF IF((CURRENT_ADDR >= 0X0800) && (CURRENT_ADDR <= 0X1000)) CURRENT@PAGE = 1 ENDIF IF((CURRENT_ADDR >= 0) && (CURRENT_ADDR <= 0X0800)) CURRENT@PAGE = 0 ENDIF IF((DEST_ADDR >= 0X1800) && (DEST_ADDR <= 0X2000)) M#DEST@PAGE = 3 ENDIF IF((DEST_ADDR >= 0X1000) && (DEST_ADDR <= 0X1800)) M#DEST@PAGE = 2 ENDIF IF((DEST_ADDR >= 0X0800) && (DEST_ADDR <= 0X1000)) M#DEST@PAGE = 1 ENDIF IF((DEST_ADDR >= 0) && (DEST_ADDR <= 0X0800)) M#DEST@PAGE = 0 ENDIF ENDM NUM_FSR MACRO M#NUMIN NUM_BYTE M#NUMIN, FSR IF (((M#NUMIN >> 8) & 255) == 1) BSF STATUS,7 ELSE BCF STATUS,7 ENDIF ENDM LABEL_WORD MACRO LABELIN,M#WORDOUT MOVLW LOW (LABELIN) S@B M#WORDOUT MOVWF M#WORDOUT MOVLW HIGH (LABELIN) S@B M#WORDOUT MOVWF M#WORDOUT + 1 R@B ENDM ARRAY1 = 32 VARIABLE ARRAY1#0=32,ARRAY1#1=33,ARRAY1#2=34,ARRAY1#3=35 VARIABLE ARRAY1#4=36,ARRAY1#5=37,ARRAY1#6=38,ARRAY1#7=39 VARIABLE ARRAY1#8=40,ARRAY1#9=41,ARRAY1#10=42,ARRAY1#11=43 VARIABLE ARRAY1#12=44,ARRAY1#13=45,ARRAY1#14=46,ARRAY1#15=47 VARIABLE ARRAY1#16=48,ARRAY1#17=49,ARRAY1#18=50,ARRAY1#19=51 VARIABLE ARRAY1#20=52,ARRAY1#21=53,ARRAY1#22=54,ARRAY1#23=55 VARIABLE ARRAY1#24=56,ARRAY1#25=57,ARRAY1#26=58,ARRAY1#27=59 VARIABLE ARRAY1#28=60,ARRAY1#29=61,ARRAY1#30=62,ARRAY1#31=63 VARIABLE ARRAY1#32=64,ARRAY1#33=65,ARRAY1#34=66,ARRAY1#35=67 VARIABLE ARRAY1#36=68,ARRAY1#37=69,ARRAY1#38=70,ARRAY1#39=71 VARIABLE ARRAY1#40=72,ARRAY1#41=73,ARRAY1#42=74,ARRAY1#43=75 VARIABLE ARRAY1#44=76,ARRAY1#45=77,ARRAY1#46=78,ARRAY1#47=79 VARIABLE ARRAY1#48=80,ARRAY1#49=81,ARRAY1#50=82,ARRAY1#51=83 VARIABLE ARRAY1#52=84,ARRAY1#53=85,ARRAY1#54=86,ARRAY1#55=87 VARIABLE ARRAY1#56=88,ARRAY1#57=89,ARRAY1#58=90,ARRAY1#59=91 VARIABLE ARRAY1#60=92,ARRAY1#61=93,ARRAY1#62=94,ARRAY1#63=95 VARIABLE ARRAY1#64=96,ARRAY1#65=97,ARRAY1#66=98,ARRAY1#67=99 VARIABLE ARRAY1#68=100,ARRAY1#69=101,ARRAY1#70=102,ARRAY1#71=103 VARIABLE ARRAY1#72=104,ARRAY1#73=105,ARRAY1#74=106,ARRAY1#75=107 VARIABLE ARRAY1#76=108,ARRAY1#77=109,ARRAY1#78=110,ARRAY1#79=111 VARIABLE ARRAY1#80=112,ARRAY1#81=113,ARRAY1#82=114,ARRAY1#83=115 VARIABLE ARRAY1#84=116,ARRAY1#85=117,ARRAY1#86=118,ARRAY1#87=119 VARIABLE ARRAY1#88=120,ARRAY1#89=121,ARRAY1#90=122,ARRAY1#91=123 VARIABLE ARRAY1#92=124,ARRAY1#93=125,ARRAY1#94=126,ARRAY1#95=127 VARIABLE ARRAY1#96=160,ARRAY1#97=161,ARRAY1#98=162,ARRAY1#99=163 VARIABLE ARRAY1#100=164,ARRAY1#101=165,ARRAY1#102=166,ARRAY1#103=167 VARIABLE ARRAY1#104=168,ARRAY1#105=169,ARRAY1#106=170,ARRAY1#107=171 VARIABLE ARRAY1#108=172,ARRAY1#109=173,ARRAY1#110=174,ARRAY1#111=175 VARIABLE ARRAY1#112=176,ARRAY1#113=177,ARRAY1#114=178,ARRAY1#115=179 VARIABLE ARRAY1#116=180,ARRAY1#117=181,ARRAY1#118=182,ARRAY1#119=183 VARIABLE ARRAY1#120=184,ARRAY1#121=185,ARRAY1#122=186,ARRAY1#123=187 VARIABLE ARRAY1#124=188,ARRAY1#125=189,ARRAY1#126=190,ARRAY1#127=191 VARIABLE ARRAY1#128=192,ARRAY1#129=193,ARRAY1#130=194,ARRAY1#131=195 VARIABLE ARRAY1#132=196,ARRAY1#133=197,ARRAY1#134=198,ARRAY1#135=199 VARIABLE ARRAY1#136=200,ARRAY1#137=201,ARRAY1#138=202,ARRAY1#139=203 VARIABLE ARRAY1#140=204,ARRAY1#141=205,ARRAY1#142=206,ARRAY1#143=207 VARIABLE ARRAY1#144=208,ARRAY1#145=209,ARRAY1#146=210,ARRAY1#147=211 VARIABLE ARRAY1#148=212,ARRAY1#149=213,ARRAY1#150=214,ARRAY1#151=215 VARIABLE ARRAY1#152=216,ARRAY1#153=217,ARRAY1#154=218,ARRAY1#155=219 VARIABLE ARRAY1#156=220,ARRAY1#157=221,ARRAY1#158=222,ARRAY1#159=223 VARIABLE ARRAY1#160=224,ARRAY1#161=225,ARRAY1#162=226,ARRAY1#163=227 VARIABLE ARRAY1#164=228,ARRAY1#165=229,ARRAY1#166=230,ARRAY1#167=231 VARIABLE ARRAY1#168=232,ARRAY1#169=233,ARRAY1#170=234,ARRAY1#171=235 VARIABLE ARRAY1#172=236,ARRAY1#173=237,ARRAY1#174=238,ARRAY1#175=239 VARIABLE ARRAY1#176=272,ARRAY1#177=273,ARRAY1#178=274,ARRAY1#179=275 VARIABLE ARRAY1#180=276,ARRAY1#181=277,ARRAY1#182=278,ARRAY1#183=279 VARIABLE ARRAY1#184=280,ARRAY1#185=281,ARRAY1#186=282,ARRAY1#187=283 VARIABLE ARRAY1#188=284,ARRAY1#189=285,ARRAY1#190=286,ARRAY1#191=287 VARIABLE ARRAY1#192=288,ARRAY1#193=289,ARRAY1#194=290,ARRAY1#195=291 VARIABLE ARRAY1#196=292,ARRAY1#197=293,ARRAY1#198=294,ARRAY1#199=295 ARRAY2 = 296 VARIABLE ARRAY2#0=296,ARRAY2#1=297,ARRAY2#2=298,ARRAY2#3=299 VARIABLE ARRAY2#4=300,ARRAY2#5=301,ARRAY2#6=302,ARRAY2#7=303 VARIABLE ARRAY2#8=304,ARRAY2#9=305,ARRAY2#10=306,ARRAY2#11=307 VARIABLE ARRAY2#12=308,ARRAY2#13=309,ARRAY2#14=310,ARRAY2#15=311 VARIABLE ARRAY2#16=312,ARRAY2#17=313,ARRAY2#18=314,ARRAY2#19=315 VARIABLE ARRAY2#20=316,ARRAY2#21=317,ARRAY2#22=318,ARRAY2#23=319 VARIABLE ARRAY2#24=320,ARRAY2#25=321,ARRAY2#26=322,ARRAY2#27=323 VARIABLE ARRAY2#28=324,ARRAY2#29=325,ARRAY2#30=326,ARRAY2#31=327 VARIABLE ARRAY2#32=328,ARRAY2#33=329,ARRAY2#34=330,ARRAY2#35=331 VARIABLE ARRAY2#36=332,ARRAY2#37=333,ARRAY2#38=334,ARRAY2#39=335 VARIABLE ARRAY2#40=336,ARRAY2#41=337,ARRAY2#42=338,ARRAY2#43=339 VARIABLE ARRAY2#44=340,ARRAY2#45=341,ARRAY2#46=342,ARRAY2#47=343 VARIABLE ARRAY2#48=344,ARRAY2#49=345,ARRAY2#50=346,ARRAY2#51=347 VARIABLE ARRAY2#52=348,ARRAY2#53=349,ARRAY2#54=350,ARRAY2#55=351 VARIABLE ARRAY2#56=352,ARRAY2#57=353,ARRAY2#58=354,ARRAY2#59=355 VARIABLE ARRAY2#60=356,ARRAY2#61=357,ARRAY2#62=358,ARRAY2#63=359 VARIABLE ARRAY2#64=360,ARRAY2#65=361,ARRAY2#66=362,ARRAY2#67=363 VARIABLE ARRAY2#68=364,ARRAY2#69=365,ARRAY2#70=366,ARRAY2#71=367 VARIABLE ARRAY2#72=400,ARRAY2#73=401,ARRAY2#74=402,ARRAY2#75=403 VARIABLE ARRAY2#76=404,ARRAY2#77=405,ARRAY2#78=406,ARRAY2#79=407 VARIABLE ARRAY2#80=408,ARRAY2#81=409,ARRAY2#82=410,ARRAY2#83=411 VARIABLE ARRAY2#84=412,ARRAY2#85=413,ARRAY2#86=414,ARRAY2#87=415 VARIABLE ARRAY2#88=416,ARRAY2#89=417,ARRAY2#90=418,ARRAY2#91=419 VARIABLE ARRAY2#92=420,ARRAY2#93=421,ARRAY2#94=422,ARRAY2#95=423 VARIABLE ARRAY2#96=424,ARRAY2#97=425,ARRAY2#98=426,ARRAY2#99=427 PROTON#CODE#START ORG 0 NOP MOVLW HIGH (PROTON#MAIN#START) MOVWF 10 GOTO PROTON#MAIN#START ORG 4 PROTON#MAIN#START F2_SOF EQU $ ; ARRAYTEST.PRP F2_EOF EQU $ ; ARRAYTEST.PRP F1_SOF EQU $ ; ARRAYTEST.BAS F1_EOF EQU $ ; ARRAYTEST.BAS PB@LB2 F@JUMP PB@LB2 __EOF END