]> git.pond.sub.org Git - empserver/blob - src/lib/gen/copy.c
Import of Empire 4.2.12
[empserver] / src / lib / gen / copy.c
1 /*
2  *  Empire - A multi-player, client/server Internet based war game.
3  *  Copyright (C) 1986-2000, Dave Pare, Jeff Bailey, Thomas Ruschak,
4  *                           Ken Stevens, Steve McClure
5  *
6  *  This program is free software; you can redistribute it and/or modify
7  *  it under the terms of the GNU General Public License as published by
8  *  the Free Software Foundation; either version 2 of the License, or
9  *  (at your option) any later version.
10  *
11  *  This program is distributed in the hope that it will be useful,
12  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  *  GNU General Public License for more details.
15  *
16  *  You should have received a copy of the GNU General Public License
17  *  along with this program; if not, write to the Free Software
18  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  *
20  *  ---
21  *
22  *  See the "LEGAL", "LICENSE", "CREDITS" and "README" files for all the
23  *  related information and legal notices. It is expected that any future
24  *  projects/authors will amend these files as needed.
25  *
26  *  ---
27  *
28  *  copy.c: Copy and return pointer to end of copied string.
29  * 
30  *  Known contributors to this file:
31  *     
32  */
33
34 #include "misc.h"
35 #include "xy.h"
36 #include "map.h"
37 #include "gen.h"
38 #include "optlist.h"
39
40 s_char *
41 copy(register s_char *s1, register s_char *s2)
42 {
43         while ((*s2++ = *s1++) != 0)
44                 ;
45         return s2 - 1;
46 }
47
48 #ifdef hpux
49 #include <memory.h>
50
51 void
52 bzero(s_char *ptr, int len)
53 {
54         memset(ptr, 0, len);
55 }
56
57 void
58 bcopy(s_char *src, s_char *dst, int len)
59 {
60         memcpy(dst, src, len);
61 }
62 #endif
63
64 /*
65  * space-fill a map or radar scan;
66  * null terminate
67  */
68 void
69 blankfill(s_char *ptr, register struct range *range, int size)
70 {
71         register s_char *p;
72         register int row;
73         register int col;
74
75         for (row=0; row<range->height; row++) {
76                 col = (range->width + 1) * (size + 1) / 2 - 1;
77                 p = ptr;
78                 while (--col >= 0)
79                         *p++ = ' ';
80                 *p++ = 0;
81                 ptr += MAPWIDTH(size);
82         }
83 }