diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.dsp b/bacnet-stack/ports/win32/bacnet/bacnet.dsp
index 79f5b436..1bf337b8 100644
--- a/bacnet-stack/ports/win32/bacnet/bacnet.dsp
+++ b/bacnet-stack/ports/win32/bacnet/bacnet.dsp
@@ -67,7 +67,7 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "c:\code\bacnet-stack\\" /I "c:\code\bacnet-stack\ports\win32\\" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "BACDL_BIP" /FR /FD /GZ /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "c:\code\bacnet-stack\\" /I "c:\code\bacnet-stack\ports\win32\\" /I "c:\code\bacnet-stack\demo\object" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "BACDL_BIP" /FR /FD /GZ /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
@@ -97,11 +97,11 @@ SOURCE=..\..\..\address.c
# End Source File
# Begin Source File
-SOURCE=..\..\..\ai.c
+SOURCE=..\..\..\demo\object\ai.c
# End Source File
# Begin Source File
-SOURCE=..\..\..\ao.c
+SOURCE=..\..\..\demo\object\ao.c
# End Source File
# Begin Source File
@@ -125,7 +125,7 @@ SOURCE=..\..\..\bacerror.c
# End Source File
# Begin Source File
-SOURCE=..\..\..\bacfile.c
+SOURCE=..\..\..\demo\object\bacfile.c
# End Source File
# Begin Source File
@@ -157,7 +157,7 @@ SOURCE=..\..\..\datalink.c
# End Source File
# Begin Source File
-SOURCE=..\..\..\device.c
+SOURCE=..\..\..\demo\object\device.c
# End Source File
# Begin Source File
@@ -217,11 +217,11 @@ SOURCE=..\..\..\address.h
# End Source File
# Begin Source File
-SOURCE=..\..\..\ai.h
+SOURCE=..\..\..\demo\object\ai.h
# End Source File
# Begin Source File
-SOURCE=..\..\..\ao.h
+SOURCE=..\..\..\demo\object\ao.h
# End Source File
# Begin Source File
@@ -253,6 +253,10 @@ SOURCE=..\..\..\bacerror.h
# End Source File
# Begin Source File
+SOURCE=..\..\..\demo\object\bacfile.h
+# End Source File
+# Begin Source File
+
SOURCE=..\..\..\bacstr.h
# End Source File
# Begin Source File
@@ -285,7 +289,7 @@ SOURCE=..\..\..\datalink.h
# End Source File
# Begin Source File
-SOURCE=..\..\..\device.h
+SOURCE=..\..\..\demo\object\device.h
# End Source File
# Begin Source File
diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.ncb b/bacnet-stack/ports/win32/bacnet/bacnet.ncb
index 93b6e50a..c01364cf 100644
Binary files a/bacnet-stack/ports/win32/bacnet/bacnet.ncb and b/bacnet-stack/ports/win32/bacnet/bacnet.ncb differ
diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.opt b/bacnet-stack/ports/win32/bacnet/bacnet.opt
index bfd244d5..099ee63f 100644
Binary files a/bacnet-stack/ports/win32/bacnet/bacnet.opt and b/bacnet-stack/ports/win32/bacnet/bacnet.opt differ
diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.plg b/bacnet-stack/ports/win32/bacnet/bacnet.plg
index c9bf9747..bac923d2 100644
--- a/bacnet-stack/ports/win32/bacnet/bacnet.plg
+++ b/bacnet-stack/ports/win32/bacnet/bacnet.plg
@@ -6,19 +6,16 @@
--------------------Configuration: bacnet - Win32 Debug--------------------
Command Lines
-Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15AF.tmp" with contents
+Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58A.tmp" with contents
[
-/nologo /MLd /W3 /Gm /GX /ZI /Od /I "c:\code\bacnet-stack\\" /I "c:\code\bacnet-stack\ports\win32\\" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "BACDL_BIP" /FR"Debug/" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c
+/nologo /MLd /W3 /Gm /GX /ZI /Od /I "c:\code\bacnet-stack\\" /I "c:\code\bacnet-stack\ports\win32\\" /I "c:\code\bacnet-stack\demo\object" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "BACDL_BIP" /FR"Debug/" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c
"C:\code\bacnet-stack\abort.c"
"C:\code\bacnet-stack\address.c"
-"C:\code\bacnet-stack\ai.c"
-"C:\code\bacnet-stack\ao.c"
"C:\code\bacnet-stack\apdu.c"
"C:\code\bacnet-stack\arf.c"
"C:\code\bacnet-stack\bacapp.c"
"C:\code\bacnet-stack\bacdcode.c"
"C:\code\bacnet-stack\bacerror.c"
-"C:\code\bacnet-stack\bacfile.c"
"C:\code\bacnet-stack\bacstr.c"
"C:\code\bacnet-stack\bactext.c"
"C:\code\bacnet-stack\bigend.c"
@@ -26,7 +23,6 @@ Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15AF.tmp" with conte
"C:\code\bacnet-stack\bip.c"
"C:\code\bacnet-stack\crc.c"
"C:\code\bacnet-stack\datalink.c"
-"C:\code\bacnet-stack\device.c"
"C:\code\bacnet-stack\handlers.c"
"C:\code\bacnet-stack\iam.c"
"C:\code\bacnet-stack\indtext.c"
@@ -38,21 +34,22 @@ Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15AF.tmp" with conte
"C:\code\bacnet-stack\tsm.c"
"C:\code\bacnet-stack\whois.c"
"C:\code\bacnet-stack\wp.c"
+"C:\code\bacnet-stack\demo\object\device.c"
+"C:\code\bacnet-stack\demo\object\ai.c"
+"C:\code\bacnet-stack\demo\object\ao.c"
+"C:\code\bacnet-stack\demo\object\bacfile.c"
]
-Creating command line "cl.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15AF.tmp"
-Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15B0.tmp" with contents
+Creating command line "cl.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58A.tmp"
+Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58B.tmp" with contents
[
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/bacnet.pdb" /debug /machine:I386 /out:"Debug/bacnet.exe" /pdbtype:sept
".\Debug\abort.obj"
".\Debug\address.obj"
-".\Debug\ai.obj"
-".\Debug\ao.obj"
".\Debug\apdu.obj"
".\Debug\arf.obj"
".\Debug\bacapp.obj"
".\Debug\bacdcode.obj"
".\Debug\bacerror.obj"
-".\Debug\bacfile.obj"
".\Debug\bacstr.obj"
".\Debug\bactext.obj"
".\Debug\bigend.obj"
@@ -60,7 +57,6 @@ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32
".\Debug\bip.obj"
".\Debug\crc.obj"
".\Debug\datalink.obj"
-".\Debug\device.obj"
".\Debug\handlers.obj"
".\Debug\iam.obj"
".\Debug\indtext.obj"
@@ -72,22 +68,21 @@ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32
".\Debug\tsm.obj"
".\Debug\whois.obj"
".\Debug\wp.obj"
+".\Debug\device.obj"
+".\Debug\ai.obj"
+".\Debug\ao.obj"
+".\Debug\bacfile.obj"
]
-Creating command line "link.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15B0.tmp"
+Creating command line "link.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58B.tmp"
Output Window
Compiling...
abort.c
address.c
-ai.c
-c:\code\bacnet-stack\ai.c(76) : warning C4305: 'initializing' : truncation from 'const double ' to 'float '
-ao.c
-c:\code\bacnet-stack\ao.c(157) : warning C4305: 'initializing' : truncation from 'const double ' to 'float '
apdu.c
arf.c
bacapp.c
bacdcode.c
bacerror.c
-bacfile.c
bacstr.c
bactext.c
bigend.c
@@ -95,45 +90,47 @@ bip-init.c
bip.c
crc.c
datalink.c
-device.c
handlers.c
iam.c
-Generating Code...
-c:\code\bacnet-stack\handlers.c(194) : warning C4761: integral size mismatch in argument; conversion supplied
-c:\code\bacnet-stack\handlers.c(271) : warning C4761: integral size mismatch in argument; conversion supplied
-c:\code\bacnet-stack\device.c(601) : warning C4761: integral size mismatch in argument; conversion supplied
-c:\code\bacnet-stack\device.c(614) : warning C4761: integral size mismatch in argument; conversion supplied
-c:\code\bacnet-stack\device.c(627) : warning C4761: integral size mismatch in argument; conversion supplied
-c:\code\bacnet-stack\bacfile.c(285) : warning C4761: integral size mismatch in argument; conversion supplied
-Compiling...
indtext.c
main.c
c:\code\bacnet-stack\ports\win32\net.h(30) : warning C4005: 'STRICT' : macro redefinition
c:\program files\microsoft visual studio\vc98\include\windef.h(15) : see previous definition of 'STRICT'
npdu.c
reject.c
+Generating Code...
+c:\code\bacnet-stack\npdu.c(332) : warning C4761: integral size mismatch in argument; conversion supplied
+c:\code\bacnet-stack\handlers.c(194) : warning C4761: integral size mismatch in argument; conversion supplied
+c:\code\bacnet-stack\handlers.c(271) : warning C4761: integral size mismatch in argument; conversion supplied
+Compiling...
ringbuf.c
rp.c
tsm.c
whois.c
wp.c
+device.c
+ai.c
+c:\code\bacnet-stack\demo\object\ai.c(76) : warning C4305: 'initializing' : truncation from 'const double ' to 'float '
+ao.c
+c:\code\bacnet-stack\demo\object\ao.c(157) : warning C4305: 'initializing' : truncation from 'const double ' to 'float '
+bacfile.c
Generating Code...
+c:\code\bacnet-stack\demo\object\bacfile.c(285) : warning C4761: integral size mismatch in argument; conversion supplied
+c:\code\bacnet-stack\demo\object\device.c(611) : warning C4761: integral size mismatch in argument; conversion supplied
+c:\code\bacnet-stack\demo\object\device.c(624) : warning C4761: integral size mismatch in argument; conversion supplied
+c:\code\bacnet-stack\demo\object\device.c(637) : warning C4761: integral size mismatch in argument; conversion supplied
c:\code\bacnet-stack\wp.c(129) : warning C4761: integral size mismatch in argument; conversion supplied
-c:\code\bacnet-stack\npdu.c(332) : warning C4761: integral size mismatch in argument; conversion supplied
Linking...
-Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15B2.tmp" with contents
+Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58D.tmp" with contents
[
/nologo /o"Debug/bacnet.bsc"
".\Debug\abort.sbr"
".\Debug\address.sbr"
-".\Debug\ai.sbr"
-".\Debug\ao.sbr"
".\Debug\apdu.sbr"
".\Debug\arf.sbr"
".\Debug\bacapp.sbr"
".\Debug\bacdcode.sbr"
".\Debug\bacerror.sbr"
-".\Debug\bacfile.sbr"
".\Debug\bacstr.sbr"
".\Debug\bactext.sbr"
".\Debug\bigend.sbr"
@@ -141,7 +138,6 @@ Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15B2.tmp" with conte
".\Debug\bip.sbr"
".\Debug\crc.sbr"
".\Debug\datalink.sbr"
-".\Debug\device.sbr"
".\Debug\handlers.sbr"
".\Debug\iam.sbr"
".\Debug\indtext.sbr"
@@ -152,8 +148,12 @@ Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15B2.tmp" with conte
".\Debug\rp.sbr"
".\Debug\tsm.sbr"
".\Debug\whois.sbr"
-".\Debug\wp.sbr"]
-Creating command line "bscmake.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP15B2.tmp"
+".\Debug\wp.sbr"
+".\Debug\device.sbr"
+".\Debug\ai.sbr"
+".\Debug\ao.sbr"
+".\Debug\bacfile.sbr"]
+Creating command line "bscmake.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58D.tmp"
Creating browse info file...
Output Window