slinga
Established Member
I was searching on the net this morning for some more saturn programming information (specifically the GFS library). As I got further and further down the results I started getting fewer and fewer actually information sites and pretty much just resumes. So I said what the hell, and I emailed about 20 people who said they had Saturn programming experience. I got a few responses back already:
#1
"Heh. You're really setting yourself up for some pain on the Saturn. I _may_ have a CD with docs around somewhere. Though to do any development you'll need a dev system like a PsyQ. That should provide you with docs as well."
#2
"I have no docs I can post. They are under NDA. You should be able to dig some stuff up on the net.
Perhaps you should choose some platform besides the Saturn if you can, since it was not very popular. That way it might be easier to find info. The gameboy advance has many sites with good information, devkits, etc.
I think www.gbadev.org or something like it is good."
#3
"The Saturn is one highly complex beast, and really not recommended for a first system to learn game programming on. Like most consoles, it requires a dedicated development kit connected to a PC before you can do anything. Those kits should have come with documentation/samples, which you should be able to run and examine to see how they work. TPA was written in 100% C code, with the Sega Game (or was that Graphics?) Libs version 3.0 or 3.1. Getting out and writing to the metal wasn't needed on TPA, but a more advanced game would have required it."
#4
"Wow, it's been about 7 or 8 years since I even touched a Saturn, so I don't think I can do much for you. I don't have any docs or other reference materials any longer.
The one thing I do remember is that Sega of Japan provided to developers a graphics library called SGL, which ran entirely on one of the two SH2 CPUs; the expectation was that the all the rest of the game would be run on the other CPU. This wouldn't necessarily be the optimum load-balancing arrangement, but it was a simple way to take some advantage of the dual-CPU configuration.
Oh, yeah, and the graphics hardware only knew how to draw quadrilaterals (4-gons), which was a poor fit to all the 3d tools in the world that deal with triangles. My boss's summary of the architecture was that the Saturn was the best
2D console ever
Good luck!"
That was interesting.
#5
"I have a few things sitting around, but not too much that isn't readily accessible elsewhere.
Most of the documentation and getting started type stuff that I ran into can be found on Anders Montonen's page, which is located at:
http://www.helsinki.fi/~ammonton/sega/docs.html
As far as game programming and such goes, I'm relatively clueless in those matters. Most of the work I did (and continue to do, in occasional spare time) was simply related to the SH7604 itself, and more precisely getting linux running on it in an MP sense. Although preemptive multitasking tends to have its drawbacks in an MP environment without an MMU.
I'd consider posting on a developer forum, but as I've noted already, my time is relatively limited, and my experience with the Saturn as a whole is likely sub-par to other developers, particularly those with gaming interests. I'm fully capable of answering questions relating to
the SH-2/3/4/5 though, both in a UP and MP setting."
He told me to check Antime's site.
#6
"The problem as I remember would be getting the development tools. You don't have to have the emulator for the processor which we used for the serious debugging, but you do need the plug in card that lets you download code to the Saturn for testing. The gcc compiler for the Hitachi processor, an SH2 if I remember, shouldn't be a problem but you need the Saturn libraries.
If you don't have the download card to test an executable, you have to burn
a CD for every test and use a key CD which lets the Saturn load a CD which
doesn't have the production key info that Saturns require. I still have a version
of Indycar for Saturn which won't run for lack of the key disc.
I'm completely unaware of any Saturn dev forums, are there any? I've
programmed on a lot of platforms, computers, embedded systems, cameras, etc., and the Saturn was the worst I ever dealt with. We didn't have enough technical information from Sega to do things correctly and with high performance.
Sony was selling low cost development kits for Playstation, something like
$1000, which would be a better way to go.
I went to a Saturn Dev Con in CA shortly before Papyrus gave up on the
Saturn project and all of us developers were beating up on the Sega folks to give us the information we needed. After one session a few of us actually prevented the Sega guy from leaving the room until he answered some key questions about graphics timing. We let him leave after he promised to get us the answers, which he never did.
If I can be of more help let me know."
I was actually hoping to get some people who might still have a few of their own personal notes.
#1
"Heh. You're really setting yourself up for some pain on the Saturn. I _may_ have a CD with docs around somewhere. Though to do any development you'll need a dev system like a PsyQ. That should provide you with docs as well."
#2
"I have no docs I can post. They are under NDA. You should be able to dig some stuff up on the net.
Perhaps you should choose some platform besides the Saturn if you can, since it was not very popular. That way it might be easier to find info. The gameboy advance has many sites with good information, devkits, etc.
I think www.gbadev.org or something like it is good."
#3
"The Saturn is one highly complex beast, and really not recommended for a first system to learn game programming on. Like most consoles, it requires a dedicated development kit connected to a PC before you can do anything. Those kits should have come with documentation/samples, which you should be able to run and examine to see how they work. TPA was written in 100% C code, with the Sega Game (or was that Graphics?) Libs version 3.0 or 3.1. Getting out and writing to the metal wasn't needed on TPA, but a more advanced game would have required it."
#4
"Wow, it's been about 7 or 8 years since I even touched a Saturn, so I don't think I can do much for you. I don't have any docs or other reference materials any longer.
The one thing I do remember is that Sega of Japan provided to developers a graphics library called SGL, which ran entirely on one of the two SH2 CPUs; the expectation was that the all the rest of the game would be run on the other CPU. This wouldn't necessarily be the optimum load-balancing arrangement, but it was a simple way to take some advantage of the dual-CPU configuration.
Oh, yeah, and the graphics hardware only knew how to draw quadrilaterals (4-gons), which was a poor fit to all the 3d tools in the world that deal with triangles. My boss's summary of the architecture was that the Saturn was the best
2D console ever

