31-Jan-2008
[楽じゃないよねー]

やっぱりきちんと実装仕様書を書いとかないと駄目だろーってことで、途中まで書いてみたんですが…三機種まとめて書くのってかなり無理っていうか読みにくいような気がしなくもなく。どうすんのこれ。

今月中に書き上げちゃおうかと思っていたものの、今日で今月は終わりっていう現実に気づいたのが今日。うん、これは確実に間に合わないや。

どっちかというと、それは光栄辺りに無双シリーズとして出してもらう方が良いんじゃないかとふと思った。スターウォーズ無双とか。

なんか有機リン系化合物が混入した餃子で大騒ぎになってるんですが、なんとなく西友の返金騒ぎ・再びってことになりそうな気がします。商品を買ってもいないのに返金しろとか抜かすバカが店を襲う、アレです。

あとは…あれか、全く無関係な中国製の食品を食べて、気分が悪くなったとか具合が悪くなったとかってのを演じてみるなんてのも起こりそうですね。

流石に返金騒ぎの二の轍を踏むようなことはしないと思うんですが、時代が時代だからねえ…絶え間なく鳴り続ける電話の中に、ストレス発散の捌け口と勘違いしている奴が4/7くらいは居てもおかしくないかな。もちろん、この数字に根拠は無いけど :-p

とりあえず、問題は問題として粛々と対処すればいい話であって、騒ぎ立てる方がむしろ《誰かさん》の思うツボなんじゃないかなーと思うのですよ。

ま、今回も騒ぐだけ騒いで、あとは放置…んでもって、騒ぎの裏で《誰かさん》はこれ幸いと好き勝手なことをやるのでしょう、ね。

29-Jan-2008: 朝昼:いつもの。夕:白飯、納豆、焼モツ。

30-Jan-2008: 朝昼:いつもの。夕:野菜煮込みうどん。

31-Jan-2008: 朝昼:いつもの。夕:野菜煮込みうどん・再び。(21:15)

28-Jan-2008
[ふーむ…]

Phenom 9600が\20k切ることもある、か…

27-Jan-2008: 朝:冷食炒飯とチキンラーメン。昼:冷食炒飯と妻の作ったサラダ。夕:白飯、納豆、焼いた肉、干し椎茸を適当に煮た物。

28-Jan-2008: 朝昼:いつもの。夕:白飯、納豆、野菜スープ、干し椎茸を適当に煮た物の残り。(21:55)

26-Jan-2008
[これで揃いました。]

こんなものが手に入りました。実は、ずっと探していたんです。

floppy disc

JW-R50F用の、JIS第二水準フォントが納められたフロッピーディスク、って奴です。早速がりがりとFONTX2化して、fontx2btronに食わせて表示させるとこんな感じ。

変換用のコードは、今回は公開しません。なんとなく、著作権侵害の幇助とかいう名目で、メーカーが文句言ってきそうな気がするので

しかし、これだけのモノを風化させるのってかなり勿体ないと俺は思っていますから、その辺りは汲んでもらいたいものです。ていうか、汲め。

朝:おにぎりとチキンラーメン。昼:パンと冷食パエリア。夕:白飯、豚汁もどき、納豆、妻が作ったサラダ。(22:35)

25-Jan-2008
[だああ。]

μT-Kernel 1.00.00の、lib/libtm/tm_putchar.cに泣かされました。


EXPORT INT tm_putchar( INT c )
{
	static const char CR = 0x0d;

	if ((UB)c == 0x0a) {
		sio_send_frame((const UB*)&CR, 1);
	}
	sio_send_frame((UB*)&c, 1);

	return 0;
}

little-endianならともかく、big-endianだとこれでは動かないので、こう直してみました。


EXPORT INT tm_putchar( INT c )
{
	UB	ch;

	ch = (c == 0x0a) ? 0x0d : c;	// CR or not
	sio_send_frame(&ch, 1);

	return 0;
}

EXPORT INT tm_putchar( INT c )
{
	static const char CR = 0x0d;
	UB	ch = c;

	if (ch == 0x0a) {
		sio_send_frame((const UB*)&CR, 1);
	}
	sio_send_frame((UB*)&ch, 1);

	return 0;
}

これから三機種直すのかと思うと、本当に泣きたくなります(号泣)。

これって疑義照会しておいた方が良いんでしょうか…既に誰かが指摘していそうな問題という気がしなくもないのですが。

AKI-H8-LANボードにくっついている、LCDに遊ばれています。こんな風に

ぃゃ事前にちゃんと情報集めるとか、他人のソースを参考にすればすぐにでも動くのでしょうけどね…中途半端にやったのが敗因みたいです。

ちなみに、

こんなポカをやらかしています。

↑この後に、「看板畳んで出直してこい!」と言われそうなミスばかり、と続けようとしたのですが…これは正しくない表現みたいです(辞書で調べた)。頭の中で、「看板をおろす」「店を畳む」が混じっていた模様。

朝昼:いつもの。夕:ラーメン。(22:15)

26-Jan-2008補足:LCD表示用のコードは、ディレイを少し多目にしています。別に仕様書通りの値でも問題ない(っていうか、問題ないのが普通だろう)とは思いますが…気分的に、ちょっと多くしておきたいんですよね。

あと、CPU_CLOCKの値は、Hzで定義しておいてください。25MHzのH8だったら、#define CPU_CLOCK 25000000ULみたいな形で。

28-Jan-2008補足:AKI-H8/3069FフラッシュマイコンLANボードのLCDだとこんな感じ

T-Engine Forumに疑義照会したら、既に指摘されているバグなのでこう直してねって返答を得たので…似たような形の修正を載せます(まるっきり同じっていうのは、なんかメールをそのまま引用しているみたいで嫌だし、かといって別物のコード書く訳にもいかんし)。

それにしても、LFはCRLFで送信するっていう動作なのに、LFをCRに変換する動作になってるのは修正とは言わんだろう…こういう恥ずかしいポカやってると、なんか全てのパッチを消したくなるくらいヘコみますね(そんなコード書いて飯食ってるの?って、能力を疑われることは必至)。

24-Jan-2008
[なんとなく]

Lua-5.1.2をmakeしている様子を見て、これだったらMakefileをごりっと書き換えれば超漢字開発環境の上でmakeできるかなーと思って試してみたんだけど…あれこれリンクしてluaを作る際に、fmod()が見つからねえぞゴルァと怒られます。luacとliblua.aは作れるのに(正しく動くかどうかは知らない)。

なんかくやしいなあ。あとちょっとって感じなんだけど。

超漢字で思い出したのだけど、以前、超漢字とQEMU上のNE2000との相性が悪いのでQEMU側をどうにかしようとするパッチ(情報)が…記憶が間違っていなければ、多分小田さんのとこにあった筈です。違ってたらゴメン。

で、今となってはネット上のどこをどう探しても見つからないので、ne2000.cの直し方をここに上げときます。もっとも…最近のQEMUはRTL8139とかもエミュレートできるらしいので、そっちで使えるならそっちを使えばいーぢゃんって気がしなくもないのですが。

実は超漢字開発環境を使う時だけ、マシンを再起動してLinuxを立ち上げ直すなんてことやってます。正直ダルいのでなんとかしたいのですが…開発環境を構築するのもまたダルいんですよねえ。

年代的に、Slackware-7.1あるいはFreeBSD-4.x辺りになるのだろうけど、どっちもISOイメージを頑張って探さないといけないって辺りが、なんとも。

23-Jan-2008: 朝昼:いつもの。夕:白飯、野菜と豚肉の中華風炒め物(キット使用)。

24-Jan-2008: 朝昼:いつもの。夕:スーパーで買った弁当。(20:50)

10-03-13補足:Lua-5.1.4向けのMakefile、あります。相変わらずfmod()絡みでビルドできませんけど(ぉ

22-Jan-2008
[なんなのこの寒さ]

暖房入れても足が寒いです。

マシンの電源を入れてもモニタに信号が出力されないとか、CPUだかビデオカードだかのファンが異音立ててみるとか、もうやんなっちゃいます。

21-Jan-2008: 朝昼:いつもの。夕:妻にお任せ(デパートで購入した弁当)。

22-Jan-2008: 朝昼:いつもの。夕:リンガーハットにて。(21:15)

20-Jan-2008
[という訳で]

H8/3052でもやってみました。俺が欲しいという理由により。

色々面倒になってきたので、テスト用のコードと生成されたバイナリはここに、パッチ類はここに置くことにします。

分からないことがあったら適当に質問してください。

17-Jan-2008: 朝昼:いつもの。夕:白飯とスーパーで買った惣菜とあと何か(忘れた)。

18-Jan-2008: 朝昼:いつもの。夕:野菜うどん。

19-Jan-2008: 朝:寝てた。昼:妻にお任せ(ピザ)。夕:以前作っておいたカレー。

20-Jan-2008: 朝:以前作っておいた野菜煮込みうどん。昼:チキンラーメンと(スーパーで買った)パエリア。夕:白飯、野菜と(惣菜として売られている)牛すじ煮込みを煮込んだもの。(21:10)

16-Jan-2008
[h8300s→h8300hn(31)/h8300s→h8300h(2)]

gcc-4.2ベースにしたらH8/3664版ではwarningが出るようになったので、潰しておきました。ていうか、offsetof()なんて初めて知りましたよ。←ごめん、これでも一応職業プログラマー…今日から仕事に活かせばいいんだよとか前向きな言い訳をしてみる。

ついでに、offsetof()を使って、task.cの非常に恥ずかしい記述を直しておきました。

H8/3052向けとかも作業してみたいんですが、下手に機種数増やすとバージョンアップとかされたときに追従させる手間が増えるので、ちょっと今は避けたいです…ぃゃそろそろリリースして1年経過するし、なんとなく嫌な予感がするので。

ついでに、分かっているとは思うんですが…例の修正パッチ、H8/3664, H8/3069のどちらか片方だけしか適用できませんので。両方必要な場合は、ソースツリー(utkernel_source)をふたつ用意して、それぞれにパッチ当てて下さいな。

念のため、jsp-1.4.3もgcc-4.2でビルドして動かしてみました。もちろん、問題無しです。うんうん。

朝昼:いつもの。夕:妻にお任せ(COSTCOで買ってきたパエリアとサラダ)。(22:00)

15-Jan-2008
[うぎゃ]

ISPのメールサーバがOutbound Port 25 Blocking(OP25B)入れるからさっさと移行してねというメールが届いたので、慌てて.wlを書き換えて対応。

*** .wl~        Wed Jan  9 23:31:59 2008
--- .wl Tue Jan 15 21:40:38 2008
***************
*** 62,64 ****
  ;; SMTP サーバの設定
! (setq wl-smtp-posting-server "old-smtp.server")
  ;; ニュースサーバの設定
--- 62,67 ----
  ;; SMTP サーバの設定
! (setq wl-smtp-posting-server "new-smtp.server")
! (setq wl-smtp-posting-port 1234)
! (setq wl-smtp-posting-user "user@account.somewhere")
! (setq wl-smtp-authenticate-type "auth-type")
  ;; ニュースサーバの設定

…具体的な設定値はISPに聞いてくれってことで。

朝昼:いつもの。夕:妻にお任せ(白飯、シジミの味噌汁、モヤシと魚のあんかけ)。(22:10)

14-Jan-2008
[GNUツールの使い方をきちんと知らないと駄目っすね]

毎度お馴染みのbinutils, gcc, newlibで作るクロスコンパイル環境なのですが。

i386向けクロスコンパイル環境を構築しようとした際に、ターゲット名をi386-unknown-elfにしないとどうも上手くいかないみたいで…超漢字開発環境と同じi386-unknown-gnuとして作ろうとすると、どことなくLinux風味を付けようとして構築途中でコケるんです。

…まあ、知識さえあればそんな罠にかからないのだろうけど。

もっとも、i386-unknown-elfな環境が構築できたとしても、crt0.Sやらリンカスクリプトやらの記述はともかくとして、ライブラリ類の移植がかなりの手間になりそう。どうすんのよコレ。

それにしても、今年は比較的落ち着いていますねえ。本当に落ち着いているのか、それともネタとしての旨味が無くなったので以下略なのか…何かとは敢えて書きませんけど。

その代わりといっちゃあなんですが、なんかやたらと「大人の条件」とか言っている連中が増えたような気がしますね。

要するにアレですか。レッテル貼って非難する(=○○を備えていないから大人じゃない→ばーかばーかと見下す)ことで幸福を感じるという、一種の魔女狩り。

…ああいやだいやだ。

朝:チキンラーメンとおにぎり。昼:マクドナルドにて。夕:白飯、白菜と肉団子の炒め物(キット使用)。(21:05)

13-Jan-2008
[ふぅ]

とりあえず、OpenBSDへの移行はこの辺りで終わり。PDFリーダはports/print/epdfviewである程度事足りるし(一部動作が怪し気なところもあるみたいなんだけど…)。

超漢字開発環境をどうするかは…どうしようかね。素のgcc-2.95.2+binutils-2.9.1はAMD64なんてホストは知らんとか言われてビルドできないし、gcc-3.4.6+binutils-2.16.1だと超漢字開発環境側のincludeファイルがお気に召さないらしくgccのビルドができないし。

なんか色々面倒になってきちゃったので、qemuとか使った仮想マシン上にちょっと古めのLinuxでも突っ込んで、その上でやればいーじゃん的な気分になってます。

朝:寝てた。昼:妻にお任せ(ピザ)。夕:以前作ったカレー。

それ以前の食事メモはばっさり省略。(22:35)

12-Jan-2008
[OpenBSD-4.2/amd64のインストール作業の続きの続きの続きの続き]
epicon-3.9
こういう修正を行ってから、gmake; gmake install。もともとLinux用なので、ある程度手を入れないとダメねー(って、UNIX上でのコーディングに慣れている人であれば、大した修正という範疇には入らないのだろうけど)。
USBスピーカ
cd /dev; ./MAKEDEV audio1。これにより、/dev/audio1, /dev/audioctl1, /dev/mixer1, /dev/sound1が作成される。必要に応じて、/dev/audio, /dev/audioctl, /dev/mixer, /dev/soundのシンボリックを張り替えたり。音量の調整は、mixerctl -aでそれっぽい引数を確認して(自分の場合はoutputs.speakerが音量っぽいので)、mixerctl -w outputs.speaker=音量で。あとは、echo outputs.speaker=音量 > /etc/mixerctl.confとでもしておけば、起動時にその音量が設定される。
μT-Kernel 1.00.00の開発環境
以下の4つのファイルは、makeではなくgmakeを呼び出すように修正する。

lib/build/Makefile.common
lib/libtk/src/Makefile.common
lib/libstr/src/Makefile.common
kernel/sysmain/src/Makefile.common

etc/platformにはOpenBSDを認識してくれるよう記述を追加する必要があるし、etc/sysdepend/{app_at91,app_h8s2212}/makerules.sysdependにもOS毎のパスの設定を追加しないといけない。

perlは/usr/bin/perlなので、以下のファイルも修正が必要。

etc/mkfuncfiles
etc/mkiflib
etc/mktdsvc
etc/mktksvc
lib/libsvc/build/at91/makeifex.pl
lib/libsvc/build/at91/makeiftd.pl
lib/libsvc/build/at91/makeiftk.pl
lib/libsvc/build/h8s2212/makeifex.pl
lib/libsvc/build/h8s2212/makeiftd.pl
lib/libsvc/build/h8s2212/makeiftk.pl
apache_1.3.39
tar zxpf apache_1.3.39.tar.gz; cd apache_1.3.39; ./configure; make; make install。デフォルトのインストール先は/usr/local/apacheなので、このディレクトリにあるhttpd.confを修正する。とりあえず、デフォルトからの差分はこんな感じ

OpenBSDにとって、マイコンいじりは敷居が高い領域なのかなー…

H8向けのgccのバージョンが3.4.6→4.2.2に変わったので、31-Dec-2007のテスト(H8/3069)をコンパイルし直してみる。

【テスト1】単純にμT-Kernelを起動させてみる

【テスト2】システムタイマ(tk_dly_tsk()によるウェイト)の動作を見てみる

【テスト3】割り込みハンドラ(8bitタイマの割り込みを使用)の動作を見てみる

テスト3のusermain.cにある、tm_putstring("something goes wrong...\n");でWarningが出るようになったので、これはそのうち直さないといけないな…。

Sweepの代用として、とりあえずAudacityを/usr/ports/audioから入れてみる…が、何故か44100HzのPCMを48000Hzで再生してくれる(USBスピーカが48000Hz専用だから)という問題が発生中。

うーにゅぅ…まあ、この手のツールは気長に探してみることにするか。

食事メモは後日ー(23:05)

27-Apr-2008補足:epicon-4.3向けのパッチ、作りました。簡単にしか試していませんが、一応動くと思います。よろしくお願いします。

20-Sep-2008補足:epicon-4.4向けのパッチを(以下略

11-Jan-2008
[OpenBSD-4.2/amd64のインストール作業の続きの続きの続き]

インストールしながら書いたメモをそのまま貼り付ける方が楽だし、後でそのメモを整理するのってほんっとーにダルい作業なんだけど、一応整理して書くことにする。

まずは、インストールしても使わなかった物に関して。結論から書いてしまうと、ktermとCannaとkinput2はrxvtとAnthyとUIMに乗り換え。ktermは漢字を入力しようとするとウィンドウサイズが膨張するという謎の現象が発生するし、emacsからFireFoxにコピペして日本語を入力する手段が使えないということが発覚したから(実は今までそういう手段使ってました)。

cannaserver
kinput2が使っているのはcanalibだけなので、サーバのパッケージをpkg_add cannaserver-3.5b2p2.tgzとやって追加する。あとは、こんな風に/etc/rc.localを記述すれば起動時にcannaserverが立ち上がる。
cannadict
漢字変換を行うための辞書を、pkg_add cannadict-3.5b2.tgzで追加する。追加した後に、/var/dict/canna/userのパーミッションをg+rwxとしておくこと。/var/dict/canna/userの所有者はroot:daemonだが、この下に作られるユーザ辞書の所有者はdaemon:daemonなので、デフォルトのままだとイタいことになる。
tamago-4.0.6 + canna
適当なところから、tamago-4.0.6.tar.gzと、canna-20011204.diff.gzを取ってくる。tamago-4.0.6-20000605.patch.gzは適用しない。tar zxpf tamago-4.0.6.tar.gz; cd tamago-4.0.6; zcat somewhere/canna-20011204.diff.gz | patch -p1; ./configure; make; make install。.eggrcはこんな感じに設定して、.emacsの設定は後述。
apache-httpd-2.2.4.tgz
/usr/sbinに入っているhttpd(Apache/1.3.29)で満足できない人はこのパッケージを使ってね、ってことなんだけど…気軽に動かすなら(セキュリティの堅さというOpenBSDのウリを損ねてしまうのだが)tar ball拾ってmakeした方がいいんじゃないかなって気がします。/var/wwwにあるApache/1.3.29用のhttpd.confの設定はかなり厳しいし、apache-httpd-2.2.4.tgz向けのhttpd.confはどこにあるかちーとも分からないし…挫折しますたorz

今使っている物やら設定やらはこんな感じ。

rxvt
cd /usr/ports/x11/rxvt; make; make install。マウスのホイールも使えます。
Anthy
anthy-8300.tgz, emacs-anthy8300.tgz, uim-1.4.1.tgzに加え、uim-gtk-1.4.1p0.tgzをpkg_addする。uim-pref-gtkで、全体設定→入力方式の利用準備→標準の入力方式を指定→標準の入力方式にAnthyを指定する。ここまで設定しないと、いくら.emacsの指定を頑張ってもAnthyは使えない。gtk版以外にもkde/qt/gnome版があるみたいなので、お好きなものををどうぞ。XMODIFIERSの設定も忘れずに(そのうちどこかで書く)。
Wanderlust
APEL, FLIM, SEMI, Wanderlustの順にインストール。.emacsと.wl, .foldersの設定を適切に行う。困ったときは、Wanderlust 日本語マニュアル version 2.12.2を見れば大体解決する。

tar zxpf apel-10.7.tar.gz; cd apel-10.7; make; make install
tar zxpf flim-1.14.9.tar.gz; cd flim-1.14.9; make; make install
tar zxpf semi-1.14.6.tar.gz; cd semi-1.14.6; make; make install
tar zxpf wl-2.14.0.tar.gz; cd wl-2.14.0; make check; make; make install

.wlの設定は、wl-2.14.0/samples/ja/dot.wlをそのままコピーして、使わないと思われる項目をコメントアウトして、メールアカウントの記述を自分用に設定して、以下の項目をいじったり追加したり。

;; 自分宛のBcc
(setq wl-bcc "自分のメールアドレス")
;; おまじない(詳細は不明だが、追加しないとうまくいかないことがあるみたい…)
(setq smtp-end-of-line "\n")
;; テンポラリフォルダの変更
(setq wl-temporary-file-directory "~/News")
;; 終了時に確認しない
(setq wl-interactive-exit nil)
;; 番号順表示
(setq wl-summary-default-view 'sequence)
nmh
とりあえず.mh_profileを晒しておく。MIMEをデコードしようとして別のページャを起動する(んでもって、日本語なんて知らねえと怒られる)くらいなら、デコードしないでそのまま表示してくれた方がマシという方針で、-nocheckmimeの羅列…。同じような記述を三つ並べるのはかなり嫌なんだけど。
/etc/wsconsctl.conf
CtrlとCapsの入れ替え、オートリピートの開始時間と間隔を記述。30ms間隔だとちょっと速い気がしたので、33msにしています。設定値を記述する前に、wsconsctl -w keyboard.encoding=us.swapctrlcapsといった感じでパラメータを試しておくと良いかもしれません。
/etc/X11/xorg.conf
デフォルトでは、このファイルが無くてもXが起動します…が、FontPathを記述してフォントを追加するとか、XkbOptionsにctrl:swapcapsを記述してCtrlとCapsを入れ換えたい場合にはやっぱり用意しないといけない訳で。Xorg -configでxorg.conf.newを作成して、適当に修正すればok。/usr/X11R6/lib/X11/fonts/の下にあるfonts.scaleを作成するにはmkfontscaleを、fonts.dirを作成するにはmkfonrdirを実行すれば良い。
~/.emacs
昔使っていたemacs-20.7向けのをちょいといじってみた程度なので記述内容はかなり怪しげ。Anthyを使えるように記述しているが、egg-cannaの記述もコメントアウトの形で入れてある。
BlackBoxのスタイル
x11/blackboxでmakeしたBlackBox-0.70.1に添付されているスタイルはかなり省略されている…OutcomesとかResultsを使いたい場合は、BlackBoxの公式ページから取ってきたblackbox-0.70.1.tar.gzの中に入っているスタイルを突っ込むこと。

portsを使わずにmakeしたもの。

vche-1.7.2
まずは、tar zxpf vche-1.7.2.tar.gz; cd vche-1.7.2/src; mv Makefile Makefile.orig; cat Makefile.orig | sed 's/make/gmake/' > Makefile。common.hにある#include <linux/fs.h>と#include <linux/fd.h>を削除し、Rules.makeの$(INSTALL) -g rootを$(INSTALL) -g binに修正してから、gmake; gmake install。ただし、vche-ncは動作しない(デバッグが必要そうな状態な)ので、vche-rawを使う。
h8write
wget http://mes.sourceforge.jp/h8/h8write.c; gcc h8write.c -o h8write。あとは、/usr/local/binに放り込んでchownやらchmodやら。OpenBSD用に修正を加えてから、gcc h8write.c -o h8write。あとは、/usr/local/binに放り込んで、chown root:dialer h8write; chmod +s h8write。
binutils-2.16.1 (h8300-hms)
適当な場所からbinutils-2.16.1.tar.gzを拾って、tar zxpf binutils-2.16.1.tar.gz; cd binutils-2.16.1; mkdir h8300-hms; cd h8300-hms; ../configure --target=h8300-hms --prefix=/usr/local; make; make install。念のため、--disable-nlsは付けた方が良いかもしれない。
binutils-2.18 (h8300-elf)
適当な場所からbinutils-2.18.tar.gzを拾って、tar zxpf binutils-2.18.tar.gz; cd binutils-2.18; mkdir h8300-elf; cd h8300-elf; ../configure --target=h8300-elf --prefix=/usr/local --disable-nls; make; make install。configureで--disable-nlsの指定を忘れると、makeの途中でエラーが発生する。なお、make cleanはgmake cleanで。
gcc-4.2.2, newlib-1.15.0 (h8300-elf)
適当な場所からgcc-core-4.2.2.tar.bz2とnewlib-1.15.0.tar.gzを拾ってきて、gtar jxpf gcc-core-4.2.2.tar.bz2; tar zxpf newlib-1.15.0.tar.gz; cd gcc-4.2.2; ln -s ../newlib-1.15.0/newlib .;mkdir h8300-elf; cd h8300-elf; ../configure --target=h8300-elf --enable-languages=c --with-newlib --prefix=/usr/local --disable-nls; gmake; make install。
gcc-4.2.2, newlib-1.15.0 (h8300-hms)
h8300-elfと同じ手順、ただしh8300-elfはh8300-hmsに置き換える。

configureが作るMakefileは、必ずしもBSD Make向けとは限らないので…gmake使う方が良いのかも。

gcc-4.2.2を選んだのは、gcc-3.4.6は何故かmake途中で止まってしまうため、最新のにしておけば(コンパイラのバグが恐いけど)少なくともmakeはできるだろうという安直な理由によるものです。

もっとも、make中に

/tmp//ccz17694.s: Assembler messages:
/tmp//ccz17694.s:1218: Warning: operand #0xffffffffffffffff out of range.

この手のWarningが大量に出ているのを見ると、非常に鬱な気分になれるのですが。

食事メモは後日…(25:30)

12-Jan-2008補足:h8writeを動かした際に不具合を見つけたので、修正方法を追加。

16-Nov-2008補足:h8writeでchownうだうだ〜は、多分不要。むしろ、/etc/groupのdialerにh8writeを使うユーザ名を記述する方が…

09-Jan-2008
[Hello from 64bit world…]

やっとこさ、OpenBSD/amd64から日記が書けるくらいの状態にまで復活。という訳で、寝ます。(23:30)

08-Jan-2008
[OpenBSD-4.2/amd64のインストール作業の続きの続き]

inputmethods/uimはx11/qt3を必要とするので要注意。というのも、x11/qt3はdatabases/postgresqlやらdatabases/mysqlやらx11/kde/libs3やらx11/gnome/panelやらをインストールしてくるので、とにかく速いマシンが欲しくなるくらいの時間がかかる。また、既にsysutils/LPRngをインストールしている場合はpkg_delete LPRng-3.8.21p2でLPRngを削除しておかないと、print/cupsのインストールができないと怒られる。

inputmethods/anthyのインストールによってeditors/emacs21(とleim)がインストールされる。

日本語入力環境は、とりあえずtamago/cannaで始めて、Anthyという方向を予定。ftp.m17n.orgの内容は、http://unit.aist.go.jp/itri/itri-gist/ftp.m17n.org/辺りを見るのが良さそう。

メールの受信はfetchmail/procmail、閲覧と送信はWanderlust、コマンドラインからのちょっとした操作はnmhということで…さよならMH-JP(今までどうもありがとう)。

ports使わずに入れる物として、H8向けの開発用ツール(binutils, gdb, gcc)、Sweep, vche, epiconかな。でもvcheとepiconってLinux用…あと、DVD-R焼きはどうしよう…

07-Jan-2008: 朝:コンビニでパンとおにぎり。昼:玉子屋の弁当。夕:白飯、八宝菜(キット使用)。

08-Jan-2008: 朝昼:いつもの。夕:妻にお任せ(白飯、焼いたラム肉、以前作っておいた汁物、菜物)。(21:20)

06-Jan-2008
[OpenBSD-4.2/amd64のインストール作業の続き]

swap領域を増やした方が良さそうな気がしたので、実は一回やり直している。というのはさておいて…

午後のこ〜だ(audio/gogo)はi386専用だと怒られたので、適当なMP3エンコーダを探す必要がありそう。あと、epicon-3.9はLinux用なので、適当に手を加えないとまずコンパイルが通らない。

それよりも、emacs-20.7とMH-JPをなんとかしないといけないかも。Emacs20でUnicodeを使おう!というページがあるので、これに従ってemacs-20.7をビルドすれば良いとして…MH-JPは…

05-Jan-2008: 朝昼:寝てた。夕:町田にて飲み会。

06-Jan-2008: 朝:寝てた。昼:買ってあった炒飯と、チキンラーメン。夕:焼きそば。(21:50)

04-Jan-2008
[OpenBSD-4.2/amd64を]

インストールしてみる。インストールしただけだけど。

  1. install42.isoを焼いたCD-ROMをCD-ROMドライブに挿入しておけば起動する。
  2. (I)nstall, (U)pgrade or (S)hell?の問いには、Iを答えてインストール開始。
  3. Terminal type?はデフォルトのvt220。
  4. kbd(8) mapping?はデフォルトのnone。
  5. Proceed with install?はインストール作業を開始したいのでyes。
  6. インストール先となるディスクの一覧を表示する。一台だけならwd0。Which one is the root disk?のデフォルトがwd0ならそのままEnterキーを叩けばいい(他が良いなら、それを指定する)。
  7. Do you want to use *all* of wd0 for OpenBSD?は、全部のディスクをOpenBSDで使うわけではないのでno。デフォルトもno。
  8. fdiskは…既にLinux用のfdiskで区画を切っているのでここでは何もしない。exitで抜ける。
  9. disklabelは…a aで/、a bでswap用の領域を確保。pで区画の確認、dで区画の削除、qで保存して終了(Write new label?と聞かれる…デフォルトがyなので、Enterキーを叩いておく)。
  10. 区画のフォーマット開始…その前に、Are you really sure that you're ready to proceed?と聞かれるので、yes。
  11. System hostname?はホスト名。
  12. Configure the network?…ネットワークは必須なのでデフォルトのyes。
  13. 使用するネットワークコントローラ(のデバイス名)が表示される。Which do you wish to initialize?で、目的とするネットワークコントローラを指定する。よく分からなければ、デフォルトで表示されているものを選んでおけば良いかも。
  14. Symbolic (host) name for XXX?(XXXはネットワークコントローラ)は、特に必要が無ければホスト名と同じ(デフォルト)で構わないだろう。
  15. Do you want to change the media options?は、no。100BASE-TXのコントローラを10BASE-Tで使いたいといった状況でいじるのかな。
  16. IPv4 address for XXX?(XXXはネットワークコントローラ)は、使用するIPv4アドレスを設定。DHCPや、ネットワークを使用しないという指定もできる。
  17. Netmask?はデフォルト、255.255.255.0。
  18. IPv6 address for XXX?(XXXはネットワークコントローラ)は、IPv6を使わないのでデフォルトのnone。
  19. DNS domain name?は、自分の使うマシンのドメイン名。
  20. DNS nameserver?は、ネームサーバのIPアドレス。使用しないという設定も可。
  21. Use the nameserver now?はデフォルトのyesを指定し、ネームサーバをすぐに利用できるようにする。
  22. Default IPv4 route?は、IPv4のゲートウェイアドレスを指定する。ルータを使っているなら、そのIPアドレスということか。
  23. Edit hosts with ed?は、特にネットワークの設定をいじる必要が無い限りデフォルトのno。
  24. Do you want to do any manual network configuration?も、特にネットワークの設定をいじる必要が無い限りデフォルトのno。
  25. Password for root account?は、rootのパスワードを入力する。
  26. もう一度Password for root account?の問いに対し、rootのパスワードを入力する。
  27. ここからインストール開始…インストール元のメディアを指定する。Location of sets?の問いには、cdが選ばれているのでとりあえずEnterキーを叩く。ネットワーク経由でインストールする場合、ここを適宜指定すること。
  28. Which one contains the install media?はデフォルトのcd0。
  29. Pathname to the sets?はデフォルトの4.2/amd64。
  30. インストールするアーカイブの指定。game42.tgzは要らないので、-game42.tgz(先頭に-を付ける)。他は全部インストールする。必要なアーカイブを選択後、doneで次のステップへ。
  31. Ready to install sets?はデフォルトのyes。
  32. CDからファイルをインストールした後にLocation of sets?と再び聞かれるので、done。
  33. Start sshd(8) by default?はデフォルトのyes。
  34. NTP server?はdefault。
  35. Do you expect to run the X Window System?はyes。
  36. Change the default console to com0?はデフォルトのno。
  37. What timezone are you in?はJapan。
  38. 以上でインストールは終了。CDを抜いて、rebootで再起動。

…手順としては、ざっとこんなもんか。

あの殺風景なインストーラに慣れてしまうと、どうもSlackwareやFreeBSDのメニュー形式がうっとおしくなってしまう。というか、OpenBSDのこの「ばっさり感」、なんかいいな。

あと、インストール後にやったことは…

今のところこれだけ。ぶっちゃけた話、MH-JP, emcws-20.7, 適当なwebブラウザが動けばとりあえずなんとかなるので、まずはこいつらを構築するところから。

あと、パッチ探しとかそういうのが面倒になってきたので、今回はportsとかpackagesの類を積極的に使う予定。

午後はとある方から譲って頂いたAKI-H8/3052LAN開発キットの組み立て作業。これ…半田付け箇所が多くてかなり辛いです。おまけにLEDの極性を間違えて付け直す羽目になったりとか(全部じゃなく、半分くらい…)。

でもまあなんとかここまで動く程度には。ちなみに、H8簡易モニタはh8300-hms版ではなくてh8300-elf版を突っ込んでいるらしい(突っ込んだ本人も忘れている)のだが、写真で見る限りではどっちだか分からないというオチ。

朝:パン・おにぎり。昼:食べる暇が無かった。夕:バーミヤン@南大沢。(22:30)

03-Jan-2008
[うりょ]

トラ技2008年1月号に付いていたHEWを昨年末にインストールしたので、μT-Kernel/M16C62Pをビルドしてみる。

とりあえず、得られたモノの一部を晒しておこう。

デフォルトのutk_config_depend.hこんな感じにいじってみたら、なんかエラー吐きまくり

ソースコードをざっと見る限りでは、なんか一部のW型がINT型に変わっていたり、M16C特有のnear/far型が使われていたりで、簡単にGCC向けに移植できそうには…見えない。手間を掛ければなんとかなるんだろうけど、やる価値があるかどうかはいまいち不明。

個人的には、サンハヤトのアレみたいなDIPマイコンでμT-Kernelが動いたら楽しそうだというのはあるのだけど、多分動いても実用にはならないんじゃないかなーという気がしなくもない。むしろ、もっと小さなRTOSじゃないと駄目だろう…R8Cに載ってる、16kのROMと1kのRAMでは。

…ただ、本当に駄目かどうか、ちょっと見極めてみたいという気もなんとなく。

とりあえず、

酒宴スキル、Rank12です(まだ上げてた)。

言語学も(今のところ)上限に達したので、そろそろ他のことをして遊びましょうかね…

02-Jan-2008: 朝:寝てた。昼:どん亭にて。夕:食べすぎたので軽いものを適当に(ぉぃ)。

03-Jan-2008: 朝:寝てた(寒いので布団から出られない)。昼:チキンラーメン。夕:白飯、納豆、以前焼いておいた鶏肉、モヤシの味噌汁。(21:20)

01-Jan-2008
[今年もよろしくお願いします。]

朝:特に食べていない(食べると後が大変)。昼:双方の実家にて色々。夕:食べすぎたので軽いものを適当に。

何度も何度も繰り返し書いているような気がしますが、この時期はテンション低いです。折角一年が終わったんだから、そのまま放っておいて…(22:05)