#pragma once
#include "types.h"
#define min(a,b) (u32) a < (u32) b ? (u32) a : (u32) b
static void wait(u32 cycles)
{
cycles >>= 2;
while(cycles)
{
__asm("nop");
cycles--;
}
}
// custom safe strncpy, string is always 0-terminated for buflen > 0
static void strncpy_s(char *dest, const char *src, u32 nchars, const u32 buflen)
{
char c;
if(!buflen)
return;
if(buflen > 1)
{
if(nchars >= buflen)
nchars = buflen - 1;
while(nchars--)
{
c = *src++;
if(c == '\0')
break;
*dest++ = c;
}
}
*dest = '\0';
}
u32 getleu32(const void* ptr);
u32 swap32(u32 val);