HS-DGL! + ハックキット 2.0:ハック de 録!!(2)


HS-DGL! + ハックキット 2.0 にハック de 録!!+PC-MV52DX/U2 の トラブルシューティング、続き

標準ファームでは?

HS-DGL ファームウェア 1.49 の tmpimage.tgz を展開し、 /etc/rc.d あたりを見てみたが、有意な差は見つけられない。
/etc/rc.d/init.d/modutils あたりにそれらしい記述はあるのだが。

まさか、標準ファームでも認識されないんじゃないかと思って、 HS-DGL ファームウェア 1.49 をインストールし、 初期設定のチューナ設定を実行してみた。
当たり前だが、地域が選択できた。
やっぱりハック de 録!! に原因がある。

標準ファームを調べる

標準ファームの /etc/rc.d/rc2.d/S99rmlogin に
ps -aux > /tmp/xxx
lsmod >>/tmp/xxx
cat /proc/LSUVCD >>/tmp/xxx
cat /proc/devices >>/tmp/xxx
/usr/local/PCast/DbAcRap GetDeviceStatus  >>/tmp/xxx
を仕込み、標準ファームで起動した後、/tmp/xxx を見てみた。
bash-2.05a# cat xxx
USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND
root         1 15.1  0.4  1452  628 ?        S    16:06   0:04 init
root         2  0.0  0.0     0    0 ?        SW   16:06   0:00 [keventd]
root         3  0.0  0.0     0    0 ?        SWN  16:06   0:00 [ksoftirqd_CPU0]
root         4  0.0  0.0     0    0 ?        SW   16:06   0:00 [kswapd]
root         5  0.0  0.0     0    0 ?        SW   16:06   0:00 [bdflush]
root         6  0.1  0.0     0    0 ?        SW   16:06   0:00 [kupdated]
root         9  0.0  0.0     0    0 ?        SW   16:06   0:00 [mtdblockd]
root        10  0.0  0.0     0    0 ?        SW   16:06   0:00 [khubd]
root        15  0.0  0.0     0    0 ?        SW   16:06   0:00 [kjournald]
root        52  0.0  0.0     0    0 ?        SW   16:06   0:00 [BUFFALO PC-MV52]
root        79  0.0  0.0     0    0 ?        SW   16:06   0:00 [kjournald]
root       173  0.9  0.6  1584  776 ?        S    16:06   0:00 /sbin/syslogd -m 0
root       175  0.0  0.4  1436  608 ?        S    16:06   0:00 /sbin/klogd -x
root       192  1.0  1.1  2840 1428 ?        S    16:06   0:00 /bin/sh /etc/init.d/rc 2
root       198  0.0  0.6  1884  800 ?        S    16:06   0:00 /usr/sbin/ap_servd -i eth0
root       204  0.0  0.7  2092  992 ?        S    16:06   0:00 /usr/sbin/thttpd -C /etc/thttpd.conf
root       207  0.1  0.7  2092  992 ?        S    16:06   0:00 /usr/sbin/thttpd -C /etc/thttpd2.conf
daemon     213  0.0  0.7  2012  916 ?        S    16:06   0:00 lpd Waiting
root       221  0.0  0.5  5788  676 ?        S    16:06   0:00 /usr/local/EPKowa/printer/ekpd
root       224  0.0  0.5  5788  676 ?        S    16:06   0:00 /usr/local/EPKowa/printer/ekpd
root       225  0.0  0.5  5788  676 ?        S    16:06   0:00 /usr/local/EPKowa/printer/ekpd
root       226  0.0  0.5  5788  676 ?        S    16:06   0:00 /usr/local/EPKowa/printer/ekpd
root       228  0.2  0.6  1692  812 ?        S    16:06   0:00 /usr/sbin/cron
root       237  0.0  1.1  2848 1436 ?        S    16:06   0:00 /bin/sh /etc/rc.d/rc2.d/S90atalk start
root       239  0.2  0.8  3680 1108 ?        S    16:06   0:00 /usr/sbin/atalkd -f /etc/atalk/atalkd.conf
root       241  0.2  1.0  3816 1276 ?        S    16:06   0:00 /usr/sbin/atalkd -f /etc/atalk/atalkd.conf
root       242  0.0  1.5  5008 1960 ?        S    16:06   0:00 /usr/sbin/smbd -D
root       244  0.1  1.4  3824 1832 ?        S    16:06   0:00 /usr/sbin/nmbd -D
root       246  0.6  1.0  2804 1372 ?        S    16:06   0:00 /bin/sh /usr/mediaserver/smb_mediaserver.sh
root       251  2.1  5.2 17044 6668 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       254  0.0  1.1 12164 1460 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       256  0.0  0.9  3972 1248 ?        S    16:06   0:00 /usr/local/PCast/pcastd
root       257  0.0  0.9  3972 1272 ?        S    16:06   0:00 /usr/local/PCast/pcastd
root       260  0.0  5.2 17044 6668 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       262  0.0  5.2 17044 6668 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       263  0.0  5.2 17044 6668 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       264  2.0  5.2 17044 6668 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       265  0.0  5.2 17044 6668 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       266  0.0  1.1 12164 1460 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       267  0.0  1.1 12164 1460 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       270  0.0  1.1 12164 1460 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       272 16.2 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       274  0.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       275  0.2 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       276  0.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       277  0.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       278  0.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       279  0.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       280  0.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       283  0.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       284  0.0  1.1 12164 1460 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       286  0.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       288  0.6  1.0  2804 1388 ?        S    16:06   0:00 /bin/sh /usr/mediaserver/chk_mediaserver.sh
root       293  0.0  0.6  2392  856 ?        S    16:06   0:00 /usr/local/PCast/EPGd
root       295  0.0  1.0  3996 1284 ?        S    16:06   0:00 /usr/local/PCast/iRCommander
root       303  0.0  1.1 12164 1460 ?        S    16:06   0:00 /usr/local/PCast/Scheduler
root       306  4.0 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
root       307  7.5 22.7 52488 29060 ?       S    16:06   0:00 /usr/mediaserver/mediaserver
bin        313  4.0  0.4  1692  636 ?        S    16:06   0:00 /sbin/portmap -v
root       320  0.0  0.0     0    0 ?        SW   16:06   0:00 [nfsd]
root       328  0.0  0.0     0    0 ?        SW   16:06   0:00 [lockd]
root       329  0.0  0.0     0    0 ?        SW   16:06   0:00 [rpciod]
root       339  0.0  0.6  1892  876 ?        S    16:06   0:00 /usr/sbin/rpc.mountd
root       347  0.0  0.5  1428  640 ?        S    16:06   0:00 /usr/sbin/ppc_uartd -p 1
root       363  0.0  0.5  5700  664 ?        S    16:06   0:00 /usr/local/BootServer/rarpd -ae
root       366  0.0  0.5  5700  664 ?        S    16:06   0:00 /usr/local/BootServer/rarpd -ae
root       367  0.0  0.5  5700  664 ?        S    16:06   0:00 /usr/local/BootServer/rarpd -ae
root       368  0.0  0.5  5700  664 ?        S    16:06   0:00 /usr/local/BootServer/rarpd -ae
root       369  0.0  0.4  1576  620 ?        S    16:06   0:00 /usr/local/BootServer/tftpd
root       372  0.0  0.5  3632  640 ?        S    16:06   0:00 /usr/local/BootServer/rarpcfgd
root       374  0.0  0.5  3632  640 ?        S    16:06   0:00 /usr/local/BootServer/rarpcfgd
root       376  0.0  0.5  3632  640 ?        S    16:06   0:00 /usr/local/BootServer/rarpcfgd
root       377  0.0  0.4  1576  572 ?        S    16:06   0:00 /usr/local/BootServer/fwupdated
root       379  0.0  1.0  2808 1344 ?        S    16:06   0:00 /bin/sh /etc/rc.d/rc2.d/S99rmlogin start
root       380  0.0  0.8  2984 1028 ?        R    16:06   0:00 ps -aux
root       383  0.0  0.5  2264  736 ?        S    16:06   0:00 sleep 1
root       384  0.0  0.5  2264  736 ?        S    16:06   0:00 sleep 1
Module                  Size  Used by    Tainted: P
nfsd                   76084   1  (autoclean)
mv51dxu2              639764   0
videodev                5952   1  [mv51dxu2]
video-buf              14624   0  [mv51dxu2]
LSUVCD                 27384   0  (unused)
device1=none
device2=none
device3=none
device4=none
Character devices:
  1 mem
  2 pty
  3 ttyp
  4 ttyS
  5 cua
 10 misc
 81 video_capture
 90 mtd
