blob: 2e25b23f087143d66dd9aaefd52b61b17cbc9b08 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include "global.h"
void* __osMemcpy(void* dst, void* src, size_t size) {
u8* _dst = dst;
u8* _src = src;
register s32 rem;
if (_dst == _src) {
return dst;
}
if (_dst < _src) {
for (rem = size--; rem != 0; rem = size--) {
*_dst++ = *_src++;
}
} else {
_dst += size - 1;
_src += size - 1;
for (rem = size--; rem != 0; rem = size--) {
*_dst-- = *_src--;
}
}
return dst;
}
|