CALENDAR
S M T W T F S
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30     
<<  2024 - 04  >>

PROFILE
同人誌 電子書籍版
Re:ゼロから始める
ゲームシナリオ


ライトニング伝説


さよならハドソン


ドラクエとFFと
ToHeart


誰得ゲームライフ


ときめきメモリアル
の時代

イースI・II製作メモ

頒布ページ
LINKS
NEW ENTRIES
CATEGORIES
COMMENTS
    イースⅠ・Ⅱ通史(3):『リグラス』から『ロマンシア』
  • タムロ (02/03)
    イースⅠ・Ⅱ通史(1):PC88MkⅡSRの発売
  • tamuro (01/05)
  • おお! (01/03)
TRACBACKS
OTHERS
SEARCH BOX
POWERED BY
POWERED BY
ぶろぐん
DESIGN BY
ブログンサポート

PC-9801版ギャプラスについての覚書
Twitterでギャプラス98版の話がたまたま出て、それ絡みのことがあったので、まとめてメモとして残しておく話。

ギャプラスはナムコのギャラクシアン→ギャラガと続いてきたナムコの固定型画面の縦シューティングの第三弾で1984年にリリースされた作品だ。

そしてギャプラスのPC-9801版(NECから出ていたパソコンのシリーズ)はキャリーラボが移植して発売しているのだけど、これの移植は非常にレベルが高いので有名だった(そしてナムコミュージアムで出るまではギャプラスの唯一の移植だったはず)。
移植したのはHahi君。
当時、キャリーラボの社員で、アルファシステムの創業者の一人だ。

なんでこんなことを知っているのかというと、たまたま凄ノ王伝説だのイース1・2だのを作っている間に、彼が移植したという話を聞いていたから。だから、そういう内容をひょいとツイートしたわけなのだけど…そこにこんな質問が来た。

いま思い返しても、16bitとはいえ初期のPC98でよくもあれだけスムーズに動かせたものだと感心してしまいます。
アルゴリズム的にもかなりイケてたように思うのですが、あれは目コピだったのでしょうか?

と、聞かれ、確かにそれについては知らないなと思ったので、今でも連絡がつくHahi君にちょっと聞いてみた。
さすがに25年以上も前の話なので、覚えていない可能性もあるとは思ったけれど…そこはHahi君、キッチリ覚えていた。



答えは以下のとおり

ROM引っこ抜いて、逆アセ読みました。初めて6809のコード読みました。グラフィックデータもROMから全部抽出しました。2つのCPUが同期しながら動いていて、ICEでメインCPU止めるとサブがリセット掛けやがるので苦労した覚えがあります。


若干わかりにくいところがあるので、コメントがてら、いろいろ解説しておきたい。

●基板からROMを引っこ抜いて、逆アセ読みました。
ROMを引っこ抜いて、中身をディスアセンブラにかけてソースを読める形にしたってこと。つまりナムコからソースは提供されていない(これは当時のアーケードの移植の常識だったと思う)。ついでに書いておくと、当時はオールアセンブラでゲームを書くのは常識だった。

●初めて6809のコード読みました。
6809は当時のインテルと並ぶ2大CPUメーカーの一つ、モトローラが出した「究極の8bit」と謳い文句があったCPU。確かにアドレッシングとか使いやすかったよ。1984年というと、もうFM-7が出ていて一大勢力だったのだけど、キャリーラボはMZシリーズに主力があった=Z80系だったので、読んだことがなかったのだろう。
このあとしばらくして、キャリーラボは"DOG"に参入し、ファミコンディスクシステムのゲーム『ハオ君の不思議な旅』をHahi君は書くことになるので6502も書けるようになる。

●グラフィックデータもROMから全部抽出
当時のアーケードはVRAMではなくVROMなので、ROMに直にキャラクタパターンが焼きこまれていたのである。

●2つのCPUが同期しながら動いていて…
ギャプラスは6809のデュアルプロセッサ(2つのCPUが搭載されていること)だったので、プログラムの解析のためにICEで片方のCPUを止めると、もう一方のCPUにリセットがかかるから、解析がしづらかったって話。

というわけで、ギャプラスのPC-9801移植版は、目コピではなく、ソースを解析し、カッチリと移植されていた作品だったわけだ。
ちょっとした記録として残しておく次第である。
|| 01:10 | comments (0) | trackback (0) | ||

このエントリーをはてなブックマークに追加

コメント
この記事のトラックバックURL :
トラックバック