GeoCities Japan

Cross Compile Tools for PlayStation

You can make compiler for PlayStation easily!

Support Platform FreeBSD,NetBSD,(OpenBSD,BSD/OS maybe :-)
Of course, included patches are effective even in other OSs.
Use Software binutils/egcs/newlib
Target mipsel-ecoff(MIPS/LITTLE ENDIAN/ECOFF)

PlayStation Specific Options
mipsel-ecoff-gcc -mno-gofast Use software floating point emulation of libgcc1.
mipsel-ecoff-ld -m psx build PS-X EXE format file

こぺるさんの作成された汎用パッチの内容を含んでいます(感謝!)。 psxexe.scを使用して、mipsel-ecoff-ldで-m psx (生成バイナリがPS-X EXE形式になる)を使えるように、 また、mipsel-ecoff-gccのデフォルト動作として、 GOFAST ソフトウェア浮動小数点演算を使用する (-mno-gofastオプションで、libgcc1互換ソフトウェア浮動小数点演算を使用) ようになっています。

Package System

% su
# (NetBSD only) cd /usr/pkgsrc/cross
# tar xzvf /tmp/mipsel-ecoff.tgz
# cd mipsel-ecoff
# make LOCALBASE=/opt/playstation all install clean
# cd ..; rm -rf mipsel-ecoff

Other System

  1. Download mipsel-ecoff.tgz.
  2. Download binutils from GNU site.
  3. Download egcs from Cygnus site.
  4. Download newlib from Cygnus site.
  5. Extract these files and Patch and Configure and Make!
    % mkdir tmp; cd tmp
    % tar xzvf mipsel-ecoff.tgz
    % tar xzvf binutils-xxx.tgz
    % tar xzvf egcs-xxx.tgz
    % tar xzvf newlib-xxx.tgz
    % mipsel-ecoff/files/ src
    % patch -d src --forward --quiet -E -p0 < mipsel-ecoff/patches/patch-aa
    % patch -d src --forward --quiet -E -p0 < mipsel-ecoff/patches/patch-ab
    % mkdir build; cd build
    % ../src/configure --prefix=/usr/local/PSX --target=mipsel-ecoff \
    	--with-gnu-as --with-gnu-ld
    % gmake LANGUAGES="c c++"
    % su
    # gmake LANGUAGES="c c++" install
    # exit
    % cd ../..
    % rm -rf tmp
  6. You can use /usr/local/PSX/bin/mipsel-ecoff-gcc, and many tools for PlayStation!