Last modified 04/29/2001
Agendaのある生活
このページは「AgendaVR3 Developer Edition」に関しての情報をまとめたページです。
コンシューマIRポートを使ってみよう!
AgendaVR3には大出力の赤外線ポート「コンシューマIRポート」があります。
それを使ってMindStormsで作ったロボットを
リモートコントロールするソフトを作ってみました。
ソースとバイナリ(04/29/2001版)(56,122byte)
APB(Agenda Peripheral Bus)
AgendaVR3のコネクタの情報は
ここにあります。
しかし、APB(Agenda Peripheral Bus)の仕様についてはまだ公開されて無いようなので接続先を調べてみました。
AgendaVR3 | VR4181 |
11 | GPIO10/FRM/SYSCLK |
14 | GPIO2/SCK |
15 | GPIO0/SI |
16 | GPIO1/SO |
単純にGPIOとして使ってもCSI(CLOCKED SERIAL INTERFACE)として使ってもよさそうですネ。
AgendaVR3とWindowsをつなげよう!
Windows(cygwin)とAgendaVR3を「ケーブル接続」(AgendaVR3側はppp)してみました。
Agenda <--> Windowsが参考になります。
Windows(cygwin)上でクロスコンパイルだ!
Windows(cygwin)上にクロスコンパイル環境を構築してみました。
- 材料の用意
- ftp://ftp.agendacomputing.com/agenda/tools/SRPMS/cross-binutils-2.8.1-2lv.src.rpm
- ftp://ftp.agendacomputing.com/agenda/tools/SRPMS/cross-egcs-1.0.3a-3lv.src.rpm
- ftp://ftp.agendacomputing.com/agenda/tools/RPMS/i386/glibc-devel-mipsel-linux-2.0.7sf-20lv.i386.rpm
- ftp://ftp.agendacomputing.com/agenda/tools/RPMS/i386/kernel-headers-mipsel-linux-2.4.0-test9-1lv.i386.rpm
- glibc、header fileをインストール
- cd /
- rpm2cpio ~/glibc-devel-mipsel-linux-2.0.7sf-20lv.i386.rpm | cpio -id
- rpm2cpio ~/kernel-headers-mipsel-linux-2.4.0-test9-1lv.i386.rpm | cpio -id
- binutilsをコンパイルしてインストール
- cd ~/
- rpm2cpio cross-binutils-2.8.1-2lv.src.rpm | cpio -id
- tar -zxf binutils-2.8.1.tar.gz
- cd binutils-2.8.1
- patch -p1 -i ~/binutils-2.8.1-mips1.patch
- patch -p1 -i ~/binutils-2.8.1-mips2.patch
- patch -p1 -i ~/binutils-2.8.1-loaddelay-2.patch
- mkdir build
- cd build
-
../configure
--with-include-gettext
--target=mipsel-linux --host=i386-pc-cygwin32 --build=i386-pc-cygwin32
--prefix=/usr -v
- make
- cd binutils
-
for i in `ls *.exe` ; do
mv -f $i `echo $i | sed -e 's/.exe//'` ;
done
- cd ..
- make prefix=/usr install
- cd /usr/bin
-
for i in `ls *` ; do
mv -f $i $i.exe ;
done
- cd /usr/mips-linux/bin
-
for i in `ls *` ; do
mv -f $i $i.exe ;
done
- egcsをコンパイルしてインストール
- cd ~/
- rpm2cpio cross-egcs-1.0.3a-3lv.src.rpm | cpio -id
- tar -jxf egcs-1.0.3a.tar.bz2
- cd egcs-1.0.3a
- patch -p1 -i ~/egcs-1.0.3a-mips.patch
- patch -p1 -i ~/egcs-1.0.3a-mips-softfloat-2.patch
- patch -p1 -i ~/egcs-1.0.3a-sgidefs.patch
-
zcat ~/egcs-1.0.3a-cygwin-unofficial.patch.gz
| patch -p1
- mkdir build
- cd build
-
../configure
--enable-languages=c,c++
--with-include-gettext --disable-shared --enable-threads
--target=mipsel-linux --host=i386-pc-cygwin32 --build=i386-pc-cygwin32
--prefix=/usr -v
- make
- make prefix=/usr install
- hello.cを試しにコンパイル
- mipsel-linux-gcc hello.c -o hello
egcsを--enable-sharedでコンパイルするとsharedライブラリ関係のコンパイルで
エラーが発生するので--disable-shared指定にしてみた。(これで問題ないかは不明)
Windows(cygwin)上でkernelのクロスコンパイルだ!
Windows(cygwin)上に構築した環境でkernelのコンパイルをしてみました。
- 材料の用意
- ftp://ftp.agendacomputing.com/agenda/kernels/linux-vr-2001-03-30/linux-vr-2001-03-30.orig.tar.gz
- ftp://ftp.agendacomputing.com/agenda/kernels/linux-vr-2001-03-30/linux-vr-2001-03-30-1-diff.gz
- ソースの展開
- cd ~/
- tar -zxf linux-vr-2001-03-30.orig.tar.gz
- ln -s linux-vr-2001-03-30 linux-vr
- cd /usr/mipsel-linux/include
- rm -Rf linux
- rm -Rf asm-mips
- ln -s ~/linux-vr/include/linux .
- ln -s ~/linux-vr/include/asm-mips .
- cd ~/linux-vr
- zcat ~/linux-vr-2001-03-30-1-diff.gz | patch -p1
-
zcat ~/linux-vr-2001-03-30-keymap-unofficial.patch.gz | patch -p1
(loadkeysコマンドが無いので予めagenda_vr3_keymap.cを作っとく)
- コンパイル
- make oldconfig
- make dep
- make vmlinux.binary
後は出来あがった~/linux/arch/mips/boot/vmlinux.binaryをvrflashを使って書き込めばOK!
TOPへ