summaryrefslogtreecommitdiff
path: root/uisimulator/common/io.c
diff options
context:
space:
mode:
Diffstat (limited to 'uisimulator/common/io.c')
-rw-r--r--uisimulator/common/io.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/uisimulator/common/io.c b/uisimulator/common/io.c
index 6547421668..f630ae49c8 100644
--- a/uisimulator/common/io.c
+++ b/uisimulator/common/io.c
@@ -158,13 +158,18 @@ extern const char *sim_root_dir;
158 158
159static int num_openfiles = 0; 159static int num_openfiles = 0;
160 160
161struct sim_dirent { 161/* from dir.h */
162 unsigned char d_name[MAX_PATH]; 162struct dirinfo {
163 int attribute; 163 int attribute;
164 long size; 164 long size;
165 unsigned short wrtdate;
166 unsigned short wrttime;
167};
168
169struct sim_dirent {
170 unsigned char d_name[MAX_PATH];
171 struct dirinfo info;
165 long startcluster; 172 long startcluster;
166 unsigned short wrtdate; /* Last write date */
167 unsigned short wrttime; /* Last write time */
168}; 173};
169 174
170struct dirstruct { 175struct dirstruct {
@@ -329,14 +334,14 @@ struct sim_dirent *sim_readdir(MYDIR *dir)
329 334
330#define ATTR_DIRECTORY 0x10 335#define ATTR_DIRECTORY 0x10
331 336
332 secret.attribute = S_ISDIR(s.st_mode)?ATTR_DIRECTORY:0; 337 secret.info.attribute = S_ISDIR(s.st_mode)?ATTR_DIRECTORY:0;
333 secret.size = s.st_size; 338 secret.info.size = s.st_size;
334 339
335 tm = localtime(&(s.st_mtime)); 340 tm = localtime(&(s.st_mtime));
336 secret.wrtdate = ((tm->tm_year - 80) << 9) | 341 secret.info.wrtdate = ((tm->tm_year - 80) << 9) |
337 ((tm->tm_mon + 1) << 5) | 342 ((tm->tm_mon + 1) << 5) |
338 tm->tm_mday; 343 tm->tm_mday;
339 secret.wrttime = (tm->tm_hour << 11) | 344 secret.info.wrttime = (tm->tm_hour << 11) |
340 (tm->tm_min << 5) | 345 (tm->tm_min << 5) |
341 (tm->tm_sec >> 1); 346 (tm->tm_sec >> 1);
342 return &secret; 347 return &secret;