]> Joshua Wise's Git repositories - netwatch.git/blobdiff - lib/minilib.c
Clean up vga_overlay a bit to split out the VGA-specific code to strblit
[netwatch.git] / lib / minilib.c
index 595341e192a18fa981bbeebe03eef3abd1954700..664a0b42a7abe24229793a7490fd5b5cc934a923 100644 (file)
@@ -1,14 +1,21 @@
 #include "console.h"
 #include <minilib.h>
 
-void memcpy(void *dest, void *src, int bytes)
+void memcpy(void *dest, const void *src, int bytes)
 {
-       char * cdest = dest;
-       char * csrc = src;
+       char *cdest = dest;
+       const char *csrc = src;
        while (bytes--)
                *(cdest++) = *(csrc++);
 }
 
+void memset(void *dest, int data, int bytes)
+{
+       unsigned char *cdest = dest;
+       while (bytes--)
+               *(cdest++) = (unsigned char)data;
+}
+
 void memmove(void *dest, void *src, int bytes)
 {
        char * cdest = dest;
@@ -43,7 +50,17 @@ int strcmp (const char *a2, const char *a1) {
        }
 }
 
-int strlen(char *c)
+int strncmp (const char *a2, const char *a1, int n) {
+       while (n--) {
+               if (*a2 != *a1) return 1;
+               if (*a2 == 0) return 0;
+               a1++;
+               a2++;
+       }
+       return 0;
+}
+
+int strlen(const char *c)
 {
        int l = 0;
        while (*(c++))
@@ -58,7 +75,16 @@ void strcpy(char *a2, const char *a1)
        } while (*(a1++));
 }
 
-void puts(char *c)
+void strcat(char *dest, char *src)
+{
+       while (*dest)
+               dest++;
+       while (*src)
+               *(dest++) = *(src++);
+       *(dest++) = *(src++);
+}
+
+void puts(const char *c)
 {
        putbytes(c, strlen(c));
 }
@@ -81,3 +107,16 @@ void puthex(unsigned long l)
        tohex(d, l);
        puts(d);
 }
+
+unsigned short htons(unsigned short in)
+{
+       return (in >> 8) | (in << 8);
+}
+
+unsigned int htonl(unsigned int in)
+{
+       return ((in & 0xff) << 24) |
+              ((in & 0xff00) << 8) |
+              ((in & 0xff0000UL) >> 8) |
+              ((in & 0xff000000UL) >> 24);
+}
This page took 0.017153 seconds and 4 git commands to generate.