Another Saturn SDK

I've finished the first sample, which I made a video of


After trying to get the gamepad to work with interrupts from the SCU and it not working, I decided to seek out any information from past demos to help me out. I used some code from Charles MacDonald's VDP1 example code and used the polling method instead of interrupts.
 
This is a pretty noob question: this SDK compiles ELF and SaturnOrbit can compile in ELF and COFF. What's the difference between ELF and COFF on the Saturn? Why would I chose one over the other?
 
The main reason for ELF is that sh-coff was dropped from GCC a while ago (from 4.5 onward), and the benefits that come with updating GCC are greater than supporting COFF. It's entirely possible (and it's still in the GCC-SH2 repository) to compile the COFF version.
 
I'm going to be removing the sh-coff for SH-2 build scripts soon, which also means I'll be renaming $SATURN_ROOT/toolchain_elf to $SATURN_ROOT/toolchain. This is to keep the directory structure more organised so that one reference to $SATURN_ROOT/toolchain covers the compiler and make tools.

At the moment, I'm taking a break from learning the CD block to work on MSYS2 integration and finally setting up the Saturn SDK program group in Windows' Start menu.
 
MSYS2 is working well. The $SATURN_ROOT/toolchain/bin directory has been added to the $PATH in MSYS2. Code::Blocks has a shortcut for the freedesktop.org Desktop Entry specification. However, the Windows Start Menu shortcut for Code::Blocks is not working at all, despite the entry for MSYS2 working just fine. Further investigation is required.

When you update the IDE, you may need to reinstall it for the new $SATURN_ROOT/toolchain directory to take effect. I had this happen on one machine, but not the other for some reason.

I'll be looking into integrating the $SATURN_ROOT/toolchain/bin directory as an appendage to the $PATH for the GNU/Linux version as a check-box at the end of the installation. As MSYS2 is intended to be the terminal for Windows, this won't be necessary considering there shouldn't be any conflicts for the tools.

EDIT:
I have fixed the IDE shortcut for Windows. Turns out I was modifying the wrong file for the installer. The IDE is the only project that requires a separate set of build scripts for Windows.
 
Last edited:
Hello. I am not dead, just working on a lot of things at once. At the moment, I'm trying to get access to the CD block (still) and while it's proving a challenge, I want to get at least file reading (not name-based) done before 2016. Currently, going over the documentation and source code from SEGA's Saturn SDK. Some of the code isn't available, so I've disassembled the libraries to figure it out. This is also very helpful, as I've learnt a lot more about compiler-produced assembly and Hitachi SuperH assembly in general.
 
Hello. I am not dead, just working on a lot of things at once. At the moment, I'm trying to get access to the CD block (still) and while it's proving a challenge, I want to get at least file reading (not name-based) done before 2016.
i'm curious, what did you disassembled ? if it's about cd access CyberWarriorX did already that big job, i think he has provided cdc replacement sources too. well, anyway always great job RedRingRico !
 
Correct, I am indeed disassembling the CDC_* functions. It's good for me to learn how to do it in any case. My SH assembly skills are pretty lacking, so this is a good incentive for me to get to know it =P. It's looking less likely that I'll meet my New Year's deadline, as I'm also repairing my Dreamcast Dev. Box. Took me five hours to get somewhat accustomed to the rework station I'm using (which is my Xmas present ;P).
 
it seems, there is a new release of SSSDK with gcc 5.2 (published just 3 days ago) that's a great news !
on a side note, neblib was moved to GIT here :

https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git

Newlib 2.3.0 is released

The latest snapshot is on the ftp-site.

*** Major changes in newlib version 2.3.0:

- dynamic atexit logic fixed
- various arm performance enhancements
- new version of strtold
- doc improvements
- arc platform support redone
- strftime improvements/enhancements
- imported logic from FreeBSD
- locking fixes
- complex math enhancements
- visium platform support added
- or1k platform support added

ftp://sourceware.org/pub/newlib/index.html
 
Quick Update
I've managed to finally get Code::Blocks building for Windows under Linux via the MinGW-w64 compiler. Therefore, I can delete the Amazon EC2 server which was set up last year to handle the Windows version of Code::Blocks.

Also, the next version of GCC removes SH5/SH64. Luckily there are still people using SH-1/2/3/4 out there, so we should be good for the future.
 
If anyone on windows has an issue with the installer failing at 26% after uninstalling a previous version check to see if one of the files was open.

I had the install log open in notepad even though the file was deleted and this froze the install repeatedly. It wasn't until after I closed the files that I was able to install the SSSDK 🙂 this is most likely a fail on windows part but just wanted to share it in case someone else runs into the same problem
 
Back
Top