/var/log/hdk.log

2023 年 12 月上旬

prev, this, next


01 (金)

%1 きんようび

晴れ。 だいぶ寒い日。 寝室が室温 14 度・湿度 16 % なんていう数字をたたき出し始めて、いよいよ冬である。

すっかり忘れかけていたけど、1999 年秋に初級システムアドミニストレータ試験に合格していたんだった。 1997 年春に第二種情報処理技術者試験、2000 年春に (最後の) 第一種情報処理技術者試験に合格したのはさすがに忘れないが、あのおもしろいぐらい簡単だった「初級シスアド」は特に苦労もなかったし、今の仕事につながる何かも特にない気がするんだよなw

自分が子供の頃入院したのは 1990 年 10 月である。 その頃パソコンで遊んでいた時のデータの多くは、磁気ディスクの信頼性の低さや様々な理由で失われているが、手元にあるディスク image を漁ってみると DOS.BAS という名前のファイルが 1990 年 9 月 26 日で一番近そうだ。 これは BASIC で COMMAND.COM っぽいことをやる謎プログラムだw 全部自分で書いたかどうかは不明だが、一部改造ぐらいはやっていそう。 次はもう 10 月後半ぐらいの日付かな。 これが BASIC ディスクの 3、1 と 2 は失われたやつだ。 MASM ディスクも 3 から残っていて 1 と 2 は失われているが、1990 年に MASM を触った可能性もあることはあるんだよなぁ、記憶ではその頃にはじめて読む 8086 を見ていたからねぇ。 小学 2 年生の当時、確か何も持たずに入院したんだけど、今思えば、ノートとペンぐらいあれば少しは暇つぶしにもなったんだろうけどね。

昔よく遊んで未だに遊んでいる KATALITH というゲーム、パニック画面 (いわゆるボスが来た系) に出てくるプログラムが Pascal である。 最近少し Pascal で遊んでいたからちゃんと読めるようになった。 {$R+} という、range check を有効にする書き方は、Borland 系だろうか。 セミコロンの前にスペースを入れるスタイルなのが不思議な感じに見えるけど、まぁとにかく完全に Pascal だ。 PNC ファイルを見ると結構長くて、ちゃんとメインプログラムまで書かれている。 ファイルを消すユーティリティ... なんだこれw Free Pascal でコンパイルが通るかというと、uses にある nasatak が見つからないらしく通らない。 まぁいいやと眺めていたら、procedure の引数に var を付けたら参照渡しだ、ってのまでは知っていたが、参照渡しで型を書かない書き方があるらしい。 その場合その引数にはアクセスできないのかな。 へぇ。 おもしろいなぁ、Pascal はやっぱり高級言語だよな、しかも boolean みたいな型も当時からあって、C よりしっかりしている。 中二病的に記号を使いまくる C と違って、Pascal には何かと英単語が出てくるから、英語が母国語じゃない我々にとってやや覚えることが多いくらいだ。

テレビでやってた映画『プリンセスと魔法のキス』(原題: The Princess and the Frog)。 2009 年のアメリカ映画。 日本公開は 2010 年。 ディズニー。 ちょっとピクサーっぽくないアニメーション。 ミュージカルっぽいけどあんまりミュージカルじゃない。 ニューオーリンズ。 カエルとキスをして王子様... いや、カエルに。 プリンセスとキスをすれば元通りに。 今時のポリティカルコレクトネスを感じないといえば嘘になる。 数年後の大ヒット映画 Frozen につながる何かをちょっと感じる気もする。

2023/12/01 のコメントを読む・書く


02 (土)

%1 ASIJ Winterfest

アメリカン・スクール・イン・ジャパン (ASIJ) において Winterfest というのがあるらしい、という噂を耳にして、行ってみた。 パスは不要みたいだが、表には何も出ていないので首をかしげる感じだw 野川公園から見える広場 (何かのスポーツのコートっぽいところ、Google Maps ではスタジアムと出てくる) がやたらにぎやかなので、公園のその付近に来た人は何かやっていることがわかるだろう。

Fest だし学園祭みたいなものかと思うが PTA の皆様が中心になって開かれているものらしい。 小さな屋内プールの隣で外国書籍の古本のバザー、体育館で外国っぽいものや外国人向けっぽい日本のものがたくさん売られているバザー、そのほか、子供達向けのいろいろや、カフェテリアではいろんな国の食事っぽいのが勢揃いしていて、屋外のステージでは子供達が何かやっていたのもあったし、子供達から見れば祖父ぐらいの歳の、外国人らしい見た目の大人達によるバンド演奏もあった。 PTA なのでバザーにしても大人達がやっているわけで、学園祭とはまた違った雰囲気がある。

