OSDN Git Service

[v2.0][SHELL][UART] Start to support UART shell.
authorK.Ohta <whatisthis.sowhat@gmail.com>
Thu, 7 Nov 2013 12:29:41 +0000 (21:29 +0900)
committerK.Ohta <whatisthis.sowhat@gmail.com>
Thu, 7 Nov 2013 12:29:41 +0000 (21:29 +0900)
12 files changed:
main.c
menu_defs.c
nbproject/Makefile-default.mk
nbproject/Makefile-genesis.properties
nbproject/Makefile-local-default.mk
nbproject/configurations.xml
shell_strutl.c [new file with mode: 0644]
shell_strutl.h [new file with mode: 0644]
term_shell.c [new file with mode: 0644]
term_shell.h [new file with mode: 0644]
uart_termio.c
uart_termio.h [new file with mode: 0644]

diff --git a/main.c b/main.c
index 2f1ea7b..f1c2ab6 100644 (file)
--- a/main.c
+++ b/main.c
@@ -56,6 +56,9 @@
 #include "backlight.h"
 #include "rencoder.h"
 #include "euart.h"
+#include "uart_termio.h"
+#include "shell_strutl.h"
+#include "term_shell.h"
 
 /*
  * Config words.
@@ -86,7 +89,6 @@
                XINST=OFF
 #endif
 
-extern char term_shell(unsigned int timeout);
 
 /*
  * Statuses
@@ -251,8 +253,8 @@ void interrupt low_priority intlow_handler(void)
 void interrupt high_priority inthigh_handler(void)
 {
     if(INTCONbits.RBIF) RBIF_handler();
-    if(PIR1bits.RC1IF)   UART_R_Handler();
     if(PIR1bits.TMR1IF) TMR1_Handler();
+    if(PIR1bits.RC1IF)   UART_R_Handler();
 //    if(PIR2bits.TMR3IF) TMR3_Handler();
 //    if(INTCON3bits.INT1IF) EXINT_Handler();
 //    if(INTCON3bits.INT2IF) EXINT_Handler();
@@ -331,9 +333,9 @@ int main(void)
     update_status();
     update_display();
     ClrWdt();
-    ui_idlekey = setup.ui_idlecount / 92;
-    ui_idlepad = setup.ui_idlecount % 23;
-    rencoder_init();
+   ui_idlekey = setup.ui_idlecount / 92;
+   ui_idlepad = setup.ui_idlecount % 23;
+   rencoder_init();
    rencoder_start();
    do {
 
index f5ba727..2ce9e53 100644 (file)
@@ -131,6 +131,9 @@ void setdefault(void)
     setup.amfreq = setup.amfreq_bank[setup.amband];
     setup.stereo = 0xff; // Auto
     setup.fm_tunepitch = 0x02; // 100KHz
+    setup.ui_idlecount = 1000;
+    setup.backlight_level = 100;
+    setup.backlight_long = 128;
 }
 
 void valinit(void)
index 529eaf9..85bcb73 100644 (file)
@@ -45,17 +45,17 @@ OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
 DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
 
 # Source Files Quoted if spaced
-SOURCEFILES_QUOTED_IF_SPACED=ui.c i2c_io.c main.c idle.c lcd_acm1602.c akc6955.c eeprom.c ioports.c menu.c power.c adc_int.c menu_defs.c eepromutil.c ui_updown.c ui_display.c radio_getstat.c helps.c menu_memoryfreq.c i2c_eeprom.c backlight.c menu_scan.c menu_setup.c menu_userband.c menu_volume.c rencoder.c euart.c uart_termio.c
+SOURCEFILES_QUOTED_IF_SPACED=ui.c i2c_io.c main.c idle.c lcd_acm1602.c akc6955.c eeprom.c ioports.c menu.c power.c adc_int.c menu_defs.c eepromutil.c ui_updown.c ui_display.c radio_getstat.c helps.c menu_memoryfreq.c i2c_eeprom.c backlight.c menu_scan.c menu_setup.c menu_userband.c menu_volume.c rencoder.c euart.c uart_termio.c shell_strutl.c term_shell.c
 
 # Object Files Quoted if spaced
-OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/ui.p1 ${OBJECTDIR}/i2c_io.p1 ${OBJECTDIR}/main.p1 ${OBJECTDIR}/idle.p1 ${OBJECTDIR}/lcd_acm1602.p1 ${OBJECTDIR}/akc6955.p1 ${OBJECTDIR}/eeprom.p1 ${OBJECTDIR}/ioports.p1 ${OBJECTDIR}/menu.p1 ${OBJECTDIR}/power.p1 ${OBJECTDIR}/adc_int.p1 ${OBJECTDIR}/menu_defs.p1 ${OBJECTDIR}/eepromutil.p1 ${OBJECTDIR}/ui_updown.p1 ${OBJECTDIR}/ui_display.p1 ${OBJECTDIR}/radio_getstat.p1 ${OBJECTDIR}/helps.p1 ${OBJECTDIR}/menu_memoryfreq.p1 ${OBJECTDIR}/i2c_eeprom.p1 ${OBJECTDIR}/backlight.p1 ${OBJECTDIR}/menu_scan.p1 ${OBJECTDIR}/menu_setup.p1 ${OBJECTDIR}/menu_userband.p1 ${OBJECTDIR}/menu_volume.p1 ${OBJECTDIR}/rencoder.p1 ${OBJECTDIR}/euart.p1 ${OBJECTDIR}/uart_termio.p1
-POSSIBLE_DEPFILES=${OBJECTDIR}/ui.p1.d ${OBJECTDIR}/i2c_io.p1.d ${OBJECTDIR}/main.p1.d ${OBJECTDIR}/idle.p1.d ${OBJECTDIR}/lcd_acm1602.p1.d ${OBJECTDIR}/akc6955.p1.d ${OBJECTDIR}/eeprom.p1.d ${OBJECTDIR}/ioports.p1.d ${OBJECTDIR}/menu.p1.d ${OBJECTDIR}/power.p1.d ${OBJECTDIR}/adc_int.p1.d ${OBJECTDIR}/menu_defs.p1.d ${OBJECTDIR}/eepromutil.p1.d ${OBJECTDIR}/ui_updown.p1.d ${OBJECTDIR}/ui_display.p1.d ${OBJECTDIR}/radio_getstat.p1.d ${OBJECTDIR}/helps.p1.d ${OBJECTDIR}/menu_memoryfreq.p1.d ${OBJECTDIR}/i2c_eeprom.p1.d ${OBJECTDIR}/backlight.p1.d ${OBJECTDIR}/menu_scan.p1.d ${OBJECTDIR}/menu_setup.p1.d ${OBJECTDIR}/menu_userband.p1.d ${OBJECTDIR}/menu_volume.p1.d ${OBJECTDIR}/rencoder.p1.d ${OBJECTDIR}/euart.p1.d ${OBJECTDIR}/uart_termio.p1.d
+OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/ui.p1 ${OBJECTDIR}/i2c_io.p1 ${OBJECTDIR}/main.p1 ${OBJECTDIR}/idle.p1 ${OBJECTDIR}/lcd_acm1602.p1 ${OBJECTDIR}/akc6955.p1 ${OBJECTDIR}/eeprom.p1 ${OBJECTDIR}/ioports.p1 ${OBJECTDIR}/menu.p1 ${OBJECTDIR}/power.p1 ${OBJECTDIR}/adc_int.p1 ${OBJECTDIR}/menu_defs.p1 ${OBJECTDIR}/eepromutil.p1 ${OBJECTDIR}/ui_updown.p1 ${OBJECTDIR}/ui_display.p1 ${OBJECTDIR}/radio_getstat.p1 ${OBJECTDIR}/helps.p1 ${OBJECTDIR}/menu_memoryfreq.p1 ${OBJECTDIR}/i2c_eeprom.p1 ${OBJECTDIR}/backlight.p1 ${OBJECTDIR}/menu_scan.p1 ${OBJECTDIR}/menu_setup.p1 ${OBJECTDIR}/menu_userband.p1 ${OBJECTDIR}/menu_volume.p1 ${OBJECTDIR}/rencoder.p1 ${OBJECTDIR}/euart.p1 ${OBJECTDIR}/uart_termio.p1 ${OBJECTDIR}/shell_strutl.p1 ${OBJECTDIR}/term_shell.p1
+POSSIBLE_DEPFILES=${OBJECTDIR}/ui.p1.d ${OBJECTDIR}/i2c_io.p1.d ${OBJECTDIR}/main.p1.d ${OBJECTDIR}/idle.p1.d ${OBJECTDIR}/lcd_acm1602.p1.d ${OBJECTDIR}/akc6955.p1.d ${OBJECTDIR}/eeprom.p1.d ${OBJECTDIR}/ioports.p1.d ${OBJECTDIR}/menu.p1.d ${OBJECTDIR}/power.p1.d ${OBJECTDIR}/adc_int.p1.d ${OBJECTDIR}/menu_defs.p1.d ${OBJECTDIR}/eepromutil.p1.d ${OBJECTDIR}/ui_updown.p1.d ${OBJECTDIR}/ui_display.p1.d ${OBJECTDIR}/radio_getstat.p1.d ${OBJECTDIR}/helps.p1.d ${OBJECTDIR}/menu_memoryfreq.p1.d ${OBJECTDIR}/i2c_eeprom.p1.d ${OBJECTDIR}/backlight.p1.d ${OBJECTDIR}/menu_scan.p1.d ${OBJECTDIR}/menu_setup.p1.d ${OBJECTDIR}/menu_userband.p1.d ${OBJECTDIR}/menu_volume.p1.d ${OBJECTDIR}/rencoder.p1.d ${OBJECTDIR}/euart.p1.d ${OBJECTDIR}/uart_termio.p1.d ${OBJECTDIR}/shell_strutl.p1.d ${OBJECTDIR}/term_shell.p1.d
 
 # Object Files
-OBJECTFILES=${OBJECTDIR}/ui.p1 ${OBJECTDIR}/i2c_io.p1 ${OBJECTDIR}/main.p1 ${OBJECTDIR}/idle.p1 ${OBJECTDIR}/lcd_acm1602.p1 ${OBJECTDIR}/akc6955.p1 ${OBJECTDIR}/eeprom.p1 ${OBJECTDIR}/ioports.p1 ${OBJECTDIR}/menu.p1 ${OBJECTDIR}/power.p1 ${OBJECTDIR}/adc_int.p1 ${OBJECTDIR}/menu_defs.p1 ${OBJECTDIR}/eepromutil.p1 ${OBJECTDIR}/ui_updown.p1 ${OBJECTDIR}/ui_display.p1 ${OBJECTDIR}/radio_getstat.p1 ${OBJECTDIR}/helps.p1 ${OBJECTDIR}/menu_memoryfreq.p1 ${OBJECTDIR}/i2c_eeprom.p1 ${OBJECTDIR}/backlight.p1 ${OBJECTDIR}/menu_scan.p1 ${OBJECTDIR}/menu_setup.p1 ${OBJECTDIR}/menu_userband.p1 ${OBJECTDIR}/menu_volume.p1 ${OBJECTDIR}/rencoder.p1 ${OBJECTDIR}/euart.p1 ${OBJECTDIR}/uart_termio.p1
+OBJECTFILES=${OBJECTDIR}/ui.p1 ${OBJECTDIR}/i2c_io.p1 ${OBJECTDIR}/main.p1 ${OBJECTDIR}/idle.p1 ${OBJECTDIR}/lcd_acm1602.p1 ${OBJECTDIR}/akc6955.p1 ${OBJECTDIR}/eeprom.p1 ${OBJECTDIR}/ioports.p1 ${OBJECTDIR}/menu.p1 ${OBJECTDIR}/power.p1 ${OBJECTDIR}/adc_int.p1 ${OBJECTDIR}/menu_defs.p1 ${OBJECTDIR}/eepromutil.p1 ${OBJECTDIR}/ui_updown.p1 ${OBJECTDIR}/ui_display.p1 ${OBJECTDIR}/radio_getstat.p1 ${OBJECTDIR}/helps.p1 ${OBJECTDIR}/menu_memoryfreq.p1 ${OBJECTDIR}/i2c_eeprom.p1 ${OBJECTDIR}/backlight.p1 ${OBJECTDIR}/menu_scan.p1 ${OBJECTDIR}/menu_setup.p1 ${OBJECTDIR}/menu_userband.p1 ${OBJECTDIR}/menu_volume.p1 ${OBJECTDIR}/rencoder.p1 ${OBJECTDIR}/euart.p1 ${OBJECTDIR}/uart_termio.p1 ${OBJECTDIR}/shell_strutl.p1 ${OBJECTDIR}/term_shell.p1
 
 # Source Files
-SOURCEFILES=ui.c i2c_io.c main.c idle.c lcd_acm1602.c akc6955.c eeprom.c ioports.c menu.c power.c adc_int.c menu_defs.c eepromutil.c ui_updown.c ui_display.c radio_getstat.c helps.c menu_memoryfreq.c i2c_eeprom.c backlight.c menu_scan.c menu_setup.c menu_userband.c menu_volume.c rencoder.c euart.c uart_termio.c
+SOURCEFILES=ui.c i2c_io.c main.c idle.c lcd_acm1602.c akc6955.c eeprom.c ioports.c menu.c power.c adc_int.c menu_defs.c eepromutil.c ui_updown.c ui_display.c radio_getstat.c helps.c menu_memoryfreq.c i2c_eeprom.c backlight.c menu_scan.c menu_setup.c menu_userband.c menu_volume.c rencoder.c euart.c uart_termio.c shell_strutl.c term_shell.c
 
 
 CFLAGS=
@@ -82,7 +82,7 @@ ${OBJECTDIR}/ui.p1: ui.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/ui.p1.d 
        @${RM} ${OBJECTDIR}/ui.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/ui.p1  ui.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/ui.p1  ui.c 
        @-${MV} ${OBJECTDIR}/ui.d ${OBJECTDIR}/ui.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/ui.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -90,7 +90,7 @@ ${OBJECTDIR}/i2c_io.p1: i2c_io.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/i2c_io.p1.d 
        @${RM} ${OBJECTDIR}/i2c_io.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/i2c_io.p1  i2c_io.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/i2c_io.p1  i2c_io.c 
        @-${MV} ${OBJECTDIR}/i2c_io.d ${OBJECTDIR}/i2c_io.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/i2c_io.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -98,7 +98,7 @@ ${OBJECTDIR}/main.p1: main.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/main.p1.d 
        @${RM} ${OBJECTDIR}/main.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/main.p1  main.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/main.p1  main.c 
        @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -106,7 +106,7 @@ ${OBJECTDIR}/idle.p1: idle.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/idle.p1.d 
        @${RM} ${OBJECTDIR}/idle.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/idle.p1  idle.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/idle.p1  idle.c 
        @-${MV} ${OBJECTDIR}/idle.d ${OBJECTDIR}/idle.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/idle.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -114,7 +114,7 @@ ${OBJECTDIR}/lcd_acm1602.p1: lcd_acm1602.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/lcd_acm1602.p1.d 
        @${RM} ${OBJECTDIR}/lcd_acm1602.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/lcd_acm1602.p1  lcd_acm1602.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/lcd_acm1602.p1  lcd_acm1602.c 
        @-${MV} ${OBJECTDIR}/lcd_acm1602.d ${OBJECTDIR}/lcd_acm1602.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/lcd_acm1602.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -122,7 +122,7 @@ ${OBJECTDIR}/akc6955.p1: akc6955.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/akc6955.p1.d 
        @${RM} ${OBJECTDIR}/akc6955.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/akc6955.p1  akc6955.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/akc6955.p1  akc6955.c 
        @-${MV} ${OBJECTDIR}/akc6955.d ${OBJECTDIR}/akc6955.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/akc6955.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -130,7 +130,7 @@ ${OBJECTDIR}/eeprom.p1: eeprom.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/eeprom.p1.d 
        @${RM} ${OBJECTDIR}/eeprom.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/eeprom.p1  eeprom.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/eeprom.p1  eeprom.c 
        @-${MV} ${OBJECTDIR}/eeprom.d ${OBJECTDIR}/eeprom.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/eeprom.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -138,7 +138,7 @@ ${OBJECTDIR}/ioports.p1: ioports.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/ioports.p1.d 
        @${RM} ${OBJECTDIR}/ioports.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/ioports.p1  ioports.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/ioports.p1  ioports.c 
        @-${MV} ${OBJECTDIR}/ioports.d ${OBJECTDIR}/ioports.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/ioports.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -146,7 +146,7 @@ ${OBJECTDIR}/menu.p1: menu.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu.p1.d 
        @${RM} ${OBJECTDIR}/menu.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu.p1  menu.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu.p1  menu.c 
        @-${MV} ${OBJECTDIR}/menu.d ${OBJECTDIR}/menu.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -154,7 +154,7 @@ ${OBJECTDIR}/power.p1: power.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/power.p1.d 
        @${RM} ${OBJECTDIR}/power.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/power.p1  power.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/power.p1  power.c 
        @-${MV} ${OBJECTDIR}/power.d ${OBJECTDIR}/power.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/power.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -162,7 +162,7 @@ ${OBJECTDIR}/adc_int.p1: adc_int.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/adc_int.p1.d 
        @${RM} ${OBJECTDIR}/adc_int.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/adc_int.p1  adc_int.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/adc_int.p1  adc_int.c 
        @-${MV} ${OBJECTDIR}/adc_int.d ${OBJECTDIR}/adc_int.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/adc_int.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -170,7 +170,7 @@ ${OBJECTDIR}/menu_defs.p1: menu_defs.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_defs.p1.d 
        @${RM} ${OBJECTDIR}/menu_defs.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_defs.p1  menu_defs.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_defs.p1  menu_defs.c 
        @-${MV} ${OBJECTDIR}/menu_defs.d ${OBJECTDIR}/menu_defs.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_defs.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -178,7 +178,7 @@ ${OBJECTDIR}/eepromutil.p1: eepromutil.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/eepromutil.p1.d 
        @${RM} ${OBJECTDIR}/eepromutil.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/eepromutil.p1  eepromutil.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/eepromutil.p1  eepromutil.c 
        @-${MV} ${OBJECTDIR}/eepromutil.d ${OBJECTDIR}/eepromutil.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/eepromutil.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -186,7 +186,7 @@ ${OBJECTDIR}/ui_updown.p1: ui_updown.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/ui_updown.p1.d 
        @${RM} ${OBJECTDIR}/ui_updown.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/ui_updown.p1  ui_updown.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/ui_updown.p1  ui_updown.c 
        @-${MV} ${OBJECTDIR}/ui_updown.d ${OBJECTDIR}/ui_updown.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/ui_updown.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -194,7 +194,7 @@ ${OBJECTDIR}/ui_display.p1: ui_display.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/ui_display.p1.d 
        @${RM} ${OBJECTDIR}/ui_display.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/ui_display.p1  ui_display.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/ui_display.p1  ui_display.c 
        @-${MV} ${OBJECTDIR}/ui_display.d ${OBJECTDIR}/ui_display.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/ui_display.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -202,7 +202,7 @@ ${OBJECTDIR}/radio_getstat.p1: radio_getstat.c  nbproject/Makefile-${CND_CONF}.m
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/radio_getstat.p1.d 
        @${RM} ${OBJECTDIR}/radio_getstat.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/radio_getstat.p1  radio_getstat.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/radio_getstat.p1  radio_getstat.c 
        @-${MV} ${OBJECTDIR}/radio_getstat.d ${OBJECTDIR}/radio_getstat.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/radio_getstat.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -210,7 +210,7 @@ ${OBJECTDIR}/helps.p1: helps.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/helps.p1.d 
        @${RM} ${OBJECTDIR}/helps.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/helps.p1  helps.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/helps.p1  helps.c 
        @-${MV} ${OBJECTDIR}/helps.d ${OBJECTDIR}/helps.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/helps.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -218,7 +218,7 @@ ${OBJECTDIR}/menu_memoryfreq.p1: menu_memoryfreq.c  nbproject/Makefile-${CND_CON
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_memoryfreq.p1.d 
        @${RM} ${OBJECTDIR}/menu_memoryfreq.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_memoryfreq.p1  menu_memoryfreq.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_memoryfreq.p1  menu_memoryfreq.c 
        @-${MV} ${OBJECTDIR}/menu_memoryfreq.d ${OBJECTDIR}/menu_memoryfreq.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_memoryfreq.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -226,7 +226,7 @@ ${OBJECTDIR}/i2c_eeprom.p1: i2c_eeprom.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/i2c_eeprom.p1.d 
        @${RM} ${OBJECTDIR}/i2c_eeprom.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/i2c_eeprom.p1  i2c_eeprom.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/i2c_eeprom.p1  i2c_eeprom.c 
        @-${MV} ${OBJECTDIR}/i2c_eeprom.d ${OBJECTDIR}/i2c_eeprom.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/i2c_eeprom.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -234,7 +234,7 @@ ${OBJECTDIR}/backlight.p1: backlight.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/backlight.p1.d 
        @${RM} ${OBJECTDIR}/backlight.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/backlight.p1  backlight.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/backlight.p1  backlight.c 
        @-${MV} ${OBJECTDIR}/backlight.d ${OBJECTDIR}/backlight.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/backlight.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -242,7 +242,7 @@ ${OBJECTDIR}/menu_scan.p1: menu_scan.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_scan.p1.d 
        @${RM} ${OBJECTDIR}/menu_scan.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_scan.p1  menu_scan.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_scan.p1  menu_scan.c 
        @-${MV} ${OBJECTDIR}/menu_scan.d ${OBJECTDIR}/menu_scan.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_scan.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -250,7 +250,7 @@ ${OBJECTDIR}/menu_setup.p1: menu_setup.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_setup.p1.d 
        @${RM} ${OBJECTDIR}/menu_setup.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_setup.p1  menu_setup.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_setup.p1  menu_setup.c 
        @-${MV} ${OBJECTDIR}/menu_setup.d ${OBJECTDIR}/menu_setup.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_setup.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -258,7 +258,7 @@ ${OBJECTDIR}/menu_userband.p1: menu_userband.c  nbproject/Makefile-${CND_CONF}.m
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_userband.p1.d 
        @${RM} ${OBJECTDIR}/menu_userband.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_userband.p1  menu_userband.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_userband.p1  menu_userband.c 
        @-${MV} ${OBJECTDIR}/menu_userband.d ${OBJECTDIR}/menu_userband.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_userband.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -266,7 +266,7 @@ ${OBJECTDIR}/menu_volume.p1: menu_volume.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_volume.p1.d 
        @${RM} ${OBJECTDIR}/menu_volume.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_volume.p1  menu_volume.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_volume.p1  menu_volume.c 
        @-${MV} ${OBJECTDIR}/menu_volume.d ${OBJECTDIR}/menu_volume.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_volume.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -274,7 +274,7 @@ ${OBJECTDIR}/rencoder.p1: rencoder.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/rencoder.p1.d 
        @${RM} ${OBJECTDIR}/rencoder.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/rencoder.p1  rencoder.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/rencoder.p1  rencoder.c 
        @-${MV} ${OBJECTDIR}/rencoder.d ${OBJECTDIR}/rencoder.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/rencoder.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -282,7 +282,7 @@ ${OBJECTDIR}/euart.p1: euart.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/euart.p1.d 
        @${RM} ${OBJECTDIR}/euart.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/euart.p1  euart.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/euart.p1  euart.c 
        @-${MV} ${OBJECTDIR}/euart.d ${OBJECTDIR}/euart.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/euart.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -290,16 +290,32 @@ ${OBJECTDIR}/uart_termio.p1: uart_termio.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/uart_termio.p1.d 
        @${RM} ${OBJECTDIR}/uart_termio.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/uart_termio.p1  uart_termio.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/uart_termio.p1  uart_termio.c 
        @-${MV} ${OBJECTDIR}/uart_termio.d ${OBJECTDIR}/uart_termio.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/uart_termio.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
+${OBJECTDIR}/shell_strutl.p1: shell_strutl.c  nbproject/Makefile-${CND_CONF}.mk
+       @${MKDIR} ${OBJECTDIR} 
+       @${RM} ${OBJECTDIR}/shell_strutl.p1.d 
+       @${RM} ${OBJECTDIR}/shell_strutl.p1 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/shell_strutl.p1  shell_strutl.c 
+       @-${MV} ${OBJECTDIR}/shell_strutl.d ${OBJECTDIR}/shell_strutl.p1.d 
+       @${FIXDEPS} ${OBJECTDIR}/shell_strutl.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
+       
+${OBJECTDIR}/term_shell.p1: term_shell.c  nbproject/Makefile-${CND_CONF}.mk
+       @${MKDIR} ${OBJECTDIR} 
+       @${RM} ${OBJECTDIR}/term_shell.p1.d 
+       @${RM} ${OBJECTDIR}/term_shell.p1 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/term_shell.p1  term_shell.c 
+       @-${MV} ${OBJECTDIR}/term_shell.d ${OBJECTDIR}/term_shell.p1.d 
+       @${FIXDEPS} ${OBJECTDIR}/term_shell.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
+       
 else
 ${OBJECTDIR}/ui.p1: ui.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/ui.p1.d 
        @${RM} ${OBJECTDIR}/ui.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/ui.p1  ui.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/ui.p1  ui.c 
        @-${MV} ${OBJECTDIR}/ui.d ${OBJECTDIR}/ui.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/ui.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -307,7 +323,7 @@ ${OBJECTDIR}/i2c_io.p1: i2c_io.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/i2c_io.p1.d 
        @${RM} ${OBJECTDIR}/i2c_io.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/i2c_io.p1  i2c_io.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/i2c_io.p1  i2c_io.c 
        @-${MV} ${OBJECTDIR}/i2c_io.d ${OBJECTDIR}/i2c_io.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/i2c_io.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -315,7 +331,7 @@ ${OBJECTDIR}/main.p1: main.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/main.p1.d 
        @${RM} ${OBJECTDIR}/main.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/main.p1  main.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/main.p1  main.c 
        @-${MV} ${OBJECTDIR}/main.d ${OBJECTDIR}/main.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/main.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -323,7 +339,7 @@ ${OBJECTDIR}/idle.p1: idle.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/idle.p1.d 
        @${RM} ${OBJECTDIR}/idle.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/idle.p1  idle.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/idle.p1  idle.c 
        @-${MV} ${OBJECTDIR}/idle.d ${OBJECTDIR}/idle.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/idle.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -331,7 +347,7 @@ ${OBJECTDIR}/lcd_acm1602.p1: lcd_acm1602.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/lcd_acm1602.p1.d 
        @${RM} ${OBJECTDIR}/lcd_acm1602.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/lcd_acm1602.p1  lcd_acm1602.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/lcd_acm1602.p1  lcd_acm1602.c 
        @-${MV} ${OBJECTDIR}/lcd_acm1602.d ${OBJECTDIR}/lcd_acm1602.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/lcd_acm1602.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -339,7 +355,7 @@ ${OBJECTDIR}/akc6955.p1: akc6955.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/akc6955.p1.d 
        @${RM} ${OBJECTDIR}/akc6955.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/akc6955.p1  akc6955.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/akc6955.p1  akc6955.c 
        @-${MV} ${OBJECTDIR}/akc6955.d ${OBJECTDIR}/akc6955.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/akc6955.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -347,7 +363,7 @@ ${OBJECTDIR}/eeprom.p1: eeprom.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/eeprom.p1.d 
        @${RM} ${OBJECTDIR}/eeprom.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/eeprom.p1  eeprom.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/eeprom.p1  eeprom.c 
        @-${MV} ${OBJECTDIR}/eeprom.d ${OBJECTDIR}/eeprom.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/eeprom.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -355,7 +371,7 @@ ${OBJECTDIR}/ioports.p1: ioports.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/ioports.p1.d 
        @${RM} ${OBJECTDIR}/ioports.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/ioports.p1  ioports.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/ioports.p1  ioports.c 
        @-${MV} ${OBJECTDIR}/ioports.d ${OBJECTDIR}/ioports.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/ioports.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -363,7 +379,7 @@ ${OBJECTDIR}/menu.p1: menu.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu.p1.d 
        @${RM} ${OBJECTDIR}/menu.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu.p1  menu.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu.p1  menu.c 
        @-${MV} ${OBJECTDIR}/menu.d ${OBJECTDIR}/menu.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -371,7 +387,7 @@ ${OBJECTDIR}/power.p1: power.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/power.p1.d 
        @${RM} ${OBJECTDIR}/power.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/power.p1  power.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/power.p1  power.c 
        @-${MV} ${OBJECTDIR}/power.d ${OBJECTDIR}/power.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/power.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -379,7 +395,7 @@ ${OBJECTDIR}/adc_int.p1: adc_int.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/adc_int.p1.d 
        @${RM} ${OBJECTDIR}/adc_int.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/adc_int.p1  adc_int.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/adc_int.p1  adc_int.c 
        @-${MV} ${OBJECTDIR}/adc_int.d ${OBJECTDIR}/adc_int.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/adc_int.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -387,7 +403,7 @@ ${OBJECTDIR}/menu_defs.p1: menu_defs.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_defs.p1.d 
        @${RM} ${OBJECTDIR}/menu_defs.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_defs.p1  menu_defs.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_defs.p1  menu_defs.c 
        @-${MV} ${OBJECTDIR}/menu_defs.d ${OBJECTDIR}/menu_defs.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_defs.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -395,7 +411,7 @@ ${OBJECTDIR}/eepromutil.p1: eepromutil.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/eepromutil.p1.d 
        @${RM} ${OBJECTDIR}/eepromutil.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/eepromutil.p1  eepromutil.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/eepromutil.p1  eepromutil.c 
        @-${MV} ${OBJECTDIR}/eepromutil.d ${OBJECTDIR}/eepromutil.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/eepromutil.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -403,7 +419,7 @@ ${OBJECTDIR}/ui_updown.p1: ui_updown.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/ui_updown.p1.d 
        @${RM} ${OBJECTDIR}/ui_updown.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/ui_updown.p1  ui_updown.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/ui_updown.p1  ui_updown.c 
        @-${MV} ${OBJECTDIR}/ui_updown.d ${OBJECTDIR}/ui_updown.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/ui_updown.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -411,7 +427,7 @@ ${OBJECTDIR}/ui_display.p1: ui_display.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/ui_display.p1.d 
        @${RM} ${OBJECTDIR}/ui_display.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/ui_display.p1  ui_display.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/ui_display.p1  ui_display.c 
        @-${MV} ${OBJECTDIR}/ui_display.d ${OBJECTDIR}/ui_display.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/ui_display.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -419,7 +435,7 @@ ${OBJECTDIR}/radio_getstat.p1: radio_getstat.c  nbproject/Makefile-${CND_CONF}.m
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/radio_getstat.p1.d 
        @${RM} ${OBJECTDIR}/radio_getstat.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/radio_getstat.p1  radio_getstat.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/radio_getstat.p1  radio_getstat.c 
        @-${MV} ${OBJECTDIR}/radio_getstat.d ${OBJECTDIR}/radio_getstat.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/radio_getstat.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -427,7 +443,7 @@ ${OBJECTDIR}/helps.p1: helps.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/helps.p1.d 
        @${RM} ${OBJECTDIR}/helps.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/helps.p1  helps.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/helps.p1  helps.c 
        @-${MV} ${OBJECTDIR}/helps.d ${OBJECTDIR}/helps.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/helps.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -435,7 +451,7 @@ ${OBJECTDIR}/menu_memoryfreq.p1: menu_memoryfreq.c  nbproject/Makefile-${CND_CON
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_memoryfreq.p1.d 
        @${RM} ${OBJECTDIR}/menu_memoryfreq.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_memoryfreq.p1  menu_memoryfreq.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_memoryfreq.p1  menu_memoryfreq.c 
        @-${MV} ${OBJECTDIR}/menu_memoryfreq.d ${OBJECTDIR}/menu_memoryfreq.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_memoryfreq.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -443,7 +459,7 @@ ${OBJECTDIR}/i2c_eeprom.p1: i2c_eeprom.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/i2c_eeprom.p1.d 
        @${RM} ${OBJECTDIR}/i2c_eeprom.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/i2c_eeprom.p1  i2c_eeprom.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/i2c_eeprom.p1  i2c_eeprom.c 
        @-${MV} ${OBJECTDIR}/i2c_eeprom.d ${OBJECTDIR}/i2c_eeprom.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/i2c_eeprom.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -451,7 +467,7 @@ ${OBJECTDIR}/backlight.p1: backlight.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/backlight.p1.d 
        @${RM} ${OBJECTDIR}/backlight.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/backlight.p1  backlight.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/backlight.p1  backlight.c 
        @-${MV} ${OBJECTDIR}/backlight.d ${OBJECTDIR}/backlight.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/backlight.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -459,7 +475,7 @@ ${OBJECTDIR}/menu_scan.p1: menu_scan.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_scan.p1.d 
        @${RM} ${OBJECTDIR}/menu_scan.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_scan.p1  menu_scan.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_scan.p1  menu_scan.c 
        @-${MV} ${OBJECTDIR}/menu_scan.d ${OBJECTDIR}/menu_scan.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_scan.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -467,7 +483,7 @@ ${OBJECTDIR}/menu_setup.p1: menu_setup.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_setup.p1.d 
        @${RM} ${OBJECTDIR}/menu_setup.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_setup.p1  menu_setup.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_setup.p1  menu_setup.c 
        @-${MV} ${OBJECTDIR}/menu_setup.d ${OBJECTDIR}/menu_setup.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_setup.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -475,7 +491,7 @@ ${OBJECTDIR}/menu_userband.p1: menu_userband.c  nbproject/Makefile-${CND_CONF}.m
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_userband.p1.d 
        @${RM} ${OBJECTDIR}/menu_userband.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_userband.p1  menu_userband.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_userband.p1  menu_userband.c 
        @-${MV} ${OBJECTDIR}/menu_userband.d ${OBJECTDIR}/menu_userband.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_userband.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -483,7 +499,7 @@ ${OBJECTDIR}/menu_volume.p1: menu_volume.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/menu_volume.p1.d 
        @${RM} ${OBJECTDIR}/menu_volume.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/menu_volume.p1  menu_volume.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/menu_volume.p1  menu_volume.c 
        @-${MV} ${OBJECTDIR}/menu_volume.d ${OBJECTDIR}/menu_volume.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/menu_volume.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -491,7 +507,7 @@ ${OBJECTDIR}/rencoder.p1: rencoder.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/rencoder.p1.d 
        @${RM} ${OBJECTDIR}/rencoder.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/rencoder.p1  rencoder.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/rencoder.p1  rencoder.c 
        @-${MV} ${OBJECTDIR}/rencoder.d ${OBJECTDIR}/rencoder.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/rencoder.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -499,7 +515,7 @@ ${OBJECTDIR}/euart.p1: euart.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/euart.p1.d 
        @${RM} ${OBJECTDIR}/euart.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/euart.p1  euart.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/euart.p1  euart.c 
        @-${MV} ${OBJECTDIR}/euart.d ${OBJECTDIR}/euart.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/euart.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
@@ -507,10 +523,26 @@ ${OBJECTDIR}/uart_termio.p1: uart_termio.c  nbproject/Makefile-${CND_CONF}.mk
        @${MKDIR} ${OBJECTDIR} 
        @${RM} ${OBJECTDIR}/uart_termio.p1.d 
        @${RM} ${OBJECTDIR}/uart_termio.p1 
-       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"    -o${OBJECTDIR}/uart_termio.p1  uart_termio.c 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/uart_termio.p1  uart_termio.c 
        @-${MV} ${OBJECTDIR}/uart_termio.d ${OBJECTDIR}/uart_termio.p1.d 
        @${FIXDEPS} ${OBJECTDIR}/uart_termio.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
        
+${OBJECTDIR}/shell_strutl.p1: shell_strutl.c  nbproject/Makefile-${CND_CONF}.mk
+       @${MKDIR} ${OBJECTDIR} 
+       @${RM} ${OBJECTDIR}/shell_strutl.p1.d 
+       @${RM} ${OBJECTDIR}/shell_strutl.p1 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/shell_strutl.p1  shell_strutl.c 
+       @-${MV} ${OBJECTDIR}/shell_strutl.d ${OBJECTDIR}/shell_strutl.p1.d 
+       @${FIXDEPS} ${OBJECTDIR}/shell_strutl.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
+       
+${OBJECTDIR}/term_shell.p1: term_shell.c  nbproject/Makefile-${CND_CONF}.mk
+       @${MKDIR} ${OBJECTDIR} 
+       @${RM} ${OBJECTDIR}/term_shell.p1.d 
+       @${RM} ${OBJECTDIR}/term_shell.p1 
+       ${MP_CC} --pass1 $(MP_EXTRA_CC_PRE) --chip=$(MP_PROCESSOR_OPTION) -Q -G  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"    -o${OBJECTDIR}/term_shell.p1  term_shell.c 
+       @-${MV} ${OBJECTDIR}/term_shell.d ${OBJECTDIR}/term_shell.p1.d 
+       @${FIXDEPS} ${OBJECTDIR}/term_shell.p1.d $(SILENT) -rsi ${MP_CC_DIR}../  
+       
 endif
 
 # ------------------------------------------------------------------------------------
@@ -524,13 +556,13 @@ endif
 ifeq ($(TYPE_IMAGE), DEBUG_RUN)
 dist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES}  nbproject/Makefile-${CND_CONF}.mk    
        @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE} 
-       ${MP_CC} $(MP_EXTRA_LD_PRE) --chip=$(MP_PROCESSOR_OPTION) -G -mdist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.map  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"     --rom=default,-fd30-ffff --ram=default,-ef4-eff,-f9c-f9c,-fd4-fd4,-fdb-fdf,-fe3-fe7,-feb-fef,-ffd-fff  -odist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}  ${OBJECTFILES_QUOTED_IF_SPACED}     
+       ${MP_CC} $(MP_EXTRA_LD_PRE) --chip=$(MP_PROCESSOR_OPTION) -G -mdist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.map  -D__DEBUG=1 --debugger=pickit3  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"     --rom=default,-fd30-ffff --ram=default,-ef4-eff,-f9c-f9c,-fd4-fd4,-fdb-fdf,-fe3-fe7,-feb-fef,-ffd-fff  -odist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}  ${OBJECTFILES_QUOTED_IF_SPACED}     
        @${RM} dist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.hex 
        
 else
 dist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES}  nbproject/Makefile-${CND_CONF}.mk   
        @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE} 
-       ${MP_CC} $(MP_EXTRA_LD_PRE) --chip=$(MP_PROCESSOR_OPTION) -G -mdist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.map  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: %s" "--warnformat=%f:%l: warning: %s" "--msgformat=%f:%l: advisory: %s"     -odist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}  ${OBJECTFILES_QUOTED_IF_SPACED}     
+       ${MP_CC} $(MP_EXTRA_LD_PRE) --chip=$(MP_PROCESSOR_OPTION) -G -mdist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.map  --double=24 --float=24 --emi=wordwrite --opt=default,+asm,+asmfile,-speed,+space,-debug --addrqual=require --mode=free -P -N255 --warn=0 --asmlist --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,-download,-config,+clib,+plib --output=-mcof,+elf "--errformat=%f:%l: error: (%n) %s" "--warnformat=%f:%l: warning: (%n) %s" "--msgformat=%f:%l: advisory: (%n) %s"     -odist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}  ${OBJECTFILES_QUOTED_IF_SPACED}     
        
        @echo Normalizing hex file
        @"/opt/microchip/mplabx/mplab_ide/mplab_ide/modules/../../bin/hexmate" --edf="/opt/microchip/mplabx/mplab_ide/mplab_ide/modules/../../dat/en_msgs.txt" dist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.hex -odist/${CND_CONF}/${IMAGE_TYPE}/OPENI2CRADIO_6955.X.${IMAGE_TYPE}.hex
index d1995c7..92ae58d 100644 (file)
@@ -1,8 +1,8 @@
 #
-#Thu Nov 07 15:08:22 JST 2013
+#Thu Nov 07 19:46:53 JST 2013
 default.languagetoolchain.dir=/opt/microchip/xc8/v1.21/bin
-com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=0d2b1469ad71adb787c711a416386331
+com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=0b040d5e5949b59f004c7912367437ce
 default.languagetoolchain.version=1.21
 host.platform=linux
 conf.ids=default
-default.com-microchip-mplab-nbide-toolchainXC8-XC8LanguageToolchain.md5=1b3e17eea10b9e6765d1132465030f97
+default.com-microchip-mplab-nbide-toolchainXC8-XC8LanguageToolchain.md5=a438870e1ab5a32b9f261a9bd76d1091
index c16c542..d347f19 100644 (file)
@@ -18,7 +18,7 @@ PATH_TO_IDE_BIN=/opt/microchip/mplabx/mplab_ide/mplab_ide/modules/../../bin/
 # Adding MPLAB X bin directory to path.
 PATH:=/opt/microchip/mplabx/mplab_ide/mplab_ide/modules/../../bin/:$(PATH)
 # Path to java used to run MPLAB X when this makefile was created
-MP_JAVA_PATH="/opt/microchip/mplabx/sys/java/jre1.7.0_17/bin/"
+MP_JAVA_PATH="/opt/microchip/mplabx/sys/java/jre1.7.0_25/bin/"
 OS_CURRENT="$(shell uname -s)"
 MP_CC="/opt/microchip/xc8/v1.21/bin/xc8"
 # MP_CPPC is not defined
index e195899..24606b5 100644 (file)
     <itemPath>euart.c</itemPath>
     <itemPath>euart.h</itemPath>
     <itemPath>uart_termio.c</itemPath>
+    <itemPath>shell_strutl.c</itemPath>
+    <itemPath>shell_strutl.h</itemPath>
+    <itemPath>term_shell.c</itemPath>
+    <itemPath>uart_termio.h</itemPath>
+    <itemPath>term_shell.h</itemPath>
   </logicalFolder>
   <sourceRootList>
     <Elem>/usr/local/share/sdcc/lib/src/pic16/libc</Elem>
         <property key="ToolFirmwareFilePath"
                   value="Press to browse for a specific firmware version"/>
         <property key="ToolFirmwareOption.UseLatestFirmware" value="true"/>
+        <property key="firmware.download.all" value="false"/>
         <property key="hwtoolclock.frcindebug" value="false"/>
         <property key="memories.aux" value="false"/>
         <property key="memories.bootflash" value="false"/>
diff --git a/shell_strutl.c b/shell_strutl.c
new file mode 100644 (file)
index 0000000..ef6bc26
--- /dev/null
@@ -0,0 +1,367 @@
+/*
+ * OpenI2CRADIO
+ * String utls
+ * Copyright (C) 2013-11-07 K.Ohta <whatisthis.sowhat ai gmail.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2,
+ *  or (at your option) any later version.
+ *  This library / program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *  See the GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this library; see the file COPYING. If not, write to the
+ *  Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
+ *  MA 02110-1301, USA.
+ *
+ *  As a special exception, if you link this(includeed from sdcc) library
+ *  with other files, some of which are compiled with SDCC,
+ *  to produce an executable, this library does not by itself cause
+ *  the resulting executable to be covered by the GNU General Public License.
+ *  This exception does not however invalidate any other reasons why
+ *  the executable file might be covered by the GNU General Public License.
+ */
+
+#if defined(__SDCC)
+#include <sdcc-lib.h>
+#include <pic18fregs.h> /* ONLY FOR PIC18x */
+#include <delay.h>
+#else
+#include <xc.h>
+#endif
+#include <signal.h>
+
+#include "shell_strutl.h"
+
+unsigned char c2h(unsigned char c)
+{
+    if(c < '1') return 0xff;
+    if(c > 'F') return 0xff;
+    if(c <= '9') return c - '0';
+    if(c >= 'A') return c - 'A' + 10;
+    return 0xff;
+}
+
+
+unsigned char hex2byte(unsigned char *p)
+{
+    unsigned char h, l;
+    h = c2h(p[0]);
+    l  = c2h(p[1]);
+    if((h >= 0x10) || (l >= 0x10)) return 0;
+    return (h << 4) | l;
+}
+
+unsigned char check_eol(unsigned char *p)
+{
+    unsigned char i;
+    unsigned char c;
+    for(i = 0; i < 2; i++){
+        c = p[i];
+        switch(c){
+            case '\0':
+            case '\n':
+                return 0xff;
+                break;
+            default:
+                break;
+        }
+        if(c < '0') return 0xff;
+        if(c > 'F') return 0xff;
+    }
+    return 0;
+}
+
+unsigned char migrate_hex(unsigned char *p)
+{
+    unsigned char i;
+    unsigned char c;
+    for(i = 0; i < 2; i++){
+        c = p[i];
+        if(c < '0') return 0;
+        if(c > 'F') return 0;
+        if((c > '9') && (c < 'A')) return 0;
+    }
+    return 0xff;
+}
+
+char str_shexheader(unsigned char *s, unsigned char *file)
+{
+    unsigned char pp;
+    unsigned char sum;
+    unsigned char c;
+    unsigned char bytes;
+    unsigned int i;
+    if(check_eol(s) != 0) return TERM_NULL;
+
+    if((s[0] != 'S') || (s[1] != '0')) return TERM_NONSREC;
+
+    if(migrate_hex(&s[2])  == 0) return TERM_NONSREC;
+    bytes = hex2byte(&s[2]);
+    if(bytes <= 2) return TERM_SRECERR;
+    for(i = 4; i < 8; i++) if(s[i] != '0') return TERM_NONHDR;
+    sum = 0;
+    bytes -= 2;
+    pp = 0;
+     while(bytes > 1) {
+        if(migrate_hex(&s[i]) == 0) return TERM_SRECERR;
+        c = hex2byte(&s[i]);
+        sum += c;
+        file[pp] = c;
+        i += 2;
+        pp++;
+        bytes--;
+    }
+    file[pp] = '\0';
+    if(migrate_hex(&s[i]) == 0) return TERM_SRECERR;
+    c = hex2byte(&s[i]);
+    if(c != sum) return TERM_SUMERR;
+    return TERM_OK;
+}
+
+
+/*
+ * 'S1' record to hex
+ * Accept only S1 and S9.
+ */
+char str_shex2bin(unsigned char *s, unsigned char *p, unsigned int *addr, unsigned char *len)
+{
+    unsigned char sum = 0;
+    unsigned char pp;
+    unsigned int i;
+    unsigned char bytes;
+    unsigned char h, l;
+    unsigned char c;
+    // Get Header
+    if(s[0] != 'S')  return TERM_NONSREC;
+    if(s[1] == '1') { //  Data coire
+        for(i = 2; i < 8; i += 2) if(migrate_hex(&s[i]) == 0) return TERM_SRECERR;
+        bytes = hex2byte(&s[2]);
+        if(bytes <= 3) return TERM_SRECERR;
+        sum = bytes;
+        h = hex2byte(&s[4]);
+        l  = hex2byte(&s[6]);
+        *addr = (h << 8) | l;
+        sum = sum + h + l;
+        bytes -= 2;
+        *len = bytes - 1;
+        pp = 0;
+        i = 8;
+        while(bytes > 1) {
+            if(migrate_hex(&s[i]) == 0) return TERM_SRECERR;
+            c = hex2byte(&s[i]);
+            sum += c;
+            p[pp] = c;
+            i += 2;
+            pp++;
+             bytes--;
+        }
+        if(migrate_hex(&s[i]) == 0) return TERM_SUMERR;
+        c = hex2byte(&s[i]);
+        if(c != sum) return TERM_SUMERR;
+        /*
+         * OK!
+         */
+    } else if(s[1] == '9') {
+        if((s[2] != '0') || (s[3] != '3')) return TERM_SRECERR;
+        for(i = 4; i < 10; i += 2)  if(migrate_hex(&s[i]) == 0) return TERM_SRECERR;
+        sum= 3;
+        h = hex2byte(&s[4]);
+        l = hex2byte(&s[6]);
+        c = hex2byte(&s[8]);
+        *addr = (h << 8) | l;
+        *len = 0;
+        sum = sum + h + l;
+        if(c != sum) return TERM_SUMERR;
+        return TERM_SRECEND;
+    } else {
+
+        return TERM_UNDSREC;
+    }
+    return TERM_OK;
+}
+
+void bin2hex(char *s, unsigned char v)
+{
+    s[0] = v >> 4;
+    s[1] = v & 0x0f;
+    s[2] = 0x00;
+}
+
+/*
+ * Set "S1" Record
+ */
+unsigned char str_bin2hex(unsigned char *s, unsigned char *p, unsigned int addr, unsigned char len)
+{
+    unsigned int pp;
+    unsigned char pv;
+    unsigned char sum;
+    unsigned char i;
+    unsigned char c;
+    s[0] = 'S';
+    s[1] = '1';
+    if(len > 254) len = 254;
+    i = len + 1;
+    sum = i;
+    bin2hex(&s[2], i);
+
+    c = addr >> 8;
+    sum += c;
+    bin2hex(&s[4], c);
+
+    c = addr & 255;
+    sum += c;
+    bin2hex(&s[6], c);
+
+    pp = 8;
+    for(pv = 0; pv < len ; pv++){
+        c = p[pv];
+        sum += c;
+        bin2hex(&s[pp], c);
+        pp += 2;
+    }
+    bin2hex(&s[pp], sum);
+    pp += 2;
+    s[pp] = '\n';
+    s[pp + 1] = '\0';
+    return len;
+}
+
+unsigned char str_put_shexheader(unsigned char *s, char *filename)
+{
+    unsigned int i;
+    unsigned char pp;
+    unsigned char len;
+    unsigned char sum;
+    s[0] = 'S';
+    s[1] = '0';
+    len = shell_strlen(filename);
+    if(len > 252) len = 252;
+    sum = len+3;
+    bin2hex(&s[2], len + 3);
+
+    for(i = 4; i < 8; i++) s[i] = '0';
+    i = 8;
+    pp = 0;
+    while(pp != len){
+        bin2hex(&s[i], filename[pp]);
+        sum += s[i];
+        i += 2;
+        pp++;
+    }
+    bin2hex(&s[i], sum);
+    s[i + 2] = '\n';
+    s[i + 3] = '\0';
+    return len;
+}
+
+unsigned char str_put_shexfooter(unsigned char *s)
+{
+    unsigned int i;
+    unsigned char pp;
+    unsigned char sum;
+    s[0] = 'S';
+    s[1] = '9';
+    s[2] = '0';
+    s[3] = '3';
+    sum = 3;
+    for(pp = 4; pp < 8; pp++) s[pp] = '0';
+    bin2hex(&s[pp], sum);
+
+    s[pp + 2] = '\n';
+    s[pp + 3] = '\0';
+    return 0;
+}
+
+
+unsigned char shell_strlen(char *s)
+{
+    unsigned char i = 0;
+    while(i < 255) {
+        if(s[i] == '\0') break;
+        i++;
+    }
+    return i;
+}
+
+unsigned char shell_gettok(char *dst, char *src)
+{
+    unsigned char i;
+    i = 0;
+    while(src[i] != '\0') {
+        if(src[i] == ' ') break;
+        if(src[i] == '\t') break;
+        dst[i] = src[i];
+        i++;
+        if(i > 128) break;
+    }
+    dst[i] = '\0';
+    return i;
+}
+
+int shell_strcmp(char *from, char *to)
+{
+    unsigned char f, t;
+    unsigned char i;
+    int p = 0;
+
+    f = shell_strlen(from);
+    t = shell_strlen(to);
+    i = f;
+    if(i > t) i = t;
+    while(i != 0){
+        if(from[p] != to[p]) return -1;
+        p++;
+        i--;
+    }
+    return p;
+}
+
+long term_getuint(char *pool)
+{
+    long i = 0;
+    unsigned char p = 0;
+    unsigned char c;
+
+    do {
+        c = pool[p];
+        if((c < '0') || (c > '9')) return -1;
+        if(c == '\0') break;
+        i *= 10;
+        i = i + (c - '0');
+        p++;
+    } while(p <= 10);
+
+    return i;
+}
+
+void term_printnum(char *pool, unsigned int num)
+{
+    char p[5];
+    unsigned char i, j, ii;
+
+    for(i = 0; i < 5; i++){
+        p[i] = num % 10;
+        num = num / 10;
+    }
+    i = 4;
+    do {
+        if(p[i] != 0) break;
+        i--;
+    } while(i != 0);
+    if(i == 0){
+        pool[0] = '0';
+        pool[1] = '\0';
+        return;
+    }
+    ii = i;
+    for(j = 0; j <= ii; j++) {
+        pool[j] = p[i] + '0';
+        i--;
+    }
+    pool[j] = '\0';
+    return;
+}
diff --git a/shell_strutl.h b/shell_strutl.h
new file mode 100644 (file)
index 0000000..1232728
--- /dev/null
@@ -0,0 +1,70 @@
+/*
+ * OpenI2CRADIO
+ * String utls header.
+ * Copyright (C) 2013-11-07 K.Ohta <whatisthis.sowhat ai gmail.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2,
+ *  or (at your option) any later version.
+ *  This library / program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *  See the GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this library; see the file COPYING. If not, write to the
+ *  Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
+ *  MA 02110-1301, USA.
+ *
+ *  As a special exception, if you link this(includeed from sdcc) library
+ *  with other files, some of which are compiled with SDCC,
+ *  to produce an executable, this library does not by itself cause
+ *  the resulting executable to be covered by the GNU General Public License.
+ *  This exception does not however invalidate any other reasons why
+ *  the executable file might be covered by the GNU General Public License.
+ */
+
+#ifndef SHELL_STRUTL_H
+#define        SHELL_STRUTL_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define TERM_OK 0
+#define TERM_NONSREC -1
+#define TERM_STRERR -2
+#define TERM_SUMERR -3
+#define TERM_SRECERR -4
+#define TERM_UNDSREC -5
+#define TERM_SRECEND -15
+#define TERM_NULL -16
+#define TERM_NONHDR -17
+
+extern unsigned char hex2byte(unsigned char *p);
+extern unsigned char check_eol(unsigned char *p);
+extern unsigned char c2h(unsigned char c);
+extern unsigned char migrate_hex(unsigned char *p);
+
+extern char str_shexheader(unsigned char *s, unsigned char *file);
+extern char str_shex2bin(unsigned char *s, unsigned char *p, unsigned int *addr, unsigned char *len);
+
+extern unsigned char str_put_shexheader(unsigned char *s, char *filename);
+extern unsigned char str_bin2hex(unsigned char *s, unsigned char *p, unsigned int addr, unsigned char len);
+extern unsigned char str_put_shexfooter(unsigned char *s);
+
+extern unsigned char shell_strlen(char *s);
+extern unsigned char shell_gettok(char *dst, char *src);
+extern int shell_strcmp(char *from, char *to);
+
+extern long term_getuint(char *pool);
+extern void term_printnum(char *pool, unsigned int num);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* SHELL_STRUTL_H */
+
diff --git a/term_shell.c b/term_shell.c
new file mode 100644 (file)
index 0000000..6d1d48f
--- /dev/null
@@ -0,0 +1,401 @@
+/*
+ * OpenI2CRADIO
+ * Shell Handler
+ * Copyright (C) 2013-11-07 K.Ohta <whatisthis.sowhat ai gmail.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2,
+ *  or (at your option) any later version.
+ *  This library / program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *  See the GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this library; see the file COPYING. If not, write to the
+ *  Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
+ *  MA 02110-1301, USA.
+ *
+ *  As a special exception, if you link this(includeed from sdcc) library
+ *  with other files, some of which are compiled with SDCC,
+ *  to produce an executable, this library does not by itself cause
+ *  the resulting executable to be covered by the GNU General Public License.
+ *  This exception does not however invalidate any other reasons why
+ *  the executable file might be covered by the GNU General Public License.
+ */
+
+#if defined(__SDCC)
+#include <sdcc-lib.h>
+#include <pic18fregs.h> /* ONLY FOR PIC18x */
+#include <delay.h>
+#else
+#include <xc.h>
+#endif
+#include <signal.h>
+
+#include "iodef.h"
+#include "idle.h"
+#include "ioports.h"
+#include "euart.h"
+#include "menu.h"
+#include "power.h"
+#include "shell_strutl.h"
+#include "uart_termio.h"
+#include "term_shell.h"
+
+
+char cmd_shellstr[255];
+static char shell_strbuf[255];
+static char xarg1[128];
+static char xarg2[128];
+static char xarg3[128];
+
+#define SHELL_CMD_NONE -1
+#define SHELL_CMD_NOTFOUND -2
+#define SHELL_CMD_ILLTOKEN -3
+#define SHELL_CMD_TOOLONG -4
+#define SHELL_CMD_OK 0
+
+#define SHELL_TOPCMDS 16
+
+static void shell_printnum(unsigned int v)
+{
+    char s[32];
+    s[0] = '\0';
+    term_printnum(s, v);
+    uart_term_putstr(s);
+}
+/*
+ * Set Frequency: Arg1 = Freq.
+ */
+static void term_freq(char *p)
+{
+    unsigned int freq;
+    long l;
+
+    l = term_getuint(p);
+    uart_term_putstr("\nSet Freq:");
+    if((l < 0) || (l > 30000)) {
+        uart_term_putstr("\nE:Illegal freq range.\n");
+        return;
+    }
+    freq = (unsigned int)l;
+    if(setup.fm == 0){
+        shell_printnum(setup.amfreq);
+        // AM
+        setup.amfreq = freq;
+    } else {
+        shell_printnum(setup.fmfreq);
+        // FM
+        setup.fmfreq = freq;
+    }
+    uart_term_putstr("->");
+    shell_printnum(freq);
+
+    akc6955_set_freq(freq);
+    uart_term_putstr("\ndone.\n");
+}
+
+/*
+ * Print status
+ * Arg = none.
+ */
+static void term_printstatus(char *p)
+{
+    uart_term_putstr("\nStatus:\n");
+    if(setup.fm == 0){
+        uart_term_putstr("AM \nBand = ");
+        shell_printnum(setup.amband);
+        uart_term_putstr("\nFreq = ");
+        shell_printnum(setup.amfreq);
+        uart_term_putstr("\n");
+    } else {
+        uart_term_putstr("FM \nBand = ");
+        shell_printnum(setup.fmband);
+        uart_term_putstr("\nFreq = ");
+        shell_printnum(setup.fmfreq);
+        uart_term_putstr("\n");
+    }
+
+    uart_term_putstr("\n");
+}
+
+static void term_help(char *p)
+{
+
+}
+
+/*
+ * Poweroff.
+ * Arg1: 'N'/'n' : not save.
+ */
+static void term_poweroff(char *p)
+{
+    unsigned char s[16];
+    unsigned char slen;
+    unsigned char savef = 0xff;
+    xarg1[0] = '\0';
+    slen = shell_gettok(xarg1, p);
+    if(shell_strlen(xarg1) != 0) {
+        if((xarg1[0] == 'N') || (xarg1[0] == 'n')) savef = 0;
+    }
+    uart_term_putstr("\n*** Power OFF ***\nOK? (Yes = Y)");
+    uart_term_getstr(s, 15, 0xff);
+    if(shell_strlen(s) != 1) return;
+    if(s[0] == 'Y') shutdown(savef);
+}
+
+
+static void term_poweron(char *p)
+{
+}
+
+static unsigned char put_hexline(unsigned char *dat, unsigned int addr, unsigned char len)
+{
+    unsigned char l;
+    l = str_bin2hex((unsigned char *)shell_strbuf, dat, addr, len);
+    uart_term_putstr(shell_strbuf);
+    return l;
+}
+
+static void put_hexheader(char *fname)
+{
+    uart_term_putstr("Start of save value.\n--- BEGIN ---\n");
+    str_put_shexheader(shell_strbuf, fname);
+    uart_term_putstr(shell_strbuf);
+}
+
+
+static void put_hexfooter(void)
+{
+    str_put_shexfooter(shell_strbuf);
+    uart_term_putstr(shell_strbuf);
+    uart_term_putstr("\n--- END---\n");
+}
+
+/*
+ * Save ROM as S record.
+ */
+static void save_to_term(unsigned char *p)
+{
+    unsigned char slen;
+    unsigned int len;
+    unsigned int pp;
+    long i;
+    int addr;
+    unsigned char *pv;
+
+    slen = shell_gettok(xarg1, p);
+    addr = 0;
+
+    if(shell_strcmp(xarg1, "INT") == 0) { // Internal EEPROM
+        put_hexheader("INT_EEPROM");
+        len = sizeof(__radioset_t);
+        p = &setup;
+        for(pp = 0; pp < sizeof(__radioset_t); pp += 16){
+            if(len > 16) {
+                put_hexline(&pv[pp], pp, 16);
+                len -= 16;
+            } else {
+                put_hexline(&pv[pp], pp, len);
+            }
+        }
+        put_hexfooter();
+    } else if(shell_strcmp(xarg1, "FTBL") == 0) { // External EEPROM, Freq TBL
+        put_hexheader("EXT_FREQTBL");
+        put_hexfooter();
+    } else if(shell_strcmp(xarg1, "BAND") == 0) { // band
+        put_hexheader("EXT_BANDTBL");
+        put_hexfooter();
+    }
+}
+
+/*
+ * Open the Shell: Return cmdcode.
+ */
+const char *cmdstr[SHELL_TOPCMDS] = {
+    "HELP",
+    "FREQ",
+    "STAT",
+    "LOAD",
+    "SAVE",
+    "FM",
+    "AM",
+    "POFF",
+    "PON",
+    "SEQ",
+    "LOG",
+    "SCAN",
+    "BAND",
+    "SET",
+    "PRINT",
+    "EXIT"
+};
+
+static void cmd_printhelp(char cmdnum)
+{
+    uart_term_putstr("\nSynopsys:\n");
+    switch(cmdnum){
+        case 0:
+            uart_term_putstr("HELP [about-command]\n");
+            uart_term_putstr(" -- Online help.\n");
+            break;
+        case 1:
+            uart_term_putstr("FREQ frequency\n");
+            uart_term_putstr(" -- Set frequency.\n");
+            break;
+        case 2:
+            uart_term_putstr("\nSTAT\n");
+            uart_term_putstr(" -- Print status.\n");
+            break;
+        case 3:
+            uart_term_putstr("\nLOAD direction [S]\n");
+            uart_term_putstr(" -- Load settings from terminal.\n");
+            uart_term_putstr("      Arg2: if 'S' then Save to internal EEPROM.\n");
+           break;
+        case 4:
+            uart_term_putstr("\nSAVE section\n");
+            uart_term_putstr(" -- Save settings  to terminal.\n");
+            break;
+        case 5:
+            uart_term_putstr("\nFM\n");
+            uart_term_putstr(" -- Change to FM\n");
+            break;
+        case 6:
+            uart_term_putstr("\nAM\n");
+            uart_term_putstr(" -- Change to AM\n");
+            break;
+        case 7:
+            uart_term_putstr("\nPOFF [savef]\n");
+            uart_term_putstr(" -- Power OFF\n");
+            uart_term_putstr("      savef: if 'N' then power-off without saving.\n");
+            break;
+        case 8:
+            uart_term_putstr("\nPON\n");
+            uart_term_putstr(" -- Power ON\n");
+            break;
+        case 9:
+            uart_term_putstr("\nSEQ\n");
+            break;
+        case 10:
+            uart_term_putstr("\nLOG\n");
+            uart_term_putstr(" -- View LOG(Reserved command)\n");
+            break;
+        case 11:
+            uart_term_putstr("\nSCAN [direction]\n");
+            uart_term_putstr(" -- DO Scan\n");
+            uart_term_putstr("    direction : UP / DOWN\n");
+            break;
+        case 12:
+            uart_term_putstr("\nBAND [band-name]\n");
+            uart_term_putstr(" -- Set band\n");
+            break;
+        case 13:
+            uart_term_putstr("\nSET offset value\n");
+            uart_term_putstr(" -- Set system value.\n");
+            break;
+        case 14:
+            uart_term_putstr("\nPRINT offset\n");
+            uart_term_putstr(" -- PRINT system value.\n");
+            break;
+        case 15:
+            uart_term_putstr("\nEXIT\n");
+            uart_term_putstr(" -- EXIT shell\n");
+            break;
+        default:
+            break;
+    }
+}
+
+static void cmd_help(char *p)
+{
+    unsigned char i;
+    unsigned char slen;
+    int f;
+
+    slen = shell_gettok(p, xarg1);
+    if(slen != 0) {
+        for(i = 0; i < SHELL_TOPCMDS; i++){
+            f = shell_strcmp(xarg1, cmdstr[i]);
+            if(f > 0) {
+                cmd_printhelp(f);
+                return;
+            }
+        }
+    }
+   uart_term_putstr("\nAvailable commands:\n");
+   for(i = 0; i < SHELL_TOPCMDS; i++){
+       uart_term_putstr(cmdstr[i]);
+       uart_term_putstr("\n");
+    }
+    uart_term_putstr("See Details : HELP [cmd].\n");
+}
+
+char term_shell(unsigned int timeout)
+{
+    unsigned int t;
+    unsigned char pp;
+    unsigned char c;
+    int i;
+    unsigned int ii;
+    char pool[128];
+
+    cmd_shellstr[0] = '\0';
+    if(timeout != 0) {
+        t = timeout;
+        while((uart_getstat() & UART_WAKEUP) == 0) {
+            if(t == 0) return SHELL_CMD_NONE;
+            t--;
+            idle_time_ms(1);
+        }
+    } else {
+        if((uart_getstat() & UART_WAKEUP) == 0) return SHELL_CMD_NONE;
+    }
+
+    uart_term_putstr("\nOpen I2C Radio v2.0\n(C)2013- Kyuma Ohta\n");
+    uart_term_putstr("\n\nWelcome to shell mode (^^).\nPress help to show usage.\n");
+    do {
+        uart_term_putstr("\n$>");
+        uart_term_getstr(cmd_shellstr, 128, 1); // With Echo
+
+        ii = shell_gettok(pool, cmd_shellstr);
+//        if(ii >= 128) return SHELL_CMD_TOOLONG;
+        if(ii >= 128) continue; // Discard
+
+        for(t = 0; t < SHELL_TOPCMDS; t++){
+            i = shell_strcmp((char *)cmdstr[t], pool);
+            if(i > 0) break;
+        }
+        //if(i <= 0) return SHELL_CMD_NOTFOUND;
+        ii = shell_gettok(pool, &cmd_shellstr[ii]);
+        switch(t){
+            case 0:
+                cmd_help(pool);
+                break;
+            case 1: // Freq
+                term_freq(pool);
+                break;
+            case 2:
+                term_printstatus(pool);
+                break;
+            case 4:
+                save_to_term(pool);
+                break;
+            case 7:
+                term_poweroff(pool);
+                break;
+            case 8:
+                term_poweron(pool);
+                break;
+            case 15: // Exit
+                uart_term_putstr("\nBye... (^^)/~~\n");
+                return SHELL_CMD_OK;
+                break;
+            default:
+                uart_term_putstr("\n?? CMD Error\n");
+                break;
+        }
+    } while(1);
+    return SHELL_CMD_OK;
+}
diff --git a/term_shell.h b/term_shell.h
new file mode 100644 (file)
index 0000000..adcc489
--- /dev/null
@@ -0,0 +1,42 @@
+/*
+ * OpenI2CRADIO
+ * Shell Handler
+ * Copyright (C) 2013-11-07 K.Ohta <whatisthis.sowhat ai gmail.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2,
+ *  or (at your option) any later version.
+ *  This library / program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *  See the GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this library; see the file COPYING. If not, write to the
+ *  Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
+ *  MA 02110-1301, USA.
+ *
+ *  As a special exception, if you link this(includeed from sdcc) library
+ *  with other files, some of which are compiled with SDCC,
+ *  to produce an executable, this library does not by itself cause
+ *  the resulting executable to be covered by the GNU General Public License.
+ *  This exception does not however invalidate any other reasons why
+ *  the executable file might be covered by the GNU General Public License.
+ */
+
+#ifndef TERM_SHELL_H
+#define        TERM_SHELL_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern char term_shell(unsigned int timeout);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* TERM_SHELL_H */
+
index 233643e..6fb1ea1 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * OpenI2CRADIO
  * EUSART Handler
