From 4bb5f36b8c696361d5a283680ea7dadde4e364df Mon Sep 17 00:00:00 2001
From: Christian Cunningham <cc@localhost>
Date: Thu, 20 Jan 2022 18:50:41 -0700
Subject: Added rotating buffers

---
 src/lib/mem.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

(limited to 'src')

diff --git a/src/lib/mem.c b/src/lib/mem.c
index 91fed94..dc915e6 100644
--- a/src/lib/mem.c
+++ b/src/lib/mem.c
@@ -1,6 +1,19 @@
 #include <drivers/uart.h>
 #include <lib/mem.h>
 
+void memcpyrot(unsigned char* src, struct RotBuffer* rb, unsigned int n)
+{
+	if (n > rb->size)
+		return;
+	unsigned char* addr = rb->base + rb->offset;
+	for (unsigned int i = 0; i < n; i++) {
+		if (addr >= (unsigned char*)(rb->base + rb->size))
+			addr = rb->base;
+		*addr = src[i];
+		addr++;
+	}
+}
+
 void memshow32(unsigned long* addr, unsigned int n)
 {
 	for(unsigned int i = 0; i < n; i++) {
-- 
cgit v1.2.1