diff options
author | easyaspi314 (Devin) <easyaspi314@users.noreply.github.com> | 2019-08-23 20:44:01 -0400 |
---|---|---|
committer | easyaspi314 (Devin) <easyaspi314@users.noreply.github.com> | 2019-08-23 20:44:01 -0400 |
commit | a631973b73977f33ef98042abca9fca287792439 (patch) | |
tree | 5418525ee00fbfaa046adecfb3d328c4c00e02d7 /src/main.c | |
parent | bc159dbb03735db55e6a09bb7947dccc70d0532b (diff) |
[WIP] English Debug menu translations! (Plus some build system fixes)
I'm back!
す
Éß テ-ブ↑& ÒÛªù! (かなテーブルを捨てろよ!/Throw away the kana table!)
When compiled in English with DEBUG, instead of óじばÌ (mojibake),
you now get actual English translations!
No more switching from the game, to the kana chart, and if you don't know
Japanese, Google Translate, just to read one sentence.
Additionally, the few unknown translations should use proper encoding or
Romaji.
I decided to use a nicer macro system:
static const u8 sStrHello[] = DTR("こんにちは", "Hello");
This prevents ifdef HELL, as the mixed Japanese and English would
be messy.
Additionally, some special character issues were corrected.
Things untranslated/bugs:
- Tomomichi's dummy functions. Of course, they don't do much.
- The title screen battle menu. This uses a Gen 2 style tile rendering
and the way it is rendered is incredibly overcomplicated.
- A few phrases which I couldn't get a clear translation for. I don't know
much Japanese lol.
- Song names. Just tedious with the limited buffer size.
- A few layout issues. Some dimensions should be tweaked to avoid text
box ovetflows.
- Potential buffer overflows, which I want to try to avoid
- (ASan for GBA? :morphon:)
- While I use the DEBUG_TRANSLATE flag (automatic with ENGLISH && DEBUG)
for C code, the asm data only checks for ENGLISH && DEBUG. Additionally,
they are ugly.
- Haven't tested all builds yet.
- Some code formatting issues.
I also made it so this will compile with the system preprocessor (including
Clang), and my agbcc binutils (which will attempt to be selected automatically
if you don't have DKP).
Clang needs a few flags (it can't do asm enums with line numbers and it does
trigraphs in standard mode), but it is no longer flipping out.
I am going to restart my build system project. It was getting way off track,
and ucpp was too difficult to maintain (one of the main reasons for the silence).
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/main.c b/src/main.c index d7ef91df0..ad4a669b7 100644 --- a/src/main.c +++ b/src/main.c @@ -34,10 +34,12 @@ const u8 gGameVersion = GAME_VERSION; const u8 gGameLanguage = GAME_LANGUAGE; -#if defined(ENGLISH) -const char BuildDateTime[] = "2002 10 15 20:34"; -#elif defined(GERMAN) +// The debug menu expects this exact format. With the English build string, it +// will overflow on the title debug menu, outputting '9999ィ'. +#if defined(GERMAN) || DEBUG const char BuildDateTime[] = "$Name: debug-Euro-2003-05-09-A $"; +#elif defined(ENGLISH) +const char BuildDateTime[] = "2002 10 15 20:34"; #endif const IntrFunc gIntrTableTemplate[] = |