- * Copyright (C) 2013-06-20 K.Ohta <whatisthis.sowhat ai gmail.com>
+ * Copyright (C) 2013-11-07 K.Ohta <whatisthis.sowhat ai gmail.com>
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
 #include "ioports.h"
 #include "euart.h"
 #include "menu.h"
+#include "uart_termio.h"
+#include "shell_strutl.h"
 
-#define TERM_NONSREC -1
-#define TERM_STRERR -2
-#define TERM_SUMERR -3
 
 unsigned char uart_term_putstr(unsigned char *s)
 {
@@ -73,273 +72,5 @@ void uart_term_getstr(unsigned char *s, unsigned char maxlen, unsigned char echo
     s[i] = '\0';
 }
 
-unsigned char c2h(unsigned char c)
-{
-    if(c < '1') return 0xff;
-    if(c > 'F') return 0xff;
-    if(c <= '9') return c - '0';
-    if(c >= 'A') return c - 'A' + 10;
-    return 0xff;
-}
-
-char str_hex2bin(unsigned char *s, unsigned char *p, unsigned char len)
-{
-    unsigned char sum = 0;
-    unsigned char pp;
-    unsigned char i;
-    unsigned char h, l;
-    unsigned char c;
-    // Get Header
-    if((s[0] != 'S') || (s[1] != '0')) {
-        // Header
-        return TERM_NONSREC;
-    }
-    i = 2;
-    for(pp = 0; pp <= len ; pp++){
-        h = c2h(s[i]);
-        if(h >= 0x10) return TERM_STRERR;
-        l = c2h(s[i + 1]);
-        if(l >= 0x10) return TERM_STRERR;
-        c =  (h << 8 ) + l;
-        sum += c;
-        p[pp] = c;
-        i += 2;
-    }
-    h = c2h(s[i]);
-    if(h >= 0x10) return TERM_STRERR;
-    l = c2h(s[i + 1]);
-    if(l >= 0x10) return TERM_STRERR;
-    c = (h << 8) + l;
-    if(c != sum) return TERM_SUMERR;
-    return 0;
-}
-
-unsigned char shell_strlen(char *s)
-{
-    unsigned char i = 0;
-    while(i < 128) {
-        if(s[i] == '\0') break;
-        i++;
-    }
-    return i;
-}
-
-unsigned char shell_gettok(char *dst, char *src)
-{
-    unsigned char i;
-    i = 0;
-    while(src[i] != '\0') {
-        if(src[i] == ' ') break;
-        if(src[i] == '\t') break;
-        dst[i] = src[i];
-        i++;
-        if(i > 128) break;
-    }
-    dst[i] = '\0';
-    return i;
-}
-
-int shell_strcmp(char *from, char *to)
-{
-    unsigned char f, t;
-    unsigned char i;
-    int p = 0;
-    
-    f = strlen(from);
-    t = strlen(to);
-    i = f;
-    if(i > t) i = t;
-    while(i != 0){
-        if(from[p] != to[p]) return -1;
-        p++;
-        i--;
-    }
-    return p;
-}
-
-#define SHELL_CMD_NONE -1
-#define SHELL_CMD_NOTFOUND -2
-#define SHELL_CMD_ILLTOKEN -3
-#define SHELL_CMD_TOOLONG -4
-#define SHELL_CMD_OK 0
-
-char shellstr[192];
-
-#define SHELL_TOPCMDS 16
-const char *cmdstr[SHELL_TOPCMDS] = {
-    "HELP",
-    "FREQ",
-    "STAT",
-    "LOAD",
-    "SAVE",
-    "FM",
-    "AM",
-    "POFF",
-    "PON",
-    "SEQ",
-    "LOG",
-    "SCAN",
-    "BAND",
-    "SET",
-    "PRINT",
-    "EXIT"
-};
-
-long term_getuint(char *pool)
-{
-    long i = 0;
-    unsigned char p = 0;
-    unsigned char c;
-
-    do {
-        c = pool[p];
-        if((c < '0') || (c > '9')) return -1;
-        if(c == '\0') break;
-        i *= 10;
-        i = i + (c - '0');
-        p++;
-    } while(p <= 10);
-
-    return i;
-}
-
-void term_printnum(char *pool, unsigned int num)
-{
-    char p[5];
-    unsigned char i, j, ii;
-
-    for(i = 0; i < 5; i++){
-        p[i] = num % 10;
-        num = num / 10;
-    }
-    i = 4;
-    do {
-        if(p[i] != 0) break;
-        i--;
-    } while(i != 0);
-    if(i == 0){
-        pool[0] = '0';
-        pool[1] = '\0';
-        return;
-    }
-    ii = i;
-    for(j = 0; j <= ii; j++) {
-        pool[j] = p[i] + '0';
-        i--;
-    }
-    pool[j] = '\0';
-    return;
-}
-/*
- * Set Frequency: Arg1 = Freq.
- */
-static void term_freq(char *p)
-{
-    unsigned int freq;
-    long l;
-    char pp[6];
-
-    l = term_getuint(p);
-    uart_term_putstr("\nSet Freq:");
-    if((l < 0) || (l > 30000)) {
-        uart_term_putstr("\nE:Illegal freq range.\n");
-        return;
-    }
-    freq = (unsigned int)l;
-    if(setup.fm == 0){
-        term_printnum(pp, setup.amfreq);
-        // AM
-        setup.amfreq = freq;
-    } else {
-        term_printnum(pp, setup.fmfreq);
-        // FM
-        setup.fmfreq = freq;
-    }
-    uart_term_putstr(pp);
-    uart_term_putstr("->");
-    term_printnum(pp, freq);
-    uart_term_putstr(pp);
-
-    akc6955_set_freq(freq);
-    uart_term_putstr("\ndone.\n");
-}
-
-/*
- * Print status
- * Arg = none.
- */
-static void term_printstatus(char *p)
-{
-    char pp[6];
-    uart_term_putstr("\nStatus:\n");
-    if(setup.fm == 0){
-        uart_term_putstr("AM \nBand = ");
-        term_printnum(pp, setup.amband);
-        uart_term_putstr(pp);
-        uart_term_putstr("\nFreq = ");
-        term_printnum(pp, setup.amfreq);
-        uart_term_putstr(pp);
-        uart_term_putstr("\n");
-    } else {
-        uart_term_putstr("FM \nBand = ");
-        term_printnum(pp, setup.fmband);
-        uart_term_putstr(pp);
-        uart_term_putstr("\nFreq = ");
-        term_printnum(pp, setup.fmfreq);
-        uart_term_putstr(pp);
-        uart_term_putstr("\n");
-    }
-    
-    uart_term_putstr("\n");
-}
-
-
-/*
- * Open the Shell: Return cmdcode.
- */
-char term_shell(unsigned int timeout)
-{
-    unsigned int t;
-    unsigned char pp;
-    unsigned char c;
-    int i;
-    unsigned int ii;
-    char pool[128];
-
-    shellstr[0] = '\0';
-    if(timeout != 0) {
-        t = timeout;
-        while((uart_getstat() & UART_WAKEUP) == 0) {
-            if(t == 0) return SHELL_CMD_NONE;
-            t--;
-            idle_time_ms(1);
-        }
-    } else {
-        if((uart_getstat() & UART_WAKEUP) == 0) return SHELL_CMD_NONE;
-    }
-    uart_term_putstr("\n$>");
-    uart_term_getstr(shellstr, 128, 1); // With Echo
 
-    ii = shell_gettok(pool, shellstr);
-    if(ii >= 128) return SHELL_CMD_TOOLONG;
-
-    for(t = 0; t < SHELL_TOPCMDS; t++) 
-    {
-        i = shell_strcmp((char *)cmdstr[t], pool);
-        if(i > 0) break;
-    }
-    if(i <= 0) return SHELL_CMD_NOTFOUND;
-    ii = shell_gettok(pool, &shellstr[ii]);
-    switch(t){
-        case 1: // Freq
-            term_freq(pool);
-            break;
-        case 2:
-            term_printstatus(pool);
-            break;
-        default:
-            break;
-    }
 
-    return SHELL_CMD_OK;
-}
\ No newline at end of file
diff --git a/uart_termio.h b/uart_termio.h
new file mode 100644 (file)
index 0000000..1056dc9
--- /dev/null
@@ -0,0 +1,45 @@
+/*
+ * OpenI2CRADIO
+ * EUSART Handler
+ * Copyright (C) 2013-11-07 K.Ohta <whatisthis.sowhat ai gmail.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2,
+ *  or (at your option) any later version.
+ *  This library / program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *  See the GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this library; see the file COPYING. If not, write to the
+ *  Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
+ *  MA 02110-1301, USA.
+ *
+ *  As a special exception, if you link this(includeed from sdcc) library
+ *  with other files, some of which are compiled with SDCC,
+ *  to produce an executable, this library does not by itself cause
+ *  the resulting executable to be covered by the GNU General Public License.
+ *  This exception does not however invalidate any other reasons why
+ *  the executable file might be covered by the GNU General Public License.
+ */
+
+
+#ifndef UART_TERMIO_H
+#define        UART_TERMIO_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern unsigned char uart_term_putstr(unsigned char *s);
+extern void uart_term_getstr(unsigned char *s, unsigned char maxlen, unsigned char echo);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* UART_TERMIO_H */
+