ROMの領域分割と使用領域

Z80系のXENESIS SBCに搭載されているROMの容量は64KBですが、独立した32KBの2つの区画に分け、そのうちの1区画だけをJP2でジャンパで選択して利用するように設計されています。

どの区画に書かれたソフトウェアを利用するかはJP2にショートピンを付けて選択します。

区画ROM0付属ROMのモニタ
区画1オープンUniversal Monitor
区画2ショートUniversal Monitor
JP2 区画切替

JP2によって選択されたROMの各区画が、CPUから見えるアドレス(ここではROMアドレスに対比してシステムアドレスと呼びます)にどのように割り当てられるかを「JP2 区画切替」に示します。

ご自身でROMにプログラムやデータを書き込む際には、「JP2 区画切替」の2つの区画のどちらに書き込むかを決め、その領域の先頭部分をシステムアドレス0000Hとみなして書き込みを行なうようにしてください。

各区画の前半は、システム起動時にはメモリ空間に割り当てられていますが、起動後にROMの切り離し処理を行うことにより、メモリ空間に配置されているROMを切り離してその場所にRAMを配置し、メモリ空間をRAMだけの構成に変更することができます。

なお、ROMをメモリ空間から切り離すか否かにかかわらず、I/O空間への配置は維持されるので、該当するI/Oアドレスを読み込むことにより、いつでもROMのデータを読み出すことができます。

区画ROMアドレスシステムアドレス
区画10000H-7FFFH0000H-4FFFH
0000H-7FFFH
メモリ空間の0000H-3FFFHに割り当て
I/O空間の8000H-FFFFHに割り当て
区画28000H-FFFFH8000H-CFFFH
8000H-FFFFH
メモリ空間の0000H-3FFFHに割り当て
I/O空間の8000H-FFFFHに割り当て
JP2 区画切替