I/O領域の選択
ACIAなどの周辺装置は、メモリアドレスに割り当てられたI/O領域に配置され、それらの操作に必要な周辺装置のレジスタ操作は、メモリアクセスと同様の方法で行います。I/O領域は、MPUの上位4ビットのA15-A12で選択するようにしているため、周辺装置の多少にかかわらず4Kバイトを単位として領域が確保されます。
メモリ空間のどの4Kバイトの部分がI/O領域になるかは、JP1の設定によります。65/68系のXENESIS SBCでは、JP1の設定により以下のどちらかの領域がI/O領域となります。
- $C000-$CFFF
- $E0000-$EFFF
周辺装置の追加
XENESIS のSBCには、周辺装置としてACIAのみが組み込まれていますが、以下に示す拡張端子を使用して、他の周辺装置を追加することができます。
拡張端子(~IOCS)に、I/Oアドレスが選択されたことを示す信号がそれぞれのモードで出力されています。
対応モニタの選択
I/O領域は、標準モードと拡張モードの切り替えにより、STDモードとROMモードは$C000に、RAMモードでは$E000に割り当てが異なります。
アドレスマップの構成を変更する場合には、それぞれI/O領域のACIAに対応するUniversal Monitorが格納されたROM領域を選択すようにJP2の設定を行ってください。
ゴースト
ACIAのアドレスデコードは、16ビットアドレスの上位6ビットのみを使用して行っています。このため、それぞれのモードの表に示しているACIAのゴーストアドレスが発生しています。
このため、ゴースト領域には他の周辺機器の割り当てを行うことがでできないとともに、その領域をアクセスすると正式なACIAアドレスでなくてもACIAをアクセスすることになるので、ご注意ください。