MSXturboR

MSXturboR（エム・エス・エックス・ターボアール）とはMSX規格の一つで、MSX2+の後継規格として1990年に発表された。MSXturboR が正式な表記で、MSX TurboR のようにスペースを開けたり、「T」を大文字で表記するのは正しくない。
MSX2+まではZ80A相当の8ビットCPUだったが、本規格ではそれに加え16ビットCPUの「R800」を採用した。またMSX2+まではオプションであったMSX-DOS2、MSX-JE、MSX-MUSICを標準搭載する。
一連のMSX規格で、最後の規格となった。
対応機を発表したのは松下電器産業（現・パナソニック）のみ。1990年10月に「FS-A1ST」が発売、年末商戦という機会もあって各店で品切れが続出し、当初は3万台強の出荷が見込まれるほど販売台数が好調だった事もあってか、翌年の1991年11月にはメインメモリを512KBに増設しMIDI端子を装備したマイナーチェンジモデルの「FS-A1GT」を発売した。多機能化が図られた結果、消費税込みで10万円を超えた価格設定で、当時の国内パソコン市場で優位に立っていたPC-9801シリーズの互換機を販売していたセイコーエプソン製EPSON PCシリーズ最廉価モデル PC-286Cの販売価格が12万円台と、価格面での優位性を示せなくなっており、出荷台数は約7,000台ほどと大幅に減少した。
ハードウェア.
turboRは従来のMSXとの互換性を維持するために、Z80相当品（MSX-ENGINE2）と、R800使用時のZ80バスサイクルエミュレーション機能を搭載するシステムLSI S1990を実装している。R800自身はメモリー管理なども含めハードウェア、ソフトウェア共にZ80を拡張したCPUであるが、turboRではそれらを使用せず、乗算命令の追加された高速なZ80として使われている。R800は、Z80A相当のCPUと排他的に使用するようになっており、双方のCPUを同時に使用することは出来ない。なおturboRのRはR800のRを意味する。
turboRでのR800の入力クロック周波数は28.636360MHzだが、実動作クロック周波数はそれを内部で1/4に分周した7.15909MHzである。ただしR800は、Z80の大半の命令を1クロックで実行できるなど、同一クロックにおける実効速度がほぼ4倍速であるため、カタログでは「Z80換算で28MHz相当」と記述された。また条件によって命令実行時間にバラツキのあるR800の特性から命令の実行クロックによるウェイトや実行時間を算出することが難しくなったことから、新規に3.911μ秒毎にカウントアップされるシステムタイマーが実装された。
MSXturboRはMSX2で追加された仕様であるメモリー・マッパーを使用してメインメモリーを拡張したが、内蔵のメモリーマッパーはS1990の仕様による制限がある。512KiBまでは正常に実装可能であるが、マッパーレジスタが6bitまでしかデコードされておらず、1MiBに実装した場合でも、マッパーレジスタの読み込みに問題が生じる。改造により本体に直接メモリを増設した場合、これを原因として動作しないアプリケーションもある。
MSX2+と同じV9958を採用したが、これによる表示が著しく全体のパフォーマンスの足をひっぱる形となっている。MSXの構造上、VDPを経由しなければVRAMにアクセスできず、VDPへのアクセスそのものがMSX2+よりも多くのウェイトが掛けられるようになっている。描画を行わないソフトウェアでは高速な動作をするものの、描画処理が増えるほどVDP自体の処理速度に依存してしまい、表示そのものに纏わる処理によって遅いソフトウェアについては、旧機種に対し、高速モードのパフォーマンス的な優位性は示せなかった。ただし、後期にはCPUパワーを生かし、Z80では間に合わなかった処理を垂直同期割り込み期間中に行うことで、より高度な処理を見せるプログラムも現れた。起動画面はMSX2+とほぼ同じだが、スクロールが速くなった。
音源としてはMSX-MUSICが標準搭載になったほか、8ビットPCMの録音再生機能も持つ。ただし、BIOSのルーチンではPCM再生時にCPUの他の処理を止めてしまうため、他のPCM/ADPCM搭載機のように音楽の同期演奏に使うのには著しく難があり、利用例は多くなかった。後年にはVDPの走査線割り込みを利用することで並列再生させたソフトもあったが、MSXは元々1ビットD/Aのサンプリング機能を持ち、またPSGを使用しての4ビットPCM再生をさせたソフトも存在した事から、それほど注目はされなかった。
MSX-MIDI.
他の規格と異なり拡張BASICは用意されたがBIOSはない。BASICはMSX-MUSICを含み拡張する形となっており、本体内蔵の場合はMSX-MUSICと同じスロットに配置する。外付けカートリッジの場合はMSX-MUSICも含め、カートリッジ側のROMによって制御する形になっている。
BASIC以外の環境ではROMによってハードウェアの存在と状況を確認の上、直接ハードウェアを制御する形になっている。また、本体側の処理性能などの理由からturboRより前のMSX機では非対応である。
MSX-MIDIはMIDIデータ通信用ICにi8251、ボーレートジェネレータ及びタイマー用ICにi8253若しくはi8254を用いたハードウェアをI/Oポート経由で制御する。
その存在の有無はROMの値から判別し、内蔵と外付けハードウェアでは仕様が異なるため、差異を吸収するBIOSが無い以上制御するアプリケーション側で、双方を考慮したプログラムを設計する必要がある。
オプション機器としてはビッツーのμPACKのカートリッジが発売されており、FS-A1STに差し込んだ場合、FS-A1GT相当の仕様となる。ただし、カートリッジは制御用のROM、256KiBのマッパメモリを内蔵した複合機器となっており、セカンダリスロットが拡張されているため、他の複合機器やセカンダリスロットでの使用はできないようになっているほか、基本スロットに接続されていないという仕様上セカンダリスロットを検索しないプログラムは検出することができなくなっている。
個人製作の回路として藤本昌利によってMIDIインタフェース3の製作・回路図という形で作例のドキュメントも公開されており、ハードウェア的にはFS-A1GTの内蔵MIDIインターフェイス部分と互換になっている。前述のとおり規格上ではハードウェアの検出はシステムROMの確認によって行うため、それらによってチェックを行うソフトウェアや、拡張BASICを使用する用途などとは非互換であるとともに、I/Oポートのアドレスは固定であるため、FS-A1GTでは使用することができず、規格全てを満たすわけではない。
ソフトウェア.
turboRは規格の柔軟性を生かし、モードスイッチなどによらない起動モードの選択が行われる。起動時にBIOSが判定を行い、従来のソフトウェアは自動的に互換モード（Z80）でMSX2+相当として動作する。ソフトウェアにより起動後も切り替えが行えることもあって、ブートブロックの書き換えにより強制的に高速モードで動作させるツールや、あらかじめシステムの一部をフックした上で処理を移すことによって任意で動作を切り替えられるようなソフトウェアも制作された。ただし、従来機種用のソフトウェアではタイミングが大きく変わってしまい、高速モードでは自動で処理されるVDPやFDDなどのハードウェア制御もR800モードで動作した場合ウェイトが不足するなど保証外の利用となる。turboRリリース後に発売されたゲームの中にはMSX2/2+用として発売されながら、高速モードで動作するゲームもあった。
MSXViewというGUI環境がオプション規格として用意された。これは1987年にHAL研究所から発売されたMSX2向けのGUI環境のHALNOTEというソフトをMSX-DOS2の機能やメモリマッパーに対応させるなど発展させたものである。3.5インチディスクと漢字ROMカートリッジを同梱して1991年にアスキーから9,800円で発売された。MSXturboR本体のみでもMSXViewは動作できたが、12×12ドットのフォントが収められた漢字ROMカートリッジがあれば、16×16ドットの内蔵フォントを1文字ずつ12×12ドットへ圧縮する負荷がなく、より軽快に表示することが可能になっていた。フロッピーディスク版とA1GTに搭載された内蔵ROM版があったが、前者は頻繁にシステムディスクを要求されるため、シングルドライブ環境ではとても実用的とは言えなかった。MSXView向けのソフトは、表計算ソフトのViewCALCやフリーソフトウェアがいくつかある程度で終わっている。なお、MSXViewではHALNOTEのソフトを使うこともできた。
また、前述のとおりPCM再生を行うハードウェアが搭載されており、標準で15.75KHz、7.875KHz、5.25KHz、3.9375KHzのサンプリングレートに対応したBASICコマンドとBIOSが整備されている。
一方でデータレコーダへの対応を初めとする使用頻度の低い機器への対応が規格から削除された。それに伴い、BASICでは命令ごと削除され、BIOSはエラーか、何もせず戻るような処理へと変更された。それにより、この機種まで維持されていた旧仕様の完全な「上位互換」ではなくなった。
MSX3.
本来はR800とともにV9958互換の新VDPが搭載されてMSX3になる予定だったとされる。しかしV9978とナンバリングされた新VDPの開発は互換性維持に失敗したために、MSXへの採用は見送られた末、V9990という名称でMSXとは無関係のVDPとして発表された。新VDPの不採用により名称もMSX3ではなくなった。MSXの提唱者である西和彦はR800とV9978にMSX-AUDIOを加えてMSX3にしようと思っていたと語っている。
外部リンク.
MSX turbo R Technical Hand Book