Home | Forums | What's new | Resources | |
Another Saturn SDK |
Red Ring Rico - Jun 29, 2014 |
1 | 2 | 3 | 4 | 5 | Next> |
Red Ring Rico | Jun 29, 2014 | |||
Hey, all. I've been working on a kind of Saturn SDK, the goal is to make Saturn development as simple and quick to get into as possible (of course, there's still the learning curve of Saturn programming). At the moment, it is just a bare-bones Hitachi SH-2 ELF toolchain; GCC (6.2.0), GMP (6.0.1), MPFR (3.1.5), MPC (1.0.3), binutils (2.27), newlib (2.4.0), GNU Make (4.1), and the Code::Blocks IDE. For Windows, there is also MSYS2. There are still many things left to do, such as generate another compiler for the Motorola chip, include mkisofs, provide a set of sample programs, tutorials, and documentation (reference material, best practices, tutorials/guides) It would be great if anyone wants to contribute to this SDK in any way, whether that be writing documentation, reporting bugs, code samples, or adding features and tools. The build scripts currently run under Linux at the moment. I'm sure with some modification they will work under MacOS, BSD, SunOS, or Windows. You can check them out: Installer... Hitachi SH-2 GCC... SGL... GNU Make... Documentation... IDE... MSYS2... Download Windows 32-bit... Windows 64-bit... Linux 32-bit... Linux 64-bit... For the Linux versions, you will need to use chmod to allow yourself read and execute permissions: $ chmod 755 Bugs/Improvements Please report any bugs/improvements with the GitHub issues page for each project. For general-purpose suggestions not specific to any tool, create a new thread in the sub-forum Rico's Saturn SDK.... If you have created or are currently creating a tool you would like to have included in the SDK, create a repository of your own and start a thread on the sub-forum or message me directly. Thank you. |
antime | Jun 30, 2014 | |||
An ELF toolchain should still be able to link COFF objects, so converting the libraries is not necessary. |
vbt | Jul 1, 2014 | |||
great job Red Ring Rico ! all latest stuff, it will replace kpit which quite old now do you provide make.exe with gcc ? |
antime | Jul 5, 2014 | |||||
You at least didn't use to have to do anything. Just list them on the linker command line like all other objects and libraries, and the linker would handle the rest. However, since COFF support is obsoleted it may be that this capability has been removed. |
ExCyber | Jul 5, 2014 | |||
I don't recall having to do anything special to link COFF objects into an ELF executable either. As I recall the main point of writing libbfd was for the linker itself to not care about file layout details as long as the necessary metadata was present somewhere. |
petterk | Jul 7, 2014 | |||
Great job! This is much needed for the developers using Linux like myself. However, if you could throw in the assemblers into the installer too that would be even better and maybe the SBL library to make it a all-in-one SDK. For IDE, Im using Codeblocks for Dreamcast with KOS as it lets you set up multiple profiles for the compilers etc. I can even try to help you with some of the stuff when i get back from turkey (vacation). I'll contact you on github |
vbt | Jul 7, 2014 | |||
[attachment=4408] some size improvement and some speedup comparing to kpit 13 |
Amon | Jul 23, 2014 | |||
Thank you so much Red Ring Rico!!!! I may have to update my post on Saturn Dev using Codebocks |
cafe-alpha | Aug 3, 2014 | ||||
Sorry for the noob question but I can't get saturn-sh2-elf-ld finding correctly libgcc.a :-/
Code:
Here is what I tried so far : -lc C:/SaturnOrbit/saturn-sdk/toolchain_elf/lib/gcc/sh-elf/4.9.0/libgcc.a -LC:/SaturnOrbit/saturn-sdk/toolchain_elf/lib/gcc/sh-elf/4.9.0/ -lgcc Does anyone know the command to specify libgcc.a path to ld ? |
cafe-alpha | Aug 3, 2014 | ||||||||
Fixed I used gcc to link everything instead of directly calling ld. Edit : it compiles fine, but sdc/gfs libraries don't work correctly (file is not read from CDROM), it is probably because too much code is stripped ... |
vbt | Aug 4, 2014 | |||||
same problem with kpit 12 or 13, i didn't find a way to fix it (few search) |
cafe-alpha | Aug 4, 2014 | |||||||||
-O0 compiles as expected, but -O1 makes GFS init function to fail. I may have found a non-subtle solution (as usual with me |
cafe-alpha | Aug 5, 2014 | |||
I upgraded all my projects to Saturn SDK compilers. Thank you Red Ring Rico The solution I used to read files from CDROM was to drop SBL libraries and use CyberWarriorX library instead. Too bad Saturn SDK doesn't includes make.exe : this is the last utility that forces me to use SaturnOrbit. |
jae686 | Aug 16, 2014 | |||
Could you supply a very simple example of a "hello world" ? Best Regards. |
vbt | Aug 16, 2014 | |||||
this : http://vberthelot.free.fr/SX/satdev/programs/Daniel%20Eriksson/xmasg.rar or that : http://vberthelot.free.fr/SX/satdev/programs/andreass/freq1.zip and you have Rockin'-B's tutorial : http://vberthelot.free.fr/SX/satdev/tutorial/SaturnGameTutorial.htm |
vbt | Sep 5, 2014 | |||
could it be useful for saturn newlib ? --enable-newlib-nano-malloc lib_a-nano-mallocr.o (9 452 bytes) lib_a-mallocr.o (19 540 bytes) after some test no speed loss binary size smaller by 7-8kb |
vbt | Sep 28, 2014 | |||
with gcc 4.9.0 & 4.9.1 there is a new option to display colors on some events like warning or errors. after building 4.9.1 it doesn't work because it seems to be disabled for windows the fix : https://raw.githubusercontent.com/nak5124/build_env/master/gcc_build/patches/gcc/0010-color.patch and set GCC_COLORS to "error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01" more details here : http://sourceforge.net/p/msys2/mailman/message/32804660/ |
cafe-alpha | Sep 28, 2014 | |||
Are you working on building gcc 4.9.1 for SH-2 ? I can't wait to see my console window filled with red colored text |
Red Ring Rico | Sep 30, 2014 | |||
I'm sorry about being overly-absent from maintaining this SDK recently. I finally fixed my Katana Dev. Box a few weeks ago and have been kind of wrapped up with it, along with having gotten back into collecting older PC hardware. Anyway, I'm trying to re-balance and dedicate a part of my week to maintaining the SDK. vbt: Thanks, I'll have to check out nano-malloc. There are probably a lot of options for the tools and libraries which could help with creating a more appropriate set of tools and libraries for the Saturn. About the colours; I've always dumped the output of my compiler and linker messages to files for colourisation at a later stage, so I haven't yet seen the new colour highlighting. I was sceptical of using the newer GCC so soon after its release, therefore I'll be including that as soon as I can. I can get GNU make in the SDK tonight and try for GCC 4.9.1 by the end of the week (assuming there are no major build problems). The IDE is kind of getting there. I'm having a devil of a time just getting a new test project wizard running, Code::Blocks builds and includes it, but I can't seem to get it to go to the stage of creating directories in the wizard (I copied the default Console project wizard and modified it). I can include the IDE, but for now it won't be able to build Saturn executables without a lot of user intervention. |
1 | 2 | 3 | 4 | 5 | Next> |