• ベストアンサー

MSX ramカートリッジについて

先日プログラムを保存したいと思い16Mbのramカートリッジを 購入したんですが、そのramカートリッジにアクセスランプが p 1 2 3 4 の準備に並んでいるのですが、色々調べましたがアクセスの仕方がわかりません。教えていただけますでしょうか。                 機種はMSX2 FS-A1です。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#252929
noname#252929
回答No.1

懐かしいものですね。 RAMカートリッジは、メモリの増強用だったはずですが。 プログラムの保管などは、できないと思いのですけど。 あくまでD-RAMだったと思うので、電気を切れば消えますし。。。 もちろん動作中にプログラムエリアを待避するなどに使うことはできたと思いますが。 使い方は、メモリのアドレスマップがあって、その一部が、バンクとなっていて、そこが、一気に指定したRAMの部分と入れ替わるようなイメージだったと思います。 表現的にわかりにくいかもしれませんが、コピー紙2枚を縦に並べておきます。 これが、CPUのアドレス空間です。 コピー紙は、上の方はインタプリタプログラムなどと、プログラムやデータなどを通常書き込みます。 下のコピー氏の部分に、サブルーチン化したプログラムや、データを記録するのに使います で、状態に合わせて、コマンドでこの下のコピ-紙の部分を、切り替えるものです。 Z80の少ないアドレス空間を、広げるための方法なんですけどね。 そういう切り替えをするものなので、下側のコピー紙に当たる部分が、追加のRAMカートリッジで、カートリッジの中には複数バンク(切り替えるコピー紙の部分)あり、そこをプログラムで切り替えながら使っていくというものだったと思います。 なので、切り替えできるメモリーバンクの部分から、他のメモリーバンクへデータをコピーするなどはできず、いちど動かないメモリ部分へ移動してからコピーする。などの必要があります。 プログラムも、メインのプログラム部分で先に認識しておいて、そのサブルーチンへ移行する際は、メモリのバンクを切り替えてから、サブルーチンへ移行するなどをやってたと思います。 なので、今のパソコンのUSBメモリーやHDDなどと同じ扱いのものではなく、使い勝手の悪い、メインメモリーの様なもだったと思います。 もともとアドレス空間が少なかったですので、無理やり拡張するために作られたものですからね。

pasodenkmg
質問者

お礼

丁寧な回答ありがとうございました。

pasodenkmg
質問者

補足

ご回答ありがとうございます。 kisinaituiさん お忙しいところ恐れ入りますが、 そのメモリのバンクを切り替えてから、サブルーチンへ移行する方法を 教えていただけませんでしょうか。      宜しくお願いします。

その他の回答 (1)

回答No.2

今質問されていることと、 最初の回答者さんが、答えていることすべてに答えるサイトが まだありました。 http://ngs.no.coocan.jp/doc/wiki.cgi/TechHan?page=7%BE%CF+%A5%B9%A5%ED%A5%C3%A5%C8%A4%C8%A5%AB%A1%BC%A5%C8%A5%EA%A5%C3%A5%B8 ただ、16MBのメモリは物理的に存在していません。 Z80のメモリ空間は、64KBで、1つのバンクが16KB それを、256ページ使うため、合計4MBにしかならないので、 論理的に意味がないのです。 ちなみ、MS-DOS時代のEMSと概念は同じです。 それで、先ほどの詳細データは 主にアセンブラ言語を使いこなせる人しか意味をほぼ持たないので、 使うにはかなり努力が必要でしょうね。 よくFS-A1なんて、現役で持ってましたね!。 懐かしいものです! 大事にしてくださいね!

pasodenkmg
質問者

お礼

回答ありがとうございました。 大事にします!

関連するQ&A