diff --git a/miosix/Makefile b/miosix/Makefile
index 3edc38a2eb95f628d2be94cc47280914c062d6f1..909c58f4630e10feed1268a4f5c6254c8b8f13d0 100644
--- a/miosix/Makefile
+++ b/miosix/Makefile
@@ -26,10 +26,10 @@ filesystem/mountpointfs/mountpointfs.cpp                                   \
 filesystem/devfs/devfs.cpp                                                 \
 filesystem/devfs/base_files.cpp                                            \
 filesystem/fat32/fat32.cpp                                                 \
-filesystem/fat32/ff.c                                                      \
+filesystem/fat32/ff.cpp                                                    \
 filesystem/fat32/diskio.cpp                                                \
 filesystem/fat32/wtoupper.cpp                                              \
-filesystem/fat32/ccsbcs.c                                                  \
+filesystem/fat32/ccsbcs.cpp                                                \
 stdlib_integration/libc_integration.cpp                                    \
 stdlib_integration/libstdcpp_integration.cpp                               \
 e20/e20.cpp                                                                \
diff --git a/miosix/filesystem/fat32/ccsbcs.c b/miosix/filesystem/fat32/ccsbcs.cpp
similarity index 100%
rename from miosix/filesystem/fat32/ccsbcs.c
rename to miosix/filesystem/fat32/ccsbcs.cpp
diff --git a/miosix/filesystem/fat32/diskio.cpp b/miosix/filesystem/fat32/diskio.cpp
index 38bcf504a8d69f7277d2b2ef07f9b8692b16dd74..bdf7dc686e9d98eaf1af51055284edbcda7b3d81 100644
--- a/miosix/filesystem/fat32/diskio.cpp
+++ b/miosix/filesystem/fat32/diskio.cpp
@@ -8,9 +8,9 @@
 
 using namespace miosix;
 