128 ptm
136 pts
162 raw
180 usb

Block devices:
  1 ramdisk
  3 ide0
 31 mtdblock
GetDeviceStatus
[START]GetDeviceStatus
[DATA]Device=0 Status=WAIT
[DATA]Device=1 Status=NODEVICE
[DATA]Device=2 Status=NODEVICE
[DATA]Device=3 Status=NODEVICE
[FINISH]GetDeviceStatus
bash-2.05a# 
/proc/LSUVCD では device1=none になっているが、
/usr/local/PCast/DbAcRap GetDeviceStatus では Device=0 Status=WAIT になっている。
/proc/LSUVCD にあらわれる必要はないのか?

/usr/local/PCast/DbAcRap GetDeviceStatus の後に cat /proc/LSUVCD を実行してみた。

GetDeviceStatus
[START]GetDeviceStatus
[DATA]Device=0 Status=WAIT
[DATA]Device=1 Status=NODEVICE
[DATA]Device=2 Status=NODEVICE
[DATA]Device=3 Status=NODEVICE
[FINISH]GetDeviceStatus
device1=none
device2=none
device3=none
device4=none
やはり device1=none。/proc/LSUVCD にあらわれる必要はないようだ。

LSUVCD は Buffalo 独自方式、 videodev、video-buf は Video4Linux 方式(と同じ名前)なので、 PC-MV7DX/U2 とPC-MV5xDX/U2 とは全然別方式のドライバと考えて良いだろう。

