サターンでのゲーム開発を振り返ってみる

unyon氏の切ない「PSOサービス終了」のツイートをきっかけに、私のサターン開発経験を綴ってみました。「ウイングアームズ」と「F-1 Live Information」というソフトです。たぶん94~95年あたり。なにぶん記憶力がヘナチョコなもので…事実誤認その他、ご指摘頂ければ幸いです(*^_^*)
38
西山 信行 @5mingame2

PSOのサポートが徐々に閉じていく… これもオンラインゲームの宿命か。三吉さん元気にしてらっしゃるのかしら。 http://psobb.jp/

2010-12-27 22:14:16
西山 信行 @5mingame2

三吉さんをウィキで調べたらウイングアームズはあれど、F-1 Live Information が抜けとる!こらーっ!

2010-12-27 22:20:47
西山 信行 @5mingame2

当時はまだC言語をちゃんと理解できなくて、サターンで動くプログラムはSH-2アセンブラで書いてた。フルアセンブラw でもSEGA薫製のライブラリはCから使う前提。 なので仕様を調べてどうにかした。 引数の数でレジスタ渡しかスタック渡しかが変わる、懐かしくもしょっぱい時代…

2010-12-27 22:33:41
西山 信行 @5mingame2

画面描画とかメモリ管理とか、大抵のは自分たちで実装してたけど、さすがにCD読み込みやサウンド、パッド入力、シネパック再生あたりはどーにもならへん…というか、ライブラリを使えとのお達しがあったのでそんな感じでゲーム作ってました。

2010-12-27 22:37:28
西山 信行 @5mingame2

セガサターンのライブラリ、パッドを扱うのがなにげに優秀で、標準のコントローラーとかアナログミッションスティックとかマルチタップとか透過的に扱えるようになってて、そのあたりは楽させて貰いました。それと比較すると…PS、PS2は少し扱い辛かった。

2010-12-27 22:40:27
西山 信行 @5mingame2

ウイングアームズもF-1 Live Informationも、当時としては珍しかった全画面・1670万色・30fpsでの動画を実現してたんだけど…それがどーした感が(涙) SH-2のアセンブルのコードからCで書かれたシネパックのライブラリを呼び出してた苦労は一体…

2010-12-27 22:27:46
西山 信行 @5mingame2

@ReplicantNexus6 SH-2はそんなに難しくなかったような… 2命令ずつ同時に解釈されるのさえ気を使ってれば、変なメモリ仕様とかアクセス仕様とか無かったですし ジャンプ命令の次に代入命令が書けたりと、なかなかにアクロバティックw

2010-12-27 23:06:41
シン・Yoshio Fukushima @fukushimasan

@5mingame2 初期タイトルはハウスライブラリ開発が間に合わずに、自分らでハード直叩きしてましたよ(遠い目)

2010-12-27 23:21:12
西山 信行 @5mingame2

@fukushimasan 内部だからこそできる裏技ですね。当時お借りした技術資料ではかなり公開範囲が限定されてた覚えがあります。CDとかペリフェラル周りがゴッソリ無いw C言語はこの後N64の開発をするに当たって「C言語以外無理!」という状況でようやく身につけた超保守です(汗)

2010-12-27 23:28:35
シン・Yoshio Fukushima @fukushimasan

@5mingame2 内作部隊も同じような資料だったと思いますよ。むしろ、ハード仕様と違う記述を指摘して、ハードが間違ってるのか、ハード仕様書が間違ってるのかって突っ込むことも作業のひとつでした。だから、ゲーム本体の開発が全然進まないんですわ。いわゆる人柱w

2010-12-27 23:33:26
シン・Yoshio Fukushima @fukushimasan

@5mingame2 当時はですね、日立製のコンパイラの性能がgccより低くて皆でニヤニヤしてたんですが、バージョンアップしていくうちにやっと追い越したって逸話があります。アセンブラは頭から使ってなかったっすよw

2010-12-27 23:19:43
シン・Yoshio Fukushima @fukushimasan

@5mingame2 チップ屋からすると、RISC チップとコンパイラはセット販売が常識なので、本家コンパイラが性能が悪いのは NG なんすよ。基本的にチップの事を熟知してないとアセンブラで書いても性能は出ない。本家のコンパイラを使うのが正しい、というのが一般的な話。(…はず)

2010-12-27 23:27:58
西山 信行 @5mingame2

@fukushimasan 自分の経験上、X68kの頃から本家コンパイラはイマイチ感があります。PS、PS2がgccコンパイラを標準としてる事からも、チップへの最適化手法やその他、すでに一企業で抱えるよりオープンソースに出資して作って貰う方がよっぽど完成度も高く低コストな印象です

2010-12-27 23:34:52
シン・Yoshio Fukushima @fukushimasan

@5mingame2 確かに…。本家がダメなのか、gccがすごいのか。後者でしょうがw

2010-12-27 23:38:58
西山 信行 @5mingame2

@fukushimasan X60kのコンパイラも純正よりハドソン製(デベロッパ向け)やgccの方が断然良かったですし…先輩らも同意見です。 ノウハウの蓄積がパンパないのでしょう。 仕様書とハードが違うじゃん!ってのは多かったですね…グラフィック周りのレジスタはもちろん直叩きw

2010-12-27 23:43:53
Daisuké Nishioka🌻 @ReplicantNexus6

@5mingame2 @fukushimasan その課程をリアルタイムに見ていたので、日立には思い入れがあります。スパコンの内側にお札を貼ったりしてたし。

2010-12-27 23:39:08
シン・Yoshio Fukushima @fukushimasan

うわっ、さらに中の人ですか!? 逃げよっ…(;´∀`) RT @ReplicantNexus6 @5mingame2 @fukushimasan その課程をリアルタイムに見ていたので、日立には思い入れがあります。スパコンの内側にお札を貼ったりしてたし。

2010-12-27 23:43:19
西山 信行 @5mingame2

@ReplicantNexus6 その後のドリームキャスト(SH4)では、コンパイラもライブラリもかなり充実してたので、「日立も頑張ってるなー」などと思いつつ開発した記憶が。

2010-12-27 23:45:24
西山 信行 @5mingame2

@ReplicantNexus6 ところがどっこい。SH-4は価格性能比が非常に優れていて、ちょい拡張されたのがまだ現役で活躍してる程にヒットした商品みたいなんですよ。

2010-12-27 23:52:26
Daisuké Nishioka🌻 @ReplicantNexus6

@5mingame2 そ、そうなんですか? 今はルネサスとかエルピーダとかがやってるんでしょうね。

2010-12-27 23:53:25
西山 信行 @5mingame2

@ReplicantNexus6 ですです。お詳しいですね! いまだに拡張されて使われ続けるSH-4!w SH-5は64bit系。まだそこまでは要らない…みたいな? http://ja.wikipedia.org/wiki/SuperH

2010-12-27 23:56:49
西山 信行 @5mingame2

あとサターン。バックグラウンドでのCD読み込みも比較的楽に実装できるように準備されてたんで、F-1 Live Informationの実況の実装はどちらかと言うと仕様書通りにデータを解釈する部分の方に時間が掛った…とかすかな記憶w 基盤が3階建てのは初期中の初期ロットで貴重

2010-12-27 22:50:43
西山 信行 @5mingame2

あと当時ニフティにうっかりサターンのシネパックの仕様を書きこんで先輩に超叱られたのも今は昔w とまぁ…どっかの会社に属してたら抹殺されかねない呟きでしったー (おおげさ)

2010-12-27 22:54:49