1 /*
2   Copyright 1998 David Rysdam
3   Copyright 1998-2003 Victor Wagner
4   Copyright 2003 Alex Ott
5   This file is released under the GPL.  Details can be
6   found in the file COPYING accompanying this distribution.
7 */
8 
9 #define MAX_MS_RECSIZE 18000
10 
11 #define MS_UNIX_DATE_DIFF (70*365.2422+1)
12 
13 #define DATE_FORMAT              14
14 
15 #define MS1904  		 0x22
16 #define ADDIN 		         0x87
17 #define ADDMENU 		 0xC2
18 #define ARRAY 		         0x221
19 #define AUTOFILTER 		 0x9E
20 #define AUTOFILTERINFO 		 0x9D
21 #define BACKUP 		         0x40
22 #define BLANK 		         0x201
23 #define BOF 		         0x809
24 #define BOOKBOOL 		 0xDA
25 #define BOOLERR 		 0x205
26 #define BOTTOMMARGIN 		 0x29
27 #define BOUNDSHEET 		 0x85
28 #define CALCCOUNT 		 0x0C
29 #define CALCMODE 		 0x0D
30 #define CODEPAGE 		 0x42
31 #define COLINFO 		 0x7D
32 #define CONTINUE 		 0x3C
33 #define COORDLIST 		 0xA9
34 #define COUNTRY 		 0x8C
35 #define CRN 		         0x5A
36 #define DBCELL 		         0xD7
37 #define DCON 		         0x50
38 #define DCONNAME 		 0x52
39 #define DCONREF 		 0x51
40 #define DEFAULTROWHEIGHT 	 0x225
41 #define DEFCOLWIDTH 		 0x55
42 #define DELMENU 		 0xC3
43 #define DELTA 		         0x10
44 #define DIMENSIONS 		 0x200
45 #define DOCROUTE 		 0xB8
46 #define EDG 		         0x88
47 #define MSEOF 		         0x0A
48 #define EXTERNCOUNT 		 0x16
49 #define EXTERNNAME 		 0x223
50 #define EXTERNSHEET 		 0x17
51 #define FILEPASS 		 0x2F
52 #define FILESHARING 		 0x5B
53 #define FILESHARING2 		 0x1A5
54 #define FILTERMODE 		 0x9B
55 #define FNGROUPCOUNT 		 0x9C
56 #define FNGROUPNAME 		 0x9A
57 #define FONT 		         0x231
58 #define FONT2 		         0x31
59 #define FOOTER 		         0x15
60 #define FORMAT 		         0x41E
61 #define FORMULA_RELATED		 0x4BC
62 #define DOUBLE_STREAM_FILE	 0x161
63 /*#define FORMULA 		 0x406  Microsoft docs wrong?*/
64 #define FORMULA 		 0x06
65 #define GCW 		         0xAB
66 #define GRIDSET 		 0x82
67 #define PROT4REVPASS             0x1BC
68 #define GUTS 		         0x80
69 #define HCENTER 		 0x83
70 #define HEADER 		         0x14
71 #define HIDEOBJ 		 0x8D
72 #define HORIZONTALPAGEBREAKS 	 0x1B
73 #define IMDATA 		         0x7F
74 #define INDEX 		         0x20B
75 #define INTERFACEEND 		 0xE2
76 #define INTERFACEHDR 		 0xE1
77 #define ITERATION 		 0x11
78 #define LABEL 		         0x204
79 #define LEFTMARGIN 		 0x26
80 #define LHNGRAPH 		 0x95
81 #define LHRECORD 		 0x94
82 #define LPR 		         0x98
83 #define MMS 		         0xC1
84 #define MULBLANK 		 0xBE
85 #define MULRK 		         0xBD
86 #define NAME 		         0x218
87 #define NOTE 		         0x1C
88 #define NUMBER 		         0x203
89 #define OBJ 		         0x5D
90 #define OBJPROTECT 		 0x63
91 #define OBPROJ 		         0xD3
92 #define OLESIZE 		 0xDE
93 #define PALETTE 		 0x92
94 #define PANE 		         0x41
95 #define PASSWORD 		 0x13
96 #define PLS 		         0x4D
97 #define PRECISION 		 0x0E
98 #define PRINTGRIDLINES 		 0x2B
99 #define PRINTHEADERS 		 0x2A
100 #define PROTECT 		 0x12
101 #define PUB 		         0x89
102 #define RECIPNAME 		 0xB9
103 #define REFMODE 		 0x0F
104 #define RIGHTMARGIN 		 0x27
105 #define RK 		         0x27E
106 #define ROW 		         0x208
107 #define RSTRING 		 0xD6
108 #define SAVERECALC 		 0x5F
109 #define SCENARIO 		 0xAF
110 #define SCENMAN 		 0xAE
111 #define SCENPROTECT 		 0xDD
112 #define SCL 		         0xA0
113 #define SELECTION 		 0x1D
114 #define SETUP 		         0xA1
115 #define SHRFMLA 		 0xBC
116 #define SORT 		         0x90
117 #define SOUND 		         0x96
118 #define STANDARDWIDTH 		 0x99
119 #define STRING 		         0x207
120 #define STYLE 		         0x293
121 #define SUB 		         0x91
122 #define SXDI 		         0xC5
123 #define SXEXT 		         0xDC
124 #define SXIDSTM 		 0xD5
125 #define SXIVD 		         0xB4
126 #define SXLI 		         0xB5
127 #define SXPI 		         0xB6
128 #define SXSTRING 		 0xCD
129 #define SXTBL 		         0xD0
130 #define SXTBPG 		         0xD2
131 #define SXTBRGIITM 		 0xD1
132 #define SXVD 		         0xB1
133 #define SXVI 		         0xB2
134 #define SXVIEW 		         0xB0
135 #define SXVS 		         0xE3
136 #define TABID 		         0x13D
137 #define TABIDCONF 		 0xEA
138 #define TABLE 		         0x236
139 #define TEMPLATE 		 0x60
140 #define TOPMARGIN 		 0x28
141 #define UDDESC 		         0xDF
142 #define UNCALCED 		 0x5E
143 #define VCENTER 		 0x84
144 #define VERTICALPAGEBREAKS 	 0x1A
145 #define WINDOW1 		 0x3D
146 #define WINDOW2 		 0x23E
147 #define WINDOWPROTECT 		 0x19
148 #define WRITEACCESS 		 0x5C
149 #define WRITEPROT 		 0x86
150 #define WSBOOL 		         0x81
151 #define XCT 		         0x59
152 #define XF 		         0xE0
153 #define SST			 0xFC
154 #define CONSTANT_STRING	         0xFD
155 #define REFRESHALL		 0x1B7
156 #define USESELFS		 0x160
157 #define EXTSST		         0xFF
158 /* Vitus additions */
159 #define INTEGER_CELL 	 0x202
160