|
|
1.1 root 1: #if TARGET != TAHOE
2: }}}}} WRONG MACHINE!!! }}}}}
3: #endif
4:
5: /* The code for converting the types of constants is not */
6: /* portable. The problems involved in dealing with */
7: /* features such as reserved operands and byte orderings */
8: /* have proven very difficult to deal with in a portable */
9: /* manner. */
10:
11: #define BLANK ' '
12:
13: #define MAXWORD 0x7fff
14: #define MINWORD -0x8000
15:
16: typedef
17: struct Dreal
18: {
19: #if HERE == VAX
20: unsigned fract1: 7;
21: unsigned exp: 8;
22: unsigned sign: 1;
23: #else
24: #if HERE == TAHOE
25: unsigned sign: 1;
26: unsigned exp: 8;
27: unsigned fract1: 7;
28: #else
29: }}}}} WRONG MACHINE!!! }}}}}
30: #endif
31: #endif
32: unsigned fract2: 16;
33: unsigned short fract3;
34: unsigned short fract4;
35: }
36: dreal;
37:
38: typedef
39: struct Quad
40: {
41: long word1;
42: long word2;
43: }
44: quad;
45:
46: typedef
47: union RealValue
48: {
49: double d;
50: quad q;
51: dreal f;
52: }
53: realvalue;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.