ま、それはいいとして... ASIJ っていうのは国内にある有名なインターナショナルスクールのひとつで、普通の学校とはまったくカリキュラムが異なるため、授業料も私立学校としてみても非常に高い。 幼稚園から高校まであるのに、自分が大学に払った 4 年間の授業料があっても、1 年もいられないぐらい。 1902 年設立で歴史もかなり長い。 そんな学校なので、保護者の皆様もかなり懐に余裕がある人が多いと見られる。 その中で調布市やその近隣に住んでいる人は少ないと思われ、ASIJ のバスもたくさんあるし (いすずや三菱ふそう車)、自家用車がたくさん来る。 メルセデスや BMW なんてのは珍しくもなく、スマートやテスラもあった。 それに「外」ナンバーの車も見かける。 このへんでなんか珍しい車を見かけるなぁ、という理由のひとつがインターナショナルスクールの存在なのかも知れないw

学内は幼稚園から高校まであるにしてはあまり広くない印象があった。 せいぜい 2 階建てか 3 階建て程度、横に広い。 (これは調布飛行場の存在や、容積率も関係しているのかも知れない。) 屋内プールがあるのは立派だが見た感じ 25 m もないだろうという感じ。 土地面積は自分の出身高校ぐらいはあるのかな。 でもそこに幼稚園から高校までだもんな。

インターナショナルスクールなので学内はいろんな意味でインターナショナルである。 ほとんどの掲示物が英語。 掲示板の面積が広い。 ちょっと国際基督教大学を思い出した。 少し似た雰囲気がある気がする。 あとずらっとロッカーがあるのが何かアメリカ合衆国っぽい。 ドラマで見たやつだ、みたいな感じだ。 来ている人達も国際色豊かで、英語に限らずいろんな言葉が飛び交っていたし、体つきも、親近感のあるアジア系、アメリカ映画で見るような典型的な白人や黒人らしく見える人達など様々。 今日は fest だから、家族など必ずしも英語ができるとは限らない人達が来るのも想定の範囲内だっただろう。

%2 どようび

晴れ。 寒い日。

大根掘り。 去年はバイクを倒して腰を痛めた日に大根掘りだったんだな。 今年は、小さいのもあるので 5 本にしています、という割には、クソデカいのが 3 本と小さいのが 2 本あり、めちゃくちゃ重かった。 何人も自転車を倒している人を見かけたし、やっぱり多かったんじゃないかな? しかもひとつは二股にわかれたのがあり、特に重かった。 全部バケツに入れたらうっかりすると腰を痛めそうな重さで、自転車の前かごとバケツにわけて押して歩いて帰った。 自転車かキャリーカートがなかったら持ち帰れなかったなw

近く用めがねで意外と遠くが見えると感じる理由。 晴れた昼間にまぶしい屋外で目を細めた時に想像以上に遠くまで見えることに気づいた。 そりゃあ絞りの効果を考えればそうなんだろうけど、1 m までしかピントが合わないはずのめがねで、5 m 先の人の顔がくっきり見えるとは想像しないよね? 目を細めるほどではなくても、昼間は少し遠くが見えると感じるのは不思議ではない。 ま、何の話かというと、体育館の中で開かれるバザーなんていうのは、新しい近く用めがねではすべてがぼやけてしまいだいぶ見づらい感じだったw そんなわけで一度帰って昼を食べてから出直したので、今日の歩数はすごいことになった。

テレビアニメ『呪術廻戦』。 43 話。 釘の人のバトルと、主人公のバトル。 同じ相手。 ...2009 年、釘の人の過去。 雪国の田舎。 友達目線。 よそ者。 その時知り合った年上の人の、その後の仕事場、Cisco の電話機。 そして現在へ。

テレビアニメ『葬送のフリーレン』。 また過去の話が無料配信対象になっている。 13 話。 底なし沼。 からの、毒。 親睦を深める僧侶。 強すぎる村長。 年上のお姉さんw 色仕掛け。 仲間への誘い。

テレビアニメ『オーバーテイク!』。 9 話。 フォトグラファーと再会。 三陸鉄道、吉浜駅。 「パッシング」? バッシングじゃないのそこは? 自分の耳が聞き取りをミスっているだけかも知れない。 震災の時の。 エンディング長め。 最終回みたいな終わり方。 って、最終回だったか? もう一回見てみないと...

開発放置気味の拙作 JX エミュレーターは時々使っているんだけど、何かレースコンディションがあるみたいで起動時に時々止まったりクラッシュしたりするし、disk image の切り替えもできないので何とかしたいと思って早数年。 画面の描画はもう今なら OpenGL でいいかなという気がしているんだけど、オーディオは SDL だろうな、やっぱり。 んで GUI をくっつけるならやっぱり Lazarus で作ろうかなと思うが C++ と C のコードはそのままでリンクしてしまおうかなと。 チラッと Lazarus で OpenGL のサンプルプログラムを試した感じではすんなり動いたけれども、OpenGL に関して WebGL から首を突っ込んだ自分はシェーダーを使うやり方しか知らず、しかも詳細は忘れたので復習しないといけない。 エミュレーターでもシェーダーを使うのがいいだろうとは思っている。 出力が 32 ビットカラーでも、入力データを 1 ドットあたり 8 ビット以下にできるからね。

