Home | Forums | What's new | Resources | |
Developing under linux |
Deprecated: mb_detect_encoding(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/sub/sx/helpers.php on line 89 Deprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /var/www/html/sub/sx/helpers.php on line 93 Sep 6, 2005 - |
kahuna | Sep 6, 2005 | |||
Is anyone doing saturn dev under linux? If so, what do I need to get started? I already know C and C++ and I'm comfortable with emacs/vi and makefiles. |
runderwo | Sep 6, 2005 | |||
GNU SH toolchain, built for COFF if you are using SGL, and DOSEMU to run the AR software if you are using a AR card. |
kahuna | Sep 6, 2005 | |||
Ok, so now where do I find the Gnu Sh toolchain? Do I have to rebuild GCC to target sh? |
RockinB | Sep 6, 2005 | ||||
WTF????? www.kpitgnutools.com... |
runderwo | Sep 6, 2005 | ||||
Like I said, you can probably find a prebuilt one. In case he wanted to build the latest toolchain himself, I gave the procedure to do that. That's 'wtf'. |
ExCyber | Sep 6, 2005 | ||||
Or not.... That being said, I'm personally no longer using SGL/SBL and so probably won't be able to help you set up that package. |
kahuna | Sep 7, 2005 | ||||
Thanks for fixing this up for linux users. What are you using instead of SGL now? |
kahuna | Sep 7, 2005 | ||||
You might want to check out satburn, my linux saturn burning suite. I have a perl sub to patch ISOs and BINs. You might be able to turn that sub into something you like. http://forums.segaxtreme.net/index.php?showtopic=1... |
runderwo | Sep 7, 2005 | |||
By porting newlib, I mean implementing OS I/O functions that the C library uses. Of course, if all you care about is the math functions and don't need any kind of C library I/O, filesystem or OS features, then you don't need to bother with that at all. A combination of the C math library (which is OS agnostic) and SGL should work out then. Warning, it has been a while since I have played around with this stuff so take it with a grain of salt. |
kahuna | Sep 7, 2005 | ||||
1. Got yabause working. ./configure --prefix=/opt/yabause && make install no problems on IA32. 2. I'm just using the satconv binary for linux. No problems with it thus far. 3. mkisofs -sysid "SEGA SATURN" -volid "Your Progam" -volset "Your Program" -publisher "SEGA ENTERPRISES, LTD." -preparer "SEGA ENTERPRISES, LTD." -appid "YourProgram" -abstract "ABS.TXT" -copyright "CPY.TXT" -biblio "BIB.TXT" -generic-boot IP.BIN -full-iso9660-filenames -o YourProgram.ISO All of the necessary stuff to create isos is in saturnorbit. You should already have mkisofs installed if your running linux. This iso creation should be scripted too. bash, perl or python would do the trick. 4. This wasn't too bad. The process is as follows: - Make sure that you have GCC installed (the default one for your distro). There's nothing more time wasting than bootstrapping GCC if it's already available for your system. cd /usr/src - Get binutils source (http://www.gnu.org/software/binutils/...) - Get GCC source (gcc.gnu.org) - Get newlib CVS branch Instructions here: http://sources.redhat.com/newlib/download.html... - mkdir /tmp/build && mkdir /tmp/build/binutils && mkdir /tmp/build/gcc && mkdir /opt/sh-coff - unpack sources tar xjvf binutils tar xjvf gcc .. Move newlib and libgloss from newlib cvs src dir into gcc src directory. (src is the directory that newlib source is in on the cvs branch. dumb? yah.) mv src/newlib gcc mv src/libgloss gcc - Build binutils for sh-coff target cd /tmp/build/binutils /usr/src/binutils- --prefix=/opt/sh-coff -v 2>&1 | tee configure.out make -w all install 2>&1 | tee make.out - Now that binutils for sh-coff is build GCC can now be build targeted for the sh processor. cd /tmp/build/gcc PATH=/opt/sh-coff/bin:$PATH;export PATH /usr/src/gcc- make -w all install 2>&1 | tee make.out If all goes well you'll have a toolchain that targets sh-coff. You can make a sh-elf toolchain in a similar fashion. I did not include c++ support because it seems like libstdc++-v3 does not support sh as a target (wtf?). |
antime | Sep 7, 2005 | ||||
It does, but the last time I built it I had to disable something when configuring, possibly threading support. IIRC it was very obvious from the error messages. (This was an ELF toolchain. There may be some issues with COFF, but AFAIK it's planned to be dropped anyway.) |
mrkotfw | Sep 10, 2005 | |||
i develop fine under linux and freebsd with absolutely no limitations at all. i did build my own cross compiler (sh-elf-gcc) and it works fine (well, sometimes...) |
slinga | Sep 16, 2005 | |||
Thanks for your excellent advice Kahuna. I followed your guide and I had my saturn code compiling in no time. After setting up the compiler, I download Antime's cleaned up package (thanks Excyber) and everything seems to work after modifying the main Make template. The only mistake I made was at first I used an older version of binutils (2.10). Wouldn't compile for some reason. Eventually I gave up and downloaded 2.16 and that worked like a charm. |
kahuna | Sep 18, 2005 | |||
Good deal slinga. I'm glad it worked for you. I'm going to try to get around to writing my first program for tha saturn on Linux tonight. I've been using my Windows 2000 laptop but the fan died so until I replace that it's all Linux for me. |
mal | Aug 30, 2006 | |||
*bump for slinga* |
ExCyber | Aug 31, 2006 | |||
I'm not using anything right now. I have an SGL installation at the moment, but that was installed for rebuilding arflash in the course of debugging AR flash emulation in Yabause. When I get started again I'll most likely either code my own routines (since my usage won't be very demanding at first) or collaborate with others on a library. |