aboutsummaryrefslogtreecommitdiff
path: root/02-usart/src/mem.c
blob: 65d8b607ee8f47b4874f808dbb1418ec720abad1 (plain) (blame)
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
#include "arch.h"
#include "mem.h"
#include "common.h"

#ifdef ARCH_STM32L4
// Provide a definition for memset()

void* memset(void* dest, int c, size_t n)
{
  uint8_t c8 = (uint8_t) c;
  uint8_t* dest8 = (uint8_t*) dest;
  uint8_t* to = dest8 + n;

  while(dest8 < to) {
    *(dest8 ++) = c8;
  }

  return dest;
}

#endif

// void memcpy_(void* dest, const void* src, size_t len)
// {
//   uint8_t* dest_ = (uint8_t*) dest;
//   uint8_t* src_ = (uint8_t*) src;
// 
//   while ((len--) > 0)
//     *(dest_ ++) = *(src_ ++);
// }