
1995 Programming on the Sega Saturn - bane
http://cowboyprogramming.com/2010/06/03/1995-programming-on-the-sega-saturn/
======
ewams
Thank you for sharing. I recently have begun an interest in programming for
old 1990's systems and this provides a great insight into the "best system" of
the time and how developers felt about it.

Curious about the dev kit. You mention that Sega provided sample code and
there was at least one other dev platform, did Sega provide support and good
documentation or did you always basically have to figure everything out for
yourself? Is this true for other vendors (ie, Nintendo, Sony and now MSFT)?

~~~
Grazester
For the Saturn? I think it was well known that documentation was bad. You see
where he said about figuring out how to use the second SH2 processor. Not even
Sega could figure out how use both of them efficiently(due to poor design)
until the end of the system's life so I don't think there would have been
useful documentation on that.

The Saturn failed because consumers were burned by Sega's add-on in the past
coupled with the fact that the system was expensive and lacked decent dev
tools at launch making is difficult to program for.

~~~
mjevans
I will readily agree to the /expensive/ part. I distinctly remember, as a kid,
looking at that system on the highest shelf in the game store in the mall, and
thinking that it cost a LOT of money.

Checking with the internet, USD 399/449 (a game included), but that's in 1995
dollars. The CPI places that as being nearer to 625 USD today!

[http://data.bls.gov/cgi-
bin/cpicalc.pl?cost1=399&year1=1995&...](http://data.bls.gov/cgi-
bin/cpicalc.pl?cost1=399&year1=1995&year2=2016)

~~~
aab0
It puts complaints about VR headsets in a different light when you think about
how much those consoles you loved as a kid cost after adjusting for 20+ years
of inflation. When you compare how expensive a NES was in real terms at launch
with how little you got in terms of possible experience, it drives home how
much computing has advanced over the years and how high (spoiled?) peoples'
expectations are now that they bitch about Oculus costing $700 or whatever.

~~~
snuxoll
Hell, look at people complaining about the Xbox One and PS4 costing $500 /
$400 at launch respectively.

------
lostgame
I've been experimenting with developing homebrew with this system as it's me
and my band's personal favourite.

As for the second SH2, by reading the official SEGA documentation, you can
clearly see there's some genuinely awesome functionality in there, that, if
used, could definitely offset a whole bunch of tasks in simple ways, such as
rendering and managing 3D objects, and a whole bunch of other neat stuff.

I imagine this is how Sonic Team managed to pull off NiGHTS Into Dreams...,
Burning Rangers, and whatever have you.

This is all well and awesome from a programmer's perspective, but I can't
imagine, with low sales figures and a high initial-level learning curve, it
would've been financially feasible to produce high-quality titles for the
platform that utilized these features.

------
kr0
The comment at the end about this being acceptable leaves me wondering. I
started programming in 2013 and doubt there was once a time where "bad" coding
was ok. Surely there was always someone on the other side of the fence. I
suppose when it comes down to it, there is getting it done and getting it done
today.

~~~
gnarbarian
Best practices have been evolving since the dawn of programming. Much like
today the technical culture at a given organization is the biggest influence
on the quality standard for code. There are some places that still consider
goto acceptable just like you can probably still find a doctor somewhere who
will use leeches.

At the same time many things are considered taboo for trendier reasons that
don't necessarily hold water. Many aspects of Functional programming for
example were considered heretical during the heydays of Object Oriented
programming until the pendulum started to swing the other way.

So what is considered a Taboo practice ebbs and flows with superficial trends
in the industry as often as it does for reasons grounded in solid engineering.

Regardless though, the biggest influence on what is acceptable at any given
time is the technical culture at an organization.

~~~
louthy
> There are some places that still consider goto acceptable

How about the C# compiler? :)

[https://github.com/dotnet/roslyn/blob/56f605c41915317ccdb925...](https://github.com/dotnet/roslyn/blob/56f605c41915317ccdb925f66974ee52282609e7/src/Compilers/CSharp/Portable/Parser/Lexer.cs#L747)

------
MuhHacker
Funny, recently i posted this
[https://news.ycombinator.com/item?id=11506724](https://news.ycombinator.com/item?id=11506724)

------
cube00
I guess we'll never be able to learn why Mick's code was so bad.

~~~
rocky1138
Wasn't it the stuff at the end? With all those magic numbers?

------
Grazester
[https://www.youtube.com/watch?v=6-YxOpZ7mDo](https://www.youtube.com/watch?v=6-YxOpZ7mDo)
For anyone in doubt of the Saturn's capabilities when programmed for properly.
It is said this was done with the aid of the 4 meg ram expansion cart and was
nearly completed when it was cancelled due to the early demise of the Saturn.
Yu Suziki has always been capable of doing amazing things with Sega's
console's. The resolution of Virtua Fighter for the Saturn for example which
leveraged the second SH2 processor for some duty and Ferrari 355 Challenge for
the Dreamcast

------
jason_slack
"It will also give Mick an overview of the sad and sorry state of his code,
hopefully prompting him to pull his socks up."

Best line ever..I wonder if I can sneak something like this into a code
review....

------
rocky1138
I love that it's 21 years later and, honestly, not much has changed. It's so
good reading these.

------
portlander12345
Had Mick left or was the author openly slagging on one of his colleagues?

~~~
d_j_b
Mick is the author's name. I think it's a joke?

