Post by Deleted on Feb 9, 2013 8:19:18 GMT -5
~BOOYAH BICHTES
Been up all night working on this ^_^
I'll spare you most of the details, but basically I managed to setup a mips64 environment that can compile and link official n64 sdk demo's without any errors or warnings.
Unfortunately, there's slight problem standing in my way that's preventing me from converting those object files to a rom...2 tools are missing from the sdk; elftbl and mild.
I know that mild is what converts the object files to a rom, and I'm pretty certain after some digging that elftbl might be used to create a table of all the object files that make up the rom; kinda like a filesystem.
Anywho, I'm keeping an eye out for those programs, so if you know anything gimme a bone If all else fails, I can just try to make my own; though that's metaphorically fixing a car without any knowledge of mechanics...
---------------
EDIT:
I found mild, but it's an sgi binary and can't be run on windows. There's an application that comes with it called exew32 that supposed to be used to execute it, but it won't work without the gcc.out file that comes with their distro of the gcc.
Lucky for me though, while digging around I found the documentation for the utilities, and may be able to make a wrapper for libdragon's makerom utility that'll make it accept the same arguments
---------------
EDIT:
I found the gcc for the official sdk!!! Unfortunately, I need a cd-key in order to install it. I'm screwing around in ram right now trying to confuse it, and hopefully get it to work
If it works, I can toss out my current setup and stick with everything official
SoulofDeity@SoulofDeity-PC /c/users/soulofdeity/desktop/n64sdk/src/pr/demos/onet
ri
$ make
mips64-elf-gcc -O2 -DNDEBUG -D_FINALROM -DF3DEX_GBI_2 -c -G 0 -mabi=32 -mips3 -m
gp32 -mfp32 -funsigned-char -D_LANGUAGE_C -D_MIPS_SZLONG=32 -D_MIPS_SZINT=32 -D_
ULTRA64 -D__EXTENSIONS__ -I. -I/c/users/soulofdeity/desktop/n64sdk/include -L/c/
users/soulofdeity/desktop/n64sdk/lib -g -o __elfcom.o __elfcom.c
mips64-elf-gcc -O2 -DNDEBUG -D_FINALROM -DF3DEX_GBI_2 -c -G 0 -mabi=32 -mips3 -m
gp32 -mfp32 -funsigned-char -D_LANGUAGE_C -D_MIPS_SZLONG=32 -D_MIPS_SZINT=32 -D_
ULTRA64 -D__EXTENSIONS__ -I. -I/c/users/soulofdeity/desktop/n64sdk/include -L/c/
users/soulofdeity/desktop/n64sdk/lib -c -o onetri.o onetri.c
mips64-elf-gcc -O2 -DNDEBUG -D_FINALROM -DF3DEX_GBI_2 -c -G 0 -mabi=32 -mips3 -m
gp32 -mfp32 -funsigned-char -D_LANGUAGE_C -D_MIPS_SZLONG=32 -D_MIPS_SZINT=32 -D_
ULTRA64 -D__EXTENSIONS__ -I. -I/c/users/soulofdeity/desktop/n64sdk/include -L/c/
users/soulofdeity/desktop/n64sdk/lib -c -o dram_stack.o dram_stack.c
mips64-elf-gcc -O2 -DNDEBUG -D_FINALROM -DF3DEX_GBI_2 -c -G 0 -mabi=32 -mips3 -m
gp32 -mfp32 -funsigned-char -D_LANGUAGE_C -D_MIPS_SZLONG=32 -D_MIPS_SZINT=32 -D_
ULTRA64 -D__EXTENSIONS__ -I. -I/c/users/soulofdeity/desktop/n64sdk/include -L/c/
users/soulofdeity/desktop/n64sdk/lib -c -o rdp_output.o rdp_output.c
mips64-elf-ld -o codesegment.o -r __elfcom.o onetri.o dram_stack.o rdp_output.o
--accept-unknown-input-arch -L/c/users/soulofdeity/desktop/n64sdk/lib -lgultra_
rom
mips64-elf-gcc -O2 -DNDEBUG -D_FINALROM -DF3DEX_GBI_2 -c -G 0 -mabi=32 -mips3 -m
gp32 -mfp32 -funsigned-char -D_LANGUAGE_C -D_MIPS_SZLONG=32 -D_MIPS_SZINT=32 -D_
ULTRA64 -D__EXTENSIONS__ -I. -I/c/users/soulofdeity/desktop/n64sdk/include -L/c/
users/soulofdeity/desktop/n64sdk/lib -c -o static.o static.c
mips64-elf-gcc -O2 -DNDEBUG -D_FINALROM -DF3DEX_GBI_2 -c -G 0 -mabi=32 -mips3 -m
gp32 -mfp32 -funsigned-char -D_LANGUAGE_C -D_MIPS_SZLONG=32 -D_MIPS_SZINT=32 -D_
ULTRA64 -D__EXTENSIONS__ -I. -I/c/users/soulofdeity/desktop/n64sdk/include -L/c/
users/soulofdeity/desktop/n64sdk/lib -c -o cfb.o cfb.c
mips64-elf-gcc -O2 -DNDEBUG -D_FINALROM -DF3DEX_GBI_2 -c -G 0 -mabi=32 -mips3 -m
gp32 -mfp32 -funsigned-char -D_LANGUAGE_C -D_MIPS_SZLONG=32 -D_MIPS_SZINT=32 -D_
ULTRA64 -D__EXTENSIONS__ -I. -I/c/users/soulofdeity/desktop/n64sdk/include -L/c/
users/soulofdeity/desktop/n64sdk/lib -c -o rsp_cfb.o rsp_cfb.c
got here
SoulofDeity@SoulofDeity-PC /c/users/soulofdeity/desktop/n64sdk/src/pr/demos/onet
ri
$
Been up all night working on this ^_^
I'll spare you most of the details, but basically I managed to setup a mips64 environment that can compile and link official n64 sdk demo's without any errors or warnings.
Unfortunately, there's slight problem standing in my way that's preventing me from converting those object files to a rom...2 tools are missing from the sdk; elftbl and mild.
I know that mild is what converts the object files to a rom, and I'm pretty certain after some digging that elftbl might be used to create a table of all the object files that make up the rom; kinda like a filesystem.
Anywho, I'm keeping an eye out for those programs, so if you know anything gimme a bone If all else fails, I can just try to make my own; though that's metaphorically fixing a car without any knowledge of mechanics...
---------------
EDIT:
I found mild, but it's an sgi binary and can't be run on windows. There's an application that comes with it called exew32 that supposed to be used to execute it, but it won't work without the gcc.out file that comes with their distro of the gcc.
Lucky for me though, while digging around I found the documentation for the utilities, and may be able to make a wrapper for libdragon's makerom utility that'll make it accept the same arguments
---------------
EDIT:
I found the gcc for the official sdk!!! Unfortunately, I need a cd-key in order to install it. I'm screwing around in ram right now trying to confuse it, and hopefully get it to work
If it works, I can toss out my current setup and stick with everything official