diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/Makefile b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/Makefile
new file mode 100644
index 00000000..05a3fb1b
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/Makefile
@@ -0,0 +1,108 @@
+#
+# There exist several targets which are by default empty and which can be
+# used for execution of your targets. These targets are usually executed
+# before and after some main targets. They are:
+#
+# .build-pre: called before 'build' target
+# .build-post: called after 'build' target
+# .clean-pre: called before 'clean' target
+# .clean-post: called after 'clean' target
+# .clobber-pre: called before 'clobber' target
+# .clobber-post: called after 'clobber' target
+# .all-pre: called before 'all' target
+# .all-post: called after 'all' target
+# .help-pre: called before 'help' target
+# .help-post: called after 'help' target
+#
+# Targets beginning with '.' are not intended to be called on their own.
+#
+# Main targets can be executed directly, and they are:
+#
+# build build a specific configuration
+# clean remove built files from a configuration
+# clobber remove all built files
+# all build all configurations
+# help print help mesage
+#
+# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and
+# .help-impl are implemented in nbproject/makefile-impl.mk.
+#
+# Available make variables:
+#
+# CND_BASEDIR base directory for relative paths
+# CND_DISTDIR default top distribution directory (build artifacts)
+# CND_BUILDDIR default top build directory (object files, ...)
+# CONF name of current configuration
+# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration)
+# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration)
+# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration)
+# CND_PACKAGE_DIR_${CONF} directory of package (current configuration)
+# CND_PACKAGE_NAME_${CONF} name of package (current configuration)
+# CND_PACKAGE_PATH_${CONF} path to package (current configuration)
+#
+# NOCDDL
+
+
+# Environment
+MKDIR=mkdir
+CP=cp
+CCADMIN=CCadmin
+RANLIB=ranlib
+
+
+# build
+build: .build-post
+
+.build-pre:
+# Add your pre 'build' code here...
+
+.build-post: .build-impl
+# Add your post 'build' code here...
+
+
+# clean
+clean: .clean-post
+
+.clean-pre:
+# Add your pre 'clean' code here...
+
+.clean-post: .clean-impl
+# Add your post 'clean' code here...
+
+
+# clobber
+clobber: .clobber-post
+
+.clobber-pre:
+# Add your pre 'clobber' code here...
+
+.clobber-post: .clobber-impl
+# Add your post 'clobber' code here...
+
+
+# all
+all: .all-post
+
+.all-pre:
+# Add your pre 'all' code here...
+
+.all-post: .all-impl
+# Add your post 'all' code here...
+
+
+# help
+help: .help-post
+
+.help-pre:
+# Add your pre 'help' code here...
+
+.help-post: .help-impl
+# Add your post 'help' code here...
+
+
+
+# include project implementation makefile
+include nbproject/Makefile-impl.mk
+
+# include project make variables
+include nbproject/Makefile-variables.mk
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-default.mk b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-default.mk
new file mode 100644
index 00000000..f50921b2
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-default.mk
@@ -0,0 +1,659 @@
+#
+# Generated Makefile - do not edit!
+#
+# Edit the Makefile in the project folder instead (../Makefile). Each target
+# has a -pre and a -post target defined where you can add customized code.
+#
+# This makefile implements configuration specific macros and targets.
+
+
+# Include project Makefile
+include Makefile
+# Include makefile containing local settings
+ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk"
+include nbproject/Makefile-local-default.mk
+endif
+
+# Environment
+MKDIR=gnumkdir -p
+RM=rm -f
+MV=mv
+CP=cp
+
+# Macros
+CND_CONF=default
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+IMAGE_TYPE=debug
+OUTPUT_SUFFIX=cof
+DEBUGGABLE_SUFFIX=cof
+FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/BACnet-Server.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
+else
+IMAGE_TYPE=production
+OUTPUT_SUFFIX=hex
+DEBUGGABLE_SUFFIX=cof
+FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/BACnet-Server.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
+endif
+
+# Object Directory
+OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
+
+# Distribution Directory
+DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
+
+# Object Files Quoted if spaced
+OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/_ext/1386528437/abort.o ${OBJECTDIR}/_ext/1386528437/bacapp.o ${OBJECTDIR}/_ext/1386528437/bacdcode.o ${OBJECTDIR}/_ext/1386528437/bacerror.o ${OBJECTDIR}/_ext/1386528437/bacstr.o ${OBJECTDIR}/_ext/1386528437/crc.o ${OBJECTDIR}/_ext/1386528437/dcc.o ${OBJECTDIR}/_ext/1386528437/iam.o ${OBJECTDIR}/_ext/1386528437/rd.o ${OBJECTDIR}/_ext/1386528437/reject.o ${OBJECTDIR}/_ext/1386528437/rp.o ${OBJECTDIR}/_ext/1386528437/whois.o ${OBJECTDIR}/_ext/1394255507/h_dcc.o ${OBJECTDIR}/_ext/1394255507/h_rd.o ${OBJECTDIR}/_ext/1472/main.o ${OBJECTDIR}/_ext/1472/dlmstp.o ${OBJECTDIR}/_ext/1472/device.o ${OBJECTDIR}/_ext/1472/rs485.o ${OBJECTDIR}/_ext/1472/isr.o ${OBJECTDIR}/_ext/1386528437/datetime.o ${OBJECTDIR}/_ext/1394255507/txbuf.o ${OBJECTDIR}/_ext/1394255507/h_whois.o ${OBJECTDIR}/_ext/1472/mstp.o ${OBJECTDIR}/_ext/1472/bv.o ${OBJECTDIR}/_ext/1472/ai.o ${OBJECTDIR}/_ext/1472/bi.o ${OBJECTDIR}/_ext/1472/av.o ${OBJECTDIR}/_ext/1386528437/wp.o ${OBJECTDIR}/_ext/1394255507/h_npdu.o ${OBJECTDIR}/_ext/1394255507/s_iam.o ${OBJECTDIR}/_ext/1386528437/bacreal.o ${OBJECTDIR}/_ext/1386528437/bacint.o ${OBJECTDIR}/_ext/1386528437/npdu.o ${OBJECTDIR}/_ext/1472/apdu.o ${OBJECTDIR}/_ext/1394255507/noserv.o ${OBJECTDIR}/_ext/1386528437/fifo.o ${OBJECTDIR}/_ext/1394255507/h_rp.o ${OBJECTDIR}/_ext/1394255507/h_wp.o ${OBJECTDIR}/_ext/1386528437/bacaddr.o
+POSSIBLE_DEPFILES=${OBJECTDIR}/_ext/1386528437/abort.o.d ${OBJECTDIR}/_ext/1386528437/bacapp.o.d ${OBJECTDIR}/_ext/1386528437/bacdcode.o.d ${OBJECTDIR}/_ext/1386528437/bacerror.o.d ${OBJECTDIR}/_ext/1386528437/bacstr.o.d ${OBJECTDIR}/_ext/1386528437/crc.o.d ${OBJECTDIR}/_ext/1386528437/dcc.o.d ${OBJECTDIR}/_ext/1386528437/iam.o.d ${OBJECTDIR}/_ext/1386528437/rd.o.d ${OBJECTDIR}/_ext/1386528437/reject.o.d ${OBJECTDIR}/_ext/1386528437/rp.o.d ${OBJECTDIR}/_ext/1386528437/whois.o.d ${OBJECTDIR}/_ext/1394255507/h_dcc.o.d ${OBJECTDIR}/_ext/1394255507/h_rd.o.d ${OBJECTDIR}/_ext/1472/main.o.d ${OBJECTDIR}/_ext/1472/dlmstp.o.d ${OBJECTDIR}/_ext/1472/device.o.d ${OBJECTDIR}/_ext/1472/rs485.o.d ${OBJECTDIR}/_ext/1472/isr.o.d ${OBJECTDIR}/_ext/1386528437/datetime.o.d ${OBJECTDIR}/_ext/1394255507/txbuf.o.d ${OBJECTDIR}/_ext/1394255507/h_whois.o.d ${OBJECTDIR}/_ext/1472/mstp.o.d ${OBJECTDIR}/_ext/1472/bv.o.d ${OBJECTDIR}/_ext/1472/ai.o.d ${OBJECTDIR}/_ext/1472/bi.o.d ${OBJECTDIR}/_ext/1472/av.o.d ${OBJECTDIR}/_ext/1386528437/wp.o.d ${OBJECTDIR}/_ext/1394255507/h_npdu.o.d ${OBJECTDIR}/_ext/1394255507/s_iam.o.d ${OBJECTDIR}/_ext/1386528437/bacreal.o.d ${OBJECTDIR}/_ext/1386528437/bacint.o.d ${OBJECTDIR}/_ext/1386528437/npdu.o.d ${OBJECTDIR}/_ext/1472/apdu.o.d ${OBJECTDIR}/_ext/1394255507/noserv.o.d ${OBJECTDIR}/_ext/1386528437/fifo.o.d ${OBJECTDIR}/_ext/1394255507/h_rp.o.d ${OBJECTDIR}/_ext/1394255507/h_wp.o.d ${OBJECTDIR}/_ext/1386528437/bacaddr.o.d
+
+# Object Files
+OBJECTFILES=${OBJECTDIR}/_ext/1386528437/abort.o ${OBJECTDIR}/_ext/1386528437/bacapp.o ${OBJECTDIR}/_ext/1386528437/bacdcode.o ${OBJECTDIR}/_ext/1386528437/bacerror.o ${OBJECTDIR}/_ext/1386528437/bacstr.o ${OBJECTDIR}/_ext/1386528437/crc.o ${OBJECTDIR}/_ext/1386528437/dcc.o ${OBJECTDIR}/_ext/1386528437/iam.o ${OBJECTDIR}/_ext/1386528437/rd.o ${OBJECTDIR}/_ext/1386528437/reject.o ${OBJECTDIR}/_ext/1386528437/rp.o ${OBJECTDIR}/_ext/1386528437/whois.o ${OBJECTDIR}/_ext/1394255507/h_dcc.o ${OBJECTDIR}/_ext/1394255507/h_rd.o ${OBJECTDIR}/_ext/1472/main.o ${OBJECTDIR}/_ext/1472/dlmstp.o ${OBJECTDIR}/_ext/1472/device.o ${OBJECTDIR}/_ext/1472/rs485.o ${OBJECTDIR}/_ext/1472/isr.o ${OBJECTDIR}/_ext/1386528437/datetime.o ${OBJECTDIR}/_ext/1394255507/txbuf.o ${OBJECTDIR}/_ext/1394255507/h_whois.o ${OBJECTDIR}/_ext/1472/mstp.o ${OBJECTDIR}/_ext/1472/bv.o ${OBJECTDIR}/_ext/1472/ai.o ${OBJECTDIR}/_ext/1472/bi.o ${OBJECTDIR}/_ext/1472/av.o ${OBJECTDIR}/_ext/1386528437/wp.o ${OBJECTDIR}/_ext/1394255507/h_npdu.o ${OBJECTDIR}/_ext/1394255507/s_iam.o ${OBJECTDIR}/_ext/1386528437/bacreal.o ${OBJECTDIR}/_ext/1386528437/bacint.o ${OBJECTDIR}/_ext/1386528437/npdu.o ${OBJECTDIR}/_ext/1472/apdu.o ${OBJECTDIR}/_ext/1394255507/noserv.o ${OBJECTDIR}/_ext/1386528437/fifo.o ${OBJECTDIR}/_ext/1394255507/h_rp.o ${OBJECTDIR}/_ext/1394255507/h_wp.o ${OBJECTDIR}/_ext/1386528437/bacaddr.o
+
+
+CFLAGS=
+ASFLAGS=
+LDLIBSOPTIONS=
+
+############# Tool locations ##########################################
+# If you copy a project from one host to another, the path where the #
+# compiler is installed may be different. #
+# If you open this project with MPLAB X in the new host, this #
+# makefile will be regenerated and the paths will be corrected. #
+#######################################################################
+# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build
+FIXDEPS=fixDeps
+
+.build-conf: ${BUILD_SUBPROJECTS}
+ ${MAKE} ${MAKE_OPTIONS} -f nbproject/Makefile-default.mk dist/${CND_CONF}/${IMAGE_TYPE}/BACnet-Server.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
+
+MP_PROCESSOR_OPTION=18F6720
+MP_PROCESSOR_OPTION_LD=18f6720
+MP_LINKER_DEBUG_OPTION= -u_DEBUGCODESTART=0x1fd30 -u_DEBUGCODELEN=0x2d0 -u_DEBUGDATASTART=0xef4 -u_DEBUGDATALEN=0xb
+# ------------------------------------------------------------------------------------
+# Rules for buildStep: assemble
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+else
+endif
+
+# ------------------------------------------------------------------------------------
+# Rules for buildStep: compile
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+${OBJECTDIR}/_ext/1386528437/abort.o: ../../../src/abort.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/abort.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/abort.o ../../../src/abort.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/abort.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/abort.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacapp.o: ../../../src/bacapp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacapp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacapp.o ../../../src/bacapp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacapp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacapp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacdcode.o: ../../../src/bacdcode.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacdcode.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacdcode.o ../../../src/bacdcode.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacdcode.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacdcode.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacerror.o: ../../../src/bacerror.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacerror.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacerror.o ../../../src/bacerror.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacerror.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacerror.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacstr.o: ../../../src/bacstr.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacstr.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacstr.o ../../../src/bacstr.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacstr.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacstr.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/crc.o: ../../../src/crc.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/crc.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/crc.o ../../../src/crc.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/crc.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/crc.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/dcc.o: ../../../src/dcc.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/dcc.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/dcc.o ../../../src/dcc.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/dcc.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/dcc.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/iam.o: ../../../src/iam.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/iam.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/iam.o ../../../src/iam.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/iam.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/iam.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/rd.o: ../../../src/rd.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/rd.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/rd.o ../../../src/rd.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/rd.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/rd.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/reject.o: ../../../src/reject.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/reject.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/reject.o ../../../src/reject.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/reject.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/reject.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/rp.o: ../../../src/rp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/rp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/rp.o ../../../src/rp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/rp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/rp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/whois.o: ../../../src/whois.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/whois.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/whois.o ../../../src/whois.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/whois.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/whois.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_dcc.o: ../../../demo/handler/h_dcc.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_dcc.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_dcc.o ../../../demo/handler/h_dcc.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_dcc.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_dcc.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_rd.o: ../../../demo/handler/h_rd.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_rd.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_rd.o ../../../demo/handler/h_rd.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_rd.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_rd.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/main.o: ../main.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/main.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/main.o ../main.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/main.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/main.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/dlmstp.o: ../dlmstp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/dlmstp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/dlmstp.o ../dlmstp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/dlmstp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/dlmstp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/device.o: ../device.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/device.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/device.o ../device.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/device.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/device.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/rs485.o: ../rs485.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/rs485.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/rs485.o ../rs485.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/rs485.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/rs485.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/isr.o: ../isr.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/isr.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/isr.o ../isr.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/isr.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/isr.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/datetime.o: ../../../src/datetime.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/datetime.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/datetime.o ../../../src/datetime.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/datetime.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/datetime.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/txbuf.o: ../../../demo/handler/txbuf.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/txbuf.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/txbuf.o ../../../demo/handler/txbuf.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/txbuf.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/txbuf.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_whois.o: ../../../demo/handler/h_whois.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_whois.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_whois.o ../../../demo/handler/h_whois.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_whois.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_whois.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/mstp.o: ../mstp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/mstp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/mstp.o ../mstp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/mstp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/mstp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/bv.o: ../bv.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/bv.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/bv.o ../bv.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/bv.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/bv.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/ai.o: ../ai.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/ai.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/ai.o ../ai.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/ai.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/ai.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/bi.o: ../bi.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/bi.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/bi.o ../bi.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/bi.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/bi.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/av.o: ../av.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/av.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/av.o ../av.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/av.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/av.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/wp.o: ../../../src/wp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/wp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/wp.o ../../../src/wp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/wp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/wp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_npdu.o: ../../../demo/handler/h_npdu.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_npdu.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_npdu.o ../../../demo/handler/h_npdu.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_npdu.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_npdu.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/s_iam.o: ../../../demo/handler/s_iam.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/s_iam.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/s_iam.o ../../../demo/handler/s_iam.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/s_iam.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/s_iam.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacreal.o: ../../../src/bacreal.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacreal.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacreal.o ../../../src/bacreal.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacreal.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacreal.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacint.o: ../../../src/bacint.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacint.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacint.o ../../../src/bacint.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacint.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacint.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/npdu.o: ../../../src/npdu.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/npdu.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/npdu.o ../../../src/npdu.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/npdu.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/npdu.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/apdu.o: ../apdu.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/apdu.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/apdu.o ../apdu.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/apdu.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/apdu.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/noserv.o: ../../../demo/handler/noserv.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/noserv.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/noserv.o ../../../demo/handler/noserv.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/noserv.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/noserv.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/fifo.o: ../../../src/fifo.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/fifo.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/fifo.o ../../../src/fifo.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/fifo.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/fifo.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_rp.o: ../../../demo/handler/h_rp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_rp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_rp.o ../../../demo/handler/h_rp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_rp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_rp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_wp.o: ../../../demo/handler/h_wp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_wp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_wp.o ../../../demo/handler/h_wp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_wp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_wp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacaddr.o: ../../../src/bacaddr.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacaddr.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacaddr.o ../../../src/bacaddr.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacaddr.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacaddr.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+else
+${OBJECTDIR}/_ext/1386528437/abort.o: ../../../src/abort.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/abort.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/abort.o ../../../src/abort.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/abort.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/abort.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacapp.o: ../../../src/bacapp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacapp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacapp.o ../../../src/bacapp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacapp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacapp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacdcode.o: ../../../src/bacdcode.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacdcode.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacdcode.o ../../../src/bacdcode.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacdcode.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacdcode.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacerror.o: ../../../src/bacerror.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacerror.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacerror.o ../../../src/bacerror.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacerror.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacerror.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacstr.o: ../../../src/bacstr.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacstr.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacstr.o ../../../src/bacstr.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacstr.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacstr.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/crc.o: ../../../src/crc.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/crc.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/crc.o ../../../src/crc.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/crc.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/crc.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/dcc.o: ../../../src/dcc.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/dcc.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/dcc.o ../../../src/dcc.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/dcc.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/dcc.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/iam.o: ../../../src/iam.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/iam.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/iam.o ../../../src/iam.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/iam.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/iam.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/rd.o: ../../../src/rd.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/rd.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/rd.o ../../../src/rd.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/rd.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/rd.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/reject.o: ../../../src/reject.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/reject.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/reject.o ../../../src/reject.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/reject.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/reject.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/rp.o: ../../../src/rp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/rp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/rp.o ../../../src/rp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/rp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/rp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/whois.o: ../../../src/whois.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/whois.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/whois.o ../../../src/whois.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/whois.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/whois.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_dcc.o: ../../../demo/handler/h_dcc.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_dcc.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_dcc.o ../../../demo/handler/h_dcc.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_dcc.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_dcc.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_rd.o: ../../../demo/handler/h_rd.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_rd.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_rd.o ../../../demo/handler/h_rd.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_rd.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_rd.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/main.o: ../main.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/main.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/main.o ../main.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/main.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/main.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/dlmstp.o: ../dlmstp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/dlmstp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/dlmstp.o ../dlmstp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/dlmstp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/dlmstp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/device.o: ../device.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/device.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/device.o ../device.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/device.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/device.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/rs485.o: ../rs485.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/rs485.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/rs485.o ../rs485.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/rs485.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/rs485.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/isr.o: ../isr.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/isr.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/isr.o ../isr.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/isr.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/isr.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/datetime.o: ../../../src/datetime.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/datetime.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/datetime.o ../../../src/datetime.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/datetime.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/datetime.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/txbuf.o: ../../../demo/handler/txbuf.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/txbuf.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/txbuf.o ../../../demo/handler/txbuf.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/txbuf.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/txbuf.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_whois.o: ../../../demo/handler/h_whois.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_whois.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_whois.o ../../../demo/handler/h_whois.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_whois.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_whois.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/mstp.o: ../mstp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/mstp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/mstp.o ../mstp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/mstp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/mstp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/bv.o: ../bv.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/bv.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/bv.o ../bv.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/bv.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/bv.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/ai.o: ../ai.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/ai.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/ai.o ../ai.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/ai.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/ai.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/bi.o: ../bi.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/bi.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/bi.o ../bi.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/bi.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/bi.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/av.o: ../av.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/av.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/av.o ../av.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/av.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/av.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/wp.o: ../../../src/wp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/wp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/wp.o ../../../src/wp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/wp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/wp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_npdu.o: ../../../demo/handler/h_npdu.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_npdu.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_npdu.o ../../../demo/handler/h_npdu.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_npdu.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_npdu.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/s_iam.o: ../../../demo/handler/s_iam.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/s_iam.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/s_iam.o ../../../demo/handler/s_iam.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/s_iam.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/s_iam.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacreal.o: ../../../src/bacreal.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacreal.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacreal.o ../../../src/bacreal.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacreal.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacreal.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacint.o: ../../../src/bacint.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacint.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacint.o ../../../src/bacint.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacint.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacint.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/npdu.o: ../../../src/npdu.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/npdu.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/npdu.o ../../../src/npdu.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/npdu.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/npdu.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1472/apdu.o: ../apdu.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1472
+ @${RM} ${OBJECTDIR}/_ext/1472/apdu.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1472/apdu.o ../apdu.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1472/apdu.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1472/apdu.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/noserv.o: ../../../demo/handler/noserv.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/noserv.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/noserv.o ../../../demo/handler/noserv.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/noserv.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/noserv.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/fifo.o: ../../../src/fifo.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/fifo.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/fifo.o ../../../src/fifo.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/fifo.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/fifo.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_rp.o: ../../../demo/handler/h_rp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_rp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_rp.o ../../../demo/handler/h_rp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_rp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_rp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1394255507/h_wp.o: ../../../demo/handler/h_wp.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1394255507
+ @${RM} ${OBJECTDIR}/_ext/1394255507/h_wp.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1394255507/h_wp.o ../../../demo/handler/h_wp.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1394255507/h_wp.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1394255507/h_wp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+${OBJECTDIR}/_ext/1386528437/bacaddr.o: ../../../src/bacaddr.c nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} ${OBJECTDIR}/_ext/1386528437
+ @${RM} ${OBJECTDIR}/_ext/1386528437/bacaddr.o.d
+ ${MP_CC} $(MP_EXTRA_CC_PRE) -p$(MP_PROCESSOR_OPTION) -DPRINT_ENABLED=0 -DBACDL_MSTP=1 -DBIG_ENDIAN=0 -DMAX_APDU=50 -DMAX_TSM_TRANSACTIONS=0 -I"../" -I"../../../include" -I"../../../demo/object" -ms -oa- -I ${MP_CC_DIR}\\..\\h -fo ${OBJECTDIR}/_ext/1386528437/bacaddr.o ../../../src/bacaddr.c
+ @${DEP_GEN} -d ${OBJECTDIR}/_ext/1386528437/bacaddr.o
+ @${FIXDEPS} "${OBJECTDIR}/_ext/1386528437/bacaddr.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c18
+
+endif
+
+# ------------------------------------------------------------------------------------
+# Rules for buildStep: link
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+dist/${CND_CONF}/${IMAGE_TYPE}/BACnet-Server.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
+ ${MP_LD} $(MP_EXTRA_LD_PRE) "..\18F6720.lkr" -p$(MP_PROCESSOR_OPTION_LD) -w -x -u_DEBUG -z__MPLAB_BUILD=1 -u_CRUNTIME -z__MPLAB_DEBUG=1 -z__MPLAB_DEBUGGER_ICD3=1 $(MP_LINKER_DEBUG_OPTION) -l ${MP_CC_DIR}\\..\\lib -o dist/${CND_CONF}/${IMAGE_TYPE}/BACnet-Server.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED}
+else
+dist/${CND_CONF}/${IMAGE_TYPE}/BACnet-Server.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
+ @${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
+ ${MP_LD} $(MP_EXTRA_LD_PRE) "..\18F6720.lkr" -p$(MP_PROCESSOR_OPTION_LD) -w -z__MPLAB_BUILD=1 -u_CRUNTIME -l ${MP_CC_DIR}\\..\\lib -o dist/${CND_CONF}/${IMAGE_TYPE}/BACnet-Server.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED}
+endif
+
+
+# Subprojects
+.build-subprojects:
+
+
+# Subprojects
+.clean-subprojects:
+
+# Clean Targets
+.clean-conf: ${CLEAN_SUBPROJECTS}
+ ${RM} -r build/default
+ ${RM} -r dist/default
+
+# Enable dependency checking
+.dep.inc: .depcheck-impl
+
+DEPFILES=$(shell mplabwildcard ${POSSIBLE_DEPFILES})
+ifneq (${DEPFILES},)
+include ${DEPFILES}
+endif
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-genesis.properties b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-genesis.properties
new file mode 100644
index 00000000..a816f0f1
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-genesis.properties
@@ -0,0 +1,8 @@
+#
+#Thu Sep 13 13:09:39 CDT 2012
+default.com-microchip-mplab-nbide-toolchainC18-C18LanguageToolchain.md5=21ae92f54c0f89bc027339aedc19b7f9
+default.languagetoolchain.dir=C\:\\Program Files (x86)\\Microchip\\mplabc18\\v3.40\\bin
+com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=ef199adcc8f049579a105cca20571dcb
+default.languagetoolchain.version=3.40
+host.platform=windows
+conf.ids=default
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-impl.mk b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-impl.mk
new file mode 100644
index 00000000..cfa87f01
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-impl.mk
@@ -0,0 +1,69 @@
+#
+# Generated Makefile - do not edit!
+#
+# Edit the Makefile in the project folder instead (../Makefile). Each target
+# has a pre- and a post- target defined where you can add customization code.
+#
+# This makefile implements macros and targets common to all configurations.
+#
+# NOCDDL
+
+
+# Building and Cleaning subprojects are done by default, but can be controlled with the SUB
+# macro. If SUB=no, subprojects will not be built or cleaned. The following macro
+# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf
+# and .clean-reqprojects-conf unless SUB has the value 'no'
+SUB_no=NO
+SUBPROJECTS=${SUB_${SUB}}
+BUILD_SUBPROJECTS_=.build-subprojects
+BUILD_SUBPROJECTS_NO=
+BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}}
+CLEAN_SUBPROJECTS_=.clean-subprojects
+CLEAN_SUBPROJECTS_NO=
+CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}}
+
+
+# Project Name
+PROJECTNAME=BACnet-Server.X
+
+# Active Configuration
+DEFAULTCONF=default
+CONF=${DEFAULTCONF}
+
+# All Configurations
+ALLCONFS=default
+
+
+# build
+.build-impl: .build-pre
+ ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf
+
+
+# clean
+.clean-impl: .clean-pre
+ ${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf
+
+# clobber
+.clobber-impl: .clobber-pre .depcheck-impl
+ ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean
+
+
+
+# all
+.all-impl: .all-pre .depcheck-impl
+ ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build
+
+
+
+# dependency checking support
+.depcheck-impl:
+# @echo "# This code depends on make tool being used" >.dep.inc
+# @if [ -n "${MAKE_VERSION}" ]; then \
+# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \
+# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \
+# echo "include \$${DEPFILES}" >>.dep.inc; \
+# echo "endif" >>.dep.inc; \
+# else \
+# echo ".KEEP_STATE:" >>.dep.inc; \
+# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \
+# fi
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-local-default.mk b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-local-default.mk
new file mode 100644
index 00000000..715a50f6
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-local-default.mk
@@ -0,0 +1,37 @@
+#
+# Generated Makefile - do not edit!
+#
+#
+# This file contains information about the location of compilers and other tools.
+# If you commmit this file into your revision control server, you will be able to
+# to checkout the project and build it from the command line with make. However,
+# if more than one person works on the same project, then this file might show
+# conflicts since different users are bound to have compilers in different places.
+# In that case you might choose to not commit this file and let MPLAB X recreate this file
+# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at
+# least once so the file gets created and the project can be built. Finally, you can also
+# avoid using this file at all if you are only building from the command line with make.
+# You can invoke make with the values of the macros:
+# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ...
+#
+SHELL=cmd.exe
+PATH_TO_IDE_BIN=C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/
+# Adding MPLAB X bin directory to path.
+PATH:=C:/Program Files (x86)/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="C:\Program Files (x86)\Microchip\MPLABX\sys\java\jre1.6.0_32-windows-x64\java-windows/bin/"
+OS_CURRENT="$(shell uname -s)"
+MP_CC="C:\Program Files (x86)\Microchip\mplabc18\v3.40\bin\mcc18.exe"
+# MP_CPPC is not defined
+# MP_BC is not defined
+MP_AS="C:\Program Files (x86)\Microchip\mplabc18\v3.40\bin\..\mpasm\MPASMWIN.exe"
+MP_LD="C:\Program Files (x86)\Microchip\mplabc18\v3.40\bin\mplink.exe"
+MP_AR="C:\Program Files (x86)\Microchip\mplabc18\v3.40\bin\mplib.exe"
+DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files (x86)/Microchip/MPLABX/mplab_ide/mplab_ide/modules/../../bin/extractobjectdependencies.jar"
+MP_CC_DIR="C:\Program Files (x86)\Microchip\mplabc18\v3.40\bin"
+# MP_CPPC_DIR is not defined
+# MP_BC_DIR is not defined
+MP_AS_DIR="C:\Program Files (x86)\Microchip\mplabc18\v3.40\bin\..\mpasm"
+MP_LD_DIR="C:\Program Files (x86)\Microchip\mplabc18\v3.40\bin"
+MP_AR_DIR="C:\Program Files (x86)\Microchip\mplabc18\v3.40\bin"
+# MP_BC_DIR is not defined
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-variables.mk b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-variables.mk
new file mode 100644
index 00000000..204009b0
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Makefile-variables.mk
@@ -0,0 +1,13 @@
+#
+# Generated - do not edit!
+#
+# NOCDDL
+#
+CND_BASEDIR=`pwd`
+# default configuration
+CND_ARTIFACT_DIR_default=dist/default/production
+CND_ARTIFACT_NAME_default=BACnet-Server.X.production.hex
+CND_ARTIFACT_PATH_default=dist/default/production/BACnet-Server.X.production.hex
+CND_PACKAGE_DIR_default=${CND_DISTDIR}/default/package
+CND_PACKAGE_NAME_default=bacnet-server.x.tar
+CND_PACKAGE_PATH_default=${CND_DISTDIR}/default/package/bacnet-server.x.tar
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Package-default.bash b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Package-default.bash
new file mode 100644
index 00000000..fe987452
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/Package-default.bash
@@ -0,0 +1,73 @@
+#!/bin/bash -x
+
+#
+# Generated - do not edit!
+#
+
+# Macros
+TOP=`pwd`
+CND_CONF=default
+CND_DISTDIR=dist
+TMPDIR=build/${CND_CONF}/${IMAGE_TYPE}/tmp-packaging
+TMPDIRNAME=tmp-packaging
+OUTPUT_PATH=dist/${CND_CONF}/${IMAGE_TYPE}/BACnet-Server.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
+OUTPUT_BASENAME=BACnet-Server.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
+PACKAGE_TOP_DIR=bacnet-server.x/
+
+# Functions
+function checkReturnCode
+{
+ rc=$?
+ if [ $rc != 0 ]
+ then
+ exit $rc
+ fi
+}
+function makeDirectory
+# $1 directory path
+# $2 permission (optional)
+{
+ mkdir -p "$1"
+ checkReturnCode
+ if [ "$2" != "" ]
+ then
+ chmod $2 "$1"
+ checkReturnCode
+ fi
+}
+function copyFileToTmpDir
+# $1 from-file path
+# $2 to-file path
+# $3 permission
+{
+ cp "$1" "$2"
+ checkReturnCode
+ if [ "$3" != "" ]
+ then
+ chmod $3 "$2"
+ checkReturnCode
+ fi
+}
+
+# Setup
+cd "${TOP}"
+mkdir -p ${CND_DISTDIR}/${CND_CONF}/package
+rm -rf ${TMPDIR}
+mkdir -p ${TMPDIR}
+
+# Copy files and create directories and links
+cd "${TOP}"
+makeDirectory ${TMPDIR}/bacnet-server.x/bin
+copyFileToTmpDir "${OUTPUT_PATH}" "${TMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755
+
+
+# Generate tar file
+cd "${TOP}"
+rm -f ${CND_DISTDIR}/${CND_CONF}/package/bacnet-server.x.tar
+cd ${TMPDIR}
+tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/package/bacnet-server.x.tar *
+checkReturnCode
+
+# Cleanup
+cd "${TOP}"
+rm -rf ${TMPDIR}
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/configurations.xml b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/configurations.xml
new file mode 100644
index 00000000..9bb5259f
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/configurations.xml
@@ -0,0 +1,174 @@
+
+
+
+
+ ../stdbool.h
+ ../stdint.h
+ ../rs485.h
+ ../mstp.h
+ ../../../include/bits.h
+ ../../../include/abort.h
+ ../../../include/apdu.h
+ ../../../include/bacaddr.h
+ ../../../include/bacapp.h
+ ../../../include/bacdcode.h
+ ../../../include/bacdef.h
+ ../../../include/bacenum.h
+ ../../../include/bacerror.h
+ ../../../include/bacint.h
+ ../../../include/bacprop.h
+ ../../../include/bacreal.h
+ ../../../include/bacstr.h
+ ../../../include/bigend.h
+ ../../../include/config.h
+
+
+ ../18F6720.lkr
+
+
+ ../../../src/abort.c
+ ../../../src/bacapp.c
+ ../../../src/bacdcode.c
+ ../../../src/bacerror.c
+ ../../../src/bacstr.c
+ ../../../src/crc.c
+ ../../../src/dcc.c
+ ../../../src/iam.c
+ ../../../src/rd.c
+ ../../../src/reject.c
+ ../../../src/rp.c
+ ../../../src/whois.c
+ ../../../demo/handler/h_dcc.c
+ ../../../demo/handler/h_rd.c
+ ../main.c
+ ../dlmstp.c
+ ../device.c
+ ../rs485.c
+ ../isr.c
+ ../../../src/datetime.c
+ ../../../demo/handler/txbuf.c
+ ../../../demo/handler/h_whois.c
+ ../mstp.c
+ ../bv.c
+ ../ai.c
+ ../bi.c
+ ../av.c
+ ../../../src/wp.c
+ ../../../demo/handler/h_npdu.c
+ ../../../demo/handler/s_iam.c
+ ../../../src/bacreal.c
+ ../../../src/bacint.c
+ ../../../src/npdu.c
+ ../apdu.c
+ ../../../demo/handler/noserv.c
+ ../../../src/fifo.c
+ ../../../demo/handler/h_rp.c
+ ../../../demo/handler/h_wp.c
+ ../../../src/bacaddr.c
+
+
+ Makefile
+
+
+
+ ../
+
+ Makefile
+
+
+
+ localhost
+ PIC18F6720
+
+
+ ICD3PlatformTool
+ C18
+ 3.40
+ 3
+
+
+
+
+
+
+
+ false
+
+
+
+
+ false
+
+ false
+
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/project.properties b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/project.properties
new file mode 100644
index 00000000..e69de29b
diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/project.xml b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/project.xml
new file mode 100644
index 00000000..6c3e07d6
--- /dev/null
+++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.X/nbproject/project.xml
@@ -0,0 +1,16 @@
+
+
+ com.microchip.mplab.nbide.embedded.makeproject
+
+
+ BACnet-Server
+ e54ca906-513b-4f74-a23b-6b0204c4509a
+ 0
+ c
+
+ h
+ ISO-8859-1
+
+
+
+
diff --git a/bacnet-stack/ports/pic18f6720/ai.c b/bacnet-stack/ports/pic18f6720/ai.c
index 62960c7e..31b43465 100644
--- a/bacnet-stack/ports/pic18f6720/ai.c
+++ b/bacnet-stack/ports/pic18f6720/ai.c
@@ -32,6 +32,9 @@
#include "bacdcode.h"
#include "bacenum.h"
#include "config.h"
+#include "wp.h"
+#include "rp.h"
+#include "ai.h"
/* Analog Input = Photocell */
#define MAX_ANALOG_INPUTS 2
@@ -70,7 +73,7 @@ char *Analog_Input_Name(
static char text_string[16] = ""; /* okay for single thread */
if (object_instance < MAX_ANALOG_INPUTS) {
- sprintf(text_string, "AI-%lu", object_instance);
+ sprintf(text_string, "AI-%lu", (unsigned long)object_instance);
return text_string;
}
@@ -99,31 +102,31 @@ void Analog_Input_Present_Value_Set(
/* return apdu length, or -1 on error */
/* assumption - object has already exists */
-int Analog_Input_Encode_Property_APDU(
- uint8_t * apdu,
- uint32_t object_instance,
- BACNET_PROPERTY_ID property,
- uint32_t array_index,
- BACNET_ERROR_CLASS * error_class,
- BACNET_ERROR_CODE * error_code)
+int Analog_Input_Read_Property(
+ BACNET_READ_PROPERTY_DATA * rpdata)
{
int apdu_len = 0; /* return value */
BACNET_BIT_STRING bit_string;
BACNET_CHARACTER_STRING char_string;
+ uint8_t *apdu = NULL;
- (void) array_index;
- switch (property) {
+ if ((rpdata == NULL) || (rpdata->application_data == NULL) ||
+ (rpdata->application_data_len == 0)) {
+ return 0;
+ }
+ apdu = rpdata->application_data;
+ switch (rpdata->object_property) {
case PROP_OBJECT_IDENTIFIER:
apdu_len =
encode_application_object_id(&apdu[0], OBJECT_ANALOG_INPUT,
- object_instance);
+ rpdata->object_instance);
break;
/* note: Name and Description don't have to be the same.
You could make Description writable and different */
case PROP_OBJECT_NAME:
case PROP_DESCRIPTION:
characterstring_init_ansi(&char_string,
- Analog_Input_Name(object_instance));
+ Analog_Input_Name(rpdata->object_instance));
apdu_len =
encode_application_character_string(&apdu[0], &char_string);
break;
@@ -134,7 +137,7 @@ int Analog_Input_Encode_Property_APDU(
case PROP_PRESENT_VALUE:
apdu_len =
encode_application_real(&apdu[0],
- Analog_Input_Present_Value(object_instance));
+ Analog_Input_Present_Value(rpdata->object_instance));
break;
case PROP_STATUS_FLAGS:
bitstring_init(&bit_string);
@@ -155,73 +158,18 @@ int Analog_Input_Encode_Property_APDU(
apdu_len = encode_application_enumerated(&apdu[0], UNITS_PERCENT);
break;
default:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_UNKNOWN_PROPERTY;
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_UNKNOWN_PROPERTY;
apdu_len = -1;
break;
}
/* only array properties can have array options */
- if ((apdu_len >= 0) && (array_index != BACNET_ARRAY_ALL)) {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
+ if ((apdu_len >= 0) && (rpdata->array_index != BACNET_ARRAY_ALL)) {
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
apdu_len = -1;
}
return apdu_len;
}
-#ifdef TEST
-#include
-#include
-#include "ctest.h"
-
-void testAnalogInput(
- Test * pTest)
-{
- uint8_t apdu[MAX_APDU] = { 0 };
- int len = 0;
- uint32_t len_value = 0;
- uint8_t tag_number = 0;
- BACNET_OBJECT_TYPE decoded_type = OBJECT_ANALOG_OUTPUT;
- uint32_t decoded_instance = 0;
- uint32_t instance = 123;
- BACNET_ERROR_CLASS error_class;
- BACNET_ERROR_CODE error_code;
-
-
- /* FIXME: we should do a lot more testing here... */
- len =
- Analog_Input_Encode_Property_APDU(&apdu[0], instance,
- PROP_OBJECT_IDENTIFIER, BACNET_ARRAY_ALL, &error_class, &error_code);
- ct_test(pTest, len >= 0);
- len = decode_tag_number_and_value(&apdu[0], &tag_number, &len_value);
- ct_test(pTest, tag_number == BACNET_APPLICATION_TAG_OBJECT_ID);
- len =
- decode_object_id(&apdu[len], (int *) &decoded_type, &decoded_instance);
- ct_test(pTest, decoded_type == OBJECT_ANALOG_INPUT);
- ct_test(pTest, decoded_instance == instance);
-
- return;
-}
-
-#ifdef TEST_ANALOG_INPUT
-int main(
- void)
-{
- Test *pTest;
- bool rc;
-
- pTest = ct_create("BACnet Analog Input", NULL);
- /* individual tests */
- rc = ct_addTestFunction(pTest, testAnalogInput);
- assert(rc);
-
- ct_setStream(pTest, stdout);
- ct_run(pTest);
- (void) ct_report(pTest);
- ct_destroy(pTest);
-
- return 0;
-}
-#endif /* TEST_ANALOG_INPUT */
-#endif /* TEST */
diff --git a/bacnet-stack/ports/pic18f6720/apdu.c b/bacnet-stack/ports/pic18f6720/apdu.c
index b0a2568a..4e739e87 100644
--- a/bacnet-stack/ports/pic18f6720/apdu.c
+++ b/bacnet-stack/ports/pic18f6720/apdu.c
@@ -35,11 +35,13 @@
#include
#include
#include "bits.h"
-#include "apdu.h"
#include "bacdef.h"
#include "bacdcode.h"
#include "bacenum.h"
+#include "dcc.h"
#include "handlers.h"
+/* me */
+#include "apdu.h"
uint16_t apdu_timeout(
void)
diff --git a/bacnet-stack/ports/pic18f6720/av.c b/bacnet-stack/ports/pic18f6720/av.c
index bee75e73..c5f5968a 100644
--- a/bacnet-stack/ports/pic18f6720/av.c
+++ b/bacnet-stack/ports/pic18f6720/av.c
@@ -34,6 +34,8 @@
#include "bacapp.h"
#include "config.h" /* the custom stuff */
#include "wp.h"
+#include "rp.h"
+#include "av.h"
#define MAX_ANALOG_VALUES 4
@@ -116,7 +118,7 @@ unsigned Analog_Value_Instance_To_Index(
return index;
}
-static float Analog_Value_Present_Value(
+float Analog_Value_Present_Value(
uint32_t object_instance)
{
float value = ANALOG_RELINQUISH_DEFAULT;
@@ -147,13 +149,8 @@ char *Analog_Value_Name(
}
/* return apdu len, or -1 on error */
-int Analog_Value_Encode_Property_APDU(
- uint8_t * apdu,
- uint32_t object_instance,
- BACNET_PROPERTY_ID property,
- uint32_t array_index,
- BACNET_ERROR_CLASS * error_class,
- BACNET_ERROR_CODE * error_code)
+int Analog_Value_Read_Property(
+ BACNET_READ_PROPERTY_DATA * rpdata)
{
int len = 0;
int apdu_len = 0; /* return value */
@@ -163,18 +160,24 @@ int Analog_Value_Encode_Property_APDU(
unsigned object_index = 0;
unsigned i = 0;
bool state = false;
+ uint8_t *apdu = NULL;
Analog_Value_Init();
- switch (property) {
+ if ((rpdata == NULL) || (rpdata->application_data == NULL) ||
+ (rpdata->application_data_len == 0)) {
+ return 0;
+ }
+ apdu = rpdata->application_data;
+ switch (rpdata->object_property) {
case PROP_OBJECT_IDENTIFIER:
apdu_len =
encode_application_object_id(&apdu[0], OBJECT_ANALOG_VALUE,
- object_instance);
+ rpdata->object_instance);
break;
case PROP_OBJECT_NAME:
case PROP_DESCRIPTION:
characterstring_init_ansi(&char_string,
- Analog_Value_Name(object_instance));
+ Analog_Value_Name(rpdata->object_instance));
apdu_len =
encode_application_character_string(&apdu[0], &char_string);
break;
@@ -183,7 +186,7 @@ int Analog_Value_Encode_Property_APDU(
encode_application_enumerated(&apdu[0], OBJECT_ANALOG_VALUE);
break;
case PROP_PRESENT_VALUE:
- real_value = Analog_Value_Present_Value(object_instance);
+ real_value = Analog_Value_Present_Value(rpdata->object_instance);
apdu_len = encode_application_real(&apdu[0], real_value);
break;
case PROP_STATUS_FLAGS:
@@ -264,8 +267,8 @@ int Analog_Value_Encode_Property_APDU(
break;
#endif
default:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_UNKNOWN_PROPERTY;
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_UNKNOWN_PROPERTY;
apdu_len = -1;
break;
}
@@ -274,9 +277,9 @@ int Analog_Value_Encode_Property_APDU(
#if 0
(property != PROP_PRIORITY_ARRAY) &&
#endif
- (array_index != BACNET_ARRAY_ALL)) {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
+ (rpdata->array_index != BACNET_ARRAY_ALL)) {
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
apdu_len = -1;
}
@@ -285,9 +288,7 @@ int Analog_Value_Encode_Property_APDU(
/* returns true if successful */
bool Analog_Value_Write_Property(
- BACNET_WRITE_PROPERTY_DATA * wp_data,
- BACNET_ERROR_CLASS * error_class,
- BACNET_ERROR_CODE * error_code)
+ BACNET_WRITE_PROPERTY_DATA * wp_data)
{
bool status = false; /* return value */
unsigned int object_index = 0;
@@ -298,8 +299,8 @@ bool Analog_Value_Write_Property(
Analog_Value_Init();
if (!Analog_Value_Valid_Instance(wp_data->object_instance)) {
- *error_class = ERROR_CLASS_OBJECT;
- *error_code = ERROR_CODE_UNKNOWN_OBJECT;
+ wp_data->error_class = ERROR_CLASS_OBJECT;
+ wp_data->error_code = ERROR_CODE_UNKNOWN_OBJECT;
return false;
}
/* decode the some of the request */
@@ -309,15 +310,15 @@ bool Analog_Value_Write_Property(
/* FIXME: len < application_data_len: more data? */
if (len < 0) {
/* error while decoding - a value larger than we can handle */
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
return false;
}
if ((wp_data->object_property != PROP_PRIORITY_ARRAY) &&
(wp_data->array_index != BACNET_ARRAY_ALL)) {
/* only array properties can have array options */
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
return false;
}
switch (wp_data->object_property) {
@@ -346,11 +347,11 @@ bool Analog_Value_Write_Property(
/* Command priority 6 is reserved for use by Minimum On/Off
algorithm and may not be used for other purposes in any
object. */
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
}
#if 0
} else if (value.tag == BACNET_APPLICATION_TAG_NULL) {
@@ -374,8 +375,8 @@ bool Analog_Value_Write_Property(
}
#endif
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
}
break;
#if 0
@@ -399,70 +400,14 @@ bool Analog_Value_Write_Property(
case PROP_OUT_OF_SERVICE:
case PROP_DESCRIPTION:
case PROP_PRIORITY_ARRAY:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
break;
default:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_UNKNOWN_PROPERTY;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_UNKNOWN_PROPERTY;
break;
}
return status;
}
-
-
-#ifdef TEST
-#include
-#include
-#include "ctest.h"
-
-void testAnalog_Value(
- Test * pTest)
-{
- uint8_t apdu[MAX_APDU] = { 0 };
- int len = 0;
- uint32_t len_value = 0;
- uint8_t tag_number = 0;
- BACNET_OBJECT_TYPE decoded_type = OBJECT_ANALOG_VALUE;
- uint32_t decoded_instance = 0;
- uint32_t instance = 123;
- BACNET_ERROR_CLASS error_class;
- BACNET_ERROR_CODE error_code;
-
-
- len =
- Analog_Value_Encode_Property_APDU(&apdu[0], instance,
- PROP_OBJECT_IDENTIFIER, BACNET_ARRAY_ALL, &error_class, &error_code);
- ct_test(pTest, len != 0);
- len = decode_tag_number_and_value(&apdu[0], &tag_number, &len_value);
- ct_test(pTest, tag_number == BACNET_APPLICATION_TAG_OBJECT_ID);
- len =
- decode_object_id(&apdu[len], (int *) &decoded_type, &decoded_instance);
- ct_test(pTest, decoded_type == OBJECT_ANALOG_VALUE);
- ct_test(pTest, decoded_instance == instance);
-
- return;
-}
-
-#ifdef TEST_ANALOG_VALUE
-int main(
- void)
-{
- Test *pTest;
- bool rc;
-
- pTest = ct_create("BACnet Analog Value", NULL);
- /* individual tests */
- rc = ct_addTestFunction(pTest, testAnalog_Value);
- assert(rc);
-
- ct_setStream(pTest, stdout);
- ct_run(pTest);
- (void) ct_report(pTest);
- ct_destroy(pTest);
-
- return 0;
-}
-#endif /* TEST_ANALOG_VALUE */
-#endif /* TEST */
diff --git a/bacnet-stack/ports/pic18f6720/bi.c b/bacnet-stack/ports/pic18f6720/bi.c
index 2109ef0d..c389952c 100644
--- a/bacnet-stack/ports/pic18f6720/bi.c
+++ b/bacnet-stack/ports/pic18f6720/bi.c
@@ -32,6 +32,9 @@
#include "bacdcode.h"
#include "bacenum.h"
#include "config.h"
+#include "wp.h"
+#include "rp.h"
+#include "bi.h"
#define MAX_BINARY_INPUTS 8
@@ -89,7 +92,7 @@ unsigned Binary_Input_Instance_To_Index(
return index;
}
-static BACNET_BINARY_PV Binary_Input_Present_Value(
+BACNET_BINARY_PV Binary_Input_Present_Value(
uint32_t object_instance)
{
BACNET_BINARY_PV value = BINARY_INACTIVE;
@@ -119,34 +122,33 @@ char *Binary_Input_Name(
/* return apdu length, or -1 on error */
/* assumption - object already exists, and has been bounds checked */
-int Binary_Input_Encode_Property_APDU(
- uint8_t * apdu,
- uint32_t object_instance,
- BACNET_PROPERTY_ID property,
- uint32_t array_index,
- BACNET_ERROR_CLASS * error_class,
- BACNET_ERROR_CODE * error_code)
+int Binary_Input_Read_Property(
+ BACNET_READ_PROPERTY_DATA * rpdata)
{
int apdu_len = 0; /* return value */
BACNET_BIT_STRING bit_string;
BACNET_CHARACTER_STRING char_string;
BACNET_POLARITY polarity = POLARITY_NORMAL;
BACNET_BINARY_PV value = BINARY_INACTIVE;
+ uint8_t *apdu = NULL;
-
- (void) array_index;
Binary_Input_Initialize();
- switch (property) {
+ if ((rpdata == NULL) || (rpdata->application_data == NULL) ||
+ (rpdata->application_data_len == 0)) {
+ return 0;
+ }
+ apdu = rpdata->application_data;
+ switch (rpdata->object_property) {
case PROP_OBJECT_IDENTIFIER:
apdu_len =
encode_application_object_id(&apdu[0], OBJECT_BINARY_INPUT,
- object_instance);
+ rpdata->object_instance);
break;
case PROP_OBJECT_NAME:
case PROP_DESCRIPTION:
/* note: object name must be unique in our device */
characterstring_init_ansi(&char_string,
- Binary_Input_Name(object_instance));
+ Binary_Input_Name(rpdata->object_instance));
apdu_len =
encode_application_character_string(&apdu[0], &char_string);
break;
@@ -155,7 +157,7 @@ int Binary_Input_Encode_Property_APDU(
encode_application_enumerated(&apdu[0], OBJECT_BINARY_INPUT);
break;
case PROP_PRESENT_VALUE:
- value = Binary_Input_Present_Value(object_instance);
+ value = Binary_Input_Present_Value(rpdata->object_instance);
apdu_len = encode_application_enumerated(&apdu[0], value);
break;
case PROP_STATUS_FLAGS:
@@ -179,73 +181,17 @@ int Binary_Input_Encode_Property_APDU(
apdu_len = encode_application_enumerated(&apdu[0], polarity);
break;
default:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_UNKNOWN_PROPERTY;
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_UNKNOWN_PROPERTY;
apdu_len = -1;
break;
}
/* only array properties can have array options */
- if ((apdu_len >= 0) && (array_index != BACNET_ARRAY_ALL)) {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
+ if ((apdu_len >= 0) && (rpdata->array_index != BACNET_ARRAY_ALL)) {
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
apdu_len = -1;
}
return apdu_len;
}
-
-#ifdef TEST
-#include
-#include
-#include "ctest.h"
-
-void testBinaryInput(
- Test * pTest)
-{
- uint8_t apdu[MAX_APDU] = { 0 };
- int len = 0;
- uint32_t len_value = 0;
- uint8_t tag_number = 0;
- BACNET_OBJECT_TYPE decoded_type = OBJECT_BINARY_OUTPUT;
- uint32_t decoded_instance = 0;
- uint32_t instance = 123;
- BACNET_ERROR_CLASS error_class;
- BACNET_ERROR_CODE error_code;
-
-
- /* FIXME: we should do a lot more testing here... */
- len =
- Binary_Input_Encode_Property_APDU(&apdu[0], instance,
- PROP_OBJECT_IDENTIFIER, BACNET_ARRAY_ALL, &error_class, &error_code);
- ct_test(pTest, len >= 0);
- len = decode_tag_number_and_value(&apdu[0], &tag_number, &len_value);
- ct_test(pTest, tag_number == BACNET_APPLICATION_TAG_OBJECT_ID);
- len =
- decode_object_id(&apdu[len], (int *) &decoded_type, &decoded_instance);
- ct_test(pTest, decoded_type == OBJECT_BINARY_INPUT);
- ct_test(pTest, decoded_instance == instance);
-
- return;
-}
-
-#ifdef TEST_BINARY_INPUT
-int main(
- void)
-{
- Test *pTest;
- bool rc;
-
- pTest = ct_create("BACnet Binary Input", NULL);
- /* individual tests */
- rc = ct_addTestFunction(pTest, testBinaryInput);
- assert(rc);
-
- ct_setStream(pTest, stdout);
- ct_run(pTest);
- (void) ct_report(pTest);
- ct_destroy(pTest);
-
- return 0;
-}
-#endif /* TEST_BINARY_INPUT */
-#endif /* TEST */
diff --git a/bacnet-stack/ports/pic18f6720/bv.c b/bacnet-stack/ports/pic18f6720/bv.c
index f2449e7e..32b1aa2d 100644
--- a/bacnet-stack/ports/pic18f6720/bv.c
+++ b/bacnet-stack/ports/pic18f6720/bv.c
@@ -33,6 +33,8 @@
#include "bacenum.h"
#include "config.h" /* the custom stuff */
#include "wp.h"
+#include "rp.h"
+#include "bv.h"
#define MAX_BINARY_VALUES 8
@@ -116,13 +118,8 @@ char *Binary_Value_Name(
}
/* return apdu len, or -1 on error */
-int Binary_Value_Encode_Property_APDU(
- uint8_t * apdu,
- uint32_t object_instance,
- BACNET_PROPERTY_ID property,
- uint32_t array_index,
- BACNET_ERROR_CLASS * error_class,
- BACNET_ERROR_CODE * error_code)
+int Binary_Value_Read_Property(
+ BACNET_READ_PROPERTY_DATA * rpdata)
{
int len = 0;
int apdu_len = 0; /* return value */
@@ -133,20 +130,26 @@ int Binary_Value_Encode_Property_APDU(
unsigned object_index = 0;
unsigned i = 0;
bool state = false;
+ uint8_t *apdu = NULL;
Binary_Value_Initialize();
- switch (property) {
+ if ((rpdata == NULL) || (rpdata->application_data == NULL) ||
+ (rpdata->application_data_len == 0)) {
+ return 0;
+ }
+ apdu = rpdata->application_data;
+ switch (rpdata->object_property) {
case PROP_OBJECT_IDENTIFIER:
apdu_len =
encode_application_object_id(&apdu[0], OBJECT_BINARY_VALUE,
- object_instance);
+ rpdata->object_instance);
break;
/* note: Name and Description don't have to be the same.
You could make Description writable and different */
case PROP_OBJECT_NAME:
case PROP_DESCRIPTION:
characterstring_init_ansi(&char_string,
- Binary_Value_Name(object_instance));
+ Binary_Value_Name(rpdata->object_instance));
apdu_len =
encode_application_character_string(&apdu[0], &char_string);
break;
@@ -155,7 +158,7 @@ int Binary_Value_Encode_Property_APDU(
encode_application_enumerated(&apdu[0], OBJECT_BINARY_VALUE);
break;
case PROP_PRESENT_VALUE:
- present_value = Binary_Value_Present_Value(object_instance);
+ present_value = Binary_Value_Present_Value(rpdata->object_instance);
apdu_len = encode_application_enumerated(&apdu[0], present_value);
break;
case PROP_STATUS_FLAGS:
@@ -180,15 +183,15 @@ int Binary_Value_Encode_Property_APDU(
apdu_len = encode_application_enumerated(&apdu[0], polarity);
break;
default:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_UNKNOWN_PROPERTY;
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_UNKNOWN_PROPERTY;
apdu_len = -1;
break;
}
/* only array properties can have array options */
- if ((apdu_len >= 0) && (array_index != BACNET_ARRAY_ALL)) {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
+ if ((apdu_len >= 0) && (rpdata->array_index != BACNET_ARRAY_ALL)) {
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
apdu_len = -1;
}
@@ -197,9 +200,7 @@ int Binary_Value_Encode_Property_APDU(
/* returns true if successful */
bool Binary_Value_Write_Property(
- BACNET_WRITE_PROPERTY_DATA * wp_data,
- BACNET_ERROR_CLASS * error_class,
- BACNET_ERROR_CODE * error_code)
+ BACNET_WRITE_PROPERTY_DATA * wp_data)
{
bool status = false; /* return value */
unsigned int object_index = 0;
@@ -209,8 +210,8 @@ bool Binary_Value_Write_Property(
BACNET_APPLICATION_DATA_VALUE value;
if (!Binary_Value_Valid_Instance(wp_data->object_instance)) {
- *error_class = ERROR_CLASS_OBJECT;
- *error_code = ERROR_CODE_UNKNOWN_OBJECT;
+ wp_data->error_class = ERROR_CLASS_OBJECT;
+ wp_data->error_code = ERROR_CODE_UNKNOWN_OBJECT;
return false;
}
/* decode the some of the request */
@@ -220,15 +221,15 @@ bool Binary_Value_Write_Property(
/* FIXME: len < application_data_len: more data? */
if (len < 0) {
/* error while decoding - a value larger than we can handle */
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
return false;
}
if ((wp_data->object_property != PROP_PRIORITY_ARRAY) &&
(wp_data->array_index != BACNET_ARRAY_ALL)) {
/* only array properties can have array options */
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
return false;
}
switch (wp_data->object_property) {
@@ -258,11 +259,11 @@ bool Binary_Value_Write_Property(
/* Command priority 6 is reserved for use by Minimum On/Off
algorithm and may not be used for other purposes in any
object. */
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
}
} else if (value.tag == BACNET_APPLICATION_TAG_NULL) {
#if 0
@@ -282,16 +283,16 @@ bool Binary_Value_Write_Property(
main loop (i.e. check out of service before changing output) */
status = true;
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
}
#else
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
#endif
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
}
break;
case PROP_OUT_OF_SERVICE:
@@ -302,8 +303,8 @@ bool Binary_Value_Write_Property(
Binary_Value_Out_Of_Service[object_index] = value.type.Boolean;
status = true;
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
}
break;
#endif
@@ -313,69 +314,14 @@ bool Binary_Value_Write_Property(
case PROP_STATUS_FLAGS:
case PROP_EVENT_STATE:
case PROP_POLARITY:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
break;
default:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_UNKNOWN_PROPERTY;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_UNKNOWN_PROPERTY;
break;
}
return status;
}
-
-#ifdef TEST
-#include
-#include
-#include "ctest.h"
-
-void testBinary_Value(
- Test * pTest)
-{
- uint8_t apdu[MAX_APDU] = { 0 };
- int len = 0;
- uint32_t len_value = 0;
- uint8_t tag_number = 0;
- BACNET_OBJECT_TYPE decoded_type = OBJECT_BINARY_VALUE;
- uint32_t decoded_instance = 0;
- uint32_t instance = 123;
- BACNET_ERROR_CLASS error_class;
- BACNET_ERROR_CODE error_code;
-
-
- len =
- Binary_Value_Encode_Property_APDU(&apdu[0], instance,
- PROP_OBJECT_IDENTIFIER, BACNET_ARRAY_ALL, &error_class, &error_code);
- ct_test(pTest, len != 0);
- len = decode_tag_number_and_value(&apdu[0], &tag_number, &len_value);
- ct_test(pTest, tag_number == BACNET_APPLICATION_TAG_OBJECT_ID);
- len =
- decode_object_id(&apdu[len], (int *) &decoded_type, &decoded_instance);
- ct_test(pTest, decoded_type == OBJECT_BINARY_VALUE);
- ct_test(pTest, decoded_instance == instance);
-
- return;
-}
-
-#ifdef TEST_BINARY_VALUE
-int main(
- void)
-{
- Test *pTest;
- bool rc;
-
- pTest = ct_create("BACnet Binary_Value", NULL);
- /* individual tests */
- rc = ct_addTestFunction(pTest, testBinary_Value);
- assert(rc);
-
- ct_setStream(pTest, stdout);
- ct_run(pTest);
- (void) ct_report(pTest);
- ct_destroy(pTest);
-
- return 0;
-}
-#endif /* TEST_BINARY_VALUE */
-#endif /* TEST */
diff --git a/bacnet-stack/ports/pic18f6720/device.c b/bacnet-stack/ports/pic18f6720/device.c
index ddaa5678..be80237e 100644
--- a/bacnet-stack/ports/pic18f6720/device.c
+++ b/bacnet-stack/ports/pic18f6720/device.c
@@ -32,16 +32,17 @@
#include "bacenum.h"
#include "config.h" /* the custom stuff */
#include "apdu.h"
-#include "device.h" /* me */
#include "dlmstp.h"
#include "rs485.h"
#include "ai.h"
#include "av.h"
#include "bi.h"
#include "bv.h"
+#include "rp.h"
#include "wp.h"
#include "dcc.h"
#include "version.h"
+#include "device.h" /* me */
/* note: you really only need to define variables for
properties that are writable or that may change.
@@ -56,8 +57,9 @@ bool Device_Reinitialize(
BACNET_REINITIALIZE_DEVICE_DATA * rd_data)
{
bool status = false;
+ char password[16] = "filister";
- if (characterstring_ansi_same(&rd_data->password, "filister")) {
+ if (characterstring_ansi_same(&rd_data->password, password)) {
Reinitialize_State = rd_data->state;
dcc_set_status_duration(COMMUNICATION_ENABLE, 0);
/* Note: you could use a mix of state
@@ -81,8 +83,9 @@ BACNET_REINITIALIZED_STATE Device_Reinitialized_State(
}
void Device_Init(
- void)
+ object_functions_t * object_table)
{
+ (void)object_table;
Reinitialize_State = BACNET_REINIT_IDLE;
dcc_set_status_duration(COMMUNICATION_ENABLE, 0);
/* FIXME: Get the data from the eeprom */
@@ -132,11 +135,13 @@ BACNET_DEVICE_STATUS Device_System_Status(
return System_Status;
}
-void Device_Set_System_Status(
- BACNET_DEVICE_STATUS status)
+int Device_Set_System_Status(
+ BACNET_DEVICE_STATUS status,
+ bool local)
{
- if (status < MAX_DEVICE_STATUS)
+ if (status < MAX_DEVICE_STATUS) {
System_Status = status;
+ }
}
uint16_t Device_Vendor_Identifier(
@@ -163,7 +168,7 @@ BACNET_SEGMENTATION Device_Segmentation_Supported(
return SEGMENTATION_NONE;
}
-uint8_t Device_Database_Revision(
+uint32_t Device_Database_Revision(
void)
{
return Database_Revision;
@@ -259,14 +264,9 @@ bool Device_Object_List_Identifier(
return status;
}
-/* return the length of the apdu encoded or -1 for error */
-int Device_Encode_Property_APDU(
- uint8_t * apdu,
- uint32_t object_instance,
- BACNET_PROPERTY_ID property,
- uint32_t array_index,
- BACNET_ERROR_CLASS * error_class,
- BACNET_ERROR_CODE * error_code)
+/* returns true if successful */
+int Device_Read_Property_Local(
+ BACNET_READ_PROPERTY_DATA * rpdata)
{
int apdu_len = 0; /* return value */
int len = 0; /* apdu len intermediate value */
@@ -279,12 +279,17 @@ int Device_Encode_Property_APDU(
BACNET_TIME local_time;
BACNET_DATE local_date;
uint8_t year = 0;
- char string_buffer[24];
+ char string_buffer[28];
int16_t TimeZone = 0;
+ uint8_t *apdu = NULL;
- object_instance = object_instance;
+ if ((rpdata == NULL) || (rpdata->application_data == NULL) ||
+ (rpdata->application_data_len == 0)) {
+ return 0;
+ }
+ apdu = rpdata->application_data;
/* FIXME: change the hardcoded names to suit your application */
- switch (property) {
+ switch (rpdata->object_property) {
case PROP_OBJECT_IDENTIFIER:
apdu_len =
encode_application_object_id(&apdu[0], OBJECT_DEVICE,
@@ -328,7 +333,8 @@ int Device_Encode_Property_APDU(
encode_application_character_string(&apdu[0], &char_string);
break;
case PROP_FIRMWARE_REVISION:
- characterstring_init_ansi(&char_string, BACnet_Version);
+ (void) strcpypgm2ram(&string_buffer[0], BACNET_VERSION_TEXT);
+ characterstring_init_ansi(&char_string, string_buffer);
apdu_len =
encode_application_character_string(&apdu[0], &char_string);
break;
@@ -383,13 +389,13 @@ int Device_Encode_Property_APDU(
case PROP_OBJECT_LIST:
count = Device_Object_List_Count();
/* Array element zero is the number of objects in the list */
- if (array_index == 0)
+ if (rpdata->array_index == 0)
apdu_len = encode_application_unsigned(&apdu[0], count);
/* if no index was specified, then try to encode the entire list */
/* into one packet. Note that more than likely you will have */
/* to return an error if the number of encoded objects exceeds */
/* your maximum APDU size. */
- else if (array_index == BACNET_ARRAY_ALL) {
+ else if (rpdata->array_index == BACNET_ARRAY_ALL) {
for (i = 1; i <= count; i++) {
if (Device_Object_List_Identifier(i, &object_type,
&instance)) {
@@ -400,28 +406,30 @@ int Device_Encode_Property_APDU(
/* assume next one is the same size as this one */
/* can we all fit into the APDU? */
if ((apdu_len + len) >= MAX_APDU) {
- *error_code =
+ rpdata->error_code =
ERROR_CODE_ABORT_SEGMENTATION_NOT_SUPPORTED;
apdu_len = BACNET_STATUS_ABORT;
break;
}
} else {
/* error: internal error? */
- *error_class = ERROR_CLASS_SERVICES;
- *error_code = ERROR_CODE_OTHER;
+ rpdata->error_class = ERROR_CLASS_SERVICES;
+ rpdata->error_code = ERROR_CODE_OTHER;
apdu_len = BACNET_STATUS_ERROR;
break;
}
}
} else {
- if (Device_Object_List_Identifier(array_index, &object_type,
+ if (Device_Object_List_Identifier(
+ rpdata->array_index,
+ &object_type,
&instance))
apdu_len =
encode_application_object_id(&apdu[0], object_type,
instance);
else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_ARRAY_INDEX;
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_INVALID_ARRAY_INDEX;
apdu_len = BACNET_STATUS_ERROR;
}
}
@@ -487,34 +495,73 @@ int Device_Encode_Property_APDU(
encode_application_unsigned(&apdu[0], RS485_Get_Baud_Rate());
break;
default:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_UNKNOWN_PROPERTY;
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_UNKNOWN_PROPERTY;
apdu_len = -1;
break;
}
/* only array properties can have array options */
- if ((apdu_len >= 0) && (property != PROP_OBJECT_LIST) &&
- (array_index != BACNET_ARRAY_ALL)) {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
+ if ((apdu_len >= 0) && (rpdata->object_property != PROP_OBJECT_LIST) &&
+ (rpdata->array_index != BACNET_ARRAY_ALL)) {
+ rpdata->error_class = ERROR_CLASS_PROPERTY;
+ rpdata->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
apdu_len = BACNET_STATUS_ERROR;
}
return apdu_len;
}
-bool Device_Write_Property(
- BACNET_WRITE_PROPERTY_DATA * wp_data,
- BACNET_ERROR_CLASS * error_class,
- BACNET_ERROR_CODE * error_code)
+int Device_Read_Property(
+ BACNET_READ_PROPERTY_DATA * rpdata)
+{
+ int apdu_len = BACNET_STATUS_ERROR;
+
+ /* initialize the default return values */
+ rpdata->error_class = ERROR_CLASS_OBJECT;
+ rpdata->error_code = ERROR_CODE_UNKNOWN_OBJECT;
+ switch (rpdata->object_type) {
+ case OBJECT_ANALOG_INPUT:
+ if (Analog_Input_Valid_Instance(rpdata->object_instance)) {
+ apdu_len = Analog_Input_Read_Property(rpdata);
+ }
+ break;
+ case OBJECT_ANALOG_VALUE:
+ if (Analog_Value_Valid_Instance(rpdata->object_instance)) {
+ apdu_len = Analog_Value_Read_Property(rpdata);
+ }
+ break;
+ case OBJECT_BINARY_INPUT:
+ if (Binary_Input_Valid_Instance(rpdata->object_instance)) {
+ apdu_len = Binary_Input_Read_Property(rpdata);
+ }
+ break;
+ case OBJECT_BINARY_VALUE:
+ if (Binary_Value_Valid_Instance(rpdata->object_instance)) {
+ apdu_len = Binary_Value_Read_Property(rpdata);
+ }
+ break;
+ case OBJECT_DEVICE:
+ if (Device_Valid_Object_Instance_Number(rpdata->object_instance)) {
+ apdu_len = Device_Read_Property_Local(rpdata);
+ }
+ break;
+ default:
+ break;
+ }
+
+ return apdu_len;
+}
+
+bool Device_Write_Property_Local(
+ BACNET_WRITE_PROPERTY_DATA * wp_data)
{
bool status = false; /* return value */
int len = 0;
BACNET_APPLICATION_DATA_VALUE value;
if (!Device_Valid_Object_Instance_Number(wp_data->object_instance)) {
- *error_class = ERROR_CLASS_OBJECT;
- *error_code = ERROR_CODE_UNKNOWN_OBJECT;
+ wp_data->error_class = ERROR_CLASS_OBJECT;
+ wp_data->error_code = ERROR_CODE_UNKNOWN_OBJECT;
return false;
}
/* decode the some of the request */
@@ -524,15 +571,15 @@ bool Device_Write_Property(
/* FIXME: len < application_data_len: more data? */
if (len < 0) {
/* error while decoding - a value larger than we can handle */
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
return false;
}
if ((wp_data->object_property != PROP_OBJECT_LIST) &&
(wp_data->array_index != BACNET_ARRAY_ALL)) {
/* only array properties can have array options */
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY;
return false;
}
switch (wp_data->object_property) {
@@ -544,12 +591,12 @@ bool Device_Write_Property(
/* we could send an I-Am broadcast to let the world know */
status = true;
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
}
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
}
break;
case PROP_MAX_INFO_FRAMES:
@@ -558,12 +605,12 @@ bool Device_Write_Property(
dlmstp_set_max_info_frames(value.type.Unsigned_Int);
status = true;
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
}
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
}
break;
case PROP_MAX_MASTER:
@@ -573,12 +620,12 @@ bool Device_Write_Property(
dlmstp_set_max_master(value.type.Unsigned_Int);
status = true;
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
}
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
}
break;
case PROP_OBJECT_NAME:
@@ -598,16 +645,16 @@ bool Device_Write_Property(
Disallow setting the Device Object Name to any objects in
the device. */
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_NO_SPACE_TO_WRITE_PROPERTY;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_NO_SPACE_TO_WRITE_PROPERTY;
}
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_CHARACTER_SET_NOT_SUPPORTED;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_CHARACTER_SET_NOT_SUPPORTED;
}
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
}
break;
case 9600:
@@ -616,12 +663,12 @@ bool Device_Write_Property(
RS485_Set_Baud_Rate(value.type.Unsigned_Int);
status = true;
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
}
} else {
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_INVALID_DATA_TYPE;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_INVALID_DATA_TYPE;
}
break;
case PROP_NUMBER_OF_APDU_RETRIES:
@@ -648,14 +695,58 @@ bool Device_Write_Property(
case PROP_DEVICE_ADDRESS_BINDING:
case PROP_DATABASE_REVISION:
case PROP_ACTIVE_COV_SUBSCRIPTIONS:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
break;
default:
- *error_class = ERROR_CLASS_PROPERTY;
- *error_code = ERROR_CODE_UNKNOWN_PROPERTY;
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_UNKNOWN_PROPERTY;
break;
}
return status;
}
+
+bool Device_Write_Property(
+ BACNET_WRITE_PROPERTY_DATA * wp_data)
+{
+ bool status = false; /* Ever the pessamist! */
+ struct object_functions *pObject = NULL;
+
+ /* initialize the default return values */
+ wp_data->error_class = ERROR_CLASS_OBJECT;
+ wp_data->error_code = ERROR_CODE_UNKNOWN_OBJECT;
+ switch (wp_data->object_type) {
+ case OBJECT_ANALOG_INPUT:
+ if (Analog_Input_Valid_Instance(wp_data->object_instance)) {
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
+ }
+ break;
+ case OBJECT_ANALOG_VALUE:
+ if (Analog_Value_Valid_Instance(wp_data->object_instance)) {
+ status = Analog_Value_Write_Property(wp_data);
+ }
+ break;
+ case OBJECT_BINARY_INPUT:
+ if (Binary_Input_Valid_Instance(wp_data->object_instance)) {
+ wp_data->error_class = ERROR_CLASS_PROPERTY;
+ wp_data->error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
+ }
+ break;
+ case OBJECT_BINARY_VALUE:
+ if (Binary_Value_Valid_Instance(wp_data->object_instance)) {
+ status = Binary_Value_Write_Property(wp_data);
+ }
+ break;
+ case OBJECT_DEVICE:
+ if (Device_Valid_Object_Instance_Number(wp_data->object_instance)) {
+ status = Device_Write_Property_Local(wp_data);
+ }
+ break;
+ default:
+ break;
+ }
+
+ return (status);
+}
diff --git a/bacnet-stack/ports/pic18f6720/dlmstp.c b/bacnet-stack/ports/pic18f6720/dlmstp.c
index 08028a0c..59d93cab 100644
--- a/bacnet-stack/ports/pic18f6720/dlmstp.c
+++ b/bacnet-stack/ports/pic18f6720/dlmstp.c
@@ -146,7 +146,7 @@ void dlmstp_task(
}
/* only do master state machine while rx is idle */
if (MSTP_Port.receive_state == MSTP_RECEIVE_STATE_IDLE) {
- if (This_Station <= DEFAULT_MAX_MASTER) {
+ if (MSTP_Port.This_Station <= DEFAULT_MAX_MASTER) {
while (MSTP_Master_Node_FSM(&MSTP_Port)) {
/* do nothing while some states fast transition */
};
diff --git a/bacnet-stack/ports/pic18f6720/h_rp.c b/bacnet-stack/ports/pic18f6720/h_rp.c
deleted file mode 100644
index 54dd337b..00000000
--- a/bacnet-stack/ports/pic18f6720/h_rp.c
+++ /dev/null
@@ -1,210 +0,0 @@
-/**************************************************************************
-*
-* Copyright (C) 2006 Steve Karg
-*
-* Permission is hereby granted, free of charge, to any person obtaining
-* a copy of this software and associated documentation files (the
-* "Software"), to deal in the Software without restriction, including
-* without limitation the rights to use, copy, modify, merge, publish,
-* distribute, sublicense, and/or sell copies of the Software, and to
-* permit persons to whom the Software is furnished to do so, subject to
-* the following conditions:
-*
-* The above copyright notice and this permission notice shall be included
-* in all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*
-*********************************************************************/
-#include
-#include
-#include
-#include
-#include "config.h"
-#include "txbuf.h"
-#include "bacdef.h"
-#include "bacdcode.h"
-#include "bacerror.h"
-#include "apdu.h"
-#include "npdu.h"
-#include "abort.h"
-#include "rp.h"
-/* demo objects */
-#include "device.h"
-#include "ai.h"
-#include "av.h"
-#include "bi.h"
-#include "bv.h"
-
-/* note: this is a minimal handler. See h_rp.c for another */
-
-static uint8_t Temp_Buf[MAX_APDU] = { 0 };
-
-void handler_read_property(
- uint8_t * service_request,
- uint16_t service_len,
- BACNET_ADDRESS * src,
- BACNET_CONFIRMED_SERVICE_DATA * service_data)
-{
- BACNET_READ_PROPERTY_DATA data;
- int len = 0;
- int pdu_len = 0;
- BACNET_NPDU_DATA npdu_data;
- bool send = false;
- bool error = false;
- int bytes_sent = 0;
- BACNET_ERROR_CLASS error_class = ERROR_CLASS_OBJECT;
- BACNET_ERROR_CODE error_code = ERROR_CODE_UNKNOWN_OBJECT;
- BACNET_ADDRESS my_address;
-
- /* encode the NPDU portion of the packet */
- datalink_get_my_address(&my_address);
- npdu_encode_npdu_data(&npdu_data, false, MESSAGE_PRIORITY_NORMAL);
- pdu_len =
- npdu_encode_pdu(&Handler_Transmit_Buffer[0], src, &my_address,
- &npdu_data);
- if (service_data->segmented_message) {
- /* we don't support segmentation - send an abort */
- len =
- abort_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, ABORT_REASON_SEGMENTATION_NOT_SUPPORTED,
- true);
- goto RP_ABORT;
- }
- len = rp_decode_service_request(service_request, service_len, &data);
- if (len < 0) {
- /* bad decoding - send an abort */
- len =
- abort_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, ABORT_REASON_OTHER, true);
- goto RP_ABORT;
- }
- /* most cases will be error */
- error = true;
- switch (data.object_type) {
- case OBJECT_DEVICE:
- /* Test for case of indefinite Device object instance */
- if (data.object_instance == BACNET_MAX_INSTANCE) {
- data.object_instance = Device_Object_Instance_Number();
- }
- /* FIXME: probably need a length limitation sent with encode */
- if (Device_Valid_Object_Instance_Number(data.object_instance)) {
- len =
- Device_Encode_Property_APDU(&Temp_Buf[0],
- data.object_instance, data.object_property,
- data.array_index, &error_class, &error_code);
- if (len >= 0) {
- /* encode the APDU portion of the packet */
- data.application_data = &Temp_Buf[0];
- data.application_data_len = len;
- /* FIXME: probably need a length limitation sent with encode */
- len =
- rp_ack_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, &data);
- error = false;
- }
- }
- break;
- case OBJECT_ANALOG_INPUT:
- if (Analog_Input_Valid_Instance(data.object_instance)) {
- len =
- Analog_Input_Encode_Property_APDU(&Temp_Buf[0],
- data.object_instance, data.object_property,
- data.array_index, &error_class, &error_code);
- if (len >= 0) {
- /* encode the APDU portion of the packet */
- data.application_data = &Temp_Buf[0];
- data.application_data_len = len;
- /* FIXME: probably need a length limitation sent with encode */
- len =
- rp_ack_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, &data);
- error = false;
- }
- }
- break;
- case OBJECT_BINARY_INPUT:
- if (Binary_Input_Valid_Instance(data.object_instance)) {
- len =
- Binary_Input_Encode_Property_APDU(&Temp_Buf[0],
- data.object_instance, data.object_property,
- data.array_index, &error_class, &error_code);
- if (len >= 0) {
- /* encode the APDU portion of the packet */
- data.application_data = &Temp_Buf[0];
- data.application_data_len = len;
- /* FIXME: probably need a length limitation sent with encode */
- len =
- rp_ack_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, &data);
- error = false;
- }
- }
- break;
- case OBJECT_BINARY_VALUE:
- if (Binary_Value_Valid_Instance(data.object_instance)) {
- len =
- Binary_Value_Encode_Property_APDU(&Temp_Buf[0],
- data.object_instance, data.object_property,
- data.array_index, &error_class, &error_code);
- if (len >= 0) {
- /* encode the APDU portion of the packet */
- data.application_data = &Temp_Buf[0];
- data.application_data_len = len;
- /* FIXME: probably need a length limitation sent with encode */
- len =
- rp_ack_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, &data);
- error = false;
- }
- }
- break;
- case OBJECT_ANALOG_VALUE:
- if (Analog_Value_Valid_Instance(data.object_instance)) {
- len =
- Analog_Value_Encode_Property_APDU(&Temp_Buf[0],
- data.object_instance, data.object_property,
- data.array_index, &error_class, &error_code);
- if (len >= 0) {
- /* encode the APDU portion of the packet */
- data.application_data = &Temp_Buf[0];
- data.application_data_len = len;
- /* FIXME: probably need a length limitation sent with encode */
- len =
- rp_ack_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, &data);
- error = false;
- }
- }
- break;
- default:
- break;
- }
- if (error) {
- if (len == BACNET_STATUS_ABORT) {
- /* BACnet APDU too small to fit data, so proper response is Abort */
- len =
- abort_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id,
- ABORT_REASON_SEGMENTATION_NOT_SUPPORTED, true);
- goto RP_ABORT;
- }
- len =
- bacerror_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_READ_PROPERTY,
- error_class, error_code);
- }
- RP_ABORT:
- pdu_len += len;
- bytes_sent =
- datalink_send_pdu(src, &npdu_data, &Handler_Transmit_Buffer[0],
- pdu_len);
-
- return;
-}
diff --git a/bacnet-stack/ports/pic18f6720/h_wp.c b/bacnet-stack/ports/pic18f6720/h_wp.c
deleted file mode 100644
index 4c4ba928..00000000
--- a/bacnet-stack/ports/pic18f6720/h_wp.c
+++ /dev/null
@@ -1,175 +0,0 @@
-/**************************************************************************
-*
-* Copyright (C) 2005 Steve Karg
-*
-* Permission is hereby granted, free of charge, to any person obtaining
-* a copy of this software and associated documentation files (the
-* "Software"), to deal in the Software without restriction, including
-* without limitation the rights to use, copy, modify, merge, publish,
-* distribute, sublicense, and/or sell copies of the Software, and to
-* permit persons to whom the Software is furnished to do so, subject to
-* the following conditions:
-*
-* The above copyright notice and this permission notice shall be included
-* in all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-*
-*********************************************************************/
-#include
-#include
-#include
-#include
-#include
-#include "config.h"
-#include "txbuf.h"
-#include "bacdef.h"
-#include "bacdcode.h"
-#include "apdu.h"
-#include "npdu.h"
-#include "abort.h"
-#include "wp.h"
-/* demo objects */
-#include "device.h"
-#include "ai.h"
-#include "av.h"
-#include "bi.h"
-#include "bv.h"
-
-/* too big to reside on stack frame for PIC */
-static BACNET_WRITE_PROPERTY_DATA wp_data;
-
-void handler_write_property(
- uint8_t * service_request,
- uint16_t service_len,
- BACNET_ADDRESS * src,
- BACNET_CONFIRMED_SERVICE_DATA * service_data)
-{
- int len = 0;
- int pdu_len = 0;
- BACNET_NPDU_DATA npdu_data;
- BACNET_ERROR_CLASS error_class = ERROR_CLASS_OBJECT;
- BACNET_ERROR_CODE error_code = ERROR_CODE_UNKNOWN_OBJECT;
- int bytes_sent = 0;
- BACNET_ADDRESS my_address;
-
- /* encode the NPDU portion of the packet */
- datalink_get_my_address(&my_address);
- npdu_encode_npdu_data(&npdu_data, false, MESSAGE_PRIORITY_NORMAL);
- pdu_len =
- npdu_encode_pdu(&Handler_Transmit_Buffer[0], src, &my_address,
- &npdu_data);
- if (service_data->segmented_message) {
- len =
- abort_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, ABORT_REASON_SEGMENTATION_NOT_SUPPORTED,
- true);
- goto WP_ABORT;
- }
- /* decode the service request only */
- len = wp_decode_service_request(service_request, service_len, &wp_data);
- /* bad decoding or something we didn't understand - send an abort */
- if (len <= 0) {
- len =
- abort_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, ABORT_REASON_OTHER, true);
- goto WP_ABORT;
- }
- switch (wp_data.object_type) {
- case OBJECT_DEVICE:
- if (Device_Write_Property(&wp_data, &error_class, &error_code)) {
- len =
- encode_simple_ack(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_WRITE_PROPERTY);
-#if PRINT_ENABLED
- fprintf(stderr,
- "Sending Write Property Simple Ack for Device!\n");
-#endif
- } else {
- len =
- bacerror_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_WRITE_PROPERTY,
- error_class, error_code);
-#if PRINT_ENABLED
- fprintf(stderr, "Sending Write Property Error for Device!\n");
-#endif
- }
- break;
- case OBJECT_ANALOG_INPUT:
- case OBJECT_BINARY_INPUT:
- error_class = ERROR_CLASS_PROPERTY;
- error_code = ERROR_CODE_WRITE_ACCESS_DENIED;
- len =
- bacerror_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_WRITE_PROPERTY,
- error_class, error_code);
-#if PRINT_ENABLED
- fprintf(stderr, "Sending Write Access Error!\n");
-#endif
- break;
- case OBJECT_BINARY_VALUE:
- if (Binary_Value_Write_Property(&wp_data, &error_class,
- &error_code)) {
- len =
- encode_simple_ack(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_WRITE_PROPERTY);
-#if PRINT_ENABLED
- fprintf(stderr, "Sending Write Property Simple Ack for BV!\n");
-#endif
- } else {
- len =
- bacerror_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_WRITE_PROPERTY,
- error_class, error_code);
-#if PRINT_ENABLED
- fprintf(stderr, "Sending Write Access Error for BV!\n");
-#endif
- }
- break;
- case OBJECT_ANALOG_VALUE:
- if (Analog_Value_Write_Property(&wp_data, &error_class,
- &error_code)) {
- len =
- encode_simple_ack(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_WRITE_PROPERTY);
-#if PRINT_ENABLED
- fprintf(stderr, "Sending Write Property Simple Ack for AV!\n");
-#endif
- } else {
- len =
- bacerror_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_WRITE_PROPERTY,
- error_class, error_code);
-#if PRINT_ENABLED
- fprintf(stderr, "Sending Write Access Error for AV!\n");
-#endif
- }
- break;
- default:
- len =
- bacerror_encode_apdu(&Handler_Transmit_Buffer[pdu_len],
- service_data->invoke_id, SERVICE_CONFIRMED_WRITE_PROPERTY,
- error_class, error_code);
-#if PRINT_ENABLED
- fprintf(stderr, "Sending Unknown Object Error!\n");
-#endif
- break;
- }
- WP_ABORT:
- pdu_len += len;
- bytes_sent =
- datalink_send_pdu(src, &npdu_data, &Handler_Transmit_Buffer[0],
- pdu_len);
-#if PRINT_ENABLED
- if (bytes_sent <= 0)
- fprintf(stderr, "Failed to send PDU (%s)!\n", strerror(errno));
-#endif
-
- return;
-}
diff --git a/bacnet-stack/ports/pic18f6720/mstp.c b/bacnet-stack/ports/pic18f6720/mstp.c
index 847e0ff9..f15f7126 100644
--- a/bacnet-stack/ports/pic18f6720/mstp.c
+++ b/bacnet-stack/ports/pic18f6720/mstp.c
@@ -51,7 +51,9 @@
#endif
#include "mstp.h"
#include "bytes.h"
+#include "bits.h"
#include "crc.h"
+#include "bacaddr.h"
#include "rs485.h"
#if PRINT_ENABLED
#include "mstptext.h"
@@ -907,16 +909,18 @@ bool MSTP_Master_Node_FSM(
/* before passing the token. */
mstp_port->master_state = MSTP_MASTER_STATE_USE_TOKEN;
transition_now = true;
- } else if ((MSTP_Flag.SoleMaster == false) &&
- (Next_Station == This_Station)) {
+ } else if ((mstp_port->SoleMaster == false) &&
+ (mstp_port->Next_Station == mstp_port->This_Station)) {
/* NextStationUnknown - added in Addendum 135-2008v-1 */
/* then the next station to which the token
should be sent is unknown - so PollForMaster */
- Poll_Station = next_this_station;
- MSTP_Send_Frame(FRAME_TYPE_POLL_FOR_MASTER, Poll_Station,
- This_Station, NULL, 0);
- RetryCount = 0;
- Master_State = MSTP_MASTER_STATE_POLL_FOR_MASTER;
+ mstp_port->Poll_Station = next_this_station;
+ MSTP_Create_And_Send_Frame(mstp_port,
+ FRAME_TYPE_POLL_FOR_MASTER,
+ mstp_port->Poll_Station,
+ mstp_port->This_Station, NULL, 0);
+ mstp_port->RetryCount = 0;
+ mstp_port->master_state = MSTP_MASTER_STATE_POLL_FOR_MASTER;
}
/* Npoll changed in Errata SSPC-135-2004 */
else if (mstp_port->TokenCount < (Npoll - 1)) {