… | |
… | |
16 | along with this program; if not, write to the Free Software |
16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
17 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
18 | */ |
18 | */ |
19 | |
19 | |
20 | #include "config.h" |
20 | #include "config.h" |
|
|
21 | #include "compat.h" |
21 | #include <stdlib.h> |
22 | #include <stdlib.h> |
22 | #include <string.h> |
23 | #include <string.h> |
23 | |
24 | |
24 | #include "data.h" |
25 | #include "data.h" |
25 | #include "parse_routines.h" |
26 | #include "parse_routines.h" |
… | |
… | |
65 | (*result)->file = psiconv_word_file; |
66 | (*result)->file = psiconv_word_file; |
66 | psiconv_debug(lev+2,off+len,"File is a Word file"); |
67 | psiconv_debug(lev+2,off+len,"File is a Word file"); |
67 | } else if ((*result)->uid3 == PSICONV_ID_TEXTED) { |
68 | } else if ((*result)->uid3 == PSICONV_ID_TEXTED) { |
68 | (*result)->file = psiconv_texted_file; |
69 | (*result)->file = psiconv_texted_file; |
69 | psiconv_debug(lev+2,off+len,"File is a TextEd file"); |
70 | psiconv_debug(lev+2,off+len,"File is a TextEd file"); |
|
|
71 | } else if ((*result)->uid3 == PSICONV_ID_SKETCH) { |
|
|
72 | (*result)->file = psiconv_sketch_file; |
|
|
73 | psiconv_debug(lev+2,off+len,"File is a Sketch file"); |
70 | } |
74 | } |
71 | } else if ((*result)->uid2 == PSICONV_ID_MBM_FILE) { |
75 | } else if ((*result)->uid2 == PSICONV_ID_MBM_FILE) { |
72 | (*result)->file = psiconv_mbm_file; |
76 | (*result)->file = psiconv_mbm_file; |
73 | if ((*result)->uid3 != 0x00) |
77 | if ((*result)->uid3 != 0x00) |
74 | psiconv_warn(lev+2,off+len,"UID3 set in MBM file?!?"); |
78 | psiconv_warn(lev+2,off+len,"UID3 set in MBM file?!?"); |
75 | psiconv_debug(lev+2,off+len,"File is a MBM file"); |
79 | psiconv_debug(lev+2,off+len,"File is a MBM file"); |
… | |
… | |
92 | (*result)->uid3),temp); |
96 | (*result)->uid3),temp); |
93 | res = -1; |
97 | res = -1; |
94 | } |
98 | } |
95 | len += 4; |
99 | len += 4; |
96 | |
100 | |
97 | psiconv_progress(lev+2,off+len,"Going to read Section Table Section offset"); |
|
|
98 | (*result)->section_table_offset = psiconv_read_u32(buf,lev+2,off+len); |
|
|
99 | psiconv_debug(lev+2,off+len,"Section Table Section starts at offset %08x", |
|
|
100 | (*result)->section_table_offset) ; |
|
|
101 | len += 4; |
|
|
102 | |
|
|
103 | if (length) |
101 | if (length) |
104 | *length = len; |
102 | *length = len; |
105 | |
103 | |
106 | psiconv_progress(lev+1,off+len-1, |
104 | psiconv_progress(lev+1,off+len-1, |
107 | "End of Header Section (total length: %08x)",len); |
105 | "End of Header Section (total length: %08x)",len); |