2023/12/02 のコメントを読む・書く


03 (日)

%1 にちようび

晴れ。 寒かったけど昼は少し暖かかったかな?

きのうの大根、細いやつ 2 本は 500 g ないぐらいだったが、太いやつの 2 本は 2 kg ちょっと、二股になったやつは 3 kg を超えていた... よく米 5 kg を買うから、感覚的にそれより重いよなと思ったけど、単純計算で 8 kg に達しているんだもんな、そりゃ重いわw

自転車ロードレース開催日。 交通規制の案内の紙が 3 日前に来るという驚きの怠慢運営。 徒歩 10 分で交通規制の区間にたどり着くっていうのに。 「競技コース及び周辺道路は混雑しますので、車・自転車でのお出かけはご遠慮ください。」だって? 3 日前に言われてご遠慮できるやつがどんだけいるんだよw あっ、バイクは関係ないのね! (おい)

感染症の話。 SARS-CoV-2 の第 9 波と言われていたのがどうやら 8 月か 9 月あたりがピーク。 そしてインフルエンザが地域差がありつつも 7 月あたりから出ていて、東京では 9 月 10 月あたりがひどかったか。 先月あたりはそれも落ち着いたのかなと勝手に思っていたが、結局今は拡大傾向との情報がある。 SARS-CoV-2 の強烈な感染パワーと比べればクソ雑魚 (笑) に見えていたインフルエンザも、感染対策がクソ雑魚になってしまった (笑) 今はなかなか手強いようだ。 そして SARS-CoV-2 もまた増えてきそうな気配の情報もあって、どうしようもないな。 インフルエンザは複数の型が流行してしまい拡大しやすいというのと、SARS-CoV-2 に感染すると他の感染症にもかかりやすくなってしまうという、免疫への影響もわかってきているらしい。 どうしようもないウイルスだな。

本屋。 久しぶりに本屋に行きたくなって、前は蔦谷書店のデカいのが市内にあったが消滅してしまったので、何となくで人見街道にある小さな本屋さんに行ってみた。 駐輪場に入ろうとしたら歩道に段差があってバイクの前輪が滑った (ちょっとびっくりしたがバランスは崩していない) 上に、駐輪場めっちゃ狭かったので、車の駐車場のほうにとめた。 個人でやっている感じの本屋。 小中学生向けの試験対策等のコーナー、大人向けの資格試験対策系のコーナー、雑誌、技術書、小説、漫画、18 歳以上向け (なんと仕切りがないw) など、一応いろいろあるが、技術書に関してはそんなにスペースはない。 それでも人気や流行とおぼしき web 系や ChatGPT みたいな本はあったので、そのへんはあれば売れるのかもね。 Rust は見当たらなかった気がする。 そういうのを置くには規模が小さすぎるか。

東に進んで旧道に入ったところのブックオフ。 立ち寄ってみたのは何年ぶりだろう。 入口からまっすぐは DVD やゲームのコーナーかな、右のほうに漫画や CD がそろっている。 左は実用書、みたいな。 コンピューター系の本のコーナーももちろんあって、安いのと普通のとあったが、いずれも Pascal の本は見当たらなかった。 そんなもんか。 Visual Basic の本がある、と思ったら 2010 などと書かれていて、意外と最近だな。 そういえば昔結構 Visual Basic は使っていたけど、本は買わなかったんだよな、付属のマニュアルで事足りてしまった記憶。 少し CD を買った。

昔の本屋がどうだったかはあまり記憶にない。 あれだけ Turbo Pascal やら Delphi やらが流行ったんだからそれ系の本もあったのは間違いないだろう。 今 ChatGPT の本が売られているのと同じで、はやりのものは本が出ていたはずだ。 それでも C が強かったんだろうか。 アセンブリ言語の本も当時はあった... それはまぁ 1990 年代前半は 8 ビット機がまだ生き残っていたのもあるし (MSX や携帯ゲーム機など)、DOS でもリソースが厳しかったからアセンブリ言語が強い世界はあった。 Windows 95 登場以降は 32 ビット化でリソースにかなり余裕ができて、2000 年以降は携帯ゲーム機でも 8 ビットは過去のものになっていき、2010 年を過ぎてもアセンブリ言語と戯れている我々は少数派になったw しかしどうして C が流行ったのかはよくわからない。 DOS 2.x に追加された UNIX 風のシステムコールが C と相性が良かったから? 案外、そういう側面はあったのかも知れないけどね。 C なら NUL 終端文字列を標準で扱えるから、バイナリサイズを小さく抑えるのに向いていただろう。

