From 03b7473d4faddcb87a5e82205a42028768e7c177 Mon Sep 17 00:00:00 2001 From: Gediminas Jakutis Date: Sat, 19 May 2018 12:02:08 +0300 Subject: add support for "live"-flashing new settings. --- src/tempmodule/volatile_ops.c | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 src/tempmodule/volatile_ops.c (limited to 'src/tempmodule/volatile_ops.c') diff --git a/src/tempmodule/volatile_ops.c b/src/tempmodule/volatile_ops.c new file mode 100644 index 0000000..432955a --- /dev/null +++ b/src/tempmodule/volatile_ops.c @@ -0,0 +1,38 @@ +/* + * Hot Beverage Companion – volatile data ops + * + * Copyright (C) 2018 Gediminas Jakutis + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 2.1 + * of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#include "volatile_ops.h" + +void *volatile_memcpy(void *dest, volatile const void * const src, size_t n) +{ + char *d; + volatile const char *s; + + if (!n) { + return dest; + } + + d = dest; + s = src; + + while (n--) { + d[n] = s[n]; + } +} -- cgit v1.2.3