FC2ブログ
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

前回FreeTypeGXを使ったHomebrewの日本語化を解説しましたが、
FreeTypeGXを使ってないHomebrewもたくさんあります。

その中でもいくつか日本語化できるものがあるのでそれについて解説したいと思います。

用意するもの
・devkitPro
 前回と同様。
libogc_SJIS
 オリジナルは皇帝さんのブログ記事「Wiiを始めました!」より。
 しかしlibogcが1.7なので最新のlibogc-1.8.11.1用に自前コンパイルしました。
 東雲フォントを使用しています。
 今後libogcの更新があった時のためのコンパイル方法は後ほど。
・日本語化したいHomebrewのソース
 確認した中でできるものは、
 WiiMod、WadManager、Devolution、DIOS MIOS Booterなど。
 黒い画面に白い文字のHomebrewならおおよそできるはずです。

手順

ダウンロードしたlibogc.aをC:\devkitPro\libogc\lib\wiiにコピーします。
(元ファイルのバックアップは一応とっておきましょう。)

次にソースコードを翻訳します。

大体は普通にソースコードを書き換えるだけでいいのですが例えば以下のように、

printf(" \nPage %i/%i\n", Page, Pages);

printf関数の中に%iや%sなど変換指定子が入っていた場合、
そのまま書き込んではいけないようです。
文章を入れたい場所に「%s」を追加して、「"」(ダブルクォーテーション)のあと「,」(カンマ)を置き、
ダブルクォーテーションで囲って書き込みます。
言葉じゃわかりづらいので例を示すと、

printf(" \nPage %i/%i\n", Page, Pages);

を、

printf(" \n%s %i/%i\n","ページ", Page, Pages);

というように書き換えます。
また変換指定子がある場合、出てきた順番を守って文章を追加しましょう。
上の例の場合、一番初めに%sを足し、後ろに2つ%iが続きますがこの場合、
,"ページ"を, Pageの前に追加するということです。

説明がわけわからん!という人は私が公開したDevolutionやDIOSMIOSBooterのソースコードをご覧ください。
実際見たほうが早いかもしれません。
またココらへんは詳しくないのでご自分で調べてみてください。

また文字コードにS-JISを使っているのでダメ文字が発生します。
カタカナの「ソ」や、漢字の「能」などがダメ文字に該当します。
ダメ文字が含まれる場合はダメ文字のあとに「\」を追加しましょう。

例)
メソッド → メソ\ッド

こうしてソースコードを書き換えたら普通にdevkitProでコンパイルしましょう。


今後libogcがバージョンアップした時の対処法。

libogcは現在1.8.11.1ですが今後バージョンアップするかもしれません。
その場合はlibogc.aをまたコンパイルし直す必要があります。

用意するもの
・Cコンパイラ
 devkitProで出来ます。VC++2008Expressでも出来るようです。
・libogcのソース
 gitを使って取得します。適当な方法で取得してください。
 私はmsysgitを使用しました。
libogc_SJIS
 こちらは皇帝さんオリジナル。
 中に入っているconsole.cとfont.s、fontフォルダを使用します。
 デフォルトはぱうフォントですが、
 font.sを書き換えることで任意のFONTX2形式の16dotフォントを使用することができます。
 またfont.sの東雲フォントの記述が全角半角が逆になっています。
 東雲フォントを使い場合は注意。

手順

msysgitの場合
「git clone git://devkitpro.git.sourceforge.net/gitroot/devkitpro/libogc」
とか何とかコマンドプロンプトで実行し、libogcのソースコードを手に入れる。

ダウンロードしたlibogcフォルダ内にlibogc_SJISのfontフォルダをコピー、
libogcの中のlibogcフォルダにconsole.cとfont.sをコピーします。

次にmakefileを編集します。145行目の、

console_font_8x16.o timesupp.o lock_supp.o newlibc.o usbgecko.o usbmouse.o \

を、

font.o timesupp.o lock_supp.o newlibc.o usbgecko.o usbmouse.o \

に書き換えます。

この状態でlibogcをコンパイルしlibフォルダ内に生成されたlibogc.aを使用してください。
スポンサーサイト

Thoughts on スポンサーサイトFreeTypeGXを使わないHomebrewの日本語化

Leave a Reply

* 16文字以内
* 24文字以内
* 16文字以内
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。