2023/12/03 のコメントを読む・書く


04 (月)

%1 げつようび

晴れ。 寒い日。

テレビアニメ『16bit センセーション ANOTHER LAYER』。 9 話。 1999 年の続き。 自動ドアの前、あの目が開いていない女の人、背高いな。 9821 にもキーボード刺さっていなかったな? 「マスターアップ」。 「ラストワルツ」完成。 今回は打ち上げでジュースを飲んでいる主人公。 「でじこビル」。 「美少女ゲームの絆」。 1985 年の「カルトソフト」。 「エネルギーを持っている」なんて言い出すとは、エコーソフトの影響を引きずっているなw もともと、未来が変わってもいい! なんて言ってタイムリープした過去でゲーム作りを始めた主人公だったから、何となく予想はしていたが、未来は変わっていたw

テレビアニメ『MF ゴースト』。 9 話。 レースの続き。 この見た目は... 高橋啓介が社長? けんたは社員?w RX-7 のデモ走行がめちゃくちゃタイムが良いという話で、これは高橋啓介が走らせたってことなんだろうな、そういう話はまだ出てこないけど。 抜きつ抜かれつがいくつかあって、レース終了! タイヤねぇ、たった 80 km で使い切るとは、タイヤコンパウンドもずいぶん攻めているよな。 タイヤの差で勝負が決まるってのはそれこそこの前の F1 最終戦で角田がハミルトンを抜き返したのもそうで、普通に考えれば角田のタイヤのほうがつらかったはずだが、7 回チャンピオンのハミルトンにテールスライドさせて抜き返したのは、ハミルトンのほうも思ったほどタイヤが残っていなかったんだろうなという風に見えた。

テレビアニメ『るろうに剣心 ―明治剣客浪漫譚―』2023 年版。 22 話。 斎藤一、の夢。 けんか屋、刺される。 そして剣心、誘い出される。 鎖野郎。

Lazarus。 OpenGL のサンプルプログラムを動かして、そこにメニューをつけてみる。 んで Click イベントを書こうとしたら挙動がおかしい。 変なエラーが出る。 あっ、メニューに [再起動] ってあるのはもしかしてこういう時のため?w Quit メニューの OnClick は中身 Close; だけでよかったんだけど、いいのかそれでw んで調べていくと lazopenglcontext にはシェーダーの API が含まれていないっぽい感じがしてきた。 みんな dglOpenGL っていうのを使っているのか? 面倒な話が出てきたな... それとも GL, GLext っていうのでいけるんかな。 一応 /usr/share/fpcsrc/3.2.2/packages/opengles/examples/es2example1.pas みたいなのが見つかるからできるのかも知れない。

2023/12/04 のコメントを読む・書く


05 (火)

%1 Lazarus

何か時々イベント作成ができなくなるのは、プロジェクトリンクというところを開いて再スキャンか何かするとなおるっぽい workaround がありそうなことを、いろいろいじっていて発見した。 よくわからない。

OpenGL のシェーダーの件は GLext というのを使うといけそう。 OpenGLContext っていうのは LCL っていう GUI フォームにくっつけるための何かのようで、OpenGL の描画系の機能は GL のほうに含まれている。 で、シェーダー関係の定義は GLext のほうに含まれているので、それを uses に追加すると使えるようになるっぽい。 それには少しバグがあるので dglOpenGL ってのが出てきたという話らしくて、バグを気にしないのなら GLext でいいみたいだ。 あとは macOS に対応しようとすると何かごちゃごちゃしているらしいけど、macOS なんてオワ (以下略)

ふたつめのフォームを作成すると自動的に起動時にフォームが非表示状態で準備されるらしい。 [プロジェクトソースを表示] というのを選ぶとそういうのが書かれた lpr ファイルというのが出てくる。 実際に表示するには Form2.Show; みたいなことをすればよく、参照のために uses に追加が必要だがそれもメニューから行える。 あるいは Visible ってプロパティを true にしておけば最初から出てくる。

フォームにメニューをつけるのはポチポチやっていたらできて、& でアクセスキーなのも Visual Basic と変わらない。 試していないけどさすがに & 2 個連続指定で半角カタカナのアクセスキーを認識させるのはできないだろうがw (Windows 3.1 までで消滅してしまった謎仕様w) 昔作った Visual Basic のソースコードを見ると、メニューのエントリにちゃんと名前をつけていて、まじめだな、と思ったら、名前をつけないといけないインターフェイスだったか。 Lazarus は放っておくと MenuItem1 みたいな感じで連番が割り振られていくので、名前を変えずに作って後から見るとわけがわからないw