Good luck!"
That was interesting.
#5
"I have a few things sitting around, but not too much that isn't readily accessible elsewhere.
Most of the documentation and getting started type stuff that I ran into can be found on Anders Montonen's page, which is located at:
http://www.helsinki.fi/~ammonton/sega/docs.html
As far as game programming and such goes, I'm relatively clueless in those matters. Most of the work I did (and continue to do, in occasional spare time) was simply related to the SH7604 itself, and more precisely getting linux running on it in an MP sense. Although preemptive multitasking tends to have its drawbacks in an MP environment without an MMU.
I'd consider posting on a developer forum, but as I've noted already, my time is relatively limited, and my experience with the Saturn as a whole is likely sub-par to other developers, particularly those with gaming interests. I'm fully capable of answering questions relating to
the SH-2/3/4/5 though, both in a UP and MP setting."

#6
"The problem as I remember would be getting the development tools. You don't have to have the emulator for the processor which we used for the serious debugging, but you do need the plug in card that lets you download code to the Saturn for testing. The gcc compiler for the Hitachi processor, an SH2 if I remember, shouldn't be a problem but you need the Saturn libraries.
If you don't have the download card to test an executable, you have to burn
a CD for every test and use a key CD which lets the Saturn load a CD which
doesn't have the production key info that Saturns require. I still have a version
of Indycar for Saturn which won't run for lack of the key disc.
I'm completely unaware of any Saturn dev forums, are there any? I've
programmed on a lot of platforms, computers, embedded systems, cameras, etc., and the Saturn was the worst I ever dealt with. We didn't have enough technical information from Sega to do things correctly and with high performance.
Sony was selling low cost development kits for Playstation, something like
$1000, which would be a better way to go.
I went to a Saturn Dev Con in CA shortly before Papyrus gave up on the
Saturn project and all of us developers were beating up on the Sega folks to give us the information we needed. After one session a few of us actually prevented the Sega guy from leaving the room until he answered some key questions about graphics timing. We let him leave after he promised to get us the answers, which he never did.
If I can be of more help let me know."
I was actually hoping to get some people who might still have a few of their own personal notes.