summaryrefslogtreecommitdiff
path: root/mbglib/common/myutil.c
blob: b6db2754bfbf566e6fd007d29965493b899b0fd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68

/**************************************************************************
 *
 *  $Id: myutil.c 1.3 2004/10/29 10:12:13 martin REL_M $
 *
 *  Copyright (c) Meinberg Funkuhren, Bad Pyrmont, Germany
 *
 *  Description:
 *    Some miscellaneous utility functions.
 *
 * -----------------------------------------------------------------------
 *  $Log: myutil.c $
 *  Revision 1.3  2004/10/29 10:12:13  martin
 *  Removed obsolete inclusion of mystd.h.
 *  Revision 1.2  2000/07/21 13:52:01Z  MARTIN
 *  Support for checksums on far data objects.
 *
 **************************************************************************/

#define _MYUTIL
 #include <myutil.h>
#undef _MYUTIL



/*HDR*/
void spaces_to_zeros( char *s )
{
  char *cp;

  for ( cp = s; *cp; cp++ )
    if ( *cp == ' ' )
      *cp = '0';

}  // spaces_to_zeros



/*--------------------------------------------------------------*/
/* Name:         checksum()                                     */
/*                                                              */
/* Purpose:                                                     */
/*                                                              */
/*                                                              */
/* Input:        --                                             */
/*                                                              */
/* Output:       --                                             */
/*                                                              */
/* Ret value:    --                                             */
/*+-------------------------------------------------------------*/

/*HDR*/
CSUM checksum( const void _CSFAR *vp, int n )
{
  CSUM csum = 0x1234;
  int i;

  byte _CSFAR *p = ( (byte _CSFAR *) vp ) + sizeof( csum );
  n -= sizeof( csum );

  for ( i = 0; i < n; i++ )
    csum += *p++;

  return( csum );

}  // checksum