MSX2

MSX2（エム・エス・エックス・ツー）とはMSX規格の一つで、1985年5月7日に発表され、6月から規格適合機種が発売された。
後方互換性に配慮しつつ、従来の初代規格と比べ、主にグラフィック機能が大幅に強化された。規格の末期には低価格路線を推し進めたことでユーザー数が大幅に増加したことや、後継となった規格のMSX2+が性能的にほぼ据え置きとなったこともあり、一連のMSX規格のうち事実上の標準と見なされることもある。
一方で、MSX2になってもゲームマシンとしてはファミコンに及ばない面もあり、パソコンとしてもパソコン御三家などからグラフィックを書き直して移植されたものが大多数で、MSX2オリジナルのパソコン然としたソフトは少なかった。解像度が他の国産機と異なっていたことや、漢字ROMがオプションだったことも移植に影響した。またMSXのバンク切り替えを多用する規格上の制約並びに、インターフェイスの設計からフロッピーディスクドライブなどの転送中はCPUの割り込み処理を止めざるを得なかったため、サウンドの再生が途切れるなどの制約も存在する。
歴史.
MSX2は当初MSX1と並行して販売され、マーケティング上の差をつけるためにFDD・漢字ROM・128KiBから256KiBのマッパーメモリーを搭載した。さらに本体・キーボードが分離するセパレートタイプで「本格的なパソコン型」の高価な製品が多かったが、これは、新規設計されたMSX-SYSTEMやMSX-SYSTEMII、V9938などの主要パーツや、8ビットパソコンとしては破格の大容量メモリーを搭載したために製造原価が押し上げられたことによる。
1985年の年末には参入各社からMSX2のセパレートモデルが市場投入されたが、同時期にPC-8801mkIIFR、X1turbo II、FM77AV20が同価格帯で発売されており、競合機種がひしめいていた。
MSX2発売当初はまだメガROMカートリッジは存在せず、FDDのない標準的仕様のMSX2ではその拡張されたグラフィック機能を活かすことが難しかった。また高級機は、一般向けには他の独自仕様ホビー・ビジネス機と対象が重なり、16ビット機の台頭も著しかったことから、一般ユーザーのMSX2への移行は緩やかであった。こうして発売後しばらくは「2〜6万円のMSX1」・「FDD非搭載、キーボード一体型で10万円弱のMSX2」・「FDD・漢字ROM内蔵、キーボードセパレートタイプで15万円程度の高級MSX2」の3路線のマシンが併売された。当時はワープロ専用機の全盛期でもあり、ワープロソフトを内蔵または付属した製品は数多く、10万円クラスの製品にはプリンターと一体化した製品も存在した。
1986年秋、松下電器産業とソニーが本体・キーボード一体型の低価格機として、それぞれ定価29,800円のFS-A1と定価32,800円のHB-F1を発売する。これは前出のMSX-SYSTEMやMSX-SYSTEM II、V9938の製造設備の償却が終了し単価が大幅に下げられたことと、他社16ビットパソコンの普及でメモリーの価格が低下していたことなどの相乗効果による。その直前にメガROMカートリッジが登場したことで、向上した映像表現を実現できるようにもなり、価格差が無くなったMSX1と置き換わる形で主にゲーム機として小中学生を中心に普及した。
1987年、この両シリーズの後継モデルであるFS-A1F/HB-F1XDが登場。1基のFDDを内蔵して、定価はいずれも54,800円だった。同時期に外付けFDD（I/Fユニット含む）も3万円台にまで値が下がったことで主要メディアがROMカセットから廉価なFDに移行し、競合他機種にFDベースでソフトをリリースしていたメーカーがMSX2にもソフトを供給する体制が整った。また、ユーザーがそのグラフィックを中心としたデータを自由に扱える環境が整い、その後のMSX2規格を牽引していった。両シリーズが普及したことで、MSX2以降も「キーボード一体型の、安価なオモチャのパソコン」というイメージが定着するとともに、カートリッジスロット2つにFDD1台の環境を標準的なシステムとして、それに合わせたソフトウェアが用意されるようになった。
一方、低価格化の波は差別化を困難にし、ソニー、松下電器産業、三洋電機以外の各社はMSX/MSX2規格から撤退した。ホビーパソコンの市場は既に8ビットから16ビットの転換期にあり、パソコンから撤退したメーカーや、16ビットのAX規格にも参入するメーカーもあった。
世界的には400万台が出荷（MSX1も含む）されたと公称されている。
主な仕様.
MSX1とは高い互換性を保っていたものの、MSX2で追加された仕様によって特定の状態を期待しているものが、期待される状態にならなくなったものや、ROM Versionに依存する形でのROM内ルーチンの直接コール等、初代MSX用のハードウェア並びにソフトウェアの一部に少数ながら動作しないものが存在している。
VDPの一新.
VDPはTMS9918とソフトウェア的な互換性を保ちつつ、ビットマップ画面の追加やスプライトの拡張などの性能の向上を図ったV9938へと変更された。VRAMの容量は64KiBまたは128KiBで、メーカーによる増設サービスやユーザーによる改造などの例外を除けばその機種の標準構成で固定である。システムの起動時には縦スクロールして大きいMSXロゴが現れ、VRAM搭載容量が表示された。
テキスト画面も80桁表示が可能になった。家庭用テレビの使用時には見づらくなり、フォント当たりの横幅が6ピクセルとなっているため一部の文字の表示が欠けてしまうものの、プログラムの作成、入力などで画面当たりのテキスト情報量が増えた。
一方で、V9938は「スプライトの同時表示枚数が強化されていない」「ビットマップの描画があまり速くない」「PCGは強化されていない」「横方向のハードウェアスクロール機能がない」など、ゲーム用途で用いるには優れているとは言い難く、価格帯として競合したゲーム専用機と比較して本格的なアクションゲームを作るには不向きだった。作るとしても、VRAMの使用量が比較的少なく、速度的に余裕がある16色横256ドットのモードが使用されることが多かった。横スムーススクロールについては後に、表示位置の補正機能を用い実現するソフトウェアが現れた。
SCREEN4以上の画面モードでのスプライトはモード2とされ、横ライン毎の着色指定と重なり合った二枚のスプライトによりスプライト1の色・スプライト2の色・両者のORを取った色・透明の4色の表示が可能となった。また、横方向に同時に表示できる枚数が4枚から8枚になり、実際の色が重なっている座標を検出する割り込みモードの追加などが強化されている。ただし、一画面同時表示が32枚までであることに代わりはない上に重ね合わせの多色表示を行うとそれらの恩恵は利用できないという制約があったため、シューティングゲームの敵などは相変わらず単色のことも多かった。後に画面割り込みを利用して、見かけ上倍の64枚表示を売り物にしたゲームも発売された。
ビットマップグラフィックスモードでは、新設されたVDPコマンドが使用でき、CPUのアドレス空間を超える容量のVRAMに対するアクセスをサポートした。転送や描画には論理演算を行えるなど当時としては高機能であり、スプライトなどの機能を含むこれらの機能によってBASICコマンドで実現する描画処理は直接VDPを制御するのに肉薄する速度で動作し、当時のパソコン誌には他の機種では難しかったユーザーによって作成されたリアルタイムゲームが多数掲載された。また、GRAPHIC 3（BASICでいうところのSCREEN4）以外の追加された画面モードはビットマップグラフィックであり、VDPコマンドの存在をもってしてもゲームの背景としてダイナミックな動きを実現することは難しかった。
理論上、VDPはCPUとの並列処理が可能である。しかし、VDP自体が高速なものではなく、VDPのみで完結する処理が限られていること、CPU自体が高速ではないことから並列性は上がらず、現実的にはアクセスに対するウェイトの存在やVDPを介してVRAMに対してアクセスする構造はコーディングによる工夫の壁となり、他の実装のハードウェアに対して大きくパフォーマンスを向上させることはなかった。そしてVDPが表示制御をする構造は、後継規格であるMSXturboRでCPUが高速化した際にシステムパフォーマンスの足を引っ張る原因となった。
テレビへ表示することを前提に作られていることもあり、最大解像度そのものも横幅が最大512ドットで、他の同時期のコンピュータより狭く設定されている。一方で、256色同時発色のモードは少色・高解像度一辺倒だった当時のパソコンの中では特色のある仕様であり、この後にシャープから256色表示のMZ-2500が、富士通から4096色表示のFM77AVが発売された。また、少色表示のモードではカラーパレットが使えるようになり、表示色の選択の自由度が増した。初代MSX規格用のソフトウェアの一部では、機種を判定し、カラーパレットによる表現を追加しているものもある。なお、起動時に設定されるカラーパレットのデフォルト色はMSX1に近いものに設定されたが、表示色の分解能などからカラーテーブルに完全な互換性がないため、実際にテレビに写る色は微妙に異なる。
SCREEN5以降のモードでは、2画面切り替えでインターレース表示をすることで、縦方向の解像度を見かけ上、倍にすることができた。標準のBASICでは設定ができるのみで活用されてはいなかったが、後に発売された漢字BASICでは正式に使用された他、一部のゲームソフトやグラフィックツールでも使われていた。これにより、漢字表示の文字数などでは当時の他のパソコンにほぼ並ぶことができた。ただし、「家庭用テレビにつなげて使える」はずのMSXにあっては、アナログRGB入力端子つきのテレビ・モニターを所有しているか、RF・ビデオ出力では目立ってしまうちらつきを許容する必要があった。
メモリマッパの追加.
メイン・メモリーが最低64KiBと規定されるとともに、スロットとは別にメイン・メモリーをページ単位で割り当てることができる、メモリー・マッパーがオプションで規格に加えられた。これにより、仕様上はスロットあたり最大4MiB弱のRAMを増設できるようになっている。ただし、MSX-SYSTEMIIなど、本体内蔵LSIのメモリマッパが512KiBまでしかデコードされておらず、当時はメモリが高価であり実際にフル実装された環境はまれだった。初期のハイエンド機でこそ128KBや、256KBを搭載した機種があったものの、MSX-DOS1並びにMSX-BASICとそのBIOSではサポートルーチンが用意されず、規格としてオプションだったことなどから、ディスクリート部品で構成された国産機種などでは搭載されていない機種も多く存在する。そのため、MSX-BASICのプログラム用フリーエリアは最大実装量に関わらず32KiB未満である。このような条件も重なって、国内の市販ソフトウェアで積極的に対応することはなく、メモリマッパをサポートするソフトウェアは独自流通のユーザーによるプログラムの方に多く見られた。また、前述のような状況から4MiBを搭載したメモリマッパを使用した場合算術オーバーフローによる誤認識や、誤動作が見られるケースも多くあった。
システム全体で管理する仕組みがないため、MSX-DOS上のプログラムなどで、常駐プログラムなど複数の対応ソフトウェアを併用する場合はその使用状況の競合などへの考慮が必要となる。海外ではメインメモリが64KiBでもメモリーマッパーを内蔵している機種が標準とされ、存在することを前提にMMUの代わりに使用しているようなプログラムも見られる。
前述のとおり、メモリーマッパーはスロットとは異なりメモリーマッパー上のページを接続されたスロット上の任意のページに割り当てることが可能なMMUに近い柔軟性を持つ。この点が、そのページアドレスの移動は不可能なスロット上に配置されたROMやメモリーマッパー非対応RAMとの最大の違いである。システムからのサポートにはMSX-DOS2が必要となり、MSX-DOS2では、最も大きいメモリが接続されているメモリマッパーがプライマリマッパーとして選択され、その際管理される最大容量は4096KiBとなっている。
メモリマッパーのI/Oポートは一つ分しか確保されていないため、そのレジスタは書き込み専用である。また、純正のシステムではサポートしていないものの、スロット制御の併用によって、カートリッジスロットが1つの機種ではそれをセカンダリスロット4つに拡張してそれぞれに4MiBのメモリマッパを搭載する事で16MiB、2つの機種では同様の拡張で32MiB強に及ぶメモリ空間を制御することも理論上は可能となった。個人ユーザーによるものではあるが、セカンダリスロットにもマッピングを行い1つのカートリッジで16MiBのメモリを搭載したメモリマッパカートリッジも実在している。
その他の変更点.
16Byteと小容量ながら乾電池によるバックアップ機能も付加され、RTCや起動時の画面モードの保存、起動時パスワードの保持、Beep音の設定保存などに排他的に使用された。
BASICは強化された表示回りのサポートの強化のほか、カナの入力にローマ字入力がサポートされるなどの機能追加が行われている。
サウンドではオプションとして、文字多重放送とキャプテンシステムに対応したFM音源/ADPCM音源を採用したMSX-AUDIO（Y8950）も規格に盛り込まれた。しかし、松下電器産業が商品化したMSX-AUDIO対応カートリッジは、34,800円と本体価格に比して高価でかつ対応ソフトもほとんど発売されなかったこと、その特殊な形状などから国内では普及しなかった。標準ではMSX1から据え置きのPSG音源のままであり、この頃からFM音源をオプションとして用意、もしくは標準搭載され始めた他のパソコンに遅れを取っていた。この状態は1988年に松下電器産業から7,800円とより安価なFM音源カートリッジFM-PAC（MSX-MUSIC）が発売されるまで続いた。
MSX1規格からのアップグレード.
MSXという規格の柔軟さを生かし、当初より拡張アダプターによるMSX1規格からのアップグレードパスがアナウンスされ、いくつかのメーカーで発売の検討がされた。しかし、コストや互換性などの問題から最終的に製品としてリリースされたのは1986年夏に発売されたNEOSのMA-20のみである。MA-20はMSX-BASICカートリッジと、VDP等を内蔵したカートリッジで構成される。64KBのRAMを搭載していないMSX1で使用するには別途RAMの増設が必要で、合計3スロットを要することから標準的な2スロットモデルでは拡張スロットも必要になった。MSX2+やMSXturboRに接続しても、カートリッジ上のソフトウェアが優先されることにより、増設したハードウェアによってMSX2として動作するようになる。
MA-20発売時の価格は29,800円で買い替えより安価だったが、同年10月には同価格の本体が発売され、普及することはなかった。構造的にVDPは置換することができないため、このアダプタではカートリッジ内のV9938とMSX-BASIC2.0をシステムに追加する形で動作する。MSX規格ではVDPに対しアプリケーションがBIOSを介さずメインROMの6、7番地に格納されているアドレスを解して直接アクセスすることを許容しており、バージョンアップアダプタも既存のVDPとの競合を避けるため、標準ではないI/Oアドレスに接続されている。このような条件のハードウェアは少ないことから問題が露呈することが少なく、標準のI/OアドレスにVDPが存在することを前提としたプログラムではMSX2として動作しないケースもあった。
なおMA-20に先だって、MSX2が初出品された「マイコンショウ'85」で既に参考出品としてMA-10が展示されていた。MA-20とは異なりカートリッジスロット経由でユニットを接続する形状で、ユニット側にカートリッジスロットが1スロット搭載されていてスロット数が減らないようになっていた。
参入したメーカーと発売した主な機種.
太字はVRAM64KB、"斜体"は本体・キーボード分離型のセパレートタイプを表す。
この他、MSX規格に準拠した業務用（店頭端末用・工場などでの制御用・キャプテンシステム・ビデオタイトラー）の特殊な製品も存在する。