OpenGL の絵が出る場所は GLBox.Parent := Self; ってやっているからウインドウに出ていたようだ。 TPanel っていうのを配置して GLBox.Parent := Panel1; にするとそのオブジェクト内に出るようになった。 GLBox.OnPaint にセットした procedure は、いわゆる Paint イベントで、再描画の時だけ呼び出されるようだ。 ウインドウサイズをぐりぐり変えると呼び出されてくる。

Lazarus のショートカットキー、実行が F9 キーなのは違和感があるが、もしかしたら Delphi がそうなのかも。 Microsoft 系は QuickBASIC の頃から F5 が実行で、F9 はブレークポイントの設定だった。 Shift+F9 がカーソル位置の変数の evaluation だったと思う。 F7 がカーソル位置の手前まで実行で、F8 がシングルステップだっけか。 F10 がサブルーチンの中に入らないステップ実行だったかな。 そのへんはちょっと記憶があやふやだが、Visual Basic の DOS 版も、Windows 版の 6.0 も、みんな同じだったと思うので、地味に 7 年ぐらいは親しんだ操作なのだった。

Lazarus は MDI ではなくウインドウをたくさん出す仕様で、もしかして Visual Basic 2.0 あたりがそうだったかな? しかし Alt キーを押してもメニューのあるウインドウに飛ばないのは不便では? あとウインドウ一覧が Lazarus で埋まってしまうので、ワークスペース機能が初めて便利に感じられている。 GNOME から MATE デスクトップまで長年使っているけど、ワークスペース機能は今までほとんど役に立っていなかった (が、オフにもしていなかった)。

%2 かようび

晴れだか曇りだか。 夜遅くには雨も降った。 寒い日。

テレビドラマ『トクメイ! 警視庁特別会計係』。 8 話。 消えた 1 億円。 X と議員の関係。 "2022/11/23 23:34" の事件。 バランス。 「ウルトラ C」。 2 週間の停職。 「特命の仕事」。 本庁の経費書類。 刑事、正義のヒーローに憧れ、会計係になり、特命を... 副署長。 偉い人「警察こそが正義」w X も何かわかりかけているところで... 上司が責任を取り? 事件が発生し。 ほうー、そういう展開か。

2023/12/05 のコメントを読む・書く


06 (水)

%1 Lazarus

OnKeyDown, OnKeyUp イベントはフォームにあり、Visual Basic にもそういうのあったな、と思いながら試してみると、TPanel を配置しているとなぜか飛んでこなかった。 TPanel は TabStop プロパティを true にしていればたぶんフォーカスが持てるんだと思うけど、TPanel には OnKeyDown, OnKeyUp イベントがなく、どうなっているんだこれ? フォームに KeyPreview プロパティというのがあり、これを true にしてやると取得することができた。

アニメーションをする時はタイマーを使うのかな。 定期的に呼び出されるインターバルタイマーは、それこそ Visual Basic もほとんど同じような考え方だった気がするけど、TTimer というオブジェクトをフォームに貼り付けて、それのイベントハンドラーを書く。

マルチスレッドの話は和訳されていた: Multithreaded Application Tutorial/ja - Free Pascal wiki

雑に読むとやはり画面表示はメインスレッドでやれってことのようだが、その際に Synchronize というメソッドが使えるらしい。 これに渡したメソッドはメインスレッドで実行されるんだそうで、何それ便利そうだな? Message も使えるというのが Win32 API を使っていた頃を思い出して懐かしいんだが (LM_USER とあるが、Win32 API では WM_USER だったな)、それが Windows 以外でも使えるように作られているんだから先人達に感謝である。

ってな話を調べるのに検索エンジンと仲良しになる必要があるのだがw もともと Pascal や BASIC ができた時代は { } などの記号入力ができない端末が一般的だった、みたいな話があって、おかげで変な記号が出てくることがない。 C もほとんど同じ時代だけど、C は広く使われることを考えずに記号を使いまくる仕様になったらしく (Wikipedia で見かけた話で本当かどうかはともかく記号が多いのは事実だ)、{ } なのか ( ) なのか、みたいなのはやや見た目上も似たような形に見えることもあって初心者を悩ませるところかも。

Pascal に見慣れてきて、今時の Rust も何となく読みやすくなってきた。 変数名、:、型、=、初期値、みたいな宣言の仕方がそのまんま Pascal も Rust も同じなのだ。 Rust はそれ以外にも所有権だの何だのという特殊性があって取っつきにくいんだけど、まず表記法からして敷居が高いな、って思っていたのがだいぶ和らいだかも。 Go は型は後ろだが : がないのでやっぱり読みづらい。

%2 すいようび

晴れ。 出社した。

