1*22802Smckusick /* 2*22802Smckusick * Copyright (c) 1980 Regents of the University of California. 3*22802Smckusick * All rights reserved. The Berkeley software License Agreement 4*22802Smckusick * specifies the terms and conditions for redistribution. 5*22802Smckusick * 6*22802Smckusick * @(#)conv.h 5.1 (Berkeley) 06/07/85 7*22802Smckusick */ 8*22802Smckusick 9*22802Smckusick #if (HERE != VAX || TARGET != VAX) 10*22802Smckusick }}}}} WRONG MACHINE!!! }}}}} 11*22802Smckusick #endif 12*22802Smckusick 13*22802Smckusick /* The code for converting the types of constants is not */ 14*22802Smckusick /* portable. The problems involved in dealing with */ 15*22802Smckusick /* features such as reserved operands and byte orderings */ 16*22802Smckusick /* have proven very difficult to deal with in a portable */ 17*22802Smckusick /* manner. Because of impending deadlines, I have put */ 18*22802Smckusick /* off trying to achieve portability. */ 19*22802Smckusick /* */ 20*22802Smckusick /* -Robert Paul Corbett */ 21*22802Smckusick /* 1983 May 1 */ 22*22802Smckusick 23*22802Smckusick 24*22802Smckusick #define BLANK ' ' 25*22802Smckusick 26*22802Smckusick #define MAXWORD 32767 27*22802Smckusick #define MINWORD -32768 28*22802Smckusick 29*22802Smckusick typedef 30*22802Smckusick struct Dreal 31*22802Smckusick { 32*22802Smckusick unsigned fract1: 7; 33*22802Smckusick unsigned exp: 8; 34*22802Smckusick unsigned sign: 1; 35*22802Smckusick unsigned fract2: 16; 36*22802Smckusick unsigned fract3: 16; 37*22802Smckusick unsigned fract4: 16; 38*22802Smckusick } 39*22802Smckusick dreal; 40*22802Smckusick 41*22802Smckusick typedef 42*22802Smckusick struct Quad 43*22802Smckusick { 44*22802Smckusick long word1; 45*22802Smckusick long word2; 46*22802Smckusick } 47*22802Smckusick quad; 48*22802Smckusick 49*22802Smckusick typedef 50*22802Smckusick union RealValue 51*22802Smckusick { 52*22802Smckusick double d; 53*22802Smckusick quad q; 54*22802Smckusick dreal f; 55*22802Smckusick } 56*22802Smckusick realvalue; 57