原始的

あめりあです。
もうそろそろ、気温も右肩上がりを期待したいものですね。

唐突な入りですが、GP2Xゲーム開発の続き。自機とショット制御まで動作確認したので、それまでワラワラとコーディングした箇所を整形しつつ例外処理も追加。あと、PCデバッグ/動作確認用のPC環境MakefileGP2XMakefileを1枚のMakefileに統合とかね、色々と作業を行いPCで動作確認してからGP2Xでも動作確認をしたところブラックアウト。ぉう。Makefileへ大量の修正/追加をしていたので、コンパイル/リンクが悪くてエントリポイントまで到達していないのか、例外が飛んでいるのか(最終的にはメッセージを標準出力)、はたまた何か得体の知れない何かが何かをしているのか(何だそれ)。如何せん、デバッグコンソールを接続していないので(EXT端子のシリアルライン対処は放置したまま)、GP2X上で何が起こっているのか分からない。うーん、どしよ。手始めに原始的にプライマリサーフェイスを取得してから画面にメッセージを逐次出力するよう実装。ぉう。ブラックアウト。ちゅうことは、プライマリーサーフェイスを取得出来てないちゅうことで。エントリに到達したかは、エントリ直後にgmenuにプロセス返しして確認。ぉう。メニューに戻ったのでエントリ到達している。ちゅうことは、プライマリーを取得する前に例外が発生している?と、例外をキャンセルしてみるとブラックアウト。え?なに?よくわかんなーい。最終的には、SDL_SetVideoMode()にてSDL_DOUBLEBUFを付与したんだけど、それ相応の実装がされていないことが問題でした。うーん、描画はSDL_Flip()しているんだけど、なんだかスイッチバッファにプライマリサーフェイスが転送されていない雰囲気。SDL_DOUBLEBUFフラグをオフると見事に描画されるんで、そんな感じ(ダブルバッファが無効な環境ではSDL_FlipはSDL_UpdateRectと動作は同じとドキュメントには書かれているんだけどねぇ)。まーそこが問題ではなくて、このトラブルシュートの原始人レベル対応に我ながらダセーと思いながらも、PC上では動作しているけど、端末上では動作が違うちゅうのは、こりゃ頻繁に確認しないと、原因特定が大変だなぁとね。はよ、シリアル接続すべきだと思うんだけどね。

久々に散歩がてらゲオったら、ゲオていま大量にレトロ在庫処分していたんですねぇ。

OMEGA BOOST(PS)@0.1k

Grand Theft Auto(PS)@0.1k
あまりめぼしいものはありませんでしたが(当然同じような人種が漁った後でしょ)、前々から買おうと思いながらも0.3kとかで渋っていた(どんだけ厳しいんだよ)ブツが尽く0.1kだったので購入。ちゅうのも、PSP上でのPSプレイをやろうかなーとしながらも、別にいつでも良いしなーとかね、そゆ優先度の低さで放置していたいんですが、GTAはですね、かれこれ何年前かな。ちょうどyoutubeが出てきたくらいでしょうか。色々観ていたら、linuxが動作するハンドヘルドにてプレイしている動画が上がっていて、今思えば、あのハンドヘルドはGP32GP2X-F100だったんでしょうけど、それ以上にそのプレイ画面に戦慄を覚えた訳ですよ。あーポスタルみたいだけど、何か面白そうてね。その当時はゲーム名も分からないし、何か上空からの描写でメチャクチャなことやるてイメージしか植え付けられていないのですが、それから数年が経ち、GTAも注目を浴びた頃(3Dになっていたけど)に開発元サイトとかを閲覧していたら「あ!これだ!」とね。GBAでも発売されていることを知ったんですが、北米版のみで、当時は北米版なんて個人輸入っすか?みたいなノリでしたら体よく諦めていたんです。んでも、3Dなのはやる気なくて、どうしてもあの上空2Dがやりたいなぁと思いながら、DSのチャイナに惹かれつつも、やはりあのチープなアレがやりたい!と悶々としていた日々。PS中古でコレを発見し、あーこれこれ!とね。PSPプレイについては明日の検証後に。