USL-5Pのハードウェア解析 Edit

  • 解析というほどのモノでもないが…
    mizore wikiさんのページを参考にして、
    LANDISKに付属するgioコマンドを使ってレジスタを直接さわってみた

  • 但しそのままでは動かないので
    landisk mini root 構築作業メモを参考にして、
    ライブラリを誤魔化して動作させた。(そこの管理人もかなり腕の立つ人だ…)
    • 使用例
      LD_PRELOAD=./libfpscrtab.so ./gio b0000001 1
      
    • fpscrtab.S
      /* gcc -shared -nodefaultlibs -Wl,--soname=libfpscrtab.so.0 
       *     -o libfpscrtab.so fpscrtab.S
       */
      	.data
      	.align 2
      	.type __fpscr_values,@object
      	.global __fpscr_values
      __fpscr_values:
      	.long   0
      	.long   0x80000
      
  • その他
    USL-5Pのカーネルソースを入手した方、配布条件がGPLならば(だよね?)、譲ってください。

レジスタマップ Edit

  • LED (0xb000_0001)
    • Read/Write可能
    • 点灯時 '1'

    bit76543210
    機能buzzerUSB5USB4USB3USB2USB1STATUSPOWER

  • ボタン (0xb000_0002)
    • Read可能
    • 押下時 '0'
    • '-'は'1'が読める
    • bit4はLANDISKでも電源ボタン
    • bit5はLANDISKから推測するにリセットボタン?…未検証

    bit76543210
    機能---電源-取外しコピー選択

  • ボタンの割り込み?それとも割り込みマスク? (0x000_0005) … あまり自信ないです。
    • '選択'、'取消し'、'コピー'をボタンのいずれかを押下すると、bit7に'0'が立つ。
    • '1'に戻すにはソフトで書き込む必要がある?。
      btrdrv.oがinsmodされた状態では、ボタンを離すと'1'に戻るが
      rmmodすると'0'のままなので。

これで何をやるかというと Edit

  • ブートセレクタ
    liloブート時、ボタンで起動パーティションを選択できたら、便利だと思いませんか?
    mizore wiki さん作 lilo-sel に本機能を実装してみようと思います。



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-06-13 (火) 20:02:26 (6519d)