Open Source Summit Japan 2023 のきのう今日の発表の一部を YouTube のライブ配信で視聴したが (同僚数名は現地へ)、まぁやっぱり Rust も出てくるわけですよ。 うん。 Rust の 1.0 が出たのが 2015 年。 そこから 8 年。 着実に広がっている新しいプログラミング言語だ。

Personal Editor が Pascal で書かれていたテキストエディターだったが、触ったことがあるあれは JX 対応版であり割とレアものな気がする。 もともとは 1982 年のソフトウェア、JX 対応版はたぶん 1985 年。 Turbo Pascal の最初のバージョンは 1983 年。 へぇ。 UCSD Pascal だとすると P-Code かな、でもそれだとバイナリダンプを見ただけで違和感があるだろう。 このバイナリは明らかにデータが後ろに固まっていてその手前には 8086 の機械語が詰まっているので P-Code ではない。 P-Code からさらに変換されていた可能性はあるが、どうだろうな。

2023/12/06 のコメントを読む・書く


07 (木)

%1 もくようび

晴れ。 きのうより暖かい日。 出社した。 大根を一本譲った。

神学大の前の道は朝 8 時台に通るとスムーズな気がしたが 9 時台に通ると普通に信号に引っ掛かってあれあれってなった。 時間帯によっては星マークの某社へ出勤の人達による混雑もあるとの噂を聞いて、どうもそこから 9 時台までの間にいいタイミングがあるようだ。 9 時過ぎたら某橋のほうも通れるのでそっちなら信号は少ないんだが、そっちは 20 km/h 制限なので思ったほど速くなくて。

聞くところによれば今朝は近隣の某鉄道路線で人身事故があってダイヤが乱れていたとのことで、駅間を歩いている人をたくさん見かけたとのことだったが、自分の時にはすでに運転再開していたとのことで、普段通りだった。

Free Pascal あんなにそろっていたらオーディオ入出力も LCL で扱えるのかな? と一瞬思ったがさすがにそんなことはないようだ。 Multimedia Programming - Free Pascal wiki にまとめられているが、fpc/packages/ にあるのは openal と sdl かな。 Cross-platform といっても OpenAL は macOS では deprecated だそうで、標準で使えるのは実質 SDL だけなのかな。 冷静に考えると、Win32 API ってやつは、オーディオ入出力からビットマップ描画まで、統一感のあるインターフェイスで一通りそろっていたような気がする。

2023/12/07 のコメントを読む・書く


08 (金)

%1 休暇

晴れ。 今日も 12 月にしては暖かいかな。 気温のおかげで東京近辺は紅葉の進み具合が微妙な感じになっている。

2 週間前の怪我はほとんど治っていて、最後にかさぶたが取れたのか、カサカサになっているけど、もう赤い部分もほとんど無い。 まぁ、先週の土曜日に 16k 歩も歩けたんだからその時点で治っていたようなもんだけど、先週はまだ血の塊みたいなのがあった。 ゲンタマイシン硫酸塩軟膏 0.1%「イワキ」を使ったのは最初の 1 週間ぐらいかな。 化膿止めの効果があったのかどうかはわからんけど、腫れなくてよかった。

映画『翔んで埼玉 〜琵琶湖より愛をこめて〜』。 2023 年の邦画。 1000 円。 前作から 4 年。 今回は、タイトルにもある琵琶湖の滋賀県を含め、京都、大阪、兵庫、和歌山、奈良といった近畿地方が主な舞台。 例によって誰が男で誰が女だかわからなくなる感じの役者達、だがそれがいい。 身長が高めの 2 人、GACKT と杏が並んで映るとずいぶんかっこよく見える。 そして検索してびっくり、片岡愛之助と藤原紀香は夫婦で共演だったのか。 前作以上にネタ元がわからないのが多かったのは少し残念ではあったが、前作と同じような雰囲気で展開していって、全国に通じる時事ネタや広告ネタ、映画のパロディもぶっ込まれている。 時代設定がよくわからなくなるのもわざとだろうし (武蔵野線ネタ、万博ネタ... 大阪の風景なんか完全に現代では?w)、出演者達の郷土愛も感じられる映画だった。 Wikipedia を見て振り返ってふんふんと思っていたけど、竹原芳子も出ていたよな?

