fixed some stuff in frontend, badly broke others; disabled reversed frontend for the moment

This commit is contained in:
aap
2019-07-10 13:42:48 +02:00
parent 0d3cdcc01c
commit d360229b5b
6 changed files with 322 additions and 202 deletions

View File

@ -210,7 +210,48 @@ AsciiToUnicode(const char *src, uint16 *dst)
while((*dst++ = *src++) != '\0');
}
WRAPPER char UnicodeToAscii(wchar * src) { EAXJMP(0x52C2F0); }
char*
UnicodeToAscii(wchar *src)
{
static char aStr[256];
int len;
for(len = 0; src && *src != 0 && len < 256-1; len++, src++)
if(*src < 256)
aStr[len] = *src;
else
aStr[len] = '#';
aStr[len] = '\0';
return aStr;
}
char*
UnicodeToAsciiForSaveLoad(wchar *src)
{
// exact same code as above
static char aStr[256];
int len;
for(len = 0; src && *src != 0 && len < 256-1; len++, src++)
if(*src < 256)
aStr[len] = *src;
else
aStr[len] = '#';
aStr[len] = '\0';
return aStr;
}
void
UnicodeStrcpy(wchar *dst, const wchar *src)
{
while((*dst++ = *src++) != '\0');
}
int
UnicodeStrlen(const wchar *str)
{
int len;
for(len = 0; *str != 0; len++, str++);
return len;
}
void
TextCopy(wchar *dst, const wchar *src)
@ -218,6 +259,7 @@ TextCopy(wchar *dst, const wchar *src)
while((*dst++ = *src++) != '\0');
}
STARTPATCHES
InjectHook(0x52C3C0, &CText::Load, PATCH_JUMP);
InjectHook(0x52C580, &CText::Unload, PATCH_JUMP);