30-Jan-2009
[溜ったメモも一掃しよう…]

気になったキーワードを、メモ帳にがりがり書き込んでそのまま放置しているので…ちょっと片付けてみることに。

LA-FINA
横浜駅近くにあるBistrot a Vin LA-FINAのこと。ランチは美味しかったと思う。でも夜の方が本領を発揮しそうだな…
船場汁
料理本を立ち読みして、気になったのでキーワードだけメモ。「ふなばじる」と読んでいたけど、Wikipedia先生曰く「せんばじる」。サバを使った汁物は作ったことが無いので、挑戦してみたいなあ。
grappa di Barolo, castello di Barbaresco, rossj-bass, cremes, sitorey, sassicaia
近所(といっても車で20分くらいのところにある)の酒屋で見かけた、グラッパのラベルに書かれていた文字列。どれも\4k程度はするので、手が出せない…
calvados
ぐーぐる先生曰く、リンゴから作った発泡酒(シードル)を蒸留したものだそうな。
chase limogere, longboard island beer, Antiyal, Rally?, Bernardaud
スパークリングワイン、ビール、ワイン、?、磁器の順。どこでメモしたかは秘密。

酒の名前だけメモしていることが多いのだけど、後で読み直して調べてみると全然情報になってない…かといって写真撮るのもあんまり好きじゃない(というか食事中にカメラ持ち出すなんて行儀悪い)し。

気になった酒は醸造所もメモしておかないと、再び口にできないのかもしれんなあ…(23:20)

30-Jan-2009
[写真ネタを一掃してみる]

近所のスーパーで見かけたジャンケンマン筐体。

これって本当に真面目に勝負してくれるんでしょうか。ある程度勝ち進むと、プレイヤーを強制的に負かすような仕掛けが入っているんじゃないかって気がするんですよね。

パチンコのように本格的なギャンブルって訳でもないし、金額と対象がアレなので、ズルしてもバレないだろうから積極的に実行、みたいな。なにせ、大人ってズルいから(これ書いてる人は30過ぎのオッサンです)。

某スーパーで見かけたポテトサラダ。

フレッシュ野菜ポテトサラダなのはともかく、接頭辞の「使用禁止」が謎。

何が使用禁止なのか、今でも気になるんですよねー。

誰もが「ねーよwww」とツッコミを入れたくなりそうな広告。

簡単に要約すると、デジカメ買って、スーツ買って、ガソリン入れて、ジム行って、貯まったポイント使って3人で8人分の肉食ったんだそうですが…

3人で8人分の肉、3人で8人分の肉ですよ。誰がどれだけ食うんだよ!

写真とは関係ないけど、図書館が利用できるようになったので、適当に本を借りてみた。

「文法の原理(イェスペルセン著/半田一郎訳/岩波書店/1958年)」、難しすぎます。確か21章くらいあったはずなんだけど、8章まで読んで挫折。

旧字体の嵐なのはともかく、言語学の素養が無ければまーったく内容が理解できない…何でこんなの借りたのかな俺。

話し言葉は一次元、書き言葉は二次元、という見地は大事かもしれない。全然本の内容と違うかもしれないけど。

朝昼:いつもの。夕:白飯、豚キムチ、納豆。(21:40)

29-Jan-2009
[…]

28-Jan-2009: 朝昼:いつもの。夕:白飯、トマトスープ。

29-Jan-2009: 朝昼:いつもの。夕:白菜の炒め物、妻が買ってきたパンと惣菜。

色々止まってた(というか止めてた)ので、ぼちぼち再開しないとね…(23:40)

27-Jan-2009
[…]

20:12:30/Lv34/展望台の屋根へ。この状態でラスボス戦に突入。にもつは日本刀とふしぎなライト、残ったスペースは全て栄養ドリンクで。

どうにか勝てました。本当に、どうにか…敵の動きにランダムな要素があるらしく、こちらから攻撃できるタイミングがなかなか来なくて困りました。