近畿地方よくわからない問題。 三重県出身の人が関西弁っぽいイントネーションだなーって思ったことはあるけど、三重県の中でも地域差もありそうではある。 名古屋に近い側は名古屋で働いている人も多そうだし、実際複数回訪問している鈴鹿とか亀山とかは、そこまで関西弁っぽい感じはなかった気がする。 滋賀県は琵琶湖が有名だが、車で大阪に向かう途中でカラオケ店に立ち寄った時は琵琶湖は見ていないんだったかなw 大学の先輩に滋賀県出身の人がいる。 京都府はあの有名観光スポットでしょ、みたいなところで思考停止してしまうが、学生の頃に情報処理学会か何かで同志社大学に行ったのが京都だった。 その前に未踏の何かでも京都に行っている。 あと昔家族旅行で北海道に行く時に使ったフェリーの港が舞鶴にある。 大学の後輩に京都府出身の人がいる。 奈良県はやっぱり観光スポットがあるけど、名阪国道で何度も通過している記憶しかない。 それも途中の地名は天理ぐらいしか覚えていない。 大阪府は国内で東京都に次ぐ大都市、一応大阪駅にも行ったことはあるけど、大阪南港からフェリーに乗ったのの回数のほうが多いので、中心地から外れたところばかり記憶にある。 大阪府出身は大学の先輩後輩いろいろいそう。 和歌山県は昔家族旅行で行ったなーってぐらいで、梅干しはおいしいけど他のことはあまり記憶にない。 大学の後輩に和歌山県出身の人がいる。 兵庫県は... なぜか大阪空港に車で行ってみたことがあるw 大学の後輩に兵庫県出身の人がいる。

テレビでやってた映画『ズートピア』(原題: Zootopia)。 2016 年のアメリカ映画。 Predator って映画があったけど、この単語に肉食動物って意味があるのね。 "a" なのに a って読まないのでスペルや発音を間違えそうな単語。

2023/12/08 のコメントを読む・書く


09 (土)

%1 バイク

マニュアルトランスミッション車を普通の勢いで発進させる時は、車もバイクも、よほどパワーに余裕がない限り、クラッチを切ってギヤを入れ、アクセルを少し開けてエンジンの回転数を上げて、クラッチを少しつなぐ、ということをやる。 少し開けるというのは、パワーに余裕がないとアイドリングのトルクではものすごくゆっくりしか動き出せないし、クラッチを切っている間はエンジンには負荷がほとんどなく空回り状態なので、大きく開けると一気に吹け上がってしまうため。

んで、レシプロエンジンの車はほとんどが 3 気筒以上あって、2 気筒は非常に少ないんだが (最近の車だとフィアット 500 ツインエアぐらいか?)、バイクは単気筒や 2 気筒の車種がかなり多い。 問題は、単気筒や、2 気筒でクランク角が 180 度以下程度の 4 サイクルエンジンだと、吸気のタイミングが偏っていて、回転数が低いアイドリングから、アクセルを開けるのと吸気のタイミングによって、すっと上がる時とワンテンポ遅れる時がある。 本当はそんなに差はないのかも知れないけど、感覚的にはびっくりするぐらい遅れて、うっかりするとエンジンストールさせてしまう。

初めて買ったマニュアルトランスミッションのバイクであるグラストラッカーは単気筒で、時々その遅れを感じることがあった。 その次の GSR250S ではあまり気にならなかった。 今の 400X はまた時々感じることがある。 グラストラッカーのアイドリング回転数は不明だが、おそらく 1500 rpm ぐらいだったんじゃないだろうか? 毎秒 25 回転、4 サイクル単気筒エンジンだから吸気はその半分の毎秒 12.5 回で、吸気開始間隔は 0.08 秒、吸気時間は単純計算で 0.02 秒未満だ。 0.08 秒かぁ、確かに気になるといえば気になるのかも知れないけど、程度の間隔だな。 GSR250S のアイドリング回転数はだいたい 1500 rpm だったので間隔は同じ。 400X のアイドリング回転数はだいたい 1200 rpm なので間隔が大きく 0.1 秒だ。 うーん? アイドリングの吸気開始間隔に対して、吸気していない連続時間を雑に求めると、グラストラッカーが 0.06 秒、GSR250S が 0.04 秒、400X は 0.05 秒ってことになって、やっぱり違うっちゃ違うけどそんなに違いは... って感じだな。

他の違いは、グラストラッカーと 400X はショートストローク、GSR250S はロングストロークだ。 そっちの違いのほうが大きいのかも知れない?

%2 CGA

Nerdly Pleasures: IBM Character Fonts

BIOS ROM に含まれるフォントと PCjr や CGA のフォントのどこが違うのかの説明がある。 JX にはビデオ・プロセッサーが 3 つ (うち 1 つは拡張表示カード内) あり、そのうちのひとつは PCjr 互換ということなので、たぶん PCjr と同じフォント ROM (キャラクター・ジェネレーター) が載っているんだろう。 たぶん、というのは、そのフォント ROM はソフトウェアから読み出すことができない仕様で、テキスト画面に表示して見比べてみない限りは、違いがあるのかどうかわからないんだけど、見比べたことはない。 日本語用のビデオ・プロセッサーは漢字を含むフォント ROM にアクセスしており、そちらはソフトウェアからもアドレス空間を切り替えることでアクセス可能である。 そのフォント ROM の内容は取り出してあるが、英文モードの BIOS ROM が持っている内容と同じっぽい。

そんでもって、詳しい皆様が分析してくださった上の記事を見ての通り、8x8 のカードと BIOS は 4 つの文字について違うんだよ、とある。 クローバー、スペードと、お日様マーク (?) と、大文字のアルファベット S だ。 それぞれ、ややスリムになっている。 たぶん、JX もそんな感じだったんだろうな。 普通に使っていたら英文モードでしか目にすることもない話だけど。

あと、JX のビデオ・プロセッサーは色番号 6 の扱いが PCjr や CGA と違っていて、JX ではダークイエローだが、PCjr や CGA だとブラウンになる。 Wikipedia によれば、#AA5500 になるんだそうである。 へぇ。 拙作エミュレーターは暗い色は 00dd で明るい色は 88ff を選択しているが、Wikipedia に載っている CGA の説明は 00 aa 55 ff のようなのでそっちのほうがより近いんだろうかね? 元はといえば、25 年以上前、PC-98 の 4096 色 (RGB それぞれ 4 ビット) の時代に適当に見比べて 0 d 8 f を選択したものを、8 ビットに拡張して今に至るわけだがw あの時は確か電源投入時のカラーバーを見て判断したんだったと思うけど、最初は某ゲームを動かすためだったから、間違っていても気づかないかもなぁ。 あのゲームはいろんな機種に移植されているから 8 色な気がするし (たぶんベースは 8 ビット CPU 用をコンバートしたものじゃないかな)。

%3 拙作エミュレーター

SDL のみ使う仕様と Lazarus の GUI をくっつける仕様の両方を実現しようとたくらんでいる今日この頃。 元々 Win32 API で作っていたのを後から SDL (SDL2) に移行したので、そういうのは比較的実現しやすいつもりでいたが、改めてソースコードを見直すと、メインルーチンにめっちゃ SDL の呼び出しが含まれていて、まるで分離できていなくて、ひどいな、これ書いたの誰だよ... と思っても自分の顔しか思い浮かばない。

そんなわけだからまずはそこんそこ分離するのが必要。 インターフェイスってことにして、if_sdl.cc とか、if_win32.cc とかみたいな、そういうのをリンクすればメインルーチンは共通で済む、みたいな。 もちろん他に SDL 絡みの実装のリンクは必要としても、メインルーチンから呼ぶのは無しだ。 さらに main そのものも分離してしまって、うまくいったら Lazarus の GUI をくっつけるインターフェイスを作ってしまえば。 とまぁ考えるだけなら簡単だが実際そんなにうまくいくかなw

%4 どようび

晴れ。 暖かい日。 昼間外を歩くとフリースもいらないレベルの暖かさ。

テレビアニメ『呪術廻戦』。 また過去の話が無料配信対象になっている。 44 話。 走馬燈? 落ち込む主人公に助っ人登場! 他にも助っ人が向かう。 120 パーセント。

テレビアニメ『葬送のフリーレン』。 14 話。 誕生日プレゼント。 痴話げんか。 ローキック。 青春。 ガキ。 グループ最年長 (笑) のエルフの心の中はよくわからないw 生臭坊主と破壊僧。 空飛ぶ魔法の出所と、空飛ぶ魔物。 戦士なら自由落下ぐらいは... 花言葉。 馬車の修理。

テレビアニメ『オーバーテイク!』。 よかった、まだ続きがあった。 10 話。 帰還。 移籍なし。 少しアンダーステア気味のセッティングに。 上位チームでテストさせてもらった経験を生かす。 上位チームは上位チームで、エースドライバーが怪我で入院しているからプレッシャーが... 鈴鹿の 11 周レース。 ゼブラゾーンは土俵で言う徳俵。 タイヤ。

レースでトップを走るプレッシャーのことはわからないけど、F1 を見ていても確かにプレッシャーに負けてしまうケースがあるのはわかる。 それがなければハミルトンはデビューイヤーにチャンピオンになれていただろうし、その次の年はマッサがチャンピオンになれていただろうし、ヒュルケンベルグはとっくに表彰台に乗っていただろうし、ペレスと角田は今年もう少しポイントが取れていただろうから。 しかし今年のルーキー、ピアストリはどうだ... F3 と F2 のチャンピオンをそれぞれたったの 1 年で獲得し、1 年のリザーブドライバーを経て今年 F1 デビューし、最初は競争力のないマシンに手こずっていたものの大きなミスはなく、後半戦はめきめきと頭角を現して表彰台に 2 回、スプリントではチームメイトよりも先に優勝した。 ライコネンタイプというか... そんな異次元ドライバーがたまに出てくるから F1 はおもしろい。

2023/12/09 のコメントを読む・書く


prev, this, next

/var/log/hdk.log コメント一覧

トップ / 日記索引 / 日記 (2023 年 12 月上旬)

Hideki EIRAKU