X68K 雑学講座

最終更新日:2001年3月10日

EX68を使っておうとすると恐らくX68000固有の世界の単語があるだろう。
一つの世界を創りあげた、X68000という世界を語るにはあまりにも私の力では不足しているが、できるだけ他では書かれないようなことをかいてみようと思う。
基本的な(?)詳しい事は他のWebページを当たってもらえればと思う。

機種について

X68Kには大きく分けて3系統あると考えられる。
型番がもちろんある(例えば初代はCZ-600C)のだが、ユーザーでもそれを覚えている人は少なく、自動車のようにメーカーのつけた愛称でよばれることがほとんどである。 ここでもそれに準ずる。

1)MPU(CPU)がMC68000 10MHzである初代、ACE、EXPERT、PRO
2)MPUがMC68000 16MHzであるXVI、XVICompact
3)MPUがMC68030であるX68030
以上の分類になる。
初代、ACE、EXPERTは外見上もほとんど違いがなく、本体についているロゴ(バッジ)において判断かつく程度である。
いずれも「マンハッタンシェイプ」と呼ばれる縦形でビルが2つ並んでいるような形状である。 PROはATケースでいえばデスクトップと呼ばれる分類、もしくはPC9801のような形であり、4つの拡張スロットを持つ事が特徴といえる。(他の機種は2つ)
ソフトウェア上はXVIまではクロックを含めて完全互換性をかたくなにもちつづけている。
厳密に言えば完全ではないが、それはプロテクトに属するような、非常にクリティカルなものであり、PC互換機、いやPC9801同士(EPSONの話しではなくNEC自身の機種)の互換性に比べても問題のあるレベルでは全くない。 XVIが登場したあとでも初代でも問題なくソフトが動くことがあたりまえとされていた。
ゲームでもXVIでないと遊べない、というものは極めて僅かであった。
むしろ、XVIで重くならない、とか表示の細かさが自動的に増える、とかそういう対応がされていた。
68030においてMPUが変わっているために完全互換は難しく、それまで発売されていたもののうち、動かないゲームが多発してしまったが(2次キャッシュの関連らしい)、パッチあてなどで回避できるケースは多かったようだ。

フォントについて

X68000では8ドット、16ドットのフォントの他に24ドットのフォントをROMにもっていた。おかげでフォントだけで768KByte近くもあった。 当時はRAMでさえ、1MByteを積むのがやっとであり、8MbitROM(つまり8Mbit=1Mbyte=1024Kbyte)のROMを使ったゲームなどはまだまだ少なく、この大きさは「贅沢」というものであった。
X68000においてはキャラクタ表示はビットマップ表示であり、DOS/Vと同じである。 ただし、DOS/VではグラフィックRAMにビットマップ表示してテキスト表示しているが、X68000ではテキストRAMというテキスト表示用にグラフィックRAMと同様のものを持っていた。 ちなみにこの構造はPC9801やDOS/VにおけるグラフィックRAMと同等である。
グラフィックRAMは別に持っており、グラフィック描画に適した構造を持っている。

今回SHARPから公開されたのはBIOSであり、フォントROMの内容については公開されていない。
しかしながら、EX68Kにおいてはフォントを吸い出したデータが存在しない場合にはMS-Windowsのフォントデータから変換するようになっているので心配は要らない。

画面解像度について

画面の解像度は通常、256x256、512x512,768x512の3通りがある。
前者2つの場合最大色数が16ビットカラー=65535色同時発色であり、後者の場合65535色中16色同時発色である。
ゲームに適した構造、といわれることがあるが、同時重ねあわせ表示が実に強力である。
たとえば16色モード(といっても勿論65536色からのパレットである)にすれば512x512の解像度でもグラフィック画面を4画面同時独立に持つことができ、それらを画面上でハード的に重ねあわせることができる(ちょうどアニメのセル画の重ねあわせのようなものだ)。
256x256の解像度なら65535色モードでも4画面同じように持つ事ができる。
アニメの作成でもわかるようにたとえば人物のセルだけ書きかえれば背景は一切書き換えなくて済むなど、CPUの負担をぐっと減らすことができる。
EX68KにおいてEX68設定-DEBUGのデバッグ用設定でgraph 0〜3とあるのがこの4画面に対応している。 また、textとあるのは先に述べたテキスト表示用グラフィックRAMのことである。

スプライトとスプライト背景について

昨今ではスプライト機能というのも死語になりつつある。2Dのゲームでは「ソフトウェアスプライト機能」といってDirectXなどのライブラリに名前が残っているとは思うが。
たとえばWindowsではマウスカーソルをスプライト機能処理する、というのが一番身近だろうか。ある固定したキャラクタを座標を与えるだけで任意の場所に表示させる。 この時は背景は書きかえる必要が一切ない。つまりCPUはマウスカーソルの位置を書き込めばよいだけであって、画面に何が表示されているかなど一切感知する必要がないというメリットがある。
このスプライトを16x16画素単位のものを256個も同時定義し、同時表示させることができる。また、スプライト背景というものがありスプライトの集合体を定義し、一個の大きなスプライトとして表示位置を動かすことができる。これを同時に2つ定義できる。
EX68KにおいてEX68設定-DEBUGのデバッグ用設定でsprite、spr bg0、spr bg1とあるのがそれぞれスプライト、スプライト背景(BackGround)に対応している。

音について(サウンド)

FM音源

X68000ではYAMAHA製のOPMというFM音源を標準搭載し、8音同時発生を可能としていた。当時では贅沢なステレオ対応である。
非常にFM音源は当時としては高級であり、音が非常に良かった。なんでも楽器(シンセサイザや電子ピアノとかであろう)に使われていたぐらいだそうである。
いわゆるビープ音(圧電ブザー)などはなく、本体の全面にボリュームとヘッドホン端子がついているなどこだわりを感じる。
OSにOPMDRV.SYSというドライバが標準装備され、MML(MusicMacroLanguage)をテキストファイルでエディタで作成し、OPMというデバイス名にコピーすると音楽がバックグラウンドで演奏できる、という機能があった。それだけで当時は感動したものだ。
スクリーンエディタが標準で装備され、そこでMMLを記述し、抜けて(もしくはエディタからDOS起動して)"COPY SONG.TXT OPM"とすれば音楽が奏でられるわけだ。
BASICでも同じMMLでデータを作成すれば良い。単に上記ドライバにデータを渡していただけのようだから同じであるのはあたりまえだが、BASICのほうが編集がやりにくいので前者のほうが私は好みであったが。
基本でこうであるから、他の選択肢のレベルは高い。
最もメジャーになったと思われるのがMDX形式であろうか。MDX用のMMLをコンパイルしてMDXファイルを作成するがその分コンパクトである。
これには非常にレベルの高いものが多く、現在のMIDI楽器で作られているものと比べてもかなりの高いレベルにある。
もうひとつあげればZ-MUSICがある。MDXより大分遅れての登場なので音楽データ自体は少ないようだが、これは同人ソフト、商用を含めてゲームソフトのBGM演奏としても使われることが多く、愛好者も多い。

PCM

ADPCM(AdaptiveDifferencialPulseCodeModulation)を4ビット精度ながら持っていた。
差分PCM、つまり変化量を4ビットで量子化するためにそもそも音質は良いとはいえなく、またアナログ的にも音は綺麗ではなかった。おそらくいいところゲームの効果音(SE)程度、と設計者も考えていたのではないだろうか。
これもOSレベルでPCMDRV.SYSというデバイスドライバが組み込まれ、PCMというデバイスにCOPYするだけで音が鳴る。
つまりバッチファイルなりでCOPY foo.pcm PCM とするだけで良いのだ。
PCMに関するツールは本体発売後間髪をいれずに発売されたこともあり、喜んでサンプルをしていたひとが多かったようだ。もちろん目論見どおりゲームでのSEで効果的に使われた。
そのうちそういうことに飽きてくると、なまじFM音源が強力なために音楽演奏をやろうとデータを作る人が非常に多くパーカッション系はFM音源では再現は非常に困難、ならばADPCMでもいいから同期して鳴らせるようにしよう、ということでADPCMも音楽演奏手段として仲間入りすることとなった。
前述したMDXと連携できるようになり、それがPDXという形式である。
そのうち1声では足りないので8つぐらいは重ねあわせて発声できないか、ということでPCM8というドライバが生まれた。
ソフトウェアで合成するのでCPUの負荷はばかにならない、が非常に音楽に広がりがもてるようになった。MDX/PDXシステムではPCM8が必須という状況にまで歓迎されたように思う。
PCM8はよくできたドライバであり、アプリケーション側はPCM8の存在は気にする必要はない。PCMでは前の音が鳴り止む前にデータを送った場合、前の音は途中で止まって次の音を鳴らすようになっている。1音しか鳴らせないのだからあたりまえだ。それをあたかも同時に8つまではできるようなフリをするようになっているだけだ。
だけといってもそれを当たり前のようにやってしまうのがなんとも凄い。
なお、EX68KではSoundOptionでpcm8のチェックボタンがあり、じつにぬかりがない。

ジョイスティックについて

X68000ではジョイスティック端子が標準でついていた。 仕様はMSXと同じくATARI仕様といわれるもの。上下左右とA,BボタンをOn/Offで直接読み取る方式であり、9PinのD-Subコネクタを適用する。X68000では汎用のパラレルポートとしても使えるようになっており、内部では汎用のポートをつなげており、I/O用のICとして有名な8255を使用していた。よってこれをシリアルバスとして使用することも可能である。 そして専用のアナログコントローラがアフターバーナーというゲームに合わせて発売され、これはコントローラーのマイコンとのシリアル通信を行っていた。

さて、ゲームの進化(?)にともない、A,Bボタンだけではゲームの発展についていくことはできなくなっていった。そのためにボタンをなんとか増やすことが考えられた。
・標準3ボタン。AとBを同時押しした場合にCボタンとする。これは最初はチェルノブイリ(=同名アーケードゲームの移植;発売=デンパソフト)であり、メガドライブ用PADをつなぐアダプタが同梱されて発売された。
これの対応ゲームはかなりあるようで格闘ゲームである餓狼伝説などが挙げられる。
・標準4ボタン。上下同時入力と左右同時入力(スティックでは入力不能)をそれぞれのボタンに割り当ててA、Bとあわせて4ボタンとする。市販ソフトではみたことはないがオンライン(同人)で存在していた覚えがある。
・拡張4ボタン
AB/CXを切替えで認識する方式。これは接続がX68K専用仕様になってしまうが、使っていない信号を切替え信号とし、ABのON/OFF信号ラインをABボタンとCXボタンとで切り替えて読み込む方式。おそらくリブルラブル(=同名アーケードゲームの移植;発売=デンパソフト)はこれによるものであり、専用のジョイパッドが同梱されていた。
・拡張8ボタン
StreetFighterII'(同名アーケードゲームの移植;発売=カプコン)のもの。これは専用アダプタを使ってメガドライブ用のファイティングスティック(6ボタン仕様)を接続する方式になっている。

一覧に戻る
トップページに戻る