物語、はっきり言って投げっぱなしジャーマンですね。大まかな筋は描いといたんで後は自分で探せってことみたいです。

今のところ気になっている項目として、

辺りが挙げられるのですが、物語、はっきり言って投げっぱ(endless)

ぃゃぁ、こういうノリは嫌いじゃないんですけど…そのヒントを集めるためにまたあの作業を繰り返すんだったら、嫌いになれますね。

最低限、敵は出さないから世界を自由に歩き回ってくれ的な物が無ければ意味がありません…自分だけの体験をして、自分だけの何かを見つけていただければと言うのであれば、ね。

PCゲームだったらMOD作る人もでてくるのかなって気もしますが、家庭用ゲーム機故に流石にそれは無理だろうし。デバッグ用のコマンドでも使うなり、開発用機材使ってうにゃうにゃとか、できたらいいよなとか考えたくもなります。

ほんと、操作性の悪さで全てを台無しにしている、勿体ないゲームだなあと思いました。

朝昼:いつもの。夕:やきそば。(23:20)

26-Jan-2009
[…]

19:19:47/Lv33/滅菌処理室。敵さんは、セト(主人公)を本気で殺したい模様。勘弁してくれないかなあ。

プレイヤーとしては話の続きが見たいだけなので、彼にはどうにかして生き残ってもらわないと困るのですが…そのための『作業』にちょっと飽きてきました。

16-Dec-2008の日記に書いたg4uとか、あとはg4lはどうでしょう、HDDイメージの吸い出し+FTPサーバへの転送ツール。

もっとも、イメージを吸い出したとしても、HDDの場合は適切なCHS情報を添付しておかないと色々面倒な気がしますが…

朝昼:いつもの。夕:白飯、豚肉とピーマンの炒め物、缶に入ってたスープ。(23:15)

25-Jan-2009
[…]

FRAGILE強化期間中につき、しばらく日記と食事メモの更新はおやすみです。

とりあえず、今までのプレイ時間17:21:16、場所はダムの最下層、セトはLv30です。

世界観は良いのですが、操作性の悪さで全てを台無しにしているのが非常に痛いです。

移動のダルさはヒトと構造物との大きさを対比させるために必要な表現として理解できますが、資源(アイテム)管理の操作はもう少し何とかすべきだと思います。「かばん」の中から必要なものを「にもつ」として登録させるのであれば、この部分の操作が面倒では困るのですよ。

とりあえず、微妙な味の料理…素材としてはどれも美味しそうなのだけど、という気分になるゲームですね。最後に何か美味しさを感じさせてもらえるとうれしいのですが。(23:45)

(メモ)

20-Jan-2009
[端末変えてみました]

RX410IN(灰耳)からRX420IN(青耳)に。

blue/grey

白いW-ZERO3[es]と抗菌グレーのnico.も入手できて、ほくほく。

さて、余った灰耳、どうしましょうか。昔使っていたAH-J3003Sは今でも目覚まし時計として活躍していますが、W-SIM単体では何もできませんからね。

朝昼:いつもの。夕:冷凍庫にあった物いろいろ。(21:35)

19-Jan-2009
[うーん…]

C++に対応するため、gccの一部に手を加えているように見えるんだよな…となると、/usr/local辺りに放りこんでいるi386-elfなgcc(多分汎用品)をそのまま使うのはあんまり良いアイデアではないんじゃないかって気がしてきた。

という訳で、binutils-2.18とgcc-core-3.4.6とnewlib-1.15.0を使って、それっぽい物を/usr/local/brightv/tool/gnuにこさえてみようかなと考えてみる。

ビルドするのはともかく、超漢字用に加工する方法が全然見当がつかない…なんとなく、なんとか.lnkとかcrtなんとか.oをコピーする必要がありそうなのはともかくとして、specsをどういじるかが分からない。

