C 3 Mar 2001, Peter Onyisi: fix platform defines for Linux; "UNIX" apparently means IRIX C DEC/CMS REPLACEMENT HISTORY, Element I2UPAK.CDF C *6 17-DEC-1993 17:04:41 MARKL "Replace E_L$LIBRARY with C$INC." C *5 8-NOV-1993 15:58:28 MARKL "Changing long names to short." C *4 14-OCT-1991 16:22:42 TROEMEL "port to rs6000" C *3 15-MAR-1988 10:55:54 CHADWICK "Modify offline package logical names" C *2 10-MAR-1988 14:17:43 CHADWICK "Modify so that these routines compile on ACP" C *1 14-FEB-1986 15:33:43 SOURCE "Unpacks in a machine INDEPENTENT way two integer*2 words from one integer*4 word" C DEC/CMS REPLACEMENT HISTORY, Element I2UPAK.CDF C====================================================================== SUBROUTINE I2UPAK(I2,J2,K4) C====================================================================== C C Description: C ============ C This subroutine unpacks an INTEGER*4 word into two INTEGER*2 words C in a "machine independent" fashion. At present, VAX and IBM versions C are available. C C Input Arguments: C ================ C K4 - (INTEGER*4) word to be unpacked. C C Output Arguments: C ================= C I2 - (INTEGER*2) result of unpacking least significant 16 bits of K4 C J2 - (INTEGER*2) result of unpacking most significant 16 bits of K4 C C Preconditions necessary before call: C ==================================== C None C C Author: C ======= C R. Perchonok C C Revision History: C ================= C Jun 08, 1984 - Original creation C C====================================================================== implicit none #include "inc/erlevl.inc" INTEGER*4 K4,INT4 INTEGER*2 I2,J2,INT2(2) EQUIVALENCE (INT2,INT4) C #if defined(VAX) || defined(LINUX) INT4=K4 I2=INT2(1) J2=INT2(2) #else #if defined(IBM) INT4=K4 I2=INT2(2) J2=INT2(1) #else #if defined(UNIX) INT4=K4 I2=INT2(2) J2=INT2(1) #else CALL ERLOGR('I2UPAK',ERWARN,0,0, 1 'Dummy I2UPAK routine invoked') #endif #endif #endif C RETURN END