/*--------------------------------------------------------------------
 * FICHERO:  MemEscEp.c
 * OBJETIVO: Definir la funcin Mem_EscribeEntpos()
 * AUTOR:    Pedro Reina
 * FECHA:    L.24.7.1995
 *------------------------------------------------------------------*/

/*--------------------------------------------------------------------
 * Ficheros de cabecera
 *------------------------------------------------------------------*/

#include "Memoria.h"

/*--------------------------------------------------------------------
 * Definicin de funciones
 *------------------------------------------------------------------*/

/*--------------------------------------------------------------Olimpo
 * FUNCION:  Mem_EscribeEntpos()
 * OBJETIVO: Poner en una posicin de memoria un valor dado
 *           como entpos
 * ENTRADAS: La posicin de memoria, el modo de almacenamiento
 *           y el valor
 * SALIDAS:  El valor
 * EJEMPLO:  Mem_EscribeEntpos (Memoria+10, MEM_INTEL, 4000111222)
 * ALGORITMO:
 *      Escribir el valor
 *      Si el modo no es el nativo del ordenador, se intercambian 
 *         los octetos
 *------------------------------------------------------------------*/
entpos Mem_EscribeEntpos (Memoria, Modo, Valor)
memoria Memoria;
octeto  Modo;
entpos  Valor;
  {
  * ((entpos *)Memoria) = Valor;
  
#ifdef OLIMPO_PC
  if ( Modo == MEM_MOTOROLA )
#endif
#ifdef OLIMPO_QL
  if ( Modo == MEM_INTEL )
#endif
    { 
    Mem_Intercambia (Memoria,Memoria+3);
    Mem_Intercambia (Memoria+1,Memoria+2);
    }
  
  return ( Valor );
  }