Send file data demo.

Dependencies:   modem_ref_helper CRC DebouncedInterrupt

Revision:
1:f4a7a48a5f2b
Parent:
0:065f2318fcb9
Child:
2:992b87360140
--- a/modem_callbacks.cpp	Wed May 03 11:31:11 2017 +0000
+++ b/modem_callbacks.cpp	Thu May 11 15:25:55 2017 +0000
@@ -6,7 +6,7 @@
 #include "alp_helpers.h"
 #include "modem_ref.h"
 
-#include "fs.h"
+#include "ram_fs.h"
 #include "hal_types.h"
 
 // ============================================================}}}
@@ -17,23 +17,43 @@
 {
     u8 data[256]; // XXX VLA
     
-    fs_read(fid, offset, length, data);
+    if (ram_fs_read(fid, offset, length, data))
+    {
+        // Error
+        length = 0;
+    }
     
     modem_respond_read(fid, data, offset, length, id);
 }
 
 void my_write(u8 fid, void *data, u32 offset, u32 length, int id)
 {
-    fs_write(fid, offset, length, (uint8_t*)data);
+    alp_errors_t err;
     
-    modem_respond(0, ALP_ERR_NONE, id);
+    if (ram_fs_write(fid, offset, length, (uint8_t*)data))
+    {
+        err = ALP_ERR_FILE_NOT_FOUND;
+    }
+    else
+    {
+        err = ALP_ERR_NONE;
+    }
+    
+    modem_respond(0, err, id);
 }
 
 void my_read_fprop(u8 fid, int id)
 {
-    u8* hdr = (u8*)fs_get_header(fid);
+    u8* hdr = (u8*)ram_fs_get_header(fid);
     
-    modem_respond_fprop(fid, hdr, id);
+    if (hdr != NULL)
+    {
+        modem_respond_fprop(fid, hdr, id);
+    }
+    else
+    {
+        modem_respond(0, ALP_ERR_FILE_NOT_FOUND, id);
+    }
 }
 
 void my_flush(u8 fid, int id)
@@ -44,9 +64,11 @@
 
 void my_delete(u8 fid, int id)
 {
-    fs_delete(fid);
+    alp_errors_t err;
     
-    modem_respond(0, ALP_ERR_NONE, id);
+    err = (ram_fs_delete(fid))? ALP_ERR_FILE_NOT_FOUND : ALP_ERR_NONE;
+    
+    modem_respond(0, err, id);
 }
 
 void my_lqual(u8 ifid, int per)