diff options
Diffstat (limited to 'wfileIO3.h')
-rw-r--r-- | wfileIO3.h | 31 |
1 files changed, 20 insertions, 11 deletions
@@ -1,5 +1,15 @@ -struct file { /* 48 bytes */ +#ifdef A64 +typedef __int64 CLEAN_INT; +typedef unsigned __int64 UNSIGNED_CLEAN_INT; +typedef unsigned __int64 FilePositionT; +#else +typedef long CLEAN_INT; +typedef unsigned long UNSIGNED_CLEAN_INT; +typedef unsigned long FilePositionT; +#endif + +struct file { unsigned char * file_read_p; /* offset 0 */ unsigned char * file_write_p; /* offset 4 */ unsigned char * file_end_read_buffer_p; /* offset 8 */ @@ -11,17 +21,16 @@ struct file { /* 48 bytes */ unsigned char * file_read_buffer_p; unsigned char * file_write_buffer_p; - unsigned long file_offset; - unsigned long file_length; + FilePositionT file_offset; + FilePositionT file_length; char * file_name; - unsigned long file_position; - unsigned long file_position_2; + FilePositionT file_position; + FilePositionT file_position_2; HFILE file_read_refnum; HFILE file_write_refnum; - - long file_fill_offset_56, /* fill to 64 bytes */ + CLEAN_INT file_fill_offset_56, /* fill to 64 bytes */ file_fill_offset_60; }; @@ -31,13 +40,13 @@ extern struct file file_table[]; #define CLEAN_BOOL int extern int file_read_char (struct file *f); -extern CLEAN_BOOL file_read_int (struct file *f,int *i_p); +extern CLEAN_BOOL file_read_int (struct file *f,CLEAN_INT *i_p); extern CLEAN_BOOL file_read_real (struct file *f,double *r_p); -extern unsigned long file_read_characters (struct file *f,unsigned long *length_p,char *s); +extern UNSIGNED_CLEAN_INT file_read_characters (struct file *f,UNSIGNED_CLEAN_INT *length_p,char *s); extern void file_write_char (int c,struct file *f); extern void file_write_char (int c,struct file *f); -extern void file_write_characters (unsigned char *p,int length,struct file *f); -extern void file_write_int (int i,struct file *f); +extern void file_write_characters (unsigned char *p,UNSIGNED_CLEAN_INT length,struct file *f); +extern void file_write_int (CLEAN_INT i,struct file *f); extern void file_write_real (double r,struct file *f); extern CLEAN_BOOL flush_file_buffer (struct file *f); |