さて、ではどうやって DbAcRap は GetDeviceStatus しているのか???

PC-MV51DX がサポートされる前後のファームウェアの差

15時間程あれやこれやと悩んだ結果、 PC-MV51DX がサポートされる前後のファームウェアの差を調べれば どんなファイルが増えたのかがわかると考えた。

HS-DGL では、

 Ver1.45→Ver1.46β2 [2005.9.13]

・Link de 録!!機能上でPC-MV51DX/U2に対応しました。
と 1.46β2 でサポートされている。
ところが、ファームウェア 1.46b2 は持っているが 1.45 を持っておらず、 差分が調べられない。

HD-HGLAN の履歴を見ると、HS-DGL と同じく

Ver1.45→Ver1.46β2 [2005.9.13]

・Link de 録!!機能上でPC-MV51DX/U2に対応しました。
と 1.46β2 でサポートされている。
HD-HGLAN は以前からファームウェアをそろえているので、 1.45 も 1.46b2 も持っている。
HD-HGLAN でファイルの増減を調べた。
*** hglan145files       2005-12-30 07:08:01.000000000 +0900
--- hglan146b2files     2005-12-30 07:08:13.000000000 +0900
***************
*** 826,831 ****
--- 826,832 ----
  ./bin/pidof
  ./bin/mkcode.hglan_sjis
  ./bin/bdu
+ ./bin/mknod
  ./www
  ./www/script
  ./www/script/melsub_shutdown.sh
***************
*** 1203,1208 ****
--- 1204,1210 ----
  ./www/cgi-bin/Config.pm
  ./www/cgi-bin/pcast-capture-play.cgi
  ./www/cgi-bin/pcast-capture-live.cgi
+ ./www/cgi-bin/version.cgi
  ./www/index.htm
  ./www/help
  ./www/help/b-comment.htm
***************
*** 1714,1719 ****
--- 1716,1724 ----
  ./lib/modules/2.4.20_mvl31-ppc_linkstation/kernel/lib/zlib_inflate/zlib_inflate.o
  ./lib/modules/2.4.20_mvl31-ppc_linkstation/pcmcia
  ./lib/modules/LSUVCD.o
