/
Crimson2/alias/
Crimson2/area.tmp/
Crimson2/area.tmp/AnomalySpaceDock/
Crimson2/area.tmp/AnomalyStation/
Crimson2/area.tmp/AntHill/
Crimson2/area.tmp/ArcticTerrarium/
Crimson2/area.tmp/BuilderCity/
Crimson2/area.tmp/Dungeon/
Crimson2/area.tmp/MiningDock/
Crimson2/area.tmp/PipeSystem/
Crimson2/area.tmp/RattArea/
Crimson2/area.tmp/RobotFactory/
Crimson2/area.tmp/SilverDale/
Crimson2/area.tmp/StarshipFearless/
Crimson2/area.tmp/StationConduits/
Crimson2/area.tmp/TerrariumAlpha/
Crimson2/area.tmp/TerrariumBeta/
Crimson2/area.tmp/TestArea/
Crimson2/area.tmp/Void/
Crimson2/area/
Crimson2/area/AnomalySpaceDock/
Crimson2/area/AnomalyStation/
Crimson2/area/MiningDock/
Crimson2/area/PipeSystem/
Crimson2/area/SilverDale/
Crimson2/area/StationConduits/
Crimson2/area/Void/
Crimson2/board/
Crimson2/clone/
Crimson2/lib/
Crimson2/mole/
Crimson2/mole/mole_src/HELP/
Crimson2/player/
Crimson2/util/
Crimson2/wldedit/
Crimson2/wldedit/res/
// mem.c
// two-letter descriptor: me        
// ****************************************************************************
// Copyright (C) B. Cameron Lesiuk, 1999. All rights reserved.
// Permission to use/copy this code is granted for non-commercial use only.
// B. Cameron Lesiuk
// Victoria, BC, Canada
// wi961@freenet.victoria.bc.ca
// ****************************************************************************
//
// This module provides some common memory functions

void *meMemCpy(void *p_dest,void *p_src, unsigned long p_size) {
  unsigned long l_i;
  unsigned char *l_src,*l_dst;

  if ((!p_dest)||(!p_src))
    return ((void*)0L);

  l_src=(unsigned char *)p_src;
  l_dst=(unsigned char *)p_dest;

  for (l_i=0L;l_i<p_size;l_i++) {
    *l_dst=*l_src;
    l_dst++;
    l_src++;
  }
  return p_dest;
}

void *meMemClr(void *p_dest, unsigned long p_size) {
  unsigned long l_i;
  unsigned char *l_dst;

  if (!p_dest)
    return ((void*)0L);

  l_dst=(unsigned char *)p_dest;

  for (l_i=0L;l_i<p_size;l_i++) {
    *l_dst=(unsigned char)0;
    l_dst++;
  }
  return p_dest;
}