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