aboutsummaryrefslogtreecommitdiffstats
path: root/src/filesystem.h
diff options
context:
space:
mode:
authorBad Diode <bd@badd10de.dev>2023-05-28 11:06:04 +0200
committerBad Diode <bd@badd10de.dev>2023-05-28 11:06:04 +0200
commit5024c6631ab583c0b375f0002e2ad6d6373d84ee (patch)
tree69c11c0f2562ceb740545d2c506a335f3935339f /src/filesystem.h
parenta3b2141540d74456689ddfaac44c4f83f995c6a7 (diff)
downloadstepper-5024c6631ab583c0b375f0002e2ad6d6373d84ee.tar.gz
stepper-5024c6631ab583c0b375f0002e2ad6d6373d84ee.zip
Fix save data corruption if no save existed
Diffstat (limited to 'src/filesystem.h')
-rw-r--r--src/filesystem.h36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/filesystem.h b/src/filesystem.h
deleted file mode 100644
index 6439f83..0000000
--- a/src/filesystem.h
+++ /dev/null
@@ -1,36 +0,0 @@
1#ifndef FILESYSTEM_H
2#define FILESYSTEM_H
3
4#include "gba/gba.h"
5
6typedef enum {
7 FS_OPEN_READ = (1 << 0),
8 FS_OPEN_WRITE = (1 << 1),
9 FS_OPEN_APPEND = (1 << 2),
10} OpenMode;
11
12typedef struct File {
13 // File index offset.
14 u8 index;
15 // The offset within the file. Must always be valid, and so the File struct
16 // shouldn't be manaully modified unless we are sure we know what we are
17 // doing.
18 u16 offset;
19 // The mode of this file (read/write/append).
20 OpenMode mode;
21} File;
22
23typedef enum {
24 FS_SEEK_SET,
25 FS_SEEK_CUR,
26 FS_SEEK_END,
27} SeekMode;
28
29void fs_init(void);
30File fs_open_file(char *name, OpenMode mode);
31u16 fs_file_size(File *file);
32int fs_seek(File *file, int offset, SeekMode mode);
33u16 fs_write(u8 *src, u16 n_bytes, File *file);
34u16 fs_read(u8 *dst, u16 n_bytes, File *file);
35
36#endif // FILESYSTEM_H