まっつん総研連絡用ブログ

プログラミング教育とかMSXとか。

MSX用増設RAMカートリッジ・MEM-768

 MSXのソフトの中では顧みられることが少ない、実用ソフト ハードをあえて紹介してみます。

f:id:matsun-ri:20210502222207j:plain
増設RAMカートリッジ MEM-768

増設RAMカートリッジ MEM-768

  • ジャンル:ハードウェア
  • メーカー:アスキー
  • 対応機種:マッパーRAM対応MSX
  • メディア:カートリッジ
  • 価格:30,000円(税抜)


目次


概要

f:id:matsun-ri:20210502222555j:plain
パッケージ外観


 MSXのメインRAMを768Kバイト増やすことができる、メモリマッパー規格に対応した増設メモリです。

増設による起動画面の変化

f:id:matsun-ri:20210502222637j:plain
MEM-768を増設していない状態

 MEM-768を接続していない状態のMSXturboR FS-A1GTの起動画面です。
 Main RAM:512Kbytesと表示されています。

f:id:matsun-ri:20210502222747j:plain
MEM-768を増設後の状態

 MEM-768を接続した状態です。
 Main RAMが768Kバイト増え、1280kbytesと表示されています。

増設によるRAMディスク容量の変化

f:id:matsun-ri:20210502223021j:plain
MEM-768を増設していない状態

 MEM-768を接続していない状態のMSXturboR FS-A1GTにて、RAMディスクを作ってみました。
 344KバイトのRAMディスクが作られました。
 メインRAMの容量(512Kバイト)との差は、

  • メインRAMとして64Kバイト
  • MSX-DOS2用として32Kバイト
  • 内蔵ROM複写用として64Kバイト

が別途確保されるからです。

f:id:matsun-ri:20210502223327j:plain
MEM-768を増設後の状態

 MEM-768を接続した状態で、RAMディスクを作ってみました。
 約768Kバイト増え、1102KバイトのRAMディスクが作られました。

増設によるコンパイル速度の変化


 せっかく作ったRAMディスクなので、フロッピードライブとMEM-768を使ったRAMディスクとで、MSX-Cのコンパイル速度を比較してみます。

f:id:matsun-ri:20210502223540j:plain
コンパイルを実行するコマンドライン

 MSX-Cのコンパイルに必要な、コンパイラやヘッダファイル等をRAMディスクに置き、コンパイルを行います。

f:id:matsun-ri:20210502223639j:plain
コンパイル

 一生懸命、コンパイルと最適化を行なっています。

f:id:matsun-ri:20210502223713j:plain
コンパイルの実行結果

 PM8:29:16にコンパイルを始め、PM8:30:46に終わりました。
 およそ90秒です。

 では、同じコンパイルを、フロッピードライブで行います。

f:id:matsun-ri:20210502223818j:plain
RAMディスクの破壊

 まず、RAMディスクを壊します。

f:id:matsun-ri:20210502223850j:plain
コンパイルの実行結果

 PM8:40:20にコンパイルを始め、PM8:43:14に終わりました。
 およそ174秒かかりました。

 単純計算で、RAMディスクの方が約2倍速いことになります。

 これを『RAMディスクの速度はフロッピーディスクの2倍』と解釈してしまうと、かなりがっかりな結果となってしまいます。
 コンパイルの高速化には、ディスクアクセスの速度だけでなくCPU速度も大きく影響します。もっとディスクアクセスの多い用途なら、RAMディスクによる高速化の恩恵はさらに大きくなると思われます。
 今回の結果は、ベンチマークのひとつとして『RAMディスクを使えばコンパイルが半分の時間で済む』と言えるでしょう。

雑誌媒体による評価

f:id:matsun-ri:20210502224236j:plain
MSX・FANによる比較記事(MSX・FAN 1991年6月号 p.23より)

 MEM-768と、SASI形式のHDDが接続できるMSX HDD Interfaceは同じ価格なので、当時高かったHDDを別途購入できる資力がある人はHDD Interfaceを、ない人はMEM-768を選んだとか、選ばなかったとか。