基本的な文法はSpec Files - Using the GNU Compiler Collection (GCC)を見れば良いとしても、gcc-2.95.2での意味を知らないと多分きちんと書き換えられない(変な問題を起こすだけという)ような気がするんだな。

…どうしようかね。

なんか、最近古いソフトばかりいじっているような気がしてきたのは気のせいじゃないよね?…で、思い出したんだが、何故かこんなものをオークションで落としてしまい、ちょっと困っていたり(スクリーンショットは、吸い出したディスクイメージをQEMU上で実行した物)。

GW-BASIC says Divide Overflow

GW-BASICとやらを触ってみたいんだが、何でこんなエラー(Divide Overflow)が出るのかなー

なんとなく、マシンが速すぎることで起こる問題なんだろうなーとは思うのだけど、直すとしたらどう直したもんかね。PC/XTの速度(4〜5MHzくらいだっけ?)でエミュレーションしてくれれば動くのかなーという気がしなくもないんだけど。

朝昼:いつもの。夕:白飯、納豆、白菜の炒め物(キット使用)。(22:45)

18-Jan-2009
[…]

まずは、$(BD)/tool/gnuの下にある各ファイルの一覧を作ってみる:オリジナル超漢字開発環境

この一覧から、まずはオリジナルにしか存在しないファイル超漢字開発環境にしか存在しないファイルを洗い出す。

オリジナル側にのみ存在する物は、locale(configure時に--disable-nlsでも付けとくんだっかな、と後悔中)とman, infoを除くとこんな感じ。

./bin/i386-unknown-gnu-readelf
./i386-unknown-gnu/lib/ldscripts/elf_i386.xc
./i386-unknown-gnu/lib/ldscripts/elf_i386.xsc
./include/symcat.h

超漢字開発環境側は、こう。infoだけ除いている。

./ReadMe
./i386-unknown-gnu/bin/gcc386
./lib/gcc-lib/i386-unknown-gnu/2.95.2/crt0.o
./lib/gcc-lib/i386-unknown-gnu/2.95.2/crt1f.o
./lib/gcc-lib/i386-unknown-gnu/2.95.2/crt1s.o
./lib/gcc-lib/i386-unknown-gnu/2.95.2/crti.o
./lib/gcc-lib/i386-unknown-gnu/2.95.2/crtn.o
./lib/gcc-lib/i386-unknown-gnu/2.95.2/demand.lnk
./lib/gcc-lib/i386-unknown-gnu/2.95.2/shared.lnk
./lib/gcc-lib/i386-unknown-gnu/2.95.2/solib.o

B-right/V開発環境の時はspecsとldscriptsの書き換えを必要としていたものの、超漢字開発環境ではspecsのみ置き換えるという記述が説明書(ReadMe)にある。実際、tool/gnu/lib/gcc-lib/i386-unknown-gnu/2.95.2/specsでdemand.lnkとshared.lnkを参照し、またdriver/etc/makerulesではreloc.lnkを参照しているから…多分そうなのだろう。

しかし念のため、ldscriptsを比較しておく。

ちなみに、elf_i386.なんとか、はそれぞれこういう意味らしい。「んなもん見りゃ分かる」、確かにその通り。

elf_i386.x Default linker script, for normal executables
elf_i386.xbnScript for -N: mix text and data on same page; don't align data
elf_i386.xc Script for -z combreloc: combine and sort reloc sections
elf_i386.xn Script for -n: mix text and data on same page
elf_i386.xr Script for ld -r: link without relocation
elf_i386.xs Script for ld --shared: link shared library
elf_i386.xscScript for --shared -z combreloc: shared library, combine & sort relocs
elf_i386.xu Script for ld -Ur: link w/out relocation, do create constructors

crt0.o, crt1f.o, crt1s.o, crti.o, crtn.oがlib/i386e2とtool/gnu/lib/gcc-lib/i386-unknown-gnu/2.95.2の二ヶ所に出現する(物自体は一緒な)のだけど、どちらが実際に使われるかは不明。

