正直日記



2005/02/28

_ 移植野郎
洞窟物語のGBA移植!

実は俺もオルガーニャ形式の解析をのんびりやってるところだったりする。
どこかでプロジェクト立ち上がってるなら音担当として俺も参加したいなぁ。

グラフィックは.pbmが4bit bmpなのでそのまま使えますな。
マップ形式も.pxmが
typedef struct _dou_map {
    u8 magic[4],  // マジック "PXM\10"
    u16 x,        // 水平ブロック数
    u16 y,        // 垂直ブロック数
    u8 mapchar[1],
} DOU_MAP ,*PDOU_MAP;
な感じですな。多分。

2005/02/27

_ All-in-One Gesturesの酷いバグ
Undo Close Tabにバグがありますね。TBEやminiTが導入されている場合はそっちの
機能を優先するらしいので、必要なら検証したほうがいいかもしれない。
_ NintendoDSは電気ウナギの夢をみるか
dsdev: Sleeping with a magnet
街中で遊んでいる人を見かけたら、X/Yボタンの辺りに磁石を近づけるといいらしいですよ。
_ SMFに y コマンドを仕込む
本気でPSGを使おうと思ったらyコマンドが必要になるのだが、ソースがSMFなので
どう表現したものだかなぁ。手っ取り早いのはNRPNで、それぞれレジスタと代入
する値を入力する方法だが0〜127までしか表現できない。255まで使いたいのに!

かと言ってSysEXをいちいち入力するのは手間だ。やはりパーサに吐かせたMMLを
編集するしか無いかなぁ。そうすると二度手間だし、例えば、

  A c1

と書いてある物を

 A c2& y11,124 c2  ;スイープを設定

みたいにぶった切る作業は手間だ。昔は面倒くさいと思いつつも平気でぶいぶい
やってたことだけど、今はそんな時代じゃないのですよ。

2005/02/23

_ NitroHeader更新
NitroHeader.zip
タイマとDMAとKEYと割り込みについて追加した。
まぁここらへんはGBAとアドレスが一緒で使い方も変わらんようだし。

NDSTech Wikiに置いてあるNDS templateとNDSlibと、あとDevkitARMとを
組み合わせれば、1画面・2Dオンリーなデモくらいなら作れそうな気がする。
作ったところで動かす環境は無いけどね!(^o^)v

2005/02/22

_ 長大なSMF
四分音符分解能480で1600小節(演奏時間にして48分超)という化け物みたいなSMFを
入手したのでざっと眺めたのだけど、これだけ長くても絶対時間の値は32bitを使
い切れて無いので軽くビックリした。

ちなみにエリック・サティのVEXATIONS(癪の種)を四分音符分解能480で作ると…
 13*2*480*840 = 10,483,200 (9FF600h)
これも32bitに収まってしまうのか?!すげーぜ!32bitは伊達じゃねえ!

んで、まぁ実際のところSMFでは差分時間(デルタタイム)で、しかも可変長数値で
記録されてるわけだけど、シーケンサが読むときとかは扱いやすいように内部で
絶対時間にコンバートしているわけだし、じゃぁ最初から絶対時間で記録するのは
どうよ?と思ったわけだ。

ただし32bitだと大きすぎるから16bitにして、その代わり分解能をVsyncまで下げる。
と、時間にして約18分演奏出来る。すげえすげえよ。これからは絶対時間の時代だよ。
ゲーム用途で使う分には、どうせシーケンサ側からBPMチェンジとかしないし解像度
もそんなに必要ないし言うことなしだよ。なんか考え方が組み込み指向になってきたよ。

2005/02/18

_ デモー2
Demoscene.TVを観てたらphloamfr-018が流れてた。
GBAのデモも押さえてるんだな。ずっと観てればPSXとかDCのも流れるかしら。
_ デモー
Synergyを観賞した。

ST-Soundで音楽だけ聴いたことがあったので、こんなCOOOOLなサウンドについている
映像はさぞかし凄かろうと興味があったわけだ。で、今日になって初めて観た訳だけ
ど…時代性を考慮して感想は控えておく。

Winampで見られるネットテレビにDemoscene.TVという、デモばっか流してるチャン
ネルがあったので朝からずっと観る。
Staying Pictureがすげえ切なくて良かった。
_ 低能な検索フォームをつけた
つけてみたけど、過去の日記は平気で嘘を書いてるので調べない方がいいです。

2005/02/15

_ DevkitARMをキメる
http://sourceforge.net/project/showfiles.php?group_id=114505&package_id=124207
リリース番号が上がって、中身が GCC 3.4.3 (*1)になったみたい。
crt0のバグフィクスもされてるし、dkARMを使ってる人は差し替えて良さそう。

ただしEWRAM初期化ルーチンが、本当にEWRAM領域全てを初期化するように
変更されているので、Pogoshellプラグインを作るときは注意が必要だ。

[gba_crt0.s]
82:    mov    r3, #0x40
95:    mov    r1, #0x40
↓
82:    mov    r3, #0x3F
95:    mov    r1, #0x3F

と書き換えれば、EWRAMの後半1Kバイト(Pogoshellからの引数が格納される)は
初期化されなくなる。Pogoshellとか考えない場合はそのままの方がいい。

(*1)
ちなみに過去のdevkitで使われているgccのバージョンも調べてみた。
DevkitARM r8             3.4.1
DevKit Advance R5 Beta3  3.2.2
DevKit Advance R4        3.0.1

dkAdv R4って随分古いんだなぁ。
この頃はインラインアセンブリが
  asm("
    hoge
    fuga
  ");
と書けたのが、その後
  asm(
    "hoge \n"
    "fuga \n"
  );
としか書けなくなったので面倒くさいと思ったのだった。
どうでもいっか。

2005/02/13

_ DSネタとか
NDSTech Wiki:The homebrew Nintendo DS(TM) technical reference

いつのまにかDSのMemory Mapped I/Oとかが詳しく調べられてる。タッチスクリーンの
仕様とかよく調べたなぁ。オラ、なんだかワクワクしてきたぞ。

「公式SDKの中身を書くなよ!我々はあくまで合法な資料を目指している(意訳)」って
注意書きがしてあるんだけど、仮に公式から引用したものが投稿された場合、それと
分かるんだろうか?あとメトロイドを解析するのは合法なんだろうか?なぞなのだ。

2005/02/11

_ インフルエンザじゃなかったらしい
熱が41度まで上がりこのまま死ぬのかと思ったが、死ぬほどアクエリをのんで
毛布五枚重ねで寝てたら、バンバン叩かれておきたら、36度まで下がってた。
まぁこうしてテンプレを引用するくらい余裕があるなら大丈夫ですね。

2005/02/10

_ 昨晩はどうかしていたようだ
それはともかく起きたら異様に寒いし、だるいし、咽喉が痛いしで
とりあえず体温を測ってみたら38.6度だった。
「キリがいい数字だな」と思った俺は正常。
_ NitroHeader更新
余興のつもりだったけどちょっとムキになり始めてきたぞ。
NitroDefine.hの中身のうち、GBAと互換がありそうなところは定義してみた。
といってもDISPCNT〜BLDCNTまでだが。
NitroHeader.zip

偽情報に踊らされてる可能性もあるけどまあいいやぁ。

2005/02/09

_ Nitroとか
DS非公式ライブラリの叩き台とか作ってみる。
NitroHeader.zip

例の資料を改めて見たけど謎になっている部分がまだまだ多すぎるな。
OAMやDMAやタイマとかのI/Oレジスタは、使い方はGBAと互換性があるんだろうけど
アドレスが分からん。GBAと比べるとサウンドジェネレータが搭載されて無いので
その分詰められてるんだと思うけど…。BGやOAMも二画面分用意されてるみたいだし、
ということは二つ分のレジスタがあるんだろうし、よく分からん。

本物の中身分かってる人は見てニヤニヤするように。
_ 虫姫ウルトラ
ボム使いまくっての騙し々々ながら、4面までは大体1〜2コインで行けるようになって
きた。1〜3面の中では3面が一番簡単かなぁ。ちょん避けだけで進めてしまう。2面も
そんなに死にそうな局面は無いな。1面でどう死ぬかがポイントになってきた。

2005/02/08

_ GraphicsGaleを使い出し
EDGEと使い比べてるんですが、どちらも一長一短ですな。

範囲を選択しての編集はEDGEの方が使いやすい。つーかね、GraphicsGaleは右クリック
するとすぐに範囲選択が解けるので使いづらいわよ。

ファイル間のパレット共有が出来るドットエディタは無いものかなぁ。

2005/02/06

_ PWMに手を出し
どうも再発音が入っちゃうなぁ。
キャッシュと上位8ビットを比較して、変化が無ければ下位8ビットだけ書き換える
ようにしたほうが良いかもしれず。LFOはともかくポルタメントは諦めた方が無難
かな。スイープでなんとかするって手もあるけど…。
_ 虫姫ウルトラ
無理そうと思ったけどマニアックに慣れてみると、狙い弾が比較的多いおかげで
ちゃんと道が出来てるし弾消し要因もいたるところにあるしで、そんなに無理じゃ
なさそうな気がしてきた。方位弾は厳しいが。しかしまずはマニアックの道中を
全部覚えないと。

> 長々と内蔵音源用のテーブルを書いてたけど意味不明だし消した!  (2005/02/07 16:21:46)

2005/02/05

_ 嘘避けゲームは良いゲーム
今頃になって虫姫さまをやりましたがむっちゃ面白いです。ルールが(大往生以降の
CAVEシューティングと比べて)非常にシンプルで分かりやすく、爽快感もあって良い。
3 モードを一通りやってきたけど、オリジナルにもマニアックと同じ撃ち込みコンボ
制を取り入れて良かったんじゃないだろうか。コンボ数が出てないとなんだか損した
気分になってしまう。

4回もコンティニューしてようやく2面中盤までしか行けないウルトラモードは俺には
無理そうだ。つかシューティングでコンティニューしたのは初めてだ。あのモードは
もう笑うしか無いですね。

2005/02/01

_ さよなら、おもしろコム3
知ったことじゃないと書いたものの、移転告知の
済んでないところがあったのでやっぱり戻しました!
_ さよなら、おもしろコム2
あとInteroneのアカからここへの自動転送をやめました。
各地で404が出ると思う。が、俺の知ったことじゃありません!
_ さよなら、おもしろコム
Interoneから契約更新のメールが来た。
誰が更新するかっつーの(^^;

(1) (2) (3) (4) (5)
(6) (7) (8) (9) (10) (11)
そういうわけで四日市さんのページを勝手に復活させました。
来週には消します。
↓
ちょっと早いけどアカウントの有効期限が近いので消しました。

最新
2010 | 01 04
2009 | 01 02 03 04 05 06 07 09 10 11 12
2008 | 01 02 03 04 05 06 07 08 09 10 11 12
2007 | 02 03 04 05 06 07 08 10 11 12
2006 | 01 02 03 04 05 06 07 08 09 10 11 12
2005 | 01 02 03 04 05 06 07 08 09 10 11 12