+ ./lib/modules/mv51dxu2.o
+ ./lib/modules/video-buf.o
+ ./lib/modules/videodev.o
  ./lib/ld-2.2.3.so
  ./lib/ld.so.1
  ./lib/libc-2.2.3.so
***************
*** 2516,2521 ****
--- 2521,2527 ----
  ./usr/lib/libssl.so
  ./usr/lib/libssl.so.0
  ./usr/lib/libssl.so.0.9.6
+ ./usr/lib/libv4lrap.so
  ./usr/include
  ./usr/include/initreq.h
  ./usr/local
***************
*** 2691,2696 ****
--- 2697,2707 ----
  ./usr/local/PCast/www/cgi-bin/help/en/p-medialimit.htm
  ./usr/local/PCast/www/cgi-bin/help/en/p-mediapass.htm
  ./usr/local/PCast/www/cgi-bin/help/en/p-mediaserver.htm
+ ./usr/local/PCast/www/cgi-bin/help/en/p-dlna-ac-list.htm
+ ./usr/local/PCast/www/cgi-bin/help/en/p-dlna-ac-search.htm
+ ./usr/local/PCast/www/cgi-bin/help/en/p-dlna-accesscontrol.htm
+ ./usr/local/PCast/www/cgi-bin/help/en/p-dlna-database.htm
+ ./usr/local/PCast/www/cgi-bin/help/en/p-dlna-mediaserver.htm
  ./usr/local/PCast/www/cgi-bin/help/jp
  ./usr/local/PCast/www/cgi-bin/help/jp/p-capture-list-rec.htm
  ./usr/local/PCast/www/cgi-bin/help/jp/p-capture-list-reserve.htm
***************
*** 2728,2733 ****
--- 2739,2749 ----
  ./usr/local/PCast/www/cgi-bin/help/jp/p-proxy-port.htm
  ./usr/local/PCast/www/cgi-bin/help/jp/p-proxy.htm
  ./usr/local/PCast/www/cgi-bin/help/jp/p-sleep.htm
+ ./usr/local/PCast/www/cgi-bin/help/jp/p-dlna-ac-list.htm
+ ./usr/local/PCast/www/cgi-bin/help/jp/p-dlna-ac-search.htm
+ ./usr/local/PCast/www/cgi-bin/help/jp/p-dlna-accesscontrol.htm
+ ./usr/local/PCast/www/cgi-bin/help/jp/p-dlna-database.htm
+ ./usr/local/PCast/www/cgi-bin/help/jp/p-dlna-mediaserver.htm
  ./usr/local/PCast/www/cgi-bin/html
  ./usr/local/PCast/www/cgi-bin/html/en
  ./usr/local/PCast/www/cgi-bin/html/en/body.html
***************
*** 2793,2798 ****
--- 2809,2818 ----
  ./usr/local/PCast/www/cgi-bin/html/en/style.css
  ./usr/local/PCast/www/cgi-bin/html/en/top.html
  ./usr/local/PCast/www/cgi-bin/html/en/top.pl
+ ./usr/local/PCast/www/cgi-bin/html/en/global_ms_function.pl
+ ./usr/local/PCast/www/cgi-bin/html/en/setup_dlna_access_control_setup.pl
+ ./usr/local/PCast/www/cgi-bin/html/en/setup_dlna_access_control.html
+ ./usr/local/PCast/www/cgi-bin/html/en/setup_dlna_access_control.pl
  ./usr/local/PCast/www/cgi-bin/html/jp
  ./usr/local/PCast/www/cgi-bin/html/jp/body.html
  ./usr/local/PCast/www/cgi-bin/html/jp/body.pl
***************
*** 2857,2862 ****
--- 2877,2886 ----
  ./usr/local/PCast/www/cgi-bin/html/jp/style.css
  ./usr/local/PCast/www/cgi-bin/html/jp/top.html
  ./usr/local/PCast/www/cgi-bin/html/jp/top.pl