こんな風に…とりあえずここまでは調べてみたけど、ここから先をやるべきかどうかはちょいと悩むところかも。もともと、必要の無いこと(メーカーの言う環境を用意して使えば良いだけの話)だから。

基本的には、適切なインクルードファイルを読んで、必要なライブラリなどをリンクしてくれれば、どんなコンパイラでも構わない(暴論)と思うのだが…

朝:寝てた。昼:即席ラーメンとパン。夕:白飯、ジャガイモとソーセージの炒め物、即席スープ。(22:10)

17-Jan-2009
[…]

14-Jan-2009: 朝昼:いつもの。夕:白飯、刺身、菜物の味噌汁。

15-Jan-2009: 朝昼:いつもの。夕:白飯、納豆、ガンモドキの煮物。

16-Jan-2009: 朝昼:いつもの。夕:カレーライス。

17-Jan-2009: 朝:寝てた。昼:ピザ。夕:橋本某所にて。

超漢字の開発環境をどうにかしたいのだけど、gcc-2.95.2が「amd64なんていうホストは知りません」と言ってくるので、どうにもならない状態。

暇つぶしにBTRONプログラミングでもするかーの>>234-235という話もあるし、手元にあるi386-elfなgcc-4.2.4でどうにかなったらいいなーと妄想中。

まずは、i386なマシンでgcc-2.95.2を構築するところから始めてみることにする。

イマドキのLinuxはgcc-4.xが標準らしく、面白いくらいにgcc-2.95.2のコンパイルが通らないらしい。じゃあ古いディストリビューションを取ってきてQEMUに食わせてみるか…ということで昔使ってたSlackware-7.1をQEMU上の仮想HDDにインストールしようとすると、fdiskがお気に召さないのか区画が作れない。

仕方がないので、その辺にあったマシンにOpenBSD-4.4/i386を突っ込んで、その上でgccの構築を試してみることにした。このバージョンのOpenBSDはgcc 3.3.5が入っているから、多分どうにかなるのかな…と。

まずはbinutils-2.12.1。超漢字開発環境ではbinutils-2.9.1が使われているけど、どうも2.12.1より前の物だと出来上がったi386-unknown-gnu-ldがinternal errorを出してうまく動かない。という訳で可能な限り近い版(古い物)を選んでみたらコレになった。

説明書(超漢字開発環境・機種依存部分のパッケージに入っているtool/gnu/ReadMe「B-right/V開発用GNUツール類の生成」)に書かれている通りでビルドできるよと書きたいんだけど、prefixの指定は直さないとダメなんじゃないかなあ。こんな風に:tar jxpf binutils-2.12.1.tar.bz2; cd binutils-2.12.1; mkdir i386-unknown-gnu; cd i386-unknown-gnu; ../configure --prefix=/usr/local/brightv/tool/gnu --target=i386-unknown-gnu; gmake; gmake install; gmake install-info

binutilsができたらgcc-2.95.2。

説明書(tool/gnu/ReadMe)は開発環境の機種依存部分に入っているので、これを参照している以上は既にどこかへ展開しているはず…今回はLinux用のbrightv.linux.tar.gzをsomewhere/に展開した場合の例で。

