Recompile Yaroze Source
Recompile Yaroze Source
Hey all,
Im wondering if anyone has attempted to update the sony tools to work correctly using the latest version of gcc? From memory the sources are pretty old version of GCC (2.7 or 2.8 from memory ), compiled using DJGPP so that they work under windows and not requiring Cygwin or anything else. id be keen to know if anyone has gotten the tools to recompile correctly, as ive tried a few times, i have patch files from the japanese web site, but again ive had little luck getting anything going.. Would be great is someone could get a new build up..
Im wondering if anyone has attempted to update the sony tools to work correctly using the latest version of gcc? From memory the sources are pretty old version of GCC (2.7 or 2.8 from memory ), compiled using DJGPP so that they work under windows and not requiring Cygwin or anything else. id be keen to know if anyone has gotten the tools to recompile correctly, as ive tried a few times, i have patch files from the japanese web site, but again ive had little luck getting anything going.. Would be great is someone could get a new build up..
-
Administrator Verified
- Admin / PSXDEV
- Posts: 2689
- Joined: Dec 31, 2012
- I am a: Shadow
- PlayStation Model: H2000/5502
Why can't you just install the Yaroze SDK and compile them that way?
Development Console: SCPH-5502 with 8MB RAM, MM3 Modchip, PAL 60 Colour Modification (for NTSC), PSIO Switch Board, DB-9 breakout headers for both RGB and Serial output and an Xplorer with CAETLA 0.34.
PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.
PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.
Im talking about recompiling the Yaroze compiler, which was originally compiled using an old version of DJGPP which didnt/doesnt support Windows XP etc.. When you try and build yaroze programs using the original yaroze dev kit you get memory issues, its a fairly well known issue, discussed numerous times on the original yaroze meembers forums and most people just stuck with a windows 98 machine or vm. not really idealShad0w wrote:Why can't you just install the Yaroze SDK and compile them that way?
a few people also recompiled for C++ support, i believe GCC 2.81 waas used at the time, but would also be keen to know if it can be upgraded to something newer, im not knowledgeable on GCC or cross compiling.. however i have the yaroze src, and what were supposedly the patch files to be able to get the yaroze code working on newer gcc..
-
gwald Verified
- Net Yaroze Enthusiast
- Posts: 313
- Joined: Sep 18, 2013
- I am a: programmer/DBA
- PlayStation Model: Net Yaroze
- Contact:
http://www.cebix.net/mrhaboobi wrote:Im talking about recompiling the Yaroze compiler, which was originally compiled using an old version of DJGPP which didnt/doesnt support Windows XP etc.. When you try and build yaroze programs using the original yaroze dev kit you get memory issues, its a fairly well known issue, discussed numerous times on the original yaroze meembers forums and most people just stuck with a windows 98 machine or vm. not really idealShad0w wrote:Why can't you just install the Yaroze SDK and compile them that way?
a few people also recompiled for C++ support, i believe GCC 2.81 waas used at the time, but would also be keen to know if it can be upgraded to something newer, im not knowledgeable on GCC or cross compiling.. however i have the yaroze src, and what were supposedly the patch files to be able to get the yaroze code working on newer gcc..
" A very old document explaining how to use GCC for Net Yaroze development "
Also mentioned here:
http://www.identicalsoftware.com/yaroze/
It's a bit over my head, but it looks well documented.. looks like were stuck in win98
win98 works vbox.. BUT the PCI system peripherals isn't detected so no COM1 port
Last edited by gwald on January 13th, 2016, 1:35 pm, edited 2 times in total.
-
gwald Verified
- Net Yaroze Enthusiast
- Posts: 313
- Joined: Sep 18, 2013
- I am a: programmer/DBA
- PlayStation Model: Net Yaroze
- Contact:
So I thought I would go through the document by Christian Bauer:mrhaboobi wrote:Hey all,
Im wondering if anyone has attempted to update the sony tools to work correctly using the latest version of gcc? From memory the sources are pretty old version of GCC (2.7 or 2.8 from memory ), compiled using DJGPP so that they work under windows and not requiring Cygwin or anything else. id be keen to know if anyone has gotten the tools to recompile correctly, as ive tried a few times, i have patch files from the japanese web site, but again ive had little luck getting anything going.. Would be great is someone could get a new build up..
http://www.cebix.net/ (attached)
This is my first time compiling a compiler, but his docs and others more modern are pretty good.. good enough to compile the binutils.
I'm using the latest Mint linux 17.3 for a quick test, but I need it for windows.
Requires:
apt-get install Texinfo
apt-get install g++ make gawk
apt-get install libmpc-dev
apt-get install libc-dev-bin
apt-get install libc-dev
export PATH=/usr/local/ target /bin:$PATH
I'm using the 2nd latest version of binutils/gcc as the old 2001 don't compile.
My gcc config, runs with no errors/warnings:
../gcc-5.2.0/configure --prefix=/usr/local --target=mipsel-unknown-ecoff --with-gnu-as --with-gnu-ld --disable-nls --disable-multilib --enable-languages=c --build=i686-linux-gnu
But I'm stuck at the compiling gcc:
*** Configuration mipsel-unknown-ecoff not supported
From google'ing I guess that configuration has been dropped?
I would guess the Net Yaroze toolchain would be the same as compiling with the PSY-Q libs? just different library right?
Could be different due to the dynamic linking of the yaroze lib in PS ram?
elf = PSY-Q
ecoff = Net yaroze
update:
https://gcc.gnu.org/install/specific.html#mips-x-x
So, as a test I used mipsel-unknow-elf, which is supported and looks like its working....
update:
Looks like it compiled as expected, but couldn't find the /usr/local/mipsel-unknown-elf/lib etc, because I did that using the ecoff.
ECOFF info:checking for mipsel-unknown-elf-ar... mipsel-unknown-elf-ar
checking for mipsel-unknown-elf-lipo... mipsel-unknown-elf-lipo
checking for mipsel-unknown-elf-nm... /home/ny/NY/build-gcc/./gcc/nm
checking for mipsel-unknown-elf-ranlib... mipsel-unknown-elf-ranlib
checking for mipsel-unknown-elf-strip... mipsel-unknown-elf-strip
checking whether ln -s works... yes
checking for mipsel-unknown-elf-gcc... /home/ny/NY/build-gcc/./gcc/xgcc -B/home/ny/NY/build-gcc/./gcc/ -B/usr/local/mipsel-unknown-elf/bin/ -B/usr/local/mipsel-unknown-elf/lib/ -isystem /usr/local/mipsel-unknown-elf/include -isystem /usr/local/mipsel-unknown-elf/sys-include
checking for suffix of object files... configure: error: in `/home/ny/NY/build-gcc/mipsel-unknown-elf/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details.
make[1]: *** [configure-target-libgcc] Error 1
make[1]: Leaving directory `/home/ny/NY/build-gcc'
make: *** [all] Error 2
http://web.mit.edu/rhel-doc/3/rhel-as-e ... bject.html
http://crosstool-ng.org/#status also doesn't have ecoff
Kinda close:
https://sourceware.org/ml/crossgcc/2003 ... 00110.html
old patch
https://www.niksula.hut.fi/~buenos/cros ... r-old.html
Someone else trying to do it
http://lukasz.dk/mirror/forums.ps2dev.o ... ml?t=11275
Going to try and build the older versions, with C errors
So, I guess this is the process:
Compile an old 1999-2000 toolchain; then with that,
Compile the mips-ecoff NY toolchain
[youtube]http://www.youtube.com/watch?v=fCi-fytEQO8[/youtube]
links:
https://groups.yahoo.com/neo/groups/psx ... sages/4791
https://sourceware.org/ml/crossgcc/1999 ... 00187.html
https://github.com/andrewwutw/build-djgpp
https://groups.google.com/forum/#!topic ... U9swPq16zk
Regarding the pdf doc,I've downloaded RH 6 (from 2000).
See if it was/is that easy, except siocons is pure dos hackery... nope doesn't start on virtualbox
I've emailed of few people that might help also.. but
I have a copy of the official NY gcc, gdb and siocons which is the real issue that the NY is stuck in win98.
It's build with DJGPP, it has the configurations already set.
I downloaded the v2 of gcc, make, binutils etc, but it doesn't compile
also, I've found a DJGPP ISO
https://archive.org/download/DJGPP_Deve ... ugust_1998
If anyone want the sources, PM me, happy to share as it's gnu.
I can't live like this!
I can't! Please no I can't! I can't! Help me, somebody please, help me!
Mother where are ya? Help me, mother, I'm having a nightmare and I can't wake up
You do not have the required permissions to view the files attached to this post.
-
gwald Verified
- Net Yaroze Enthusiast
- Posts: 313
- Joined: Sep 18, 2013
- I am a: programmer/DBA
- PlayStation Model: Net Yaroze
- Contact:
This is how far I've gotten, I can build the utilbin and partly the gcc/gar/etc.
If your keen, this is how to do it:
following this:
http://wiki.osdev.org/Building_GCC
http://wiki.osdev.org/GCC_Cross-Compiler#Windows_Users
Using cygwin, install:
GNU G++
GNU Make
GNU Bison
Flex
GNU GMP
GNU MPFR
GNU MPC
ISL dev, lib
CLooG dev, lib
Download :
texinfo-4.13
gdb-6.3
gcc-core-3.3.6
binutils-2.16
extract to C:\cygwin\home\Administrator folders which is your "linux" home
The "newest" mipsel-ecoff supported gcc was gcc-core-3.3.6 from 2005-05-03
First build textinfo (which supports the older builds, the new ones don't) as part of your toolchain.
in root
next start building the toolchain.
Load the env vars:
I"m not sure what the flags --with-gnu-as --with-gnu-ld do
The pdf doesn't mention them...
It will configure fine, then this is where I'm stuck.. for now
make all-gcc
It will create the obj files but I can't get it to link
/home/Administrator/opt/mipsel-ecoff/bin/as: unrecognized option `-mdebug'
Looks simple enough.. but i'll leave it there for now
Tip
Keep a backups of the c:\cygwin folder
If your keen, this is how to do it:
following this:
http://wiki.osdev.org/Building_GCC
http://wiki.osdev.org/GCC_Cross-Compiler#Windows_Users
Using cygwin, install:
GNU G++
GNU Make
GNU Bison
Flex
GNU GMP
GNU MPFR
GNU MPC
ISL dev, lib
CLooG dev, lib
Download :
texinfo-4.13
gdb-6.3
gcc-core-3.3.6
binutils-2.16
extract to C:\cygwin\home\Administrator folders which is your "linux" home
The "newest" mipsel-ecoff supported gcc was gcc-core-3.3.6 from 2005-05-03
First build textinfo (which supports the older builds, the new ones don't) as part of your toolchain.
in root
Code: Select all
mkdir build-textinfo
cd build-textinfo
../texinfo-4.13/configure
make install
whereis makeinfo
Load the env vars:
copy the yaroze stuff as explain on the pdf, here's my script, i did it a folder yaroze.export TARGET=mipsel-ecoff
export PREFIX="$HOME/opt"
export PATH="$PREFIX/bin:$PREFIX/bin/$TARGET/bin:/usr/local/bin/:$PATH"
next.. binutilsmkdir -p $PREFIX/$TARGET
cp -a yaroze/* $PREFIX/$TARGET
next gcc, needs --enable-obsoletemkdir build-binutils
cd build-binutils
../binutils-2.16/configure --target=$TARGET --prefix="$PREFIX" --with-sysroot --disable-nls --disable-werror
make
make install
Code: Select all
mkdir build-gcc
cd build-gcc
../gcc-3.3.6/configure --prefix=$PREFIX --target=$TARGET --with-gnu-as --with-gnu-ld --disable-nls --disable-multilib --enable-languages=c --enable-obsolete
The pdf doesn't mention them...
It will configure fine, then this is where I'm stuck.. for now
make all-gcc
It will create the obj files but I can't get it to link
Code: Select all
Administrator@win03 ~/build-gcc
$ make all-gcc
make[1]: Entering directory '/home/Administrator/build-gcc/libiberty'
make[2]: Entering directory '/home/Administrator/build-gcc/libiberty/testsuite'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/Administrator/build-gcc/libiberty/testsuite'
make[1]: Leaving directory '/home/Administrator/build-gcc/libiberty'
make[1]: Entering directory '/home/Administrator/build-gcc/gcc'
(cd intl && make all)
make[2]: Entering directory '/home/Administrator/build-gcc/gcc/intl'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/Administrator/build-gcc/gcc/intl'
make GCC_FOR_TARGET="/home/Administrator/build-gcc/gcc/xgcc -B/home/Administrator/build-gcc/gcc/ -B/home/Administrator/opt/mipsel-ecoff/bin/ -B/home/Administrator/opt/mipsel-ecoff/lib/ -isystem /home/Administrator/opt/mipsel-ecoff/include" BUILD_PREFIX="" BUILD_PREFIX_1="loser-" AR_FOR_TARGET="mipsel-ecoff-ar" AR_CREATE_FOR_TARGET="mipsel-ecoff-ar rc" AR_FLAGS_FOR_TARGET="" CFLAGS="-g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long " RANLIB_FOR_TARGET="mipsel-ecoff-ranlib" RANLIB_TEST_FOR_TARGET="[ -f mipsel-ecoff-ranlib ] || ( [ "i686-pc-cygwin" = "mipsel-unknown-ecoff" ] && [ -f /usr/bin/ranlib -o -f /bin/ranlib ] )" NM_FOR_TARGET="/home/Administrator/opt/mipsel-ecoff/bin/nm.exe" AWK="gawk" LIBGCC2_CFLAGS="-O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -G 0 -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc" INCLUDES="-I. -I. -I../../gcc-3.3.6/gcc -I../../gcc-3.3.6/gcc/. -I../../gcc-3.3.6/gcc/config -I../../gcc-3.3.6/gcc/../include" CONFIG_H="config.h auto-host.h ../../gcc-3.3.6/gcc/../include/ansidecl.h ../../gcc-3.3.6/gcc/config/i386/xm-cygwin.h ../../gcc-3.3.6/gcc/config/mips/mips.h ../../gcc-3.3.6/gcc/config/dbx.h ../../gcc-3.3.6/gcc/defaults.h ../../gcc-3.3.6/gcc/defaults.h insn-constants.h insn-flags.h" MACHMODE_H="machmode.h machmode.def " LIB1ASMSRC='mips/mips16.S' MAKEOVERRIDES= -f libgcc.mk all
make[2]: Entering directory '/home/Administrator/build-gcc/gcc'
for d in libgcc; do if [ -d $d ]; then true; else /bin/sh ../../gcc-3.3.6/gcc/mkinstalldirs $d; fi; done
if [ -f stmp-dirs ]; then true; else touch stmp-dirs; fi
/home/Administrator/build-gcc/gcc/xgcc -B/home/Administrator/build-gcc/gcc/ -B/home/Administrator/opt/mipsel-ecoff/bin/ -B/home/Administrator/opt/mipsel-ecoff/lib/ -isystem /home/Administrator/opt/mipsel-ecoff/include -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -G 0 -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I. -I../../gcc-3.3.6/gcc -I../../gcc-3.3.6/gcc/. -I../../gcc-3.3.6/gcc/config -I../../gcc-3.3.6/gcc/../include -DL_m16addsf3 -xassembler-with-cpp -c ../../gcc-3.3.6/gcc/config/mips/mips16.S -o libgcc/./_m16addsf3.o
[b]/home/Administrator/opt/mipsel-ecoff/bin/as: unrecognized option `-mdebug'[/b]
libgcc.mk:8: recipe for target 'libgcc/./_m16addsf3.o' failed
make[2]: *** [libgcc/./_m16addsf3.o] Error 1
make[2]: Leaving directory '/home/Administrator/build-gcc/gcc'
Makefile:1211: recipe for target 'stmp-multilib' failed
make[1]: *** [stmp-multilib] Error 2
make[1]: Leaving directory '/home/Administrator/build-gcc/gcc'
Makefile:1551: recipe for target 'all-gcc' failed
make: *** [all-gcc] Error 2
Administrator@win03 ~/build-gcc
$
Looks simple enough.. but i'll leave it there for now
Tip
Keep a backups of the c:\cygwin folder
-
gwald Verified
- Net Yaroze Enthusiast
- Posts: 313
- Joined: Sep 18, 2013
- I am a: programmer/DBA
- PlayStation Model: Net Yaroze
- Contact:
I got the yaroze gdb compiler compiled using the DJGPP cdrom from archive.org.
It ran in winXP, but had problems communicating :'(
So I've completely given up on this.. way too hard for me
It ran in winXP, but had problems communicating :'(
So I've completely given up on this.. way too hard for me
thats exactly where i go to. giving up that is
i spent many hours / days trying djgpp but i believe the old tools work in windows 8 ok...
i spent many hours / days trying djgpp but i believe the old tools work in windows 8 ok...
I'm giving this a bump becaause im sure there are smart cookies here who could help make this a reality..
You mentioned
"I"m not sure what the flags --with-gnu-as --with-gnu-ld do"
the LD is the Linker and you would have needed this for linking to work which i believe was your error?
-
gwald Verified
- Net Yaroze Enthusiast
- Posts: 313
- Joined: Sep 18, 2013
- I am a: programmer/DBA
- PlayStation Model: Net Yaroze
- Contact:
Yeah, that's not the reason why I gave up, but this:
But honestly, using a virtual machine wasn't too bad.
You can only build a toolchain with a compatible toolchain, so that would be a nightmare just figuring that out.
But honestly, using a virtual machine wasn't too bad.
-
gwald Verified
- Net Yaroze Enthusiast
- Posts: 313
- Joined: Sep 18, 2013
- I am a: programmer/DBA
- PlayStation Model: Net Yaroze
- Contact:
Okay, so this will be my last go at this
https://www.gnu.org/software/gcc/gcc-3.3/
states:
Obsolete Systems
MIPS:
Generic ECOFF, mips*-*-ecoff*
I should have used GCC 3.2.3. which was the lastest of 3.2
https://www.gnu.org/software/gcc/gcc-3.2/changes.html
It's here:
https://ftp.gnu.org/gnu/gcc/gcc-3.2.3/ 2003-04-23 17:18 26M
So the hard part is finding a pre compiled mingw or cygwin gcc 3.2.3 or as close to
IE:
gcc-3.4.4-999 (2005-05-19)
https://ptolemy.berkeley.edu/ptolemyII/ ... cygwin.htm (missing Bison, Flex, etc)
I'm not sure where I got 3.3.6 from?
https://www.gnu.org/software/gcc/gcc-3.3/
states:
Obsolete Systems
MIPS:
Generic ECOFF, mips*-*-ecoff*
I should have used GCC 3.2.3. which was the lastest of 3.2
https://www.gnu.org/software/gcc/gcc-3.2/changes.html
It's here:
https://ftp.gnu.org/gnu/gcc/gcc-3.2.3/ 2003-04-23 17:18 26M
So the hard part is finding a pre compiled mingw or cygwin gcc 3.2.3 or as close to
IE:
gcc-3.4.4-999 (2005-05-19)
https://ptolemy.berkeley.edu/ptolemyII/ ... cygwin.htm (missing Bison, Flex, etc)
Oh goodie you are trying again
-
gwald Verified
- Net Yaroze Enthusiast
- Posts: 313
- Joined: Sep 18, 2013
- I am a: programmer/DBA
- PlayStation Model: Net Yaroze
- Contact:
Ha, it's more complicated.
I can't find a full 2000-2010 repo cygwin
Might be easier getting a linux repo with a windows cross compiler and using that, but last time I tried:
So
You should have siont which was a rebuild of sicons to supports nt and non dos stuff
Who is online
Users browsing this forum: No registered users and 1 guest