1 /* Fudge unix isatty and fileno for RISCOS */
6 #include "oslib/osfile.h"
13 { return (fn
==fileno(stdin
));
16 bits
unixtime(bits ld
,bits ex
)
19 if(ex
<1855547904U) ld
--;
21 return ex
/100+42949673U*ld
-ld
/25;
25 /* from RISC OS infozip, preserves filetype in ld */
26 int acorntime(bits
*ex
, bits
*ld
, time_t utime
)
28 unsigned timlo
; /* 3 lower bytes of acorn file-time plus carry byte */
29 unsigned timhi
; /* 2 high bytes of acorn file-time */
31 timlo
= ((unsigned)utime
& 0x00ffffffU
) * 100 + 0x00996a00U
;
32 timhi
= ((unsigned)utime
>> 24);
33 timhi
= timhi
* 100 + 0x0000336eU
+ (timlo
>> 24);
34 if (timhi
& 0xffff0000U
)
35 return 1; /* calculation overflow, do not change time */
37 /* insert the five time bytes into loadaddr and execaddr variables */
38 *ex
= (timlo
& 0x00ffffffU
) | ((timhi
& 0x000000ffU
) << 24);
39 *ld
= (*ld
& 0xffffff00U
) | ((timhi
>> 8) & 0x000000ffU
);
41 return 0; /* subject to future extension to signal overflow */
47 if(xosfile_read_stamped_no_path(fn
,&ob
,0,0,0,0,0)) return 0;
49 { case osfile_IS_DIR
:return 1;
50 case osfile_IS_IMAGE
:return 1;
57 if(xosfile_read_stamped_no_path(fn
,&ob
,0,0,0,0,0)) return 0;
59 { case osfile_IS_FILE
:return 1;
60 case osfile_IS_IMAGE
:return 1;
65 int object_exists(char *fn
)
67 if(xosfile_read_stamped_no_path(fn
,&ob
,0,0,0,0,0)) return 0;
69 { case osfile_IS_FILE
:return 1;
70 case osfile_IS_DIR
:return 1;
71 case osfile_IS_IMAGE
:return 1;