ReadMeにはヘッダファイルを/usr/local/brightv/tool/gnu2/i386-unknown-gnu/include/*をコピーせよと書いてあるけど、これのコピー先は開発環境のインストール先。つまり、cp -r somewhere/tool/gnu/i386-unknown-gnu/include /usr/local/brightv/tool/gnu/i386-unknown-gnuという操作になる。

i386-unknown-gnu用binutilsを使えるようにするために、export PATH=/usr/local/brightv/tool/gnu/bin:$PATHでパスを通す(bashの場合)。パスを通した後にi386-unknown-gnu-ld -vとでも打ち込んで、GNU ld version 2.12.1の表示を確認しておくと良いかも。

gcc-2.95.2の展開とconfigureはこんな感じ:tar zxpf gcc-2.95.2.tar.gz; cd gcc-2.95.2; mkdir i386-unknown-gnu; cd i386-unknown-gnu; ../configure --prefix=/usr/local/brightv/tool/gnu --target-i386-unknown-gnu --with-gnu-as --with-gnu-ld

configureが終わったら、MakefileにあるMAKEINFO = うにゃうにゃをMAKEFILE = echoに書き換えておく。これは、何故かmakeinfoがうまく動かなかったのが理由(gcc-2.95.3でも同様な措置が必要になる)。

gmake LANGUAGES="c c++" TARGET_CONFIGDIRS=でmakeした後に、touch gcc/cpp.info.dummy gcc/gcc.info.dummyでダミーのファイルを作っておく。最後にgmake LANGUAGES="c c++" TARGET_CONFIGDIRS= installでおしまい。どちらもgmakeの後ろの呪文を忘れると色々面倒なので、忘れないように。

なんでこんなやたらと面倒なことをしているかというと、ただのi386-unkwown-gnu用gcc-2.95.2を超漢字向けにどう味付けしているか、というのを調べる必要があるから。この味付けの仕方は、多分他のバージョンのgccを使う際にも参考になるんじゃないか、と思うし。

一応、specsを差し替えろという記述がReadMeにはあるのだけど、specsのどこをどう書き換えているかまでは分からない。B-right/V用の開発環境では、変更前のspecsが残っているので比較のしようもあるのだけど…超漢字開発環境には無いので、比較元を作るところから始めないといけない。

という訳で、今回構築したgccに付いているspecsと、超漢字開発環境に入っているspecsとの差分を晒しておくことにする。細かい比較はこれからのんびりやるかもしれないし、面倒になったらこのまま放置かも。(22:15)

13-Jan-2009
[気を取り直して]

色々溜まっている問題を片付け中。

12-Jan-2009: 朝:即席ラーメンとパン。昼:アジア風かけごはんもどきの残り。夕:豚汁、納豆、白飯。

13-Jan-2009: 朝昼:いつもの。夕:白飯、豚肉と野菜の炒め物(キット使用)、即席味噌汁。(23:20)

11-Jan-2009
[…]

09-Jan-2009: 朝昼:いつもの。夕:野菜スープ、焼きそば。

10-Jan-2009: 朝:即席ラーメンとパン。昼:多摩某所にて。夕:野菜スープの残り、白飯、〆鯖の残りと納豆。

11-Jan-2009: 朝:寝てた。昼:ピザ。夕:アジア風かけごはんもどき。

amd64で4G超えするなら、今のところWindowsかLinux辺りしか選択肢が無いのかぬぅ。そうでなければ、高速なi386として…

ぃゃでも高速なi386として使うには勿体ないし、かといって4G超えができないならi386として使う方が、ぃゃでも高速な(endless)

ぬあーもうーどうすればいいんだよー(22:30)

09-Jan-2009
[ひょっとして…]

OS側は対応したけどドライバ側はまだよん、ということなんでしょうかOpenBSD-4.4/amd64、というようなことを03-Jan-2009の日記を見て思ったのですが。

というのも、CPUから見えるメモリ空間が64bit化されても、I/Oデバイスから見えるメモリ空間が32bitのままという状況に対処しないといけないんですが…この辺りをどうしているかがよく分からないんですよね。

Linux辺りだと、IOMMUにお任せとかbounce bufferを使って32bit空間へ一旦コピーしてどうにかやっているように見えます…おそらく、どの64bit OSもこの辺りの悩みを抱えるのでしょう。

もちろん、全て64bitメモリ空間に対応しているハードウェアで固めてあればこんな心配は要らないのですが、まだ32bit空間にしか対応していないものの方が多いですから。

…そう考えると、なんか4G以上のメモリ載せてもちゃんと使いこなすのは難しいよね、っていう気がします。

食事メモは明日。(24:30)

08-Jan-2009
[雪だって?]

まだ新しい場所からの通勤に慣れていないというのに…

今の場所はホームではあるんだけど、気分的にはアウェーなんだよねえ。実際、5年近く離れていればそういうもんでしょ。

朝昼:いつもの。夕:妻にお任せ(白飯、野菜と豆腐の煮物、〆鯖)。(22:40)

07-Jan-2009
[食事メモだけ]

06-Jan-2009: 朝昼:いつもの。夕:カレーライス。

07-Jan-2009: 朝昼:いつもの。夕:妻にお任せ(スーパーで買ってきたパエリア)。(22:20)

05-Jan-2009
[む?]

h8300-elf-gcc, h8300-hms-gccを構築するついでに、i386-elf-gccも構築してみました。んでもって、動作チェック代わりにHOS-V4のコンパイルを試してみたのだけど…

HOS-V4_Ver_1.02_TGZ(LZHも)は、ia32gcc/{linkage.h,ioport.h,hosexp.h,descriptor.h,switch.h,idle.h}が欠けてるらしくコンパイルが通らない。

hos-v4advanceのshapshot_20081206は通る。HOS-V4 Ver1.01はコンパイルが通って、サンプルが動いた。という訳で、i386-elf-gccの構築はできたことにしてしまおう。

さて、これを使って何をしよう(ぉぃ

食事メモは明日以降に復活する予定。(21:10)

03-Jan-2009
[とりあえず]

OpenBSD 4.3→OpenBSD 4.4への移行を完了。今回はpackagesをばんばん使ったので、思った以上に早く完了しています。

なんとなくですが、OpenBSDってHDD上に複数のOpenBSD区画が存在することを認めない…ように見えるのですが、実際はどうなのでしょうか。

旧OS/新OSの二つの区画を用意して、新OS側から旧OSの区画をマウントしてごにょごにょという手を使おうとしたら…旧OS側をぶっ壊してぁゎゃという事態になったもので。

引っ越し前に取っておいたデータのバックアップが残っていたのと、ここ10日分のメールは運良く生き残っていたので、今のところ困らないレベルまで復旧してはいるのですが。

で、OpenBSD 4.4、快適なんじゃないかなあ。

いちばん大きいのは、FireFox 3が動くこと。あと、M2N-VM HDMIでOpenBSD 4.3を動かした場合に見られた、halt -pで電源が落ちずに固まってしまうという問題が直ってるし。

Emacs-22.2.1上で動くAnthyがやたらと重かったけど、これはemacs23 において anthy の文字入力や変換候補の表示が妙に重いに書かれている手法….emacsで、(load-library "anthy")の直後に(setq anthy-accept-timeout 1))を追加する…で回避できるみたいだし。

ところで、4GB以上のメモリをお手軽に認識させる方法ってありませんかね。

このへんの議論を見ていると、sys/arch/amd64/amd64/machdep.cにあるbigmem=0をいじるといいよ、ということなのだそうですが…どうやってこいつをいじるの?と。カーネルを再コンパイルするのが確実そうですが、お気軽の範疇を越えてる気がします…(21:45)

OpenBSDのFAQ 5 - Building the System from Sourceを見ながら、sys.tar.gzからカーネルを起こしてみたんですが…うまく動きませんね。

デフォルトでbigmem=1となっていたものの、実際に動かすとHDDがDMA errorを吐いてます。これはちょっと怖いですね…という訳で、元のbsd.mpに戻してこの件は一旦終了。(22:35)

01-Jan-2009
[という訳で]

a happy new year (in Japanese)

本年もよろしくお願いします。

元ネタは去年いじっていたFS-SR023です。FONTX化はしていないので、力業で画像化しました。(00:00)