-#ifdef __cplusplus
-extern "C" {
-#endif
+// #ifdef __cplusplus
+// extern "C" {
+// #endif
 
 /**
  * \internal
@@ -108,6 +108,6 @@ DRESULT disk_ioctl (
      return 0x210000;//TODO: this stub just returns date 01/01/1980 0.00.00
  }
 
-#ifdef __cplusplus
-}
-#endif
+// #ifdef __cplusplus
+// }
+// #endif
diff --git a/miosix/filesystem/fat32/ff.c b/miosix/filesystem/fat32/ff.cpp
similarity index 100%
rename from miosix/filesystem/fat32/ff.c
rename to miosix/filesystem/fat32/ff.cpp
diff --git a/miosix/filesystem/fat32/ff.h b/miosix/filesystem/fat32/ff.h
index 5ab301c8875e275b433bcdd8d2b69b4f8b35481e..1b09f3a289e15d7eead9b8d78ad3c28684b65da9 100644
--- a/miosix/filesystem/fat32/ff.h
+++ b/miosix/filesystem/fat32/ff.h
@@ -17,9 +17,9 @@
 #ifndef _FATFS
 #define _FATFS	80960	/* Revision ID */
 
-#ifdef __cplusplus
-extern "C" {
-#endif
+//#ifdef __cplusplus
+//extern "C" {
+//#endif
 
 #include "integer.h"	/* Basic integer types */
 #include "ffconf.h"		/* FatFs configuration options */
@@ -336,8 +336,8 @@ int ff_del_syncobj (_SYNC_t sobj);				/* Delete a sync object */
 #define	ST_DWORD(ptr,val)	*(BYTE*)(ptr)=(BYTE)(val); *((BYTE*)(ptr)+1)=(BYTE)((WORD)(val)>>8); *((BYTE*)(ptr)+2)=(BYTE)((DWORD)(val)>>16); *((BYTE*)(ptr)+3)=(BYTE)((DWORD)(val)>>24)
 #endif
 
-#ifdef __cplusplus
-}
-#endif
+//#ifdef __cplusplus
+//}
+//#endif
 
 #endif /* _FATFS */
diff --git a/miosix/filesystem/fat32/wtoupper.cpp b/miosix/filesystem/fat32/wtoupper.cpp
index 4b9a39c43d3f2e9dec4f86a8523f28648c6757c6..8cdf20ccb894de245b8648c0c49b0f255d5d25d7 100644
--- a/miosix/filesystem/fat32/wtoupper.cpp
+++ b/miosix/filesystem/fat32/wtoupper.cpp
@@ -61,7 +61,7 @@ static const unsigned short upperCase[]=
 
 static const int tabSize=sizeof(lowerCase)/sizeof(lowerCase[0]);
 
-extern "C" unsigned short ff_wtoupper(unsigned short c)
+unsigned short ff_wtoupper(unsigned short c)
 {
     if(c>='a' && c<='z') return c-('a'-'A');               //26 code points
 
diff --git a/miosix_np_2/nbproject/configurations.xml b/miosix_np_2/nbproject/configurations.xml
index e8659618497aa90cff94724c2adc9f7a1c3a84b4..c88e3add48d1b0f1899496081d92ce127a82228e 100644
--- a/miosix_np_2/nbproject/configurations.xml
+++ b/miosix_np_2/nbproject/configurations.xml
@@ -315,14 +315,16 @@
             <in>devfs.h</in>
           </df>
           <df name="fat32">
+            <in>ccsbcs.cpp</in>
             <in>diskio.cpp</in>
             <in>diskio.h</in>
             <in>fat32.cpp</in>
             <in>fat32.h</in>
-            <in>ff.c</in>
+            <in>ff.cpp</in>
             <in>ff.h</in>
             <in>ffconf.h</in>
             <in>integer.h</in>
+            <in>wtoupper.cpp</in>
           </df>
           <df name="mountpointfs">
             <in>mountpointfs.cpp</in>
@@ -1344,8 +1346,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -2459,8 +2459,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -3559,6 +3557,11 @@
       </item>
       <item path="../miosix/filesystem/devfs/devfs.h" ex="false" tool="3" flavor2="0">
       </item>
+      <item path="../miosix/filesystem/fat32/ccsbcs.cpp"
+            ex="false"
+            tool="1"
+            flavor2="0">
+      </item>
       <item path="../miosix/filesystem/fat32/diskio.cpp"
             ex="false"
             tool="1"
@@ -3576,7 +3579,7 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
+      <item path="../miosix/filesystem/fat32/ff.cpp" ex="false" tool="1" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
@@ -3590,6 +3593,11 @@
             tool="3"
             flavor2="0">
       </item>
+      <item path="../miosix/filesystem/fat32/wtoupper.cpp"
+            ex="false"
+            tool="1"
+            flavor2="0">
+      </item>
       <item path="../miosix/filesystem/file.cpp" ex="false" tool="1" flavor2="0">
       </item>
       <item path="../miosix/filesystem/file.h" ex="false" tool="3" flavor2="0">
@@ -4698,8 +4706,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -5815,8 +5821,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -6932,8 +6936,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -8049,8 +8051,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -9164,8 +9164,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -10279,8 +10277,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -11394,8 +11390,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -12509,8 +12503,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -13624,8 +13616,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
@@ -14739,8 +14729,6 @@
       </item>
       <item path="../miosix/filesystem/fat32/fat32.h" ex="false" tool="3" flavor2="0">
       </item>
-      <item path="../miosix/filesystem/fat32/ff.c" ex="false" tool="0" flavor2="0">
-      </item>
       <item path="../miosix/filesystem/fat32/ff.h" ex="false" tool="3" flavor2="0">
       </item>
       <item path="../miosix/filesystem/fat32/integer.h"
diff --git a/miosix_np_2/nbproject/private/configurations.xml b/miosix_np_2/nbproject/private/configurations.xml
index fc77598fed584a09b1ee3cee0b7dd974cf9c116f..5f2c4c7e04c9a2ada54af541f3639f8841e8b7f5 100644
--- a/miosix_np_2/nbproject/private/configurations.xml
+++ b/miosix_np_2/nbproject/private/configurations.xml
@@ -319,23 +319,16 @@
             <in>devfs.h</in>
           </df>
           <df name="fat32">
-            <df name="option">
-              <in>cc932.c</in>
-              <in>cc936.c</in>
-              <in>cc949.c</in>
-              <in>cc950.c</in>
-              <in>ccsbcs.c</in>
-              <in>syscall.c</in>
-              <in>unicode.c</in>
-            </df>
+            <in>ccsbcs.cpp</in>
             <in>diskio.cpp</in>
             <in>diskio.h</in>
             <in>fat32.cpp</in>
             <in>fat32.h</in>
-            <in>ff.c</in>
+            <in>ff.cpp</in>
             <in>ff.h</in>
             <in>ffconf.h</in>
             <in>integer.h</in>
+            <in>wtoupper.cpp</in>
           </df>
           <df name="mountpointfs">
             <in>mountpointfs.cpp</in>