急な仕事

  • お付き合い

 6月末に、前に営業をかけていた会社から急遽BREWアプリ→iアプリの仕事の以来があった。
 現在多少時間があるという事もあり今後のお付き合いも考えて安く請け負ってしまった。
 (納期から逆算して1.5人月程度)

  • 納期が短い

 元ソースがあるので簡単に移植できると思っているらしい。8月中旬にデバグ作業開始したい
 との事。手馴れた人なら2,3週間である程度動作するところまでいけるのではと担当者
 は話していましたが....

  • 単純計算しても...

元のプロジェクトをみると40ほどのソースファイルがあります。さらに共通の描画やフレームワーク用の
独自ライブラリーを使っているのでそこの解析も必要です。構造体も全部クラス宣言しなければいけないので
総クラス数は100近くになりそうです。一日5つづつ作業しても20日ほどかかる計算です。実際には動作も
確認ししながらなのでその数も難しそうです。第一移植に際し全体の構造も携帯java用に作り直す必要があり
ます。全体の設計にも最低2,3日はかかるでしょう。

  • 実際作業してみると

ゲーム自体は2Dなのですが、ステージ構成や演出、表示メッセージなどすべて外部から独自形式のバイナリーデータを
読み出して動的に生成するような作りになっていました。
キャラクター表示するだけでもただの画像(png)でイメージ生成している方式ならgifに変換するだけなのですが....
この独自バイナリーを処理する部分が移植できないと何も表示されないのです。

  • Cなんで

BREWはarmのCPUが乗っているんですが、独自バイナリーはこいつのエンディアンモードに対応したもので
javaとは違うらしく16bit読み出すと上下4bitが反転してしまう。読み出す際にjava
バイナリーをDataInputStreamで開いて
in.readShort()
とやるとおかしな数値になってしまう。

  • 現状

やはりというか、もう3週間程度やっているわけですが現在の移植度は10%程度しか進んでおりません。
当初の予定ではほとんど移植作業は終わってなければいけないのですが....誰か「手馴れた人にヘルプしてほしいものです。ホントまじでお願いします。