[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
boot (Re: ARMulator)
> bootもsimulator上ではちゃんと動くのか。
> geofoxではCのコードは動くけど、symbolの位置がずれてるのか、
> Hello world!が出力されてません。
memoryをserialにdumpしてみたら、最初の4Kbyteしか
正しくcopyされてませんでした。
つまるところ、
・ArloはEPOC32用アプリケーションである
・Arloが読み込んだbootは、EPOC32が司る仮想memory上にflatに置かれるが、
物理memoryから見れば4Kごとにバラバラにmapされている
・bootが実行される際は、MMU,Cache,interruptなどはdisableされている
てことで、bootが4K以下なら問題ないけど、
4K以上の場合、バラバラに配置された自分自身を探さなければならないわけです。
# boot-13とかのsourceを真面目に読んでればわかってたことですが :-)
> Arloから手付けるとか、
> Linuxみたくkernelいきなり走らせちゃった方が良いのかなぁ...
ということでやっぱりNetBSD kernelを読み込んでいきなり実行するのが吉。
bootをかますと、LCD driverとかwd driverとか書かなきゃいけないから遠回り。
ArloもNetBSD kernelに合うようにhackした方が良いかな。
# いや、先にgdbか
とりあえず、Windows持ってない人向けEPOC32用cross compiler構築法
http://people.frankfurt.netsurf.de/Rudolf.Koenig/linuxsdk.html
sakamoto