; FILE: GPS ; AUTH: Ed's Projects ; DATE: 15/09/2016 ; DESC: GPS using Adafruit Ultimate GPS and a 128x64 Graphic LCD. Will also serve to direct to a location. ;------------------------------------------------------------------------------- LIST P=16F887, R=DEC ; All numbers Decimal format unless otherwise stated. include ; Define configurations, registers, etc. __CONFIG _CONFIG1, _DEBUG_OFF & _LVP_OFF & _FCMEN_OFF & _IESO_OFF & _BOREN_ON & _CPD_OFF & _CP_OFF & _MCLRE_OFF & _PWRTE_ON & _WDTE_OFF & _HS_OSC ;------------------------------------------------------------------------------- ;----------------------------- Port Definitions ------------------------------ ;------------------------------------------------------------------------------- ; PORTD - Output - RD0 - Pin 19 - DB0 ; PORTD - Output - RD0 - Pin 20 - DB1 ; PORTD - Output - RD0 - Pin 21 - DB2 ; PORTD - Output - RD0 - Pin 22 - DB3 ; PORTD - Output - RD0 - Pin 27 - DB4 ; PORTD - Output - RD0 - Pin 28 - DB5 ; PORTD - Output - RD0 - Pin 29 - DB6 ; PORTD - Output - RD0 - Pin 30 - DB7 ; PORTB - Output - RB7 - Pin 40 - CS1 ; PORTB - Output - RB6 - Pin 39 - CS2 ; PORTC - Output - RC3 - Pin 18 - Reset ; PORTB - Output - RB2 - Pin 35 - RS ; PORTB - Output - RB0 - Pin 33 - E ; PORTB - Output - RB1 - Pin 34 - R/W ; PORTE - Input - RE2 - Pin 10 - GPS Fix ; PORTC - Input - RC7 - Pin 26 - GPS Serial In ;------------------------------------------------------------------------------- ;----------------------- Memory Allocations for Display ---------------------- ;------------------------------------------------------------------------------- ; 0 to 1023 0H 0L splash screen ; 1024 to 1151 4H 0L Menu ; 1152 to 1279 4H 128L History ; 1280 to 1407 5H 0L Destination ; 1408 to 1535 5H 128L Home ; 1536 to 1663 6H 0L GGA ; 1164 to 1791 6H 128L GSA ; 1792 to 1919 7H 0L RMC ; 1920 to 2047 7H 128L VTG ; 2048 to 2175 8H 0L SYSTEM FIX DATA ; 2176 to 2303 8H 128L DOP & ACTIVE SATELLITES ; 2304 to 2431 9H 0L MINIMUM NAVIGATION ; 2432 to 2559 9H 128L TRACK & GROUND SPEED ; 2560 to 2687 10H 0L AQUIRING SATELLITES ; 2688 to 2815 10H 128L Blank 128 byte ; 2816 to 2943 11H 0L ALPHABET ; 2944 to 3071 11H 128L ALPHABET ; 3072 to 3135 12H 0L Date ; 3136 to 3199 12H 64L HRZNTL PREC ; 3200 to 3327 12H 128L TIME UTC ; 3328 to 3391 13H 0L LATITUDE ; 3392 to 3455 13H 64L m ; 3456 to 3519 13H 128L LONGITUDE ; 3520 to 3583 13H 192L Kmh ; 3584 to 3711 14H 0L SATELLITE QTY ; 3712 to 3839 14H 128L ANTENNA ALT m ; 3840 to 3967 15H 0L GROUND SPEED Kn ; 3968 to 4095 15H 128L GEOIDAL SPRT m ; 4096 to 4223 16H 0L MAGNETIC VARIATION ; 4224 to 4351 16H 128L TRACK TRUE ; 4352 to 4479 17H 0L TRACK MAGNETIC ; 4480 to 4607 17H 128L GROUND SPEED Kmh ; 4608 to 4735 18H 0L SATELLITE ID'S USED FIX ; 4736 to 4863 18H 128L NEW DESTINATION ; 4864 to 4991 19H 0L CURRENT DESTINATION ; 4992 to 5119 19H 128L NEW HOME ; 5120 to 5247 20H 0L NAVIGATION ; 5248 to 5375 20H 128L DEST LAT ; 5376 to 5503 21H 0L DEST LONG ; 5504 to 5631 21H 128L CRNT LAT ; 5632 to 5759 22H 0L CRNT LONG ; 5760 to 5823 22H 128L ARROWS ;;;;FSR MEMORY;;;;;; ;160 to 239 Temporary GPS DATA ;------------------------------------------------------------------------------- ;--------------------------------- Symbols ----------------------------------- ;------------------------------------------------------------------------------- #define BUS PORTD #define CS1 PORTB, 6 #define CS2 PORTB, 5 #define RST PORTC, 3 #define RS PORTB, 2 #define E PORTB, 0 #define RW PORTB, 1 #define UP PORTA, 2 #define DN PORTA, 0 #define LT PORTA, 1 #define RT PORTA, 3 #define MN PORTA, 4 #define OK PORTA, 5 #define FX PORTE, 2 ;------------------------------------------------------------------------------- ;-------------------------------- Variables ---------------------------------- ;------------------------------------------------------------------------------- cblock h'20' offsetL offsetH tmrL delay Rowsel ; Row Select temp temp2 temp3 temp4 menusel dispind ; Display normal or inverted histpage ; History page pointer ee_adr ee_data destmen ; Destination menu pointer keytemp ; a counter keypnt ; keypad pointer templt ; Latitude input templn ; Longitude input eeind ; EEPROM save indicator, 0 dest, 1 home dig1 dig2 dig3 endc ;------------------------------------------------------------------------------- ;------------------------------- Program Code -------------------------------- ;------------------------------------------------------------------------------- ORG 0 ;------------------------------------------------------------------------------- ;-------------------------- Initialisation of Ports -------------------------- ;------------------------------------------------------------------------------- Init bcf STATUS,RP0 bcf STATUS,RP1 ; Bank 0 Selected clrf ADCON0 ; Turn off ADC bsf STATUS,RP0 ; Bank 1 Selected clrf VRCON ; Set Vref to off movlw b'00111111' movwf TRISA clrf TRISB ; Set all PortB as Output movlw b'11000000' movwf TRISC clrf TRISD ; Set all PortD as Output movlw b'00001100' movwf TRISE bsf STATUS,RP1 ; Bank 3 Selected clrf ANSEL ; Set all high analogue inputs to digital clrf ANSELH ; Set all high analogue inputs to digital bcf STATUS,RP0 ; Bank 2 Selected clrf CM1CON0 ; Turn off comparator 1 clrf CM2CON0 ; Turn off comparator 2 bcf STATUS,RP0 bcf STATUS,RP1 ; Bank 0 Selected clrf PORTA clrf PORTB clrf PORTC clrf PORTD clrf PORTE ;------------------------------------------------------------------------------- ;--------------------- Asynchronous Serial Initialisation -------------------- ;------------------------------------------------------------------------------- bsf STATUS, RP0 ; Bank 1 selected bsf STATUS, RP1 ; Bank 3 selected bsf BAUDCTL, BRG16 bcf STATUS, RP1 ; Bank 1 selected bsf TXSTA, BRGH ; Set high baud rate movlw d'2' movwf SPBRGH movlw d'8' ; 9600 baud rate at 20MHz movwf SPBRG bcf TXSTA, SYNC ; Set to asynchronous mode bsf TXSTA, TXEN ; Enable Transmit bcf STATUS, RP0 ; Bank 0 Selected bsf RCSTA, SPEN ; Enable Serial Port bcf RCSTA, CREN ; Turns off receive movf RCREG, w movf RCREG, w movf RCREG, w ;------------------------------------------------------------------------------- ;---------------------------- LCD Initialisation ----------------------------- ;------------------------------------------------------------------------------- bsf CS1 bsf CS2 movlw d'255' movwf delay initloop goto $+1 goto $+1 goto $+1 goto $+1 decfsz delay, f goto initloop bsf RST goto $+1 goto $+1 goto $+1 goto $+1 goto $+1 bcf CS2 bcf RS movlw b'00111111' call Send bcf RS bsf CS2 bcf CS1 movlw b'00111111' call Send bcf RS movlw b'01000000' call Send goto Start ;------------------------------------------------------------------------------- ;------------------------------ Transmit Check ------------------------------- ;------------------------------------------------------------------------------- Transmit bsf STATUS, RP0 ; Bank 1 btfss TXSTA, TRMT goto $-1 bcf STATUS, RP0 ; Bank 0 movwf TXREG return ;------------------------------------------------------------------------------- ;------------------------------ EEPROM Write --------------------------------- ;------------------------------------------------------------------------------- Ewrite movf ee_adr, w ; Load working register with ee_adr bsf STATUS, RP1 ; Bank 2 Selected movwf EEADR ; Set location to write to EEPROM bcf STATUS, RP1 ; Bank 0 Selected movf ee_data, w ; Load working register with ee_data bsf STATUS, RP1 ; Bank 2 Selected movwf EEDATA ; Data to be written to address bsf STATUS, RP0 ; Bank 3 Selected bcf EECON1, EEPGD ; Ensure writing to EEPROM bsf EECON1, WREN ; Enables EEPROM write ; The next four lines must be there to allow the data to be written movlw d'85' ; Load working register with decimal 85 movwf EECON2 ; Load working register to EECON2 movlw d'170' ; Load working register with decimal 170 movwf EECON2 ; Load working register to EECON2 bsf EECON1, WR ; Send data btfsc EECON1, WR goto $-1 ; If 1, check again, 0 indicates data written bcf EECON1, WREN ; Turn off EEPROM write bcf STATUS, RP1 ; Select bank 0 bcf STATUS, RP0 ; Select bank 0 return ; return from where left off ;------------------------------------------------------------------------------- ;------------------------------ EEPROM Read ---------------------------------- ;------------------------------------------------------------------------------- Eread movf ee_adr, w ; Load working register with ee_adr bsf STATUS, RP1 ; Bank 2 Selected movwf EEADR ; Set location to read EEPROM from bsf STATUS, RP0 ; Bank 3 Selected bsf EECON1, RD ; Enables EEPROM read btfsc EECON1, RD goto $-1 bcf STATUS, RP0 ; Bank 2 Selected movf EEDATA, w ; Load working resgister with EEPROM data bcf STATUS, RP1 ; Bank 0 Selected movwf ee_data return ; return from where left off ;------------------------------------------------------------------------------- ;-------------------------------- Delay Loops -------------------------------- ;------------------------------------------------------------------------------- delay1 movwf temp3 loop3 movlw d'250' movwf temp2 loop2 movlw d'250' movwf temp loop goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns nop ;200ns decfsz temp, f ;200ns goto loop ;400ns decfsz temp2, f goto loop2 ;250ms total decfsz temp3, f goto loop3 ;Multiples of 250ms return ;------------------------------------------------------------------------------- ;-------------------------------- Data Send --------------------------------- ;------------------------------------------------------------------------------- Send movwf BUS goto $+1 bsf E goto $+1 goto $+1 bcf E bsf STATUS, RP0 movlw d'255' movwf TRISD bcf STATUS, RP0 bcf RS bsf RW chkagn bsf E goto $+1 goto $+1 bcf E goto $+1 goto $+1 btfsc BUS, 7 goto chkagn bsf STATUS, RP0 clrf TRISD bcf STATUS, RP0 bcf RW bsf RS return ;------------------------------------------------------------------------------- ;------------------------------- Setup Display ------------------------------- ;------------------------------------------------------------------------------- Start clrf offsetL clrf offsetH movlw d'64' movwf tmrL bsf CS2 bcf CS1 call rw1to4 incf offsetH, f call rw5to8 incf offsetH, f bsf CS1 bcf CS2 call rw1to4 incf offsetH, f call rw5to8 ; Splash Screen Sent movlw d'8' call delay1 ; Wait 2 seconds PreMain bcf RCSTA, CREN ; Turns off receive call button ; This becomes clear further on movlw d'1' movwf menusel movlw d'8' movwf temp2 clrf dispind disploop1 movf menusel, w call Menu incf menusel, f decfsz temp2, f goto disploop1 movlw d'2' movwf menusel ; At History Position bsf dispind, 0 call Menu goto Main ;------------------------------------------------------------------------------- ;-------------------------------- Menu Lookup -------------------------------- ;------------------------------------------------------------------------------- Menu movwf temp call Menulbl1 bsf CS2 bcf CS1 movf temp, w call Rowselect ; Select Row 2 left btfsc dispind, 0 ; If zero normal, if 1 invert goto Menulbl2 call Sendt Menulbl3 bsf CS1 bcf CS2 movf temp, w call Rowselect ; Select Row 2 left btfsc dispind, 0 ; If zero normal, if 1 invert goto Menulbl4 call Sendt return Menulbl2 call SendI goto Menulbl3 Menulbl4 call SendI return Menulbl1 movlw HIGH Menupnt movwf PCLATH movlw LOW Menupnt addwf temp, w movwf PCL Menupnt nop goto Opt1 goto Opt2 goto Opt3 goto Opt4 goto Opt5 goto Opt6 goto Opt7 goto Opt8 Opt1 movlw d'4' movwf offsetH clrf offsetL return Opt2 movlw d'4' movwf offsetH movlw d'128' movwf offsetL return Opt3 movlw d'5' movwf offsetH clrf offsetL return Opt4 movlw d'5' movwf offsetH movlw d'128' movwf offsetL return Opt5 movlw d'6' movwf offsetH clrf offsetL return Opt6 movlw d'6' movwf offsetH movlw d'128' movwf offsetL return Opt7 movlw d'7' movwf offsetH clrf offsetL return Opt8 movlw d'7' movwf offsetH movlw d'128' movwf offsetL return ;------------------------------------------------------------------------------- ;------------------------------- Main Program -------------------------------- ;------------------------------------------------------------------------------- Main btfsc UP goto scrollup btfsc DN goto scrolldn btfsc OK goto Select goto Main scrollup call button bcf dispind, 0 movf menusel, w call Menu movf menusel, w xorlw d'2' btfsc STATUS, Z goto scrup1 decf menusel, f scrup2 bsf dispind, 0 movf menusel, w call Menu goto Main scrup1 movlw d'8' movwf menusel goto scrup2 scrolldn call button bcf dispind, 0 movf menusel, w call Menu movf menusel, w xorlw d'8' btfsc STATUS, Z goto scrdn1 incf menusel, f scrdn2 bsf dispind, 0 movf menusel, w call Menu goto Main scrdn1 movlw d'2' movwf menusel goto scrdn2 Select movlw HIGH Selpnt movwf PCLATH movlw LOW Selpnt addwf menusel, w movwf PCL Selpnt nop nop goto Hist goto Dest goto Home goto GGA goto GSA goto RMC goto VTG ;------------------------------------------------------------------------------- ;------------------------------------ Home ----------------------------------- ;------------------------------------------------------------------------------- Home call button movlw d'21' movwf temp2 movlw d'210' movwf ee_adr movlw d'64' movwf FSR goto homeloop Destloop call button movlw d'21' movwf temp2 movlw d'231' movwf ee_adr movlw d'64' movwf FSR homeloop call Eread movf ee_data movwf INDF incf ee_adr, f incf FSR, f decfsz temp2, f goto homeloop goto Navigation ;------------------------------------------------------------------------------- ;------------------------------ Destination Menu ----------------------------- ;------------------------------------------------------------------------------- Dest call button clrf destmen ; Start at row 3 clrf dispind call Destout Desta btfsc UP goto destup btfsc DN goto destdn btfsc MN goto PreMain btfsc OK goto Destopt goto Desta Destopt movlw HIGH Destpoint movwf PCLATH movlw LOW Destpoint addwf destmen, w movwf PCL Destpoint goto Destloop goto Setdest goto Sethome destup call button movlw d'1' subwf destmen, f btfsc STATUS, C goto destupa movlw d'2' movwf destmen destupa call Destout goto Desta destdn call button incf destmen, f movf destmen, w xorlw d'3' btfsc STATUS, Z clrf destmen call Destout goto Desta Destout movlw d'5' movwf offsetH clrf offsetL movlw d'1' call rowsend ; Destination title sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'2' call rowsend ; Blank movf destmen, w xorlw d'0' btfsc STATUS, Z bsf dispind, 0 movlw d'19' movwf offsetH clrf offsetL movlw d'3' call rowsend ; Current Destination title sent bcf dispind, 0 movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'4' call rowsend ; Blank movf destmen, w xorlw d'1' btfsc STATUS, Z bsf dispind, 0 movlw d'18' movwf offsetH movlw d'128' movwf offsetL movlw d'5' call rowsend ; New Destination title sent bcf dispind, 0 movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'6' call rowsend ; Blank movf destmen, w xorlw d'2' btfsc STATUS, Z bsf dispind, 0 movlw d'19' movwf offsetH movlw d'128' movwf offsetL movlw d'7' call rowsend ; New Home title sent bcf dispind, 0 movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'8' call rowsend ; Blank return ;------------------------------------------------------------------------------- ;------------------------------- Set Desination ------------------------------ ;------------------------------------------------------------------------------- Setdest clrf eeind call button movlw d'0' movwf keypnt movlw d'1' movwf templt movwf templn clrf dispind movlw d'18' movwf offsetH movlw d'128' movwf offsetL movlw d'1' call rowsend ; Set Destination title sent call Dispset goto ckky Sethome bsf eeind, 0 call button movlw d'0' movwf keypnt movlw d'1' movwf templt movwf templn clrf dispind movlw d'19' movwf offsetH movlw d'128' movwf offsetL movlw d'1' call rowsend ; Set Home title sent call Dispset ckky btfsc LT goto Left btfsc RT goto Right btfsc OK goto Enter btfsc MN goto PreMain goto ckky Enter call button movf templt, w addlw d'245' btfsc STATUS, C goto deallong incf templt, f movf templt, w addlw d'62' movwf FSR movf keypnt, w xorlw d'15' btfsc STATUS, Z goto ltback movf keypnt, w movwf keytemp call Keyin ; Retrieve current key movwf INDF ltbkdn call Dispset goto ckky ltbck movf keypnt, w xorlw d'15' btfss STATUS, Z goto noback incf templt, f ltback movf templt, w xorlw d'2' btfsc STATUS, Z goto ltbkdn decf templt, f decf templt, f goto ltbkdn deallong movf templn, w xorlw d'1' btfsc STATUS, Z goto ltbck noback movf templn, w addlw d'244' btfsc STATUS, C goto saveeep incf templn, f movf templn, w addlw d'72' movwf FSR movf keypnt, w xorlw d'15' btfsc STATUS, Z goto lnback movf keypnt, w movwf keytemp call Keyin ; Retrieve current key movwf INDF lnbkdn call Dispset goto ckky lnback decf templn, f lnbacks decf templn, f goto lnbkdn Left call button movf keypnt, w addlw d'0' btfsc STATUS, Z goto Leftrl decf keypnt, f call Dispset goto ckky Leftrl movlw d'15' movwf keypnt call Dispset goto ckky Right call button movf keypnt, w xorlw d'15' btfsc STATUS, Z goto Rightrl incf keypnt, f call Dispset goto ckky Rightrl clrf keypnt call Dispset goto ckky Dispset clrf dispind movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'2' call rowsend ; Blank movlw d'13' movwf offsetH clrf offsetL movlw d'3' call rowsend ; Latitude title sent call clrrgt movlw d'3' call Rowselect call Sendt movlw d'3' call Rowselect call Latd ; And latitude sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'4' call rowsend ; Blank movlw d'13' movwf offsetH movlw d'128' movwf offsetL movlw d'5' call rowsend ; Longitude title sent bsf CS2 bcf CS1 movlw d'5' call Rowselect bcf RS movlw b'01111010' ; Cursor positon 58 call Send call Lngpa call clrrgt movlw d'5' call Rowselect call Sendt movlw d'5' call Rowselect call Lngpb ; And longitude sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'6' call rowsend ; Blank movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'7' call rowsend ; Blank bsf CS2 bcf CS1 movlw d'7' call Rowselect movlw d'10' movwf temp4 clrf keytemp call lpkey call clrrgt movlw d'7' call Rowselect call Sendt movlw d'7' call Rowselect movlw d'5' movwf temp4 call lpkey movlw d'39' call lookchar movf keypnt, w xorlw d'15' btfsc STATUS, Z bsf dispind, 0 movlw "B" call lookchar movlw "A" call lookchar movlw "C" call lookchar movlw "K" call lookchar bcf dispind, 0 return lpkey movf keytemp, w xorwf keypnt, w btfsc STATUS, Z goto keyinv call Keyin call lookchar lpky incf keytemp, f decfsz temp4, f goto lpkey return keyinv call Keyin bsf dispind, 0 call lookchar bcf dispind, 0 goto lpky Keyin movlw HIGH Keypoint movwf PCLATH movlw LOW Keypoint addwf keytemp, w movwf PCL Keypoint retlw "0" retlw "1" retlw "2" retlw "3" retlw "4" retlw "5" retlw "6" retlw "7" retlw "8" retlw "9" retlw "." retlw "N" retlw "E" retlw "S" retlw "W" Latd movlw d'63' movwf FSR movf templt, w movwf temp4 decfsz temp4, f goto latdp return latdp incf FSR, f movf INDF, w call lookchar decfsz temp4, f goto latdp return Lngpa movlw d'74' movwf FSR movf templn, w movwf temp4 decfsz temp4, f goto lnga return lnga movf INDF, w call lookchar return Lngpb movlw d'74' movwf FSR movf templn, w movwf temp4 decfsz temp4, f goto lngb return lngb decfsz temp4, f goto lngc return lngc incf FSR, f movf INDF, w call lookchar decfsz temp4, f goto lngc return ;------------------------------------------------------------------------------- ;------------------------------- Save to EEPROM ------------------------------ ;------------------------------------------------------------------------------- saveeep movf keypnt, w xorlw d'15' btfsc STATUS, Z goto lnbacks movlw d'21' movwf temp movlw d'64' movwf FSR btfss eeind, 0 goto wrtdest wrthm movlw d'210' movwf ee_adr call saved goto PreMain saved movf INDF, w movwf ee_data call Ewrite incf FSR, f incf ee_adr, f decfsz temp, f goto saved return wrtdest movlw d'231' movwf ee_adr call saved movlw d'254' movwf ee_adr call Eread incf ee_data, f movf ee_data, w xorlw d'10' btfsc STATUS, Z clrf ee_data call Ewrite movf ee_data, w movwf histpage call Histpnt movwf ee_adr movlw d'21' movwf temp movlw d'64' movwf FSR call saved goto PreMain ;------------------------------------------------------------------------------- ;---------------------------------- History ---------------------------------- ;------------------------------------------------------------------------------- Hist call button clrf histpage call Histout Hista btfsc UP goto histup btfsc DN goto histdn btfsc MN goto PreMain goto Hista histup call button movlw d'1' subwf histpage, f btfsc STATUS, C goto histupa movlw d'9' movwf histpage histupa call Histout goto Hista histdn call button incf histpage, f movf histpage, w xorlw d'10' btfsc STATUS, Z clrf histpage call Histout goto Hista Histout clrf dispind movlw d'4' movwf offsetH movlw d'128' movwf offsetL movlw d'1' call rowsend ; History title sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'2' call rowsend ; Blank movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'3' call rowsend bsf CS2 bcf CS1 movlw d'3' call Rowselect movlw "P" call lookchar movlw "A" call lookchar movlw "G" call lookchar movlw "E" call lookchar call clrrgt movlw d'3' call Rowselect call Sendt movlw d'3' call Rowselect movf histpage, w addlw d'48' call lookchar ; Page and number sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'4' call rowsend ; Blank movlw d'13' movwf offsetH clrf offsetL movlw d'5' call rowsend ; Latitude title sent call clrrgt movlw d'5' call Rowselect call Sendt movlw d'5' call Rowselect call Lat ; And latitude sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'6' call rowsend ; Blank movlw d'13' movwf offsetH movlw d'128' movwf offsetL movlw d'7' call rowsend ; Longitude title sent bsf CS2 bcf CS1 movlw d'7' call Rowselect bcf RS movlw b'01111010' ; Cursor positon 58 call Send call Longa call clrrgt movlw d'7' call Rowselect call Sendt call Longb ; And longitude sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'8' call rowsend ; Blank return Lat movlw d'10' movwf temp2 call Histpnt movwf ee_adr latlp call Eread movf ee_data, w call lookchar incf ee_adr, f decfsz temp2, f goto latlp return Longa call Eread movf ee_data, w call lookchar incf ee_adr, f movlw d'10' movwf temp2 return Longb call Eread movf ee_data, w call lookchar incf ee_adr, f decfsz temp2, f goto Longb return Histpnt movlw HIGH Histpoint movwf PCLATH movlw LOW Histpoint addwf histpage, w movwf PCL Histpoint retlw d'0' retlw d'21' retlw d'42' retlw d'63' retlw d'84' retlw d'105' retlw d'126' retlw d'147' retlw d'168' retlw d'189' ;------------------------------------------------------------------------------- ;---------------------------- GGA - System Fix Data -------------------------- ;------------------------------------------------------------------------------- GGA clrf dispind call button call acqsat ; Check for satellite fix GGA2 btfsc MN goto PreMain call chkstr xorlw "G" btfss STATUS, Z goto GGA2 ; If not G loop again GGA3 btfss PIR1, RCIF goto GGA3 movf RCREG, w ; scrap A call save movlw d'8' movwf offsetH clrf offsetL movlw d'1' call rowsend ; GGA title sent movlw d'12' movwf offsetH movlw d'128' movwf offsetL movlw d'2' call rowsend ; Time title sent bsf CS1 bcf CS2 movlw d'2' call Rowselect call NExtract ; And time sent movlw d'13' movwf offsetH clrf offsetL movlw d'3' call rowsend ; Latitude title sent call clrrgt movlw d'3' call Rowselect call Sendt call Extract call Extract ; And latitude sent movlw d'13' movwf offsetH movlw d'128' movwf offsetL movlw d'4' call rowsend ; Longitude title sent bsf CS2 bcf CS1 movlw d'4' call Rowselect bcf RS movlw b'01111010' ; Cursor positon 58 call Send incf FSR, f movf INDF, w call lookchar call clrrgt movlw d'4' call Rowselect call Sendt call Extract call Extract ; And longitude sent movlw d'14' movwf offsetH clrf offsetL movlw d'5' call rowsend ; Satellite Qty title sent bsf CS1 bcf CS2 movlw d'5' call Rowselect bcf RS movlw b'01100000' ; Cursor positon 32 call Send incf FSR, f incf FSR, f call Extract ; And quantity sent movlw d'12' movwf offsetH movlw d'64' movwf offsetL movlw d'6' call rowsend ; Hrzntl prec title sent call clrrgt movlw d'6' call Rowselect call Sendt bcf RS movlw b'01100000' ; Cursor positon 32 call Send call Extract ; And precision level sent movlw d'14' movwf offsetH movlw d'128' movwf offsetL movlw d'7' call rowsend ; Antenna altitude title sent bsf CS1 bcf CS2 movlw d'7' call Rowselect bcf RS movlw b'01010000' ; Cursor positon 32 call Send call Extract ; And altitude sent movlw d'15' movwf offsetH movlw d'128' movwf offsetL movlw d'8' call rowsend ; Geoidal Sprt title sent bsf CS1 bcf CS2 movlw d'8' call Rowselect incf FSR, f incf FSR, f bcf RS movlw b'01010000' ; Cursor positon 32 call Send call Extract ; And geoidal separation sent goto GGA2 ; Update information ;------------------------------------------------------------------------------- ;--------------------- GSA - DOP and Active Satellites ----------------------- ;------------------------------------------------------------------------------- GSA clrf dispind call button call acqsat ; Check for satellite fix GSA2 btfsc MN goto PreMain call chkstr xorlw "S" btfss STATUS, Z goto GSA2 ; If not S loop again GSA3 btfss PIR1, RCIF goto GSA3 movf RCREG, w xorlw "A" btfss STATUS, Z goto GSA2 ; If not A loop again call save movlw d'8' movwf offsetH movlw d'128' movwf offsetL movlw d'1' call rowsend ; GSA title sent movlw d'18' movwf offsetH clrf offsetL movlw d'2' call rowsend ; Satellite ID title send movlw d'3' call Rowselect call NExtract ; send dummy to be overwritten call Extract ; send dummy to be overwritten movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'3' call rowsend ; blank sent bsf CS2 bcf CS1 movlw d'3' call Rowselect call Extract movlw d'39' call lookchar call Extract movlw d'39' call lookchar call Extract bsf CS1 bcf CS2 movlw d'3' call Rowselect call Extract movlw d'39' call lookchar call Extract movlw d'39' call lookchar call Extract movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'4' call rowsend ; blank sent bsf CS2 bcf CS1 movlw d'4' call Rowselect call Extract movlw d'39' call lookchar call Extract movlw d'39' call lookchar call Extract bsf CS1 bcf CS2 movlw d'4' call Rowselect call Extract movlw d'39' call lookchar call Extract movlw d'39' call lookchar call Extract movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'5' call rowsend ; blank sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'6' call rowsend ; blank sent bsf CS2 bcf CS1 movlw d'6' call Rowselect movlw "P" call lookchar movlw "D" call lookchar movlw "O" call lookchar movlw "P" call lookchar bsf CS1 bcf CS2 movlw d'6' call Rowselect call Extract movlw d'40' call lookchar ; Send character m movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'7' call rowsend ; blank sent bsf CS2 bcf CS1 movlw d'7' call Rowselect movlw "H" call lookchar movlw "D" call lookchar movlw "O" call lookchar movlw "P" call lookchar bsf CS1 bcf CS2 movlw d'7' call Rowselect call Extract movlw d'40' call lookchar ; Send character m movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'8' call rowsend ; blank sent bsf CS2 bcf CS1 movlw d'8' call Rowselect movlw "V" call lookchar movlw "D" call lookchar movlw "O" call lookchar movlw "P" call lookchar bsf CS1 bcf CS2 movlw d'8' call Rowselect call Extract movlw d'40' call lookchar ; Send character m goto GSA2 ;------------------------------------------------------------------------------- ;------------- RMC - Recommended Minimum Navigation Information -------------- ;------------------------------------------------------------------------------- RMC clrf dispind call button call acqsat ; Check for satellite fix RMC2 btfsc MN goto PreMain call chkstr xorlw "M" btfss STATUS, Z goto RMC2 ; If not M loop again RMC3 btfss PIR1, RCIF goto RMC3 movf RCREG, w ; scrap C call save movlw d'9' movwf offsetH clrf offsetL movlw d'1' call rowsend ; RMC title sent movlw d'12' movwf offsetH movlw d'128' movwf offsetL movlw d'3' call rowsend ; Time title sent bsf CS1 bcf CS2 movlw d'3' call Rowselect call NExtract ; And time sent incf FSR, f incf FSR, f movlw d'13' movwf offsetH clrf offsetL movlw d'4' call rowsend ; Latitude title sent call clrrgt movlw d'4' call Rowselect call Sendt call Extract call Extract ; And latitude sent movlw d'13' movwf offsetH movlw d'128' movwf offsetL movlw d'5' call rowsend ; Longitude title sent bsf CS2 bcf CS1 movlw d'5' call Rowselect bcf RS movlw b'01111010' ; Cursor positon 58 call Send incf FSR, f movf INDF, w call lookchar call clrrgt movlw d'5' call Rowselect call Sendt call Extract call Extract ; And longitude sent movlw d'15' movwf offsetH clrf offsetL movlw d'6' call rowsend ; Ground speed title sent bsf CS1 bcf CS2 movlw d'6' call Rowselect bcf RS movlw b'01001111' ; Cursor positon 15 call Send call Extract ; And speed sent bsf CS2 bcf CS1 movlw d'7' call Rowselect movlw "T" call lookchar movlw "R" call lookchar movlw "A" call lookchar movlw "C" call lookchar movlw "K" call lookchar movlw d'39' call lookchar movlw "T" call lookchar movlw "R" call lookchar movlw "U" call lookchar movlw "E" call lookchar call clrrgt ; Track true title sent movlw d'7' call Rowselect call Sendt bcf RS movlw b'01010110' ; Cursor positon 22 call Send call Extract ; And degrees sent movlw "/" call lookchar ; This will send degrees symbol movlw d'12' movwf offsetH clrf offsetL movlw d'2' call rowsend ; Date title sent call clrrgt movlw d'2' call Rowselect call Sendt call Extract ; And date sent movlw d'16' movwf offsetH clrf offsetL movlw d'8' call rowsend ; Magnetic Variation title sent bsf CS1 bcf CS2 movlw d'8' call Rowselect bcf RS movlw b'01100000' ; Cursor positon 32 call Send call Extract ; And degrees sent movlw "/" call lookchar ; This will send degrees symbol movlw d'39' call lookchar ; This will send space call Extract ; And course sent goto RMC2 ; Update information ;------------------------------------------------------------------------------- ;------------------- VTG - Track Made Good and Ground Speed ------------------ ;------------------------------------------------------------------------------- VTG clrf dispind call button call acqsat ; Check for satellite fix VTG2 btfsc MN goto PreMain call chkstr xorlw "T" btfss STATUS, Z goto VTG2 ; If not T loop again VTG3 btfss PIR1, RCIF goto VTG3 movf RCREG, w ; scrap G call save movlw d'9' movwf offsetH movlw d'128' movwf offsetL movlw d'1' call rowsend ; TVG title sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'2' call rowsend ; blank space movlw d'16' movwf offsetH movlw d'128' movwf offsetL movlw d'3' call rowsend ; Track true title sent bsf CS1 bcf CS2 movlw d'3' call Rowselect bcf RS movlw b'01010110' ; Cursor positon 22 call Send call NExtract ; And degrees sent movlw "/" call lookchar ; This will send degrees symbol movlw d'17' movwf offsetH clrf offsetL movlw d'4' call rowsend ; Track Magnetic title sent incf FSR, f incf FSR, f bcf RS movlw b'01011000' ; Cursor positon 24 call Send call Extract ; And degrees sent movlw "/" call lookchar ; This will send degrees symbol movlw d'15' movwf offsetH clrf offsetL movlw d'5' call rowsend ; Ground speed knots title sent clrf dispind bsf CS1 bcf CS2 movlw d'5' call Rowselect incf FSR, f incf FSR, f bcf RS movlw b'01001001' ; Cursor positon 9 call Send call Extract ; And speed sent movlw d'17' movwf offsetH movlw d'128' movwf offsetL movlw d'6' call rowsend ; Ground speed Kmh title sent clrf dispind bsf CS1 bcf CS2 movlw d'6' call Rowselect incf FSR, f incf FSR, f bcf RS movlw b'01001001' ; Cursor positon 9 call Send call Extract ; And speed sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'7' call rowsend ; blank space movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'8' call rowsend ; blank space goto VTG2 ; Update information ;------------------------------------------------------------------------------- ;---------------------------- Acquiring Satellites --------------------------- ;------------------------------------------------------------------------------- acqsat movlw d'1' movwf temp movlw d'8' movwf temp2 acqlp call acqclr incf temp, f decfsz temp2, f goto acqlp movlw d'10' movwf offsetH clrf offsetL movlw d'4' call rowsend acqlp2 movlw d'4' ; Check gps fix pin, if no pulse in 1 second movwf temp3 ; then a fix has been acquired acqlp5 movlw d'250' movwf temp2 acqlp4 movlw d'250' movwf temp acqlp3 btfsc MN ; Return to menu? goto PreMain btfsc FX goto acqlp2 ; Pulse in under 1 second no fix goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns nop ;200ns decfsz temp, f ;200ns goto acqlp3 ;400ns decfsz temp2, f goto acqlp4 ;250ms total decfsz temp3, f goto acqlp5 ;Multiples of 250ms return ;Satellites Acquired acqclr movlw d'10' movwf offsetH movlw d'128' movwf offsetL movf temp, w call rowsend return ;------------------------------------------------------------------------------- ;--------------------------- Check start of GPS DATA ------------------------- ;------------------------------------------------------------------------------- chkstr bsf RCSTA, CREN ; Turns on receive btfsc MN goto PreMain btfss PIR1, RCIF goto chkstr movf RCREG, w xorlw "$" btfss STATUS, Z goto chkstr chkstr2 btfss PIR1, RCIF goto chkstr2 movf RCREG, w ; scrap G chkstr3 btfss PIR1, RCIF goto chkstr3 movf RCREG, w ; scrap P chkstr4 btfss PIR1, RCIF goto chkstr4 movf RCREG, w ; scrap G, R or V chkstr5 btfss PIR1, RCIF goto chkstr5 movf RCREG, w return ;------------------------------------------------------------------------------- ;------------------------ Clear right section display ------------------------ ;------------------------------------------------------------------------------- clrrgt movlw d'10' movwf offsetH movlw d'128' movwf offsetL bsf CS1 bcf CS2 return ;------------------------------------------------------------------------------- ;----------------------------- Extract Saved Data ---------------------------- ;------------------------------------------------------------------------------- NExtract movlw d'160' movwf FSR Extract incf FSR, f movf INDF, w xorlw "," btfsc STATUS, Z return movf INDF, w call lookchar goto Extract ;------------------------------------------------------------------------------- ;---------------------- Save GPS Data to RAM using FSR ----------------------- ;------------------------------------------------------------------------------- save movlw d'159' movwf FSR savelp incf FSR, f savelp2 btfsc MN goto PreMain btfss PIR1, RCIF goto savelp2 movf RCREG, w movwf INDF xorlw "*" btfss STATUS, Z goto savelp movlw "," ; This little section is required if movwf INDF ; the byte before * is needed incf FSR, f movlw "*" movwf INDF bcf RCSTA, CREN ; Turns off receive return ;------------------------------------------------------------------------------- ;--------------------------- Send a whole row 128 byte ------------------------ ;------------------------------------------------------------------------------- rowsend movwf temp bsf CS2 bcf CS1 movf temp, w call Rowselect btfsc dispind, 0 goto rwsdlb call Sendt rwsdlb2 bsf CS1 bcf CS2 movf temp, w call Rowselect btfsc dispind, 0 goto rwsdlb3 call Sendt return rwsdlb call SendI goto rwsdlb2 rwsdlb3 call SendI return ;------------------------------------------------------------------------------- ;------------------------ Button Depress and Debounce ------------------------ ;------------------------------------------------------------------------------- button btfsc UP goto button btfsc DN goto button btfsc LT goto button btfsc RT goto button btfsc MN goto button btfsc OK goto button debounce movlw d'40' ; 20ms debounce movwf temp3 loop4 movlw d'250' movwf temp2 loop5 goto $+1 ;400ns goto $+1 ;400ns goto $+1 ;400ns nop ;200ns decfsz temp2, f ;200ns goto loop5 ;400ns decfsz temp3, f goto loop4 ;Multiples of 500us return ;------------------------------------------------------------------------------- ;------------------------------- Send Row Blocks ----------------------------- ;------------------------------------------------------------------------------- rw1to4 movlw d'1' call Rowselect ; Select Row 1 call Sendt movlw d'2' call Rowselect ; Select Row 2 call Sendt movlw d'3' call Rowselect ; Select Row 3 call Sendt movlw d'4' call Rowselect ; Select Row 4 call Sendt return rw5to8 movlw d'5' call Rowselect ; Select Row 5 call Sendt movlw d'6' call Rowselect ; Select Row 6 call Sendt movlw d'7' call Rowselect ; Select Row 7 call Sendt movlw d'8' call Rowselect ; Select Row 8 call Sendt return ;------------------------------------------------------------------------------- ;---------------------------------- LCD Pointer ------------------------------ ;------------------------------------------------------------------------------- Sendt movlw d'64' movwf tmrL Sendt2 call Pixb ; Send 64 byte pagesel 0 call Send incf offsetL, f decfsz tmrL, f goto Sendt2 return Sendc movlw d'6' movwf tmrL Sendc2 call Pixb ; Send character 6 byte pagesel 0 call Send incf offsetL, f decfsz tmrL, f goto Sendc2 return SendI movlw d'64' movwf tmrL SendI2 call Pixb ; Invert pixels pagesel 0 xorlw d'255' clrc call Send incf offsetL, f decfsz tmrL, f goto SendI2 return Sends movlw d'6' movwf tmrL Sends2 call Pixb ; Invert character pixels pagesel 0 xorlw d'255' clrc call Send incf offsetL, f decfsz tmrL, f goto Sends2 return Rowselect movwf Rowsel bcf RS movlw b'01000000' call Send bcf RS movlw HIGH Rowpoint movwf PCLATH movlw LOW Rowpoint addwf Rowsel, w movwf PCL Rowpoint nop goto Row1 goto Row2 goto Row3 goto Row4 goto Row5 goto Row6 goto Row7 goto Row8 Row1 movlw b'10111000' call Send return Row2 movlw b'10111001' call Send return Row3 movlw b'10111010' call Send return Row4 movlw b'10111011' call Send return Row5 movlw b'10111100' call Send return Row6 movlw b'10111101' call Send return Row7 movlw b'10111110' call Send return Row8 movlw b'10111111' call Send return ;------------------------------------------------------------------------------- ;--------------------------------- Navigation -------------------------------- ;------------------------------------------------------------------------------- Navigation clrf dispind call acqsat ; Check for satellite fix Nav2 btfsc MN goto PreMain call chkstr xorlw "M" btfss STATUS, Z goto Nav2 ; If not M loop again Nav3 btfss PIR1, RCIF goto Nav3 movf RCREG, w ; scrap C call save movlw d'20' movwf offsetH clrf offsetL movlw d'1' call rowsend ; Navigation title sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'2' call rowsend ; Blank movlw d'11' movwf templt movlw d'20' movwf offsetH movlw d'128' movwf offsetL movlw d'3' call rowsend ; Latitude title sent call clrrgt movlw d'3' call Rowselect call Sendt movlw d'3' call Rowselect call Latd ; And latitude sent movlw d'12' movwf templn movlw d'21' movwf offsetH clrf offsetL movlw d'4' call rowsend ; Longitude title sent bsf CS2 bcf CS1 movlw d'4' call Rowselect bcf RS movlw b'01111010' ; Cursor positon 58 call Send call Lngpa call clrrgt movlw d'4' call Rowselect call Sendt movlw d'4' call Rowselect call Lngpb ; And longitude sent movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'5' call rowsend ; Blank call NExtract ; scrap first incf FSR, f incf FSR, f movlw d'10' movwf offsetH movlw d'128' movwf offsetL movlw d'5' call rowsend ; Blank movlw d'21' movwf offsetH movlw d'128' movwf offsetL movlw d'6' call rowsend ; Latitude title sent call clrrgt movlw d'6' call Rowselect call Sendt call Extract call Extract ; And latitude sent movlw d'22' movwf offsetH clrf offsetL movlw d'7' call rowsend ; Longitude title sent bsf CS2 bcf CS1 movlw d'7' call Rowselect bcf RS movlw b'01111010' ; Cursor positon 58 call Send incf FSR, f movf INDF, w call lookchar call clrrgt movlw d'7' call Rowselect call Sendt call Extract call Extract ; And longitude sent bsf CS2 bcf CS1 movlw d'8' call Rowselect movlw "C" call lookchar movlw "O" call lookchar movlw "M" call lookchar movlw "P" call lookchar movlw "A" call lookchar movlw "S" call lookchar movlw "S" call lookchar call clrrgt ; Course title sent movlw d'8' call Rowselect call Sendt call Extract call clrrgt movlw d'8' call Rowselect call Sendt movlw d'8' call Rowselect movlw d'39' call lookchar movlw d'39' call lookchar call direction pagesel 0 call arrow goto Nav2 direction incf FSR, f movf INDF, w movwf dig1 incf FSR, f movf INDF, w xorlw "." btfsc STATUS, Z goto deg1 movf dig1, w movwf dig2 movf INDF, w movwf dig1 incf FSR, f movf INDF, w xorlw "." btfsc STATUS, Z goto deg2 movf dig2, w movwf dig3 movf dig1, w movwf dig2 movf INDF, w movwf dig1 goto getdig deg1 movlw d'48' movwf dig3 movlw d'48' movwf dig2 goto getdig deg2 movlw d'48' movwf dig3 getdig clrf temp movf dig1, w call chr1 addwf temp, f movf dig2, w call chr2 addwf temp, f clrc rrf temp, f clrc rrf temp, f movlw d'48' subwf dig3, f movf dig3, w call whdigit addwf temp, f ; now contains 0 to 90 goto getnesw whdigit movlw HIGH digit movwf PCLATH movlw LOW digit addwf dig3, w movwf PCL digit retlw d'0' retlw d'25' retlw d'50' retlw d'75' arrow movwf temp movlw d'22' movwf offsetH movlw d'48' subwf temp, f call arwlkup addlw d'127' movwf offsetL call Sendc ;normal character return arwlkup movlw HIGH arwtab movwf PCLATH movlw LOW arwtab addwf temp, w movwf PCL arwtab retlw d'0' ; N retlw d'6' ; E retlw d'12' ; S retlw d'18' ; W retlw d'24' ; NE retlw d'30' ; NW retlw d'36' ; SE retlw d'42' ; SW ;------------------------------------------------------------------------------- ;----------------------- Convert character to variable ----------------------- ;------------------------------------------------------------------------------- chr1 movwf temp4 movlw d'48' subwf temp4, f clrf temp3 chr1a movf temp4, w addlw d'0' btfsc STATUS, Z goto chr1b decf temp4, f incf temp3, f goto chr1a chr1b movf temp3, w return chr2 movwf temp4 movlw d'48' subwf temp4, f clrf temp3 chr2a movf temp4, w addlw d'0' btfsc STATUS, Z goto chr2b decf temp4, f movlw d'10' addwf temp3, f goto chr2a chr2b movf temp3, w return ;------------------------------------------------------------------------------- ;------------------------------ Character Lookup ----------------------------- ;------------------------------------------------------------------------------- lookchar movwf temp movlw d'11' movwf offsetH movlw d'38' subwf temp, f call chrlkup pagesel 0 movwf offsetL btfsc dispind, 0 goto charlb1 call Sendc ;normal character return charlb1 call Sends ;invert character return chrlkup movlw LOW chrtab ; Get low 8 bits of table address addwf temp, w ; Check to see if a carry will occur movlw HIGH chrtab ; Get high 5 bits of address btfsc STATUS, C ; Has page crossed? addlw 1 ; Yes then increment PCLATH - PCH movwf PCLATH ; Load high address into PCLATH - PCH movlw LOW chrtab ; Get low 8 bits of table address again addwf temp, w ; Load original PCL offset value movwf PCL ; Jump into table ;------------------------------------------------------------------------------- ;------------------------------ Character Storage ---------------------------- ;------------------------------------------------------------------------------- getnesw movlw LOW degree ; Get low 8 bits of table address addwf temp, w ; Check to see if a carry will occur movlw HIGH degree ; Get high 5 bits of address btfsc STATUS, C ; Has page crossed? addlw 1 ; Yes then increment PCLATH - PCH movwf PCLATH ; Load high address into PCLATH - PCH movlw LOW degree ; Get low 8 bits of table address again addwf temp, w ; Load original PCL offset value movwf PCL ; Jump into table ;------------------------------------------------------------------------------- ;------------------------------ Character Storage ---------------------------- ;------------------------------------------------------------------------------- Pixb movlw LOW table ; Get low 8 bits of table address addwf offsetL, w ; Check to see if a carry will occur movlw HIGH table ; Get high 5 bits of address btfsc STATUS, C ; Has page crossed? addlw 1 ; Yes then increment PCLATH - PCH movwf PCLATH ; Load high address into PCLATH - PCH movf offsetH, w addwf PCLATH, f ; Offset PCL by 256 movlw LOW table ; Get low 8 bits of table address again addwf offsetL, w ; Load original PCL offset value movwf PCL ; Jump into table ORG h'0800' chrtab retlw d'230' ;& retlw d'236' ; space - send 39 for space character retlw d'248' ; m - send 40 for m character nop nop nop nop retlw d'242' ;- retlw d'218' ;. retlw d'224' ; degree symbol, called by / retlw d'212' ;0 retlw d'158' ;1 retlw d'164' ;2 retlw d'170' ;3 retlw d'176' ;4 retlw d'182' ;5 retlw d'188' ;6 retlw d'194' ;7 retlw d'200' ;8 retlw d'206' ;9 nop nop nop nop nop nop nop retlw d'0' ;A retlw d'6' ;B retlw d'12' ;C retlw d'18' ;D retlw d'24' ;E retlw d'30' ;F retlw d'36' ;G retlw d'42' ;H retlw d'48' ;I retlw d'54' ;J retlw d'60' ;K retlw d'66' ;L retlw d'72' ;M retlw d'78' ;N retlw d'84' ;O retlw d'90' ;P retlw d'96' ;Q retlw d'102' ;R retlw d'108' ;S retlw d'114' ;T retlw d'120' ;U retlw d'128' ;V retlw d'134' ;W retlw d'140' ;X retlw d'146' ;Y retlw d'152' ;Z table retlw 255 retlw 255 retlw 255 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 192 retlw 192 retlw 192 retlw 64 retlw 64 retlw 64 retlw 64 retlw 64 retlw 0 retlw 0 retlw 0 retlw 128 retlw 128 retlw 128 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 0 retlw 240 retlw 240 retlw 0 retlw 0 retlw 128 retlw 128 retlw 128 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 31 retlw 31 retlw 31 retlw 18 retlw 18 retlw 18 retlw 16 retlw 16 retlw 0 retlw 0 retlw 0 retlw 31 retlw 31 retlw 16 retlw 16 retlw 16 retlw 31 retlw 31 retlw 15 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 23 retlw 23 retlw 20 retlw 20 retlw 20 retlw 29 retlw 29 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 240 retlw 240 retlw 240 retlw 144 retlw 144 retlw 144 retlw 240 retlw 240 retlw 0 retlw 0 retlw 0 retlw 224 retlw 224 retlw 160 retlw 160 retlw 160 retlw 224 retlw 224 retlw 0 retlw 0 retlw 224 retlw 224 retlw 32 retlw 32 retlw 32 retlw 224 retlw 224 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 224 retlw 224 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 7 retlw 7 retlw 7 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 7 retlw 7 retlw 0 retlw 1 retlw 7 retlw 6 retlw 4 retlw 0 retlw 0 retlw 7 retlw 7 retlw 4 retlw 4 retlw 4 retlw 7 retlw 7 retlw 0 retlw 0 retlw 7 retlw 7 retlw 4 retlw 4 retlw 7 retlw 7 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 7 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 224 retlw 224 retlw 160 retlw 160 retlw 160 retlw 32 retlw 32 retlw 0 retlw 0 retlw 224 retlw 224 retlw 32 retlw 32 retlw 32 retlw 96 retlw 96 retlw 0 retlw 32 retlw 32 retlw 32 retlw 224 retlw 224 retlw 32 retlw 32 retlw 32 retlw 0 retlw 0 retlw 224 retlw 224 retlw 32 retlw 32 retlw 32 retlw 96 retlw 96 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 7 retlw 7 retlw 4 retlw 4 retlw 4 retlw 4 retlw 4 retlw 0 retlw 0 retlw 7 retlw 7 retlw 4 retlw 4 retlw 4 retlw 6 retlw 6 retlw 0 retlw 0 retlw 0 retlw 0 retlw 7 retlw 7 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 5 retlw 5 retlw 5 retlw 5 retlw 5 retlw 7 retlw 7 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 252 retlw 252 retlw 4 retlw 4 retlw 36 retlw 36 retlw 36 retlw 236 retlw 236 retlw 0 retlw 0 retlw 0 retlw 252 retlw 252 retlw 252 retlw 36 retlw 36 retlw 36 retlw 60 retlw 60 retlw 0 retlw 0 retlw 0 retlw 188 retlw 188 retlw 36 retlw 36 retlw 36 retlw 36 retlw 236 retlw 236 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 0 retlw 0 retlw 0 retlw 1 retlw 1 retlw 1 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 1 retlw 0 retlw 0 retlw 0 retlw 255 retlw 255 retlw 255 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 224 retlw 255 retlw 255 retlw 255 ; End of Splash Screen ; HOME retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 0 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;HISTORY retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 16 retlw 16 retlw 16 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 0 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 0 retlw 0 retlw 14 retlw 16 retlw 224 retlw 16 retlw 14 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;DESTINATION retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 0 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;HOME retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 16 retlw 16 retlw 16 retlw 254 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 0 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 0 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;GGA retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;GSA retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 0 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;RMC retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 0 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;VTG retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 62 retlw 64 retlw 128 retlw 64 retlw 62 retlw 0 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;SYSTEM FIX DATA retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 14 retlw 16 retlw 224 retlw 16 retlw 14 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 198 retlw 40 retlw 16 retlw 40 retlw 198 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ; DOP & ACTIVE SATELLITES retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 12 retlw 0 retlw 0 retlw 0 retlw 108 retlw 146 retlw 170 retlw 68 retlw 160 retlw 0 retlw 0 retlw 0 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 62 retlw 64 retlw 128 retlw 64 retlw 62 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 ; MINIMUM NAVIGATION retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 62 retlw 64 retlw 128 retlw 64 retlw 62 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ; TRACK & GROUND SPEED retlw 0 retlw 0 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 254 retlw 16 retlw 40 retlw 68 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 108 retlw 146 retlw 170 retlw 68 retlw 160 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 12 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 2 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ; ACQUIRING SATELLITES retlw 0 retlw 0 retlw 0 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 124 retlw 130 retlw 162 retlw 66 retlw 188 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 0 retlw 0 retlw 0 ; Blank 128 byte retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ; ALPHABET retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 108 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 2 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 254 retlw 16 retlw 16 retlw 16 retlw 254 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 64 retlw 128 retlw 130 retlw 126 retlw 2 retlw 0 retlw 254 retlw 16 retlw 40 retlw 68 retlw 130 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 12 retlw 0 retlw 124 retlw 130 retlw 162 retlw 66 retlw 188 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 0 retlw 0 retlw 62 retlw 64 retlw 128 retlw 64 retlw 62 retlw 0 retlw 126 retlw 128 retlw 126 retlw 128 retlw 126 retlw 0 retlw 198 retlw 40 retlw 16 retlw 40 retlw 198 retlw 0 retlw 14 retlw 16 retlw 224 retlw 16 retlw 14 retlw 0 retlw 194 retlw 162 retlw 146 retlw 138 retlw 134 retlw 0 retlw 0 retlw 132 retlw 254 retlw 128 retlw 0 retlw 0 retlw 132 retlw 194 retlw 162 retlw 146 retlw 140 retlw 0 retlw 66 retlw 130 retlw 138 retlw 150 retlw 98 retlw 0 retlw 48 retlw 40 retlw 36 retlw 254 retlw 32 retlw 0 retlw 78 retlw 138 retlw 138 retlw 138 retlw 114 retlw 0 retlw 120 retlw 148 retlw 146 retlw 146 retlw 96 retlw 0 retlw 2 retlw 226 retlw 18 retlw 10 retlw 6 retlw 0 retlw 108 retlw 146 retlw 146 retlw 146 retlw 108 retlw 0 retlw 12 retlw 146 retlw 146 retlw 82 retlw 60 retlw 0 retlw 124 retlw 162 retlw 146 retlw 138 retlw 124 retlw 0 retlw 0 retlw 0 retlw 192 retlw 192 retlw 0 retlw 0 retlw 0 retlw 14 retlw 10 retlw 14 retlw 0 retlw 0 retlw 108 retlw 146 retlw 170 retlw 68 retlw 160 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 16 retlw 16 retlw 16 retlw 16 retlw 16 retlw 0 retlw 248 retlw 8 retlw 48 retlw 8 retlw 240 retlw 0 retlw 0 ;DATE retlw 254 retlw 128 retlw 130 retlw 68 retlw 56 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;HRZNTL PREC retlw 254 retlw 16 retlw 16 retlw 16 retlw 254 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 194 retlw 162 retlw 146 retlw 138 retlw 134 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 12 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 ;TIME UTC retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;LATITUDE retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ; m retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 248 retlw 8 retlw 48 retlw 8 retlw 240 ;LONGITUDE retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;Kmh retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 16 retlw 40 retlw 68 retlw 130 retlw 0 retlw 248 retlw 8 retlw 48 retlw 8 retlw 240 retlw 0 retlw 254 retlw 16 retlw 8 retlw 8 retlw 240 ; SATELLITE QTY retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 162 retlw 66 retlw 188 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 14 retlw 16 retlw 224 retlw 16 retlw 14 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;ANTENNA ALT m retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 248 retlw 8 retlw 48 retlw 8 retlw 240 ;GROUND SPD Kn retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 12 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 16 retlw 40 retlw 68 retlw 130 retlw 0 retlw 248 retlw 16 retlw 8 retlw 8 retlw 240 ;GEOIDAL SPRT m retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 12 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 248 retlw 8 retlw 48 retlw 8 retlw 240 ;MAGNETIC VRTN retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 62 retlw 64 retlw 128 retlw 64 retlw 62 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;TRACK TRUE retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 254 retlw 16 retlw 40 retlw 68 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;TRACK MAGNETIC retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 254 retlw 16 retlw 40 retlw 68 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;GOUND SPEED Kmh retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 12 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 16 retlw 40 retlw 68 retlw 130 retlw 0 retlw 248 retlw 8 retlw 48 retlw 8 retlw 240 retlw 0 retlw 254 retlw 16 retlw 8 retlw 8 retlw 240 ;SATELLITE ID'S USED FIX retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 10 retlw 6 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 18 retlw 18 retlw 18 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 198 retlw 40 retlw 16 retlw 40 retlw 198 ;NEW DESTINATION retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 126 retlw 128 retlw 126 retlw 128 retlw 126 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;CURRENT DESTINATION retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 126 retlw 128 retlw 128 retlw 128 retlw 126 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;NEW HOME retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 126 retlw 128 retlw 126 retlw 128 retlw 126 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 16 retlw 16 retlw 16 retlw 254 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 4 retlw 24 retlw 4 retlw 254 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;NAVIGATION retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 0 retlw 0 retlw 62 retlw 64 retlw 128 retlw 64 retlw 62 retlw 0 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 0 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 130 retlw 254 retlw 130 retlw 0 retlw 0 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 0 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;DEST LAT retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;DEST LONG retlw 254 retlw 130 retlw 130 retlw 68 retlw 56 retlw 0 retlw 254 retlw 146 retlw 146 retlw 146 retlw 130 retlw 0 retlw 140 retlw 146 retlw 146 retlw 146 retlw 98 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ; CRNT LAT retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 252 retlw 34 retlw 34 retlw 34 retlw 252 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;CRNT LONG retlw 124 retlw 130 retlw 130 retlw 130 retlw 68 retlw 0 retlw 254 retlw 18 retlw 50 retlw 82 retlw 140 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 2 retlw 2 retlw 254 retlw 2 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 254 retlw 128 retlw 128 retlw 128 retlw 128 retlw 0 retlw 124 retlw 130 retlw 130 retlw 130 retlw 124 retlw 0 retlw 254 retlw 8 retlw 16 retlw 32 retlw 254 retlw 0 retlw 124 retlw 130 retlw 146 retlw 146 retlw 244 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 ;ARROWS retlw 8 retlw 4 retlw 126 retlw 4 retlw 8 retlw 8 retlw 8 retlw 8 retlw 42 retlw 28 retlw 8 retlw 0 retlw 16 retlw 32 retlw 126 retlw 32 retlw 16 retlw 8 retlw 28 retlw 42 retlw 8 retlw 8 retlw 8 retlw 0 retlw 32 retlw 18 retlw 10 retlw 6 retlw 30 retlw 0 retlw 30 retlw 6 retlw 10 retlw 18 retlw 32 retlw 0 retlw 2 retlw 36 retlw 40 retlw 48 retlw 60 retlw 0 retlw 60 retlw 48 retlw 40 retlw 36 retlw 2 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 retlw 0 degree retlw "0" retlw "0" retlw "0" retlw "0" retlw "0" retlw "0" ;6 retlw "4" retlw "4" retlw "4" retlw "4" retlw "4" retlw "4" retlw "4" retlw "4" retlw "4" retlw "4" retlw "4" ; 17 retlw "1" retlw "1" retlw "1" retlw "1" retlw "1" retlw "1" retlw "1" retlw "1" retlw "1" retlw "1" retlw "1" retlw "1" ;28 retlw "6" retlw "6" retlw "6" retlw "6" retlw "6" retlw "6" retlw "6" retlw "6" retlw "6" retlw "6" retlw "6" ;39 retlw "2" retlw "2" retlw "2" retlw "2" retlw "2" retlw "2" retlw "2" retlw "2" retlw "2" retlw "2" retlw "2" ;50 retlw "7" retlw "7" retlw "7" retlw "7" retlw "7" retlw "7" retlw "7" retlw "7" retlw "7" retlw "7" retlw "7" retlw "7" ;62 retlw "3" retlw "3" retlw "3" retlw "3" retlw "3" retlw "3" retlw "3" retlw "3" retlw "3" retlw "3" retlw "3" ;73 retlw "5" retlw "5" retlw "5" retlw "5" retlw "5" retlw "5" retlw "5" retlw "5" retlw "5" retlw "5" retlw "5" ; 84 retlw "0" retlw "0" retlw "0" retlw "0" retlw "0" retlw "0" ;;;;EEPROM ORG h'2100' de"1" de"2" de"3" de"4" de"." de"5" de"6" de"7" de"8" de"E" de"0" de"1" de"2" de"3" de"4" de"." de"5" de"6" de"7" de"8" de"N" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de"0" de d'0' de d'0' de d'0' end