Files
cc65/libsrc/rp6502/sysrename.c
2025-05-24 21:27:05 -07:00

23 lines
595 B
C

#include <rp6502.h>
#include <errno.h>
#include <string.h>
unsigned char __fastcall__ _sysrename (const char* oldpath, const char* newpath)
{
size_t oldpathlen, newpathlen;
oldpathlen = strlen (oldpath);
newpathlen = strlen (newpath);
if (oldpathlen + newpathlen > 510) {
RIA.errno_ = EINVAL;
return __mappederrno (RIA.errno_);
}
while (oldpathlen) {
ria_push_char (oldpath[--oldpathlen]);
}
ria_push_char (0);
while (newpathlen) {
ria_push_char (newpath[--newpathlen]);
}
return ria_call_int_errno (RIA_OP_RENAME);
}