# cd /usr/src # ls -l lrwxrwxrwx 1 root root 16 xxx xx xx:xx linux -> linux-2.2.19_ps2 drwxr-xr-x 15 root root 4096 xxx xx xx:xx linux-2.2.19_ps2 /usr/src/linuxが 2.2.19または2.2.21, 2.4.17 のカーネルを指してください。 → /usr/src/linux-2.*.*/include/linux/akmemio.hだけが必要です。 このファイルだけ持ってきて、ソースのinclude部分を修正しても良いです。 # tar zxf akmem_ps2.tar.gz # cd akmem_ps2 # make # make mknod # make install → /sbin/akload です。いやなら手動でコピーして。
これだけで勝手にshutdownプロセスが走った後で、/boot/vmlinux-2.2.19 カーネルで再起動が掛かります。# /sbin/akload -rv /boot/vmlinux-2.2.19
(2)インストールする# vi /usr/src/linux/arch/mips/ps2/sbios/init.c (カーネル2.2.*の場合) # vi /usr/src/linux/arch/mips/ps2/prom.c (カーネル2.4.17の場合)
/* get command line parameters */ if (ps2_bootinfo->opt_string != NULL) { int i; for (i = 0; i < CL_SIZE - 1 && ps2_bootinfo->opt_string[i]; i++) arcs_cmdline[i] = ps2_bootinfo->opt_string[i]; arcs_cmdline[i] = '\0'; } strcpy(arcs_cmdline, "root=/dev/hda1 crtmode=ntsc"); if (*(unsigned long *)(ps2_bootinfo->sbios_base + SBIOS_SIGNATURE) != 0x62325350) {
上記対応だと、BB Navigatorを起動することができなくなっちゃいますね。# mount -t reiserfs /dev/hda11 /mnt/bbn # cp -p /sbin/akload /mnt/bbn/sbin # cp -p /usr/src/linux/vmlinux /mnt/bbn/boot/ps2linux-2.2.21 # vi /mnt/bbn/etc/rc.d/謎 適当な場所に /sbin/akload -r /boot/ps2linux-2.2.21 # umount /mnt/bbn
PS2PAD=0 if [ ! -f /proc/ps2pad ]; then modprobe ps2pad PS2PAD=1 sleep 1 fi BUTTON=`cat /proc/ps2pad | awk '$1==0 { print $5; }'` [ $PS2PAD -ne 0 ] && rmmod ps2pad [ "$BUTTON" != "" -a "$BUTTON" != "FFFF" ] && /sbin/akload -r /boot/ps2linux-2.2.21
ところで、上記方法で起動したPS2Linuxに思わぬ副産物(?)があることが判明しました。
と言っても前提条件をクリアできる人がどれだけいることか。
・BBNaviからakmemを使ってPS2Linuxを起動した環境
・PS2のメモカをマウントすると、なぜか BWLINUXディレクトリがトップに見えるようになっている人(謎)
何が副産物かというと、なんとBIEXEC-DVDPLAYERとかBIEXEC-SYSTEMなんてのも見えるようになっちゃいました。
HDDにコピーし、メモカのオリジナルを消して、コピーし直すと、普通のディレクトリ扱い(謎)になります。
それでも、もちろんDVDプレイヤとしても機能しますし、BBNのシステムであれば、BBNも起動できます。
といってもこれは同じメモカに戻した場合の話です。
違うメモカにコピーしても無駄です。何故かは
ここを見ればわかるかな。
でもちょっと知恵を働かせれば...