+ ./usr/local/PCast/www/cgi-bin/html/jp/global_ms_function.pl
+ ./usr/local/PCast/www/cgi-bin/html/jp/setup_dlna_access_control_setup.pl
+ ./usr/local/PCast/www/cgi-bin/html/jp/setup_dlna_access_control.html
+ ./usr/local/PCast/www/cgi-bin/html/jp/setup_dlna_access_control.pl
  ./usr/local/PCast/www/cgi-bin/iepg
  ./usr/local/PCast/www/cgi-bin/iepg/pcast_epgloc_sony.dat
  ./usr/local/PCast/www/cgi-bin/image
***************
*** 2893,2898 ****
--- 2917,2924 ----
  ./usr/local/PCast/www/cgi-bin/image/en/top_reserve_manual.png
  ./usr/local/PCast/www/cgi-bin/image/en/top_setup.png
  ./usr/local/PCast/www/cgi-bin/image/en/top_status.png
+ ./usr/local/PCast/www/cgi-bin/image/en/back_main_mediabolic.jpg
+ ./usr/local/PCast/www/cgi-bin/image/en/back_mediabolic.jpg
  ./usr/local/PCast/www/cgi-bin/image/jp
  ./usr/local/PCast/www/cgi-bin/image/jp/back_main.jpg
  ./usr/local/PCast/www/cgi-bin/image/jp/back_menu.jpg
***************
*** 2926,2931 ****
--- 2952,2959 ----
  ./usr/local/PCast/www/cgi-bin/image/jp/top_reserve_manual.png
  ./usr/local/PCast/www/cgi-bin/image/jp/top_setup.png
  ./usr/local/PCast/www/cgi-bin/image/jp/top_status.png
+ ./usr/local/PCast/www/cgi-bin/image/jp/back_main_mediabolic.jpg
+ ./usr/local/PCast/www/cgi-bin/image/jp/back_mediabolic.jpg
  ./usr/local/PCast/www/cgi-bin/module
  ./usr/local/PCast/www/cgi-bin/module/AutoLoader.pm
  ./usr/local/PCast/www/cgi-bin/module/base.pm
***************
*** 3169,3174 ****
--- 3197,3208 ----
  ./usr/local/PCast/www/cgi-bin/module/Sys
  ./usr/local/PCast/www/cgi-bin/module/Sys/Hostname.pm
  ./usr/local/PCast/www/cgi-bin/module/Sys/Syslog.pm
+ ./usr/local/PCast/www/cgi-bin/module/BufCommonArp.pm
+ ./usr/local/PCast/www/cgi-bin/module/BufPCastDLNAAccessControl.pm
+ ./usr/local/PCast/www/cgi-bin/module/BufPCastDLNADataBase.pm
+ ./usr/local/PCast/www/cgi-bin/module/BufPCastDLNADiscoverClient.pm
+ ./usr/local/PCast/www/cgi-bin/module/BufPCastDLNAServer.pm
+ ./usr/local/PCast/www/cgi-bin/module/BufPCastType.pm
  ./usr/local/PCast/www/cgi-bin/script
  ./usr/local/PCast/www/cgi-bin/script/channel_scan.sh
  ./usr/local/PCast/www/error
***************
*** 3180,3185 ****
--- 3214,3224 ----
  ./usr/local/PCast/www/error/image/style.css
  ./usr/local/PCast/www/index.html
  ./usr/tmp
+ ./usr/etc
+ ./usr/etc/mediaserver.conf
+ ./usr/etc/mediaserver_accesscontrol.conf
+ ./usr/etc/mediaserver_discoveredclients.conf
+ ./usr/etc/mediaserver_accesscontrol.conf.bak
  ./var
  ./mnt2
  ./mnt2/ram
結果、/usr/lib/libv4lrap.so が怪しいのではと考えた。
  • 1.46b2 で増えたファイルである

  • videodev、video-buf は Video4Linux 方式

  • v4l という名前がいかにも Video4Linux を連想させる

  • (気が付いてなかったが、もうこのころから DLNA が入りだしていたのね)

    早速確認といきたいところだが、、

    実運用に使おうと思っている 300GB HDD L300R0 をこれ以上イジクリ回すと、 再現性が低くなってしまう可能性がある。
    実験用 HDD を仕立てることとする。

    HS-DGL! 内蔵の 300GB HDDから、 USB 外付の実験用 HDD ( WD Caviar 32500:2.5GB) へコピーしている様子

    /usr/lib/libv4lrap.so

    /usr/lib/libv4lrap.so を HS-DGL ファームウェア 1.49 の tmpimage.tgz から抜き出し、 PC-MV52DX/U2 を刺してHS-DGL! を再起動してみた。
    [root@gawa root]# lsmod
    Module                  Size  Used by    Tainted: P
    mv51dxu2              644212   0
    videodev                7696   1  [mv51dxu2]
    video-buf              18848   0  [mv51dxu2]
    [root@gawa root]#
    
    モジュールのロードは問題なし。
    [root@gawa root]# ls /proc/LSUVCD
    /bin/ls: /proc/LSUVCD: そのようなファイルやディレクトリはありません
    
    やっぱり /proc/LSUVCD は存在しない。

    肝心の DeviceStatus

    [root@gawa root]# /usr/local/PCast/DbAcRap GetDeviceStatus
    GetDeviceStatus
    [START]GetDeviceStatus
    [DATA]Device=0 Status=WAIT
    [DATA]Device=1 Status=NODEVICE
    [DATA]Device=2 Status=NODEVICE
    [DATA]Device=3 Status=NODEVICE
    [FINISH]GetDeviceStatus
    [root@gawa root]#
    
    やったぁ!。
    21時間余り無駄にしてしまった。

    セットアップ

    昨日のセットアップの続き

    http://gawa:8080/ にアクセスし、 「初期設定」から「チューナ設定」を実行。
    ちゃんと地域が選べるようになっている。
    「大阪(大阪)」を選択し、チャンネルスキャンをして、
    「予約する」の「録画チューナ」のところに PC-MV5x/DX が表示された。
    ごく短時間の予約録画をしてみたが、とりあえず録画はできた。

    せっかく実験用 HDD 立てたのに、すぐわかってしもた。 まあ、次のハック de DLNA!! の時にも使えるやろ。

    本番 HDD でも

    実運用に使う予定の 300GB HDD につなぎ直し、
    hackderokkufiles に /usr/lib/libv4lrap.so を書いて、
    hackderokku.sh の実行して、
    /etc/rc.d/init.d/pcastd を修正して、
    再起動して、
    セットアップして。
    OK

    結論

    PC-MV52DX/U2 の場合は、
  • /lib/modules/videodev.o

  • /lib/modules/video-buf.o

  • /lib/modules/mv51dxu2.o

  • のコピー/ロードの他、
  • /usr/lib/libv4lrap.so

  • のコピーも必要。

    ハック de 録!!するなら、、、

    玄箱/玄箱/HG であれば、この他にも「ドライバがロードできない」問題が あるはず。

    ハック de 録!!するなら、HD-HGLAN/HS-DGL が絶対に楽だと思う。
    カーネルとドライバの組合わせは Buffalo で用意されているので、 標準ファームから必要なものを見つけて持ってきて設定すれば良いだけだし。

    これから新しくマシンを買ってハック de 録!!するなら HS-DGL を お勧めします。

    HS-DGL
    HS-D160GL
    【楽天市場】で最安値を探す Amazon ツクモネットショップ livedoor デパートで探す

    HS-D250GL
    【楽天市場】で最安値を探す Amazon ツクモネットショップ livedoor デパートで探す

    HS-D300GL
    【楽天市場】で最安値を探す Amazon ツクモネットショップ livedoor デパートで探す

    HS-D400GL
    【楽天市場】で最安値を探す Amazon ツクモネットショップ livedoor デパートで探す


    この一年、ご愛読、ご声援、ご支援ありがとうございました。
    来年もどうぞよろしくお願いします。
    良いお年をお迎え下さい


    HS-DGL! + ハックキット 2.0:ハック de 録!!
    ハックの記録
    LinkStation/玄箱 をハックしよう

    HS-DGL! + ハックキット 2.0:ハック de まる録!!

    Copyright (C) 2005 Yasunari Yamashita. All Rights Reserved.
    yasunari @ yamasita.jp 山下康成@京都府向日市