Kevin O'Connor | fa9c66a | 2013-09-14 19:10:40 -0400 | [diff] [blame] | 1 | // String manipulation function defs. |
| 2 | #ifndef __STRING_H |
| 3 | #define __STRING_H |
| 4 | |
| 5 | #include "types.h" // u32 |
| 6 | |
| 7 | // string.c |
| 8 | u8 checksum_far(u16 buf_seg, void *buf_far, u32 len); |
| 9 | u8 checksum(void *buf, u32 len); |
| 10 | size_t strlen(const char *s); |
Paolo Bonzini | 60e0e55 | 2015-01-02 12:32:25 -0500 | [diff] [blame] | 11 | int memcmp_far(u16 s1seg, const void *s1, u16 s2seg, const void *s2, size_t n); |
Kevin O'Connor | fa9c66a | 2013-09-14 19:10:40 -0400 | [diff] [blame] | 12 | int memcmp(const void *s1, const void *s2, size_t n); |
| 13 | int strcmp(const char *s1, const char *s2); |
Kevin O'Connor | be05066 | 2015-06-01 18:32:06 -0400 | [diff] [blame] | 14 | void memset_far(u16 d_seg, void *d_far, u8 c, size_t len); |
| 15 | void memset16_far(u16 d_seg, void *d_far, u16 c, size_t len); |
Kevin O'Connor | fa9c66a | 2013-09-14 19:10:40 -0400 | [diff] [blame] | 16 | void *memset(void *s, int c, size_t n); |
| 17 | void memset_fl(void *ptr, u8 val, size_t size); |
Kevin O'Connor | be05066 | 2015-06-01 18:32:06 -0400 | [diff] [blame] | 18 | void memcpy_far(u16 d_seg, void *d_far |
| 19 | , u16 s_seg, const void *s_far, size_t len); |
Kevin O'Connor | fa9c66a | 2013-09-14 19:10:40 -0400 | [diff] [blame] | 20 | void memcpy_fl(void *d_fl, const void *s_fl, size_t len); |
| 21 | void *memcpy(void *d1, const void *s1, size_t len); |
| 22 | #if MODESEGMENT == 0 |
| 23 | #define memcpy __builtin_memcpy |
| 24 | #endif |
| 25 | void iomemcpy(void *d, const void *s, u32 len); |
| 26 | void *memmove(void *d, const void *s, size_t len); |
| 27 | char *strtcpy(char *dest, const char *src, size_t len); |
| 28 | char *strchr(const char *s, int c); |
Kevin O'Connor | d15b010 | 2014-01-31 19:38:36 -0500 | [diff] [blame] | 29 | char *nullTrailingSpace(char *buf); |
Kevin O'Connor | fa9c66a | 2013-09-14 19:10:40 -0400 | [diff] [blame] | 30 | |
| 31 | #endif // string.h |