TMS9918Aビデオボードができて、これはMSX1パソコンに近づけるのでは?と妄想して、情報をあつめました。
TMS9918Aビデオボードのデータをgithubで公開している方も、AVRマイコンベースのブートローダーを作製されていて、なんとMSX BASICの起動に成功されている模様でした。ブートローダーにはシリアルのクチがあってBASICプログラムもキーボードエミュレーションでヨコチョのPCから流し込みができる仕掛けとなっているみたいでした。
MSXのI/Oマップ
CPUが同じZ80なのですから、あとは周辺デバイスとのI/Oアドレスを合わせてあげればMSXとして動くのではないかと考えました。ブートローダーを設計するチカラは私にはないので地道に昔と同じようなチップをつなぎ合わせてMSXを目指したいという感じです。
MSXのI/Oアドレスマップはあちこちで公開されていますが、わりと有名どころでは以下の情報かなと思います。
上記を参考に大まかに必要そうなものを一覧にすると以下になります。
I/Oアドレス | 用途 |
98h〜9Bh | VDP(TMS9918A ビデオカード) |
A0h〜A3h | PSG音源(YM2149/AY-3-8910) ・3声 プログラマブルサウウンドジェネレーター ・ジョイスティックポート ・カセットI/F |
A8h〜ABh | PPI(8255パラレル) ・メモリースロット制御(バンク切り替え) ・キーボード制御 ・カセットI/F..etc |
これだけあれば、画面が出て音がなって、主メモリーとかROMカートリッジ制御ができて、キーボードがつながるという初期型「MSX1」相当の機能が動きそうです。すでにVDPのところは前回までで完成済みですし。
I/Oアドレスリストには他にも8251シリアルとか、MSX2のメモリーマッパー、漢字ROM、フロッピーI/F、FM音源、プリンターポートなど色々とありますが、ひとまずそこは置いておいて 一番初期型の「MSX1」を目指して見たいと思います。
各種ボードの接続イメージ図
すでにできているZ80 CPUボード、メモリーボードなどもありますので、それらと組み合わせてMSX1を構成した場合のブロック図がこちらになります。
黄色い基板はすでにできているもの。緑色の基板はMSX1として構成するために追加が必要なものです。
黄色い基板でもZ80専用制御信号線とか、SLOT(メモリーバンク)信号でのROM/RAMコントロールが必要となりますので少々の改造が必要となります。(というのが作りながら分かりました…^^);; )
ではでは、次回以降はPSG音源&ジョイスティックボード、キーボード…といった感じで必要なボードを揃えていったところを紹介します。
つづきます…
コメント