Rev 6591 | Rev 9058 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6591 | Rev 9057 | ||
---|---|---|---|
Line -... | Line 1... | ||
- | 1 | #include |
|
Line 1... | Line 2... | ||
1 | #pragma pack(push, 1) |
2 | |
2 | typedef struct |
3 | #pragma pack(push,1) |
3 | { |
4 | typedef struct |
4 | char sec; |
5 | { |
Line 50... | Line 51... | ||
50 | }; |
51 | unsigned mod_date; |
51 | unsigned size; |
52 | }; |
52 | unsigned size_high; |
53 | unsigned size; |
53 | } FILEINFO; |
54 | unsigned size_high; |
54 | 55 | } FILEINFO; |
|
55 | #pragma pack(pop) |
- | |
56 | 56 | #pragma pack(pop) |
|
Line 57... | Line -... | ||
57 | - | ||
58 | int get_fileinfo(const char *path,FILEINFO *info) |
57 | |
59 | { |
58 | int get_fileinfo(const char *path, FILEINFO *info) |
60 | int retval; |
59 | { |
61 | int tmp; |
60 | ksys70_t k; |
- | 61 | int err; |
|
- | 62 | k.p00 = 5; |
|
- | 63 | k.bdfe = info; |
|
- | 64 | k.p20 = 0; |
|
- | 65 | k.p21 = path; |
|
- | 66 | return FS_Service(&k, err); |
|
Line 62... | Line -... | ||
62 | - | ||
63 | asm __volatile__ |
- | |
64 | ( |
- | |
65 | "pushl $0 \n\t" |
- | |
66 | "pushl $0 \n\t" |
- | |
67 | "movl %2, 1(%%esp) \n\t" |
- | |
68 | "pushl %%ebx \n\t" |
- | |
69 | "pushl $0 \n\t" |
- | |
70 | "pushl $0 \n\t" |
- | |
71 | "pushl $0 \n\t" |
- | |
72 | "pushl $5 \n\t" |
- | |
73 | "movl %%esp, %%ebx \n\t" |
- | |
74 | "movl $70, %%eax \n\t" |
- | |
75 | "int $0x40 \n\t" |
- | |
76 | "addl $28, %%esp \n\t" |
- | |
77 | :"=a" (retval),"=b"(tmp) |
- | |
78 | :"r" (path), "b" (info) |
- | |
79 | ); |
- | |
80 | return retval; |
- |