UbixOS  2.0
example.c
Go to the documentation of this file.
1 #include <stdio.h>
2 #include "fat_filelib.h"
3 
4 int media_init()
5 {
6  // ...
7  return 1;
8 }
9 
10 int media_read(unsigned long sector, unsigned char *buffer, unsigned long sector_count)
11 {
12  unsigned long i;
13 
14  for (i=0;i<sector_count;i++)
15  {
16  // ...
17  // Add platform specific sector (512 bytes) read code here
18  //..
19 
20  sector ++;
21  buffer += 512;
22  }
23 
24  return 1;
25 }
26 
27 int media_write(unsigned long sector, unsigned char *buffer, unsigned long sector_count)
28 {
29  unsigned long i;
30 
31  for (i=0;i<sector_count;i++)
32  {
33  // ...
34  // Add platform specific sector (512 bytes) write code here
35  //..
36 
37  sector ++;
38  buffer += 512;
39  }
40 
41  return 1;
42 }
43 
44 void main()
45 {
46  FL_FILE *file;
47 
48  // Initialise media
49  media_init();
50 
51  // Initialise File IO Library
52  fl_init();
53 
54  // Attach media access functions to library
56  {
57  printf("ERROR: Media attach failed\n");
58  return;
59  }
60 
61  // List root directory
62  fl_listdirectory("/");
63 
64  // Create File
65  file = fl_fopen("/file.bin", "w");
66  if (file)
67  {
68  // Write some data
69  unsigned char data[] = { 1, 2, 3, 4 };
70  if (fl_fwrite(data, 1, sizeof(data), file) != sizeof(data))
71  printf("ERROR: Write file failed\n");
72  }
73  else
74  printf("ERROR: Create file failed\n");
75 
76  // Close file
77  fl_fclose(file);
78 
79  // Delete File
80  if (fl_remove("/file.bin") < 0)
81  printf("ERROR: Delete file failed\n");
82 
83  // List root directory
84  fl_listdirectory("/");
85 
86  fl_shutdown();
87 }
file
fileDescriptor * file
Definition: tcpdump.c:45
fl_fclose
void fl_fclose(void *f)
Definition: fat_filelib.c:856
buffer
char * buffer
Definition: shell.c:47
fl_remove
int fl_remove(const char *filename)
Definition: fat_filelib.c:1314
file
Definition: descrip.h:67
FAT_INIT_OK
#define FAT_INIT_OK
Definition: fat_access.h:10
fl_fwrite
int fl_fwrite(const void *data, int size, int count, void *f)
Definition: fat_filelib.c:1162
fat_filelib.h
fl_init
void fl_init(void)
Definition: fat_filelib.c:584
media_read
int media_read(unsigned long sector, unsigned char *buffer, unsigned long sector_count)
Definition: example.c:10
media_write
int media_write(unsigned long sector, unsigned char *buffer, unsigned long sector_count)
Definition: example.c:27
fl_listdirectory
void fl_listdirectory(const char *path)
Definition: fat_filelib.c:1362
media_init
int media_init()
Definition: example.c:4
fl_fopen
void * fl_fopen(const char *path, const char *mode)
Definition: fat_filelib.c:638
main
void main()
Definition: example.c:44
sFL_FILE
Definition: fat_filelib.h:38
fl_shutdown
void fl_shutdown(void)
Definition: fat_filelib.c:627
fl_attach_media
int fl_attach_media(fn_diskio_read rd, fn_diskio_write wr)
Definition: fat_filelib.c:606