Z80 マイコンシステムを作ろう(その9)
随分と更新が滞っていました。
仕事が忙しかったり,町内会の行事が続いたりで週末の予定がほとんど埋まってしまい,気づけば二ヶ月ぶりの更新ですね…。
さて,この「肝八」も前回で,ほぼ MSX2+ っぽい Z80 マイコンシステムになりました。
ただ,MSX コンピュータの最大の特徴である機能が実装されていませんでした。
そうです!カートリッジスロットです。
カートリッジスロット
MSX は,Z80 の 64KB アドレス空間を切り替える「スロット」に,メモリやデバイスが接続されていることは以前説明しました。
基本スロットが 4 つ,それぞれの基本スロットを 4 つの拡張スロットに拡張できるので,最大で 16 個のスロットでアドレス空間をアクセスすることができます。(64KB×16 で最大 1MB,メモリマッパーはスロットとはまた別管理です)
MSX は,基本スロットのいくつかをカートリッジスロットとして外に出し,各種カートリッジを接続することができます。
このカートリッジのコネクタには,Z80 のバスと,ほとんどの制御信号が出ているので,内部スロットと同様に各種デバイスやメモリなどを接続することができるというわけです。
この仕組みによって,内蔵していないデバイスも外付けで追加することによって,同等の機能になったりするんですね。
ゲームのロムカートリッジもメモリの一種なので,カートリッジスロットに差し込んで電源を入れると,そのままゲームが立ち上がるのはご存知のとおりです。
「肝八」は,内部に SLOT0 と SLOT3 を持っており,SLOT3 は,さらに 4 つに拡張されています。
そこで,空いている SLOT1 と SLOT2 をカートリッジスロットに割り当てることにします。
カートリッジボード
部品を実装したボードがこちらです。
かなりシンプルで,見た目も想像通りですね…。
このボードについては,説明することが何もないのですが,左側にあるディップスイッチで,各カートリッジスロットを切り離すことができます。
切り離した状態で電源を入れてから,ディップスイッチをオンにすると,ゲームカートリッジなどのメモリを読みだしたりできます。
動作確認
いろいろ積み重ねてきて,9 階建てになりました。
12V 系の電源の確認をしたいので,これをテストしてみたいと思います。
「FM パナアミューズメントカートリッジ」です。長いので,略して FMPAC と呼ぶことにします…というのは,FMPAC の説明書にも書いていました(笑)。
取り敢えず FM 音源が鳴っています。カートリッジ上部に付いているスイッチで音量も変えられたので,多分大丈夫だと思います。
ついでに,二つのスロットがあるので,これらを同時に動作チェックしましょう。
皆さんご存知のチートツールです(笑)。これと対応ゲームをカートリッジスロットに二つ接続すると,あんなことやこんなことができます。
動作は問題ないようですが,基板に付いているカートリッジのコネクタに,カートリッジを差し込んでいるだけです。
MSX のようにケースで囲まれているわけではありません。
指でカートリッジを揺らしたりすると悲しいことになるので,細心の注意が必要です(笑)。
さて,今回はここまでです。カートリッジスロットが付いたので,ストレージデバイスも繋ぐことができるはずです。
…と言うことで,次回は,ストレージデバイスを接続してデータの保存ができるか試してみたいと思います。