2007-09-19
ゲーム終了とか発展途上の静岡国とか
2007-09-15
近況
Vistaのインストールが難航
2007-09-05
2007-09-01
旅は道連れ、世は情け
広島へ旅行してきたので、旅行記なるものを書いてみんとす。そも、何故余が広島へ旅になど出かけたかというと、我が高校時代の友人が、たまたま広島へ旅に出ると云うので、之に同行したのだ。
さて、一日目は、京都の私の家に泊まり、二日目に、新幹線にて広島へ旅立った。とはいえ、所要時間はたったの二時間である。
広島へ着き、まずは縮景園なる庭を観光した。まあ、それなりに広い庭であった。というと、余の文章力の拙きように見ゆれども、さにあらず。実際、ただ広い庭があるばかりで、極端に感動する景色でもない。第一、原爆で一度吹き飛んでいる。しかし見学料も安いし、手入れされた庭が好きならば、見ておいてもいいだろう。
次に、広島城を観た。これも原爆で一度吹き飛んでいるので、復元したものである。外から見ると、古い城のように見えるが、中に入ると、明らかに観光用の展示ばかりで、いとすさまじ。
さて、ここで休憩をかね、遅い昼飯を食べることにした。もちろん広島に来たからには、お好み焼きを食べなければならない。お好み焼き屋に入り、さっそく広島風のお好み焼きを注文した。友人は無粋にも、普通のお好み焼きを注文した。さて、出てきた広島風のお好み焼きだが、どうもお好み焼きというより、「焼きそばを少量の小麦粉で焼き固めたもの」と云ったほうが正しい代物であった。そもそも、簡単に崩れてしまうので、焼き固めるというのも疑問である。恐らくは、溶かした小麦粉の上に、具材を乗せて焼いたというのが本当のところだろう。しかしネギだけは多量に乗せてあって、なかなか悪くはなかった。
そして、最後に原爆ドームを観に行った。まあ、普通の廃墟だった。そういえばプロ市民が、原爆ドームの周りにビルなどを建て並べるのは、景観を損ねるなどと文句を付けていると聞いたことがあるが、原爆ドームの目的は、周りがどれだけ発展しようとも、原爆ドームだけは、当時のままの状態を留める所にあるのであって、景観などもとより存在しないはずだ。そして広島平和記念資料館を訪れた。何故か50円の入場料が必要であった。一体この中途半端な入場料は何故なのだろう。確かに運営に費用はかかりそうだが、公的な補助も出るであろうし、そもそも50円というのは安すぎる。受付で入場料を徴収する人の人件費ぐらいにはなるのだろうか。あるいは、あまりに見学者が多いので、50円でも十分なのだろうか。そんな疑問を抱きつつ中に入ろうとすると、入り口で、障害者らしき人がパンフレットを配っていた。まあ、一度見る価値はあるだろう。なかなか興味深い展示品がたくさんあった。
さて、さっそく宿を探したが、これがなかなか難しかった。宿は友人が予約し、地図も印刷していたのだが、目安となる道路や橋の名前が書いていなかった。これは難しい。とりあえずなんとか発見し、中に入る。ふと、友人が持っている、予約したメールを印刷した紙を見ると、セミダブルと書いてある。はて……セミダブルってベッドは二つあったっけ? もちろんあるわけがない。友人はあまりに、安かったために、間違えて予約したらしい。仕方なく部屋を変更することにした。しかし、ツインは空いていなかったので、トリプルになってしまった。とりあえず今回の旅で学んだことがある。セミダブルは男二人でも泊まれるらしい。
さて、次の日は、呉に向かった。目的は、大和ミュージアムと海上自衛隊呉史料館だ。大和ミュージアムには、戦艦大和の十分の一模型や、各種戦艦模型、様々な資料などが展示してある。なかなか楽しめた。
さて、海上自衛隊呉史料館はさらに面白かった。こちらは、機雷除去や潜水艦に関する展示が多かった。なかでも目玉は、数年前まで現役だった潜水艦の中に入れることだ。実際入ってみたのだが、恐ろしく狭かった。身長163cmの私でさえぎりぎりで、身長が170cmを越す友人は、とても窮屈そうにしていた。友人の場合、一部天井に頭がつかえるところがあった。潜水艦のクルーは、背が高いとつらそうだ。第一、居住空間がなさ過ぎる。こんなところで数ヶ月も生活したら、発狂するだろう。他にもいろんな説明があったが、食事だけは意外と普通だった。固形保存食などではなく、ちゃんと生のジャガイモなどを積んでいるし、食事のメニューも毎回違っていた。これは意外だった。とにかく、海上自衛隊呉史料館には是非とも行くべきだ。実に見所がある。2007-08-28
新商品の日清焼チキンについて
2007-08-26
2007-08-21
Flash PlayerがH.264とHE AACをサポート
2007-08-15
美しい顔について
2007-08-14
なぜ妹娘が辞書にないのか
2007-08-11
2007-08-10
Just a note about olympics
2007-08-07
免許取得
2007-08-03
I've just bought a hair clippers
新しいバリカンを購入した。今までのバリカンは、切れ味が悪くなっていたからだ。思うに、刃がだめになったのではなく、バッテリーが問題だったのではないかと思う。いくら充電してもあまり剃れないが、充電したまま動かしてみると、それなりに剃れるようになったからだ。そこで、今回はバッテリーを内蔵しないものを買ってきた。実に良く剃れる。
ところで、バリカンとは英語でなんというのか分からなかったので、辞書を引いたところ、hair clippersとあった。なるほど、確かにその通りだ。では、バリカンの語源はなんだろう。調べたところ、フランスのBarriquand et Marre社に由来するそうだ。とはいっても、フランス語では、バリカンとはtondeuseというらしい。どうやら日本では、社名が商品そのものの名称として、定着してしまったようだ。
そして、このバリカンの語源は、長い間謎だったらしい。2007-07-29
Martin Hagwallのマリオの歌
かつて、Martin Hagwallなる人が、スーパーマリオRPGのハナちゃんの森のBGMに歌詞を付けて公開したところ、ネット上で大反響を得た。今、彼はさらにもう一つ作ったようだ。 http://www.users.se/tvsm/smrpg/ 本人のmp3と歌詞が手に入る。
さて、肝心の歌詞を、訳してみようと思う。
まず、テラマリオとして知られている最初の歌はどんな感じか
スーパーマリオRPGRawest Forest はどうかというと
僕だけの宝物
ゲームをすると すぐ迷う
そうだよ、ジーノの迷路だよ
スーパーマリオRPG
僕だけの宝物
ゲームをすると すぐ迷う
そうだよ、ジーノの迷路だよ
カエルコイン欲しい。
こおりだま欲しい。
びびりだま欲しい。
キノコ欲しい。
さよならはとつぜんに欲しい。
スターのたまご欲しい。
ヨッシーのクッキー欲しい。
ひつじのゆうわく欲しい。
全部欲しい,
もっともっと遊びたい,
カエルコインを集めなきゃ
クレジットカードを支払うために
ゲームには多くの謎がある
謎解きに熱くなる
何でチートなんかするんだい
バカげて飽きるだけさ
森を抜けるのはスーパーシンプル
ただ道を曲がるだけでいい
永遠に永遠に
ジーノの道についていけ……
ジーノの道についていけ……
ジーノの道についていけ……
僕はゲームの天才
The SMRPG Song, Rawest Forest - 2006
歌 by Martin Hagwall
クリボー: おい、あのマリオの野郎を知ってるか?
ノコノコ: あいつのことか?
クリボー: ああ、あのキノコ野郎だ。
ノコノコ: あー、あれね。
クリボー: そうそう、あの森の中を飛び回ってるやつだ。
ノコノコ: あー、あー、知ってる知ってる。
クリボー: よし、いいか。見に行こうぜ。
スーパーマリオRPG
僕だけの宝物
ゲームをすると すぐ迷う
そうだよ、ジーノの迷路だよ
マリオ: カエルコインよこせ
クッパ: 来いマリオ
マリオ: カエルコインよこせ
クッパ: 来いマロ
マリオ: 「さよならは突然に」よこせ
クッパ: 来いジーノ
マリオ: クッキーよこせ
カメック: おお、与えようじゃないか マリオよ
クッパ: ワガハイはオマエのバカげた声を聞きたくない。
マリオ: 一文にもならないこぎたないコインが欲しいんだ
ゲームには多くの謎がある
謎解きに熱くなる
何でチートなんかするんだい
バカげて飽きるだけさ
森を抜けるのはスーパーシンプル
ただ道を曲がるだけでいい
永遠に永遠に
声: こんぺいとうよこせ, クッキーよこせ, 「さよならは突然に」よこせ,
クラウンのカジノよこせ 全部よこせ
マリオ: 待て, 待て, 待て, 誰なんだ?
カリバー: ハハハハハ
カリバーの歌:
俺の名はカリバー, ラップの天使
オノレンジャーと共にさすらう刃
バカなマリオとその愉快な仲間たちに
スターロードなど直せるもんか, 直せるわけがない
(ジーノ: ジーノカッター) 瞬き早い (ジーノ: これならどうだ)
なぜなら、いつもいつも、右目ばかり攻撃されるからだ
マリオの歌:
最近は暇で意欲も沸かない
子猫たちも俺をさしてこういうよ。
配管工のイタリア人、大根ごぼうも木っ端微塵
城のお姫様を助け出せ
クッパとクリボー達を笑い飛ばす
Aボタンを押してパワーを上げろ
お金はないけれど, でも見てよ 退屈な子たちが
俺のゲームで楽しんでるよ
ダイアローグ 1:
声: よこせ
クロコ: ミーの名前はクロコデ~ス
声: よこせ よこせ
クロコ: サイフ
声: よこせ
クロコ: サイフ
声: かえせ かえせ
クロコ: ゲームの最後に
声: かえせ
クロコ: アイテム
声: かえせ かえせ
クロコ: レアもの
ダイアローグ 2:
クラウンあに: やあ
マリオ: やあ、なんか気味悪いところだね
クラウンあに: ああ、そうだね
マリオ: ヒットポイントが残り少ないんだ
クラウンあに: なるほど
マリオ: なにかない?
クラウンあに: このキノコをつかうといい
マリオ: 腐ってるじゃないか
ピーチ姫の歌:
私は姫, どうか助けて
ブッキーは怖いわ
私と結婚するつもりだって聞いたけど
私はマリオと結ばれたいの
マリオ: カエルコインよこせ
クッパ: 来いマリオ
マリオ: カエルコインよこせ
クッパ: 来いマロ
マリオ: 「さよならは突然に」よこせ
クッパ: 来いジーノ
ピーチ姫: フライパンとパラソルをちょうだい
ゲームには多くの謎がある
謎解きに熱くなる
何でチートなんかするんだい
バカげて飽きるだけさ
森を抜けるのはスーパーシンプル
ただ道を曲がるだけでいい
永遠に永遠に
star eyeが、なんなのか分からない。誰か思い当たる人は教えて欲しい。
Exorはケンゾールじゃなくてカリバーだった。 s/ケンゾール/カリバー
よく読んだら、クッパとクリボーを笑っているのはマリオのようなので、修正。万里夫が笑われているのだと解釈してしまった。
ところで、blaster plantsとは、マリオUSAの引っこ抜ける野菜を台無しにすることかと思っていたのだけど、ひょっとしたら、パックンフラワーを倒すことなのかもしれない。英語ではPiranha Plant (ピラニアプラント)と言うのだが。というかこの部分の意味がよく分からない。
star eye をこんぺいとう、と訳してみた。
2007-07-28
空気に課金しろ
iPodやPCからも補償金を」と権利者 私的録音録画小委員会 私的録音録画補償金制度の見直しを検討する小委員会の会合が開かれ、iPodや携帯電話、PCなども補償金の課金対象にすべきなどの意見がでた。 2007年07月26日 20時53分 更新 「私的録音録画補償金」制度をめぐり、見直しを検討するために文化庁文化審議会著作権分科会に設けられた「私的録音録画小委員会」の会合が7月26日開かれ、課金対象となる機器の範囲などについて話し合われた。 私的録音録画補償金制度とは、MDやCD-Rなどデジタルメディアを使って音楽CDやテレビ番組などを録音・録画する場合に、一定の補償金を著作権者に支払う制度のこと。補償金はデジタルメディアの販売価格に上乗せして徴収している。 小委員会の会合は今年8回目。権利者団体や消費者の代表、識者らが集まり、補償金の徴収方法や対象機器の範囲などの見直しを検討しており、今年中に結論を出す。 会合の様子 「iPodなどのポータブルオーディオレコーダーや録音機能のついた携帯電話、PCなども補償金の課金対象に加えるべき」――実演家著作隣接権センターの椎名和夫さんや日本レコード協会の生野秀年専務理事など権利者側はこう主張した。 録音・録画が主な用途ではない汎用的な機器まで対象にすれば、その機器を録音や録画以外の用途に使っているユーザーからも補償金を徴収することになってしまう。権利者側はPCやHDDも課金対象とするよう主張を繰り返してきたが、ユーザーやメーカーは反対の声を上げている。 メディアやハードを著作物の複製に使っていないことを証明できれば、ユーザーが補償金の返還を請求できる制度もあるが、返還額が小額なことや、申請経費を請求者が負担するなど、実効性がないとの問題点がある(関連記事参照)。 ユーザーではなく機器メーカーから補償金を徴収すればいいのではないかという意見もあるが、IT・音楽ジャーナリストの津田大介さんは「メーカーから補償金を徴収した場合、コストとして機器の価格に反映される可能性が高く、消費者の負担は変わらない」と反論した。 野原佐和子氏(ITビジネスのコンサルティング事業を手がけるイプシ・マーケティング研究所社長)は、補償金の話からは離れると前置きした上で、ヤフーが動画投稿サイト「Yahoo!ビデオキャスト」で、ユーザーが投稿した動画で使用された楽曲の使用料をJASRACに支払う仮契約を結んだことを、新しい著作権料の支払いのあり方だと評価した。 「どういうものが私的録音録画に当たるかを法制度で決めるのは良いが、どの機器にどれくらい課金するかというようなことは当事者間の契約で決めればいいのではないか。法制度で決めることと、市場に任せるべきことを分けて議論すべき」(野原氏)PCや携帯電話やmp3プレイヤーに課金しろというならば、ひとつ思うことがある。私も著作者ではなかろうか。私はPCや携帯電話やmp3プレイヤーを使って、音楽を生成している。私のPCにはマイク端子がついているし、任意の周波数を生成できたり、波形を編集できるアプリケーションも持っている。携帯電話はもちろん、電話をするためにある。音声を生成しているではないか。私の持っているmp3プレイヤーには、マイクがついている。これらのデバイスを使って、自分が著作権を持つ音楽を生成すれば、私は著作者になるのではないか。それが音楽なのか単なる音なのかという絶対的な基準はあるのだろうか。私が作り出した音なのだから、私が著作権を持っているはずだ。JASRACが私の、ひらがなとアルファベットの発声から構成されている音楽を登録しないのは差別だ。私が著作者なんだから。そしてもし私の音楽の一部分でも再生されたなら(日本人なら50音を発声せずに会話することは不可能だ)、著作権料を徴収すべきではないか。その著作権料は、もちろん私のものになるはずだ。 こういうわけで、全員が著作権者になれば、全員が著作権料の分配を受けられてすばらしい世界になるだろう。まてよ、自分で払って自分でもらっているわけだから、特に世話はない。中間で分配のために働いている連中をリストラできるんじゃないのか?
2007-07-26
localeの謎
2007-07-24
ハリーポッターの物語が中二病臭くなってきた
2007-07-21
2007-07-20
バカのために最適化する必要はない
2007-07-19
ウインドウハンドルの謎
このブログをブックマークしている奇特な人がいるらしい。最近は、ほとんどネタも書いてないというのに。まあこういうときは、例の如く、oldnewthingから話のネタを引っ張ってくるのがいいだろう。幸いにして、いま面白そうなネタを書いている。
How are window manager handles determined in 16-bit Windows and Windows 95?
How are window manager handles determined in Windows NT?
Why is the limit of window handles per process 10,000?
ただし、この話はいわゆるimplementation detailというものなので、絶対に悪用しないように。Raymond Chen様がブログを止めてしまうかもしれない。
今回は、ウインドウハンドルの値についてだ。oldnewthingを知っているようなプログラマなら誰しも、32bitなWindowsにおけるカーネルオブジェクトへのハンドルというのは、単にプロセスのハンドルテーブルのオフセットに過ぎないと言うことを知っているはずだ。しかしウインドウハンドルの値はどうか。16bit時代の頃、ウインドウハンドルの値というのは、ウインドウマネージャのセグメントへのnearポインタだったのだ。そのため、ウインドウハンドルと言うのは、16bitの値であった。
nearポインタとfarポインタ。私はこんな世界に生まれなくて幸いであった。当時は、メモリと言うのは64KBで境されるセグメントだったのだ。16bitなアドレッシングで扱えるメモリの量は64KBである。だから、64KBより大きいメモリを扱いたかったり、別のプロセスのメモリを指定したい場合は、FARポインタを使う必要があった。FARポインタは32bitで、上位16bitは、セグメントへのアドレスであった。当時はこのセグメントを複数使いこなすことが、プログラマに求められていた。必要ならば、DSを自分で書き換えることは普通であった。この頃のポインタは、本当に難しかったに違いない。
やがて時代は移り、32bitの世界がやってきた。Windows 95である。プロセスが複数のでかいヒープを持つことが当たり前になる時代。しかし、世の中はまだ16bitコードであふれかえっていた。そこで、Windowsは16bitコードをサポートする必要があった。そこで、WIN16のウインドウハンドルが問題になる。その頃、ウインドウハンドルの値は16bitである。したがって、Windoes 95でも、ウインドウハンドルの値は16bitでなくてはいけなかった。しかし、Windows 95 のポインタは32bitだ。一体どうすればいいのか。
そこで、ウインドウマネージャは、メモリを古きよきmovableとして確保する。得られるメモリは、実際のアドレスではなくHLOCALというハンドルだ。このとき、ウインドウマネージャは、32bitのヒープマネージャーに、16bitハンドルを返すように要求する。ヒープマネージャは64KBのメモリを確保し、実際のメモリポインタを格納しておき、そのメモリへのオフセットを返す。これで、16bitなウインドウハンドルが作られる。
ポインタひとつにつき4バイト必要なので、この64KBのハンドルでは、最大16384個のハンドルを扱える。CreateWindowExのドキュメントで
Windows 95/98/Me: The system can support a maximum of 16,384 window handles.
と書かれているのはこのためだ。実際には、ゼロはNULLと混同されるために使われなかったりするので、もう少し少ないそうだが。
しかし、ポインタは4バイトなのだから、あらかじめ4で割ることにしておけば、65535個のウインドウハンドルを扱えるはずである。何故しないのかと疑問を呈する人がいるかも知れぬ。しかし、Windows 3.1はたかだか700程度のウインドウしか扱えなかったことを考えると、すでに23倍も多いのである。その頃は、数百のウインドウと言うのは物凄く多いと考えられていた。メモリは現在のように十分ではなく、クールな奴等は8MB積んでいた。
しかし、この実装はある問題を引き起こした。同じウインドウハンドルの値が再利用されやすいと言うことである。すでに破棄されたウインドウハンドルを使おうとすれば、当然エラーになる。ところが、そのウインドウハンドルが、再利用されると、別のウインドウを指すようになる。つまりまったく別のウインドウに対して操作を行うようになる。これは、操作する側にとってもされる側にとっても、いい状況ではない。
そこで、Windows NTでは、対策を施した。ウインドウハンドルの上位16bitを活用するのである。Windows 95は上位16bitをゼロにしていたが、NTでは、ユニークな値を入れるようにしている。これは、ウインドウハンドルが再利用されるたびにインクリメントされる値である。こうすることによって、現実的な間、まったく同じ値のウインドウハンドルが使われないようにしている。16bitコードには、例の如く下位16bitだけを渡せば良い。
NTの時代には、だいぶメモリ容量も緩和されたが、ウインドウハンドルの数はどの程度緩和されたのだろうか。NULLなどの特殊な値を除外しても、65000個ほどはウインドウハンドルを扱えるはずである。しかし、NTのウインドウハンドルは32700程度に制限されている。なぜかというと、どうやら世の中には、ウインドウハンドルの値は偶数であると決め付けているプログラムがあるらしい。
また、1プロセスあたり10000個のウインドウハンドルしか開けないが、この制限は何のためにあるかと言うと。そんなに使うべきじゃないということらしい。すでに最大値の三分の一も使っているのだ。そんなプログラムは絶対におかしい。あまりにもウインドウが多すぎると、タスクマネージャが起動できなくなり、ユーザがそんなおかしなプロセスを強制終了できなくなってしまうかもしれない。まあ、この辺は納得できる。
さて、さっそくこの情報を試すことにしよう。ウインドウハンドルの、意味のある値は下位16bitである。しかも、偶数であるというassumptionにより(assumption、なんといういい響き!) 最下位ビットも使われていない。即ち我々は、ウインドウハンドルを0x0000fffeでANDしても問題ないはずである。早速試そう……動いた。どうやら、上位16bitがゼロのときは、ユニークな値にする対策を無視してくれるらしい。今の実装では。
ここに書いてあることを絶対に悪用しないように。
2007-07-16
ffmpegのバグレポートなど
ffmpegのメーリングリストにバグレポートとパッチを投げて、IRCで会話してたら、flvenc.cを書いた本人から回答が来た。
00:37 (hito) anyone test my patch? i find a bug in ffmpeg and make a patch. but i have no linux platform to test.
00:48 (mru) which patch?
00:48 (merbanan) hito: not tested, but it looks correct
00:49 (hito) http://lists.mplayerhq.hu/pipermail/ffmpeg-user/2007-July/010103.html
00:49 (hito) it is
00:50 (hito) i just make handy program which read FLV file and find mencoder(ffmpeg) output completly broken file
00:51 (merbanan) sorry about that, it's my code :)
00:51 (hito) wow
00:51 (merbanan) well the VP6 code
00:51 (merbanan) not the complete flv muxer
00:52 (merbanan) hito: I'll push for inclusion of the fix, expect it to be committed in a few days
00:53 (hito) thanks
00:53 (merbanan) thanks for the bug report with a patch to fix it
なるほど、やってみるものだ。
01:10 (hito) but even official Flash Player doesn't complain about Previous tag size... who use it? :)
01:12 (mru) probably nobody
01:12 (mru) what would you use it for? parse a file in reverse?
01:12 (hito) no
01:13 (hito) well yes i read it forward and hey there is Previous tag size maybe it is for reverse access
01:13 (hito) so i try it and find most of flv file broken.
01:13 (hito) allmost all flv file
01:14 (mru) then your best option is probably to simply ignore it
そんなぁ……。
2007-07-15
There's an awful lot of broken flv file out there
2007-07-11
catan quitter
ffmpegのコードを読んだら、自信喪失した
FLVのonMetaDataがカオスすぎる
2007-07-10
シリアルポートを扱うのは簡単だ
2007-07-04
iPhoneのrootアカウントのパスワードがクラックされた
2009年11月5日追記:二年前のこの記事が、にわかにPV数を得ている。何故かというと、こういう事があったからだ。間違えてここに飛んできた人の為の便宜を図るために、リンクしておく。
ロック解除のiPhoneを人質に、「身代金」の要求騒ぎ - ITmedia News
http://www.hackint0sh.org/forum/showthread.php?t=1323
rootアカウントのパスワードは、"alpine"
mobileアカウントのパスワードは、"dottie"
パスワードのセンスを褒め称えるべきだろうか? ちなみに、パスワードは古き良きDESでハッシュされているらしい。今となっては懐かしい暗号だ。クラックには、John the Ripperで15秒だったとか。
まあ、iPhoneは携帯である。マルチユーザなどといった使い方は想定していないし、そもそもiPhoneのシェル上から、rootにログインする方法がない。iPhoneにはターミナルなどないし、セキュリティ上の問題になることも無い。rootアカウントへのログインはまだ試みられていないようだが、そもそもUIが動くのかどうか疑問のようだ。