Rance 5D uses filename `Save\\Rance5dSystem.asd`. This caused issues:
- On Windows, saving would fail if the `Save` directory did not exist.
- On other platforms, files were created with literal backslashes in
their names.
This change addresses these problems by:
- In commandQE, normalizing backslashes to forward slashes in the path
and ensuring that the target directory exists by calling mkdir_p().
- In commandLE, first attempting to load files with normalized forward
slashes. If that fails, it retries with the original path (containing
backslashes) for compatibility with older saves.
- nact.h and xsystem35.h no longer include scenario.h
- Removed `sys_*` aliases in nact.h
- sys_getString() and sys_getConstString() are moved to
scenario.c as sl_getString() and sl_getConstString()
- DEBUG_COMMAND macros are now defined in scenario.h
This adds "Unicode mode", in which scenarios can be written in any
language. xsys35c 1.2.0 and later can produce Unicode scenarios.
- nact->encoding represents the current scenario encoding. The initial
value is SJIS, and ZU command changes it to UTF8.
- Use conversion macros that switch the behavior by the scenario
encoding. For example, toUTF8() calls sjis2utf() if the scenario
encoding is SJIS, and calls strdup() if it is UTF8.
- Fix various string processing functions to work with UTF8.