今日、あるミーティングに参加してきました。
色々話したり、懇親会で盛り上がりました。
みんな熱い思いを持っているんだなぁと思います。
反っていたCDに重しをつづけて数日、キーボードをつないでNetBSD/dreamcastをブートしてみました。
おぉ、ちゃんとキーボードが使える。ログインできたよ。
CDを作った人も中身を忘れているぐらい古いものなんですが、あるログイン名でログインするとビジュアルメモリに何かが出るという話を聞きました。
ちょうど手元にビジュアルメモリがなく悔しい。
まだXが動いていない時代のものだったのでXで色々遊ぶのはできなかったのですが、パッケージのなかにemacsがあったので起動してみました。
なかなか起動しないので他のゲームをしたりして時間をつぶして数十分。
やっぱり起動しないのであきらめました。
OBS266のpthreadが直ってcvsyncが動くはずと動かしてみたら、途中でdb>になっていました。
pthreadがまだダメなのかなぁ。それとも別の問題でしょうか?
db> 0x8698fd40: at panic+0x19c 0x8698fdd0: at cpu_switch+0x68 0x8698fde0: at mi_switch+0x20c 0x8698fe20: at sa_switch+0x164 0x8698fe50: at ltsleep+0x434 0x8698fe90: at sa_yield+0x148 0x8698fec0: at sys_sa_yield+0x84 0x8698fed0: at syscall_plain+0xe8 0x8698ff40: user SC trap #334 by 0x418d8cac: srr1=0xc030 r1=0x421fffd0 cr=0x2000014e xer=0 ctr=0x4188dbd4 esr=0x800000 pid=0x c db>
アキバのヨドバシでFinePix F11を買いました。40800円で15%ポイント還元。で、レジに持っていくとタイムセールで3000円引きという事実。
37800円で15%還元ならkakaku.comよりもお値打ちだったかもしれません。ポイント発生は6426なんだけど計算が合わないような...
しかし、秋葉原のヨドバシで買い物すると、なんかこう釈然としないものを感じるなぁ。地元に金を落としてない感覚というかなんというか。
しかし、安さにつられて買ってしまう自分が愚かしいものです。
ただ、ケースとメディアを店員さんが薦めてきたのを華麗にスルーするのは気分が良かったかも。メディアを一緒に買わない客は珍しいのか、驚いた顔をしていました。
メディアは何も考えずにあきばおーに行って買いました。ヨドバシだとxDピクチャーカード512Mbytesが8980円なんだけど、あきばおーなら7299円です。って、ポイント考えると劇的に安くはないけどまぁいいです。
Operaでは表示できないというか表示が崩れるページがあるんですが、仕方なくIEを起動してURLを入力すると形式が違うとかいって怒られるようになっていました。
URL入力以外の方法でも同様のエラーが出てしまいます。うーん、再インストールかなぁ。
最近は24termばっかり使っているので、いつから変になったのかわからないです。
夕食はカニ鍋だったのですが、カニばかり食べるのでちょっと困ったな。
いい間違い。「茅場町」→「かばやちょう」。「鉄砲」→「てっぽん」。「びっくりした」→「ぶっくりした」。「ご注意ください」→「ご注意なさい」。「信じてfuture」→「***シューシャシューシャ」。「君はPopstar」→「君はポスト」。「ハロウィン」→「ハロリン」。「タクシー」→「クタシー」。「ハト」→「パト」。
他にもいっぱいあるんだけど、書こうとすると忘れちゃう。
以前は断念したhermit-at-1.0.2ですが、もう一度やり直したらちゃんと動きました。
前回失敗していたのは、COM1で動かそうとしていたからだったみたい。COM2でも動かしてみたのだけど、そのときにはソース側の修正が不足していてプログラム自体がおかしかったからなんだろうな。
なにはともあれ、USL-5PにつないだUSBシリアルからArmadillo-210のカーネルを書き換えられるようになったのでうれしいな。
ほとんど元のパッチを取り込んだだけなんですけどね。動作しなかったのであれこれいじっているから整理しないとまずいなぁ。
久しぶりのNetBSDねたですけど。
Armadillo-9はメモリが64MbytesだけどArmadillo-210はメモリが32Mbytesです。現在のarmadillo_machdep.cではArmadillo-9を想定しているためArmadillo-210で動かしても64Mbytesと表示されてしまいます。
それっぽい部分を削除するとうまく動かないかと試してみました。
--- armadillo9_machdep.c.orig 2006-01-31 13:01:28.000000000 +0000 +++ armadillo9_machdep.c 2006-01-31 15:17:40.000000000 +0000 @@ -469,11 +469,9 @@ /* Fake bootconfig structure for the benefit of pmap.c */ /* XXX must make the memory description h/w independant */ - bootconfig.dramblocks = 2; + bootconfig.dramblocks = 1; bootconfig.dram[0].address = 0xc0000000UL; bootconfig.dram[0].pages = 0x2000000UL / PAGE_SIZE; - bootconfig.dram[1].address = 0xc4000000UL; - bootconfig.dram[1].pages = 0x2000000UL / PAGE_SIZE; /* * Set up the variables that define the availablilty of @@ -773,16 +771,7 @@ uvm_page_physload(atop(0xc0000000), atop(physical_freeend_low), atop(0xc0000000), atop(physical_freeend_low), VM_FREELIST_DEFAULT); - /* - * There is 64 MB of memory on the Armadillo-9 in 2 32MB chunks, so - * for we've only been working with the first one mapped at - * 0xc0000000. Tell UVM about the others. - */ - uvm_page_physload(atop(0xc4000000), atop(0xc6000000), - atop(0xc4000000), atop(0xc6000000), - VM_FREELIST_DEFAULT); - - physmem = 0x4000000 / PAGE_SIZE; + physmem = 0x2000000 / PAGE_SIZE; /* Boot strap pmap telling it where the kernel page table is */
ということで、めでたく32Mbytesで認識されました。
hermit> b copy from c0018000 to c0200000 size 00124c40 NetBSD/armadillo9 booting ... initarm: Configuring system ... physmemory: 8192 pages at 0xc0000000 -> 0xc1ffffff Allocating page tables freestart = 0xc0018000, free_pages = 488 (0x000001e8) IRQ stack: p0xc01ea000 v0xc01ea000 ABT stack: p0xc01e2000 v0xc01e2000 UND stack: p0xc01da000 v0xc01da000 SVC stack: p0xc01d8000 v0xc01d8000 Creating L1 page table at 0xc01fc000 Mapping kernel pmap_map_chunk: pa=0xc0200000 va=0xc0200000 size=0x11b000 resid=0x11b000 prot=0x3 cache=1 SLPPPPPPPPPPP pmap_map_chunk: pa=0xc031b000 va=0xc031b000 size=0x1a000 resid=0x1a000 prot=0x3 cache=1 PPPPPLPPPPP Constructing L2 page tables pmap_map_chunk: pa=0xc01ea000 va=0xc01ea000 size=0x8000 resid=0x8000 prot=0x3 cache=1 PPPPPPPP pmap_map_chunk: pa=0xc01e2000 va=0xc01e2000 size=0x8000 resid=0x8000 prot=0x3 cache=1 PPPPPPPP pmap_map_chunk: pa=0xc01da000 va=0xc01da000 size=0x8000 resid=0x8000 prot=0x3 cache=1 PPPPPPPP pmap_map_chunk: pa=0xc01d8000 va=0xc01d8000 size=0x2000 resid=0x2000 prot=0x3 cache=1 PP pmap_map_chunk: pa=0xc01fc000 va=0xc01fc000 size=0x4000 resid=0x4000 prot=0x3 cache=2 PPPP pmap_map_chunk: pa=0xc01fb000 va=0xc01fb000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P pmap_map_chunk: pa=0xc01fa000 va=0xc01fa000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P pmap_map_chunk: pa=0xc01f9000 va=0xc01f9000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P pmap_map_chunk: pa=0xc01f8000 va=0xc01f8000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P pmap_map_chunk: pa=0xc01f7000 va=0xc01f7000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P pmap_map_chunk: pa=0xc01f6000 va=0xc01f6000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P pmap_map_chunk: pa=0xc01f5000 va=0xc01f5000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P pmap_map_chunk: pa=0xc01f4000 va=0xc01f4000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P pmap_map_chunk: pa=0xc01f3000 va=0xc01f3000 size=0x1000 resid=0x1000 prot=0x3 cache=2 P devmap: 80000000 -> 800fffff @ f0000000 pmap_map_chunk: pa=0x80000000 va=0xf0000000 size=0x100000 resid=0x100000 prot=0x3 cache=0 S devmap: 80800000 -> 809fffff @ f0100000 pmap_map_chunk: pa=0x80800000 va=0xf0100000 size=0x200000 resid=0x200000 prot=0x3 cache=0 SS devmap: 40000000 -> 4fffffff @ e0000000 pmap_map_chunk: pa=0x40000000 va=0xe0000000 size=0x10000000 resid=0x10000000 prot=0x3 cache=0 SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS devmap: 10000000 -> 13ffffff @ f0300000 pmap_map_chunk: pa=0x10000000 va=0xf0300000 size=0x4000000 resid=0x4000000 prot=0x3 cache=0 SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS devmap: 20000000 -> 23ffffff @ f4300000 pmap_map_chunk: pa=0x20000000 va=0xf4300000 size=0x4000000 resid=0x4000000 prot=0x3 cache=0 SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS freestart = 0xc0335000, free_pages = 7371 (0x1ccb) switching to new L1 page table @0xc01fc000...done! bootstrap done. init subsystems: stacks vectors undefined page pmap irq done. [ Kernel symbol table missing! ] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 3.99.15 (ARMADILLO210) #1: Tue Jan 31 15:17:49 UTC 2006 root@mini:/usr/export/o/20060112/evbarm/sys/arch/evbarm/compile/ARMADILLO210 total memory = 32768 KB avail memory = 30308 KB mainbus0 (root) cpu0 at mainbus0: ARM920T rev 0 (ARM9TDMI core) cpu0: DC enabled IC enabled WB enabled EABT cpu0: 16KB/32B 64-way Instruction cache cpu0: 16KB/32B 64-way write-back-locking-A Data cache epsoc0 at mainbus0: Cirrus Logic EP93xx SoC rev E0 epsoc0: fclk 200.02 Mhz hclk 100.01 Mhz pclk 50.00 Mhz epclk0 at epsoc0 addr 0x80810000-0x8081008f intr 4 epgpio0 at epsoc0 addr 0x80840000-0x808400cb intr 59 gpio0 at epgpio0: port A: 8 pins gpio1 at epgpio0: port B: 8 pins gpio2 at epgpio0: port C: 8 pins gpio3 at epgpio0: port D: 8 pins gpio4 at epgpio0: port E: 8 pins gpio5 at epgpio0: port F: 8 pins gpio6 at epgpio0: port G: 8 pins gpio7 at epgpio0: port H: 8 pins epled0 at epgpio0: port E bit1 0 bit2 1 armadillo9iic0 at epgpio0: port B bit1 4 bit2 5 iic0 at armadillo9iic0: I2C bus seeprom0 at iic0 addr 0x50: AT24Cxx EEPROM epe0 at epsoc0 addr 0x80010000-0x8001ffff intr 39 epe0: MAC address 00:11:0c:03:00:21 lxtphy0 at epe0 phy 0: LXT971/2 10/100 media interface, rev. 2 lxtphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto epcom0 at epsoc0 addr 0x808c0000-0x808c0fff intr 52 epcom0: console epcom1 at epsoc0 addr 0x808d0000-0x808d0fff intr 54 epwdog0 at epsoc0 addr 0x80940000-0x80940007 intr 36 eprtc0 at epsoc0 addr 0x80920000-0x8092010b intr 37 boot device: <unknown> root device:
kernel configからの#ifdefでArmadillo-9とArmadillo-210を区別する感じに書き換えてやれば良さそうです。
メールはこちらへ...[BSD小僧 (tokuda @(at) tokuda .(dot) net)]
この日記は、GNSを使用して作成されています。