768Kという容量の意味

 カートリッジを分解すると、基板上にあと256Kバイト増設できるパターンが空いていて、自前でICチップを積むことで、1024キロバイトにできるようです。
 『ICの値段なんてそんなに高くないので、どうせなら最初からMEM-1024として発売してくれればよかったのに』と思いますが、それなりの事情があったようです。

f:id:matsun-ri:20210502224739j:plain
MSXマガジン 1991年7月号 p.118より

 当時のチップだと、もし1024K分のチップを積むと、使用電力がMSXのカートリッジの規格を満たさなくなってしまうようです。

 そこで、256KバイトのマッパーRAMを内蔵したμ・PACKを、MEM-768と同時に使用してみます。

f:id:matsun-ri:20210503160529j:plain
μ・PACK


f:id:matsun-ri:20210503160547j:plain
μ・PACKとMEM-768の同時使用


f:id:matsun-ri:20210503160658j:plain
μ・PACKとMEM-768を追加したA1GTのメインメモリ

 その結果、メインメモリは1536Kバイトとなりました。

f:id:matsun-ri:20210503161604j:plain
メインメモリ1536Kバイト時におけるRAMディスク容量

 この際のRAMディスク容量は1355Kバイトにも及び、フロッピーディスク2枚分の容量が見えてきます。
 もしMEM-768がMEM-1024だったら、こうなっていたはずです。

 2019年現在、MSX用の増設RAMは16メガバイトのものが、Amazonで手に入ります。

MEM-768の用途

f:id:matsun-ri:20210502224847j:plain
パッケージ外観裏面

 増設メモリは、一般的にはメインメモリ(RAMディスクやページファイル置き場としてでなく、OSやアプリケーションが直接に使用するためのメモリという意味で)を増やすために使われますが、このMEM-768は、RAMディスクとして使用することが半ば推奨されています。

f:id:matsun-ri:20210502224942j:plain
パッケージ外観裏面の記載

 768Kバイトという容量は、おおよそ2DDフロッピーの容量(有効容量730,112バイト)より少し多い程度の容量なので、RAMディスクを作成すれば、フロッピー1枚の中身をまるまる収めることができます。
 これにより、

が可能となります。
 もちろん、RAMなので電源を切ると消えてしまいます。

 当時の国民機・PC-9801では2フロッピードライブ構成が事実上の標準であり、ソフトウェアの多くも2ドライブ環境を前提として作られていました。
 ノートパソコンでは1ドライブしか内蔵されなかったため、2ドライブを要求するソフトを運用するために、メモリの一部を2番目のフロッピードライブとして扱う機能がついていました。

 MSXViewなどの肥大化するアプリケーションに対して、MSXの2DDフロッピードライブ1台という環境は、力不足であることは否めなかったでしょう。
 MEM-768は、同じくフロッピードライブを1台しか持たないPC-9801ノートと同じようなRAMディスクの運用を、MSXに提供することを想定して作られたのだと思います。

 外国には、メインRAMが128Kバイトを超えるMSXが出回っていたそうで、大容量RAMに対応したソフトも作られたとのことです。
 MEM-768はそういったソフトを動かす為にも使えるはずですが、ことにMSXturboRにおいては、CPUが高速化されたため、カートリッジスロットに存在するメモリ(つまりMEM-768)にアクセスしようとすると、(相対的に)かなり足を引っ張られてしまうことになりました。

f:id:matsun-ri:20210502225502j:plain
パッケージ外観

 パッケージに『日本語MSX-DOS2専用』と書かれたのは、メモリマッパー対応RAMであるという意味に隠してR800で巨大なメインRAMをガシガシ読み書きするようなファットなソフトを作ろうとするとがっかりするから、おとなしくRAMディスクとして使ってくださいね』と言っているのかもしれません。