blob: 1b53e929a0eb0c535d437b68f768278032114893 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
typedef struct File File;
typedef struct Fs Fs;
#include "dosfs.h"
#include "kfs.h"
struct File{
union{
Dosfile dos;
Kfsfile kfs;
int walked;
};
Fs *fs;
char *path;
};
struct Fs{
union {
Dos dos;
Kfs kfs;
};
int dev; /* device id */
long (*diskread)(Fs*, void*, long); /* disk read routine */
vlong (*diskseek)(Fs*, vlong); /* disk seek routine */
long (*read)(File*, void*, long);
int (*walk)(File*, char*);
File root;
};
extern int chatty;
extern int dotini(Fs*);
extern int fswalk(Fs*, char*, File*);
extern int fsread(File*, void*, long);
extern int fsboot(Fs*, char*, Boot*);
#define BADPTR(x) ((ulong)x < 0x80000000)
|