- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
,{t},{BSIZE:1 0|SIZE:100%}
,{BSIZE:0}←[[5章 システム拡張時の注意|5章 システムを拡張する際の注意]] ,{BSIZE:0|RIGHT}[[7章 MSX2+回路例]] →
!!6.1 メモリマップ例
{{svg 図1.35.svg}}
'''図1.35 メモリマップ例'''
!!6.2 I/Oマップ
{{svg 図IOMAP.svg}}
!!6.3 I/Oアドレスの割り当てについての注意
I/Oアドレスの40H〜FFHはシステム用として使用します。この中で、現在使用していないアドレスは、将来のシステム拡張用として予約されています。詳細は巻末の「I/Oマップ」を参照してください。
I/Oポートを直接操作するようなソフトウェアの作成は、ソフトウェアの互換性を損なう可能性が高くなります。そのため、ハードウェアに依存しないソフトウェアを作成するために、I/Oデバイスは常にBIOSを通してアクセスするようにしてください。
ただし、VDPのアクセスに関しては、高速な画面操作を行うためにI/Oポートを直接アクセスしてかまいません。しかし、その場合も、MAIN ROMの6、7番地を調べて、ポートアドレスを確認してください。詳しくは、「第4部 VDP」を参照してください。
I/Oポートの00H〜3FHはユーザーに開放されていますが、同一アドレスに複数の周辺装置が実装されることを防ぐために、できるだけメモリマップドI/Oにしてください。
フロッピーディスクコントローラ(FDC)はI/Oエリアに実装することもできますが、その場合には回路は外部からの信号によって遮断される機能を持たなければなりません。そして、FDCがアクセスされるときに限ってI/Oに接続されます。これによって、システムが複数の異なるフロッピーディスクインターフェイスを扱うことが可能になります。
市販のI/O装置のために、どうしてもI/Oアドレスが必要になった場合は、株式会社アスキーシステム事業部で割り当てを行います。I/O装置の製造前に必ず連絡して、I/Oアドレスの割り当てを受けて下さい。
!!6.4 PPIビット割り当て
'''表1.6 PPIビット割り当て一覧'''
,{c C1},{BSIZE:1 1 0 0|SIZE:80|CENTER}
,{c B2},{BSIZE:0 1 0 0}
,{t},{BSIZE:2 0}
,{c},{C1},{C1},{C1},{C1},{BSIZE:1 0 1 0|SIZE:400}
,ポート,ビット,I/O,信号名,内 容
,A{ROWS:8},0 ,↑,CS0L,0000H〜3FFFH番地のスロット指定信号{ROWS:2}
, ,1{B2}, {B2},CS0H{B2},
, ,2 ,出{B2},CS1L,4000H〜7FFFH番地のスロット指定信号{ROWS:2}
, ,3{B2}, {B2},CS1H{B2},
, ,4 , {B2},CS2L,8000H〜BFFFH番地のスロット指定信号{ROWS:2}
, ,5{B2},力{B2},CS2H{B2},
, ,6 , {B2},CS3L,C000H〜FFFFH番地のスロット指定信号{ROWS:2}
, ,7{B2},↓{B2},CS3H{B2},
,B{ROWS:3},0 ,↑ ,{ROWS:3},キーボードのリターン信号{ROWS:3}
, , {B2},入力{B2}, ,
, ,7{B2},↓{B2}, ,
,C{ROWS:10},0 ,↑ ,KB0 ,キーボードスキャン信号{ROWS:4}
, ,1{B2}, {B2},KB1{B2} ,
, ,2{B2}, {B2},KB2{B2} ,
, ,3{B2},出{B2},KB3{B2} ,
, ,4 , {B2},CASON,カセットコントロール(L-ON){BSIZE:0}
, , {B2}, {B2},{B2} ,(カセットレコーダーのON・OFF){BSIZE:0}
, ,5 ,力{B2},CASW ,カセット書き込み信号
, ,6 , {B2},CAPS ,CAPSランプ信号(Lで点灯)
, ,7 , {B2},SOUND,ソフトウェアによるサウンド出力{BSIZE:0}
, , {B2},↓{B2},{B2} ,(キーボードのクリック音){BSIZE:0}
!!6.5 PSGビット割り当て
'''表1.7 PSGビット割り当て'''
,{c C1},{BSIZE:1 1 0 0|SIZE:80|CENTER}
,{c B2},{BSIZE:0 1 0 0|CENTER}
,{c B3},{BSIZE:1 1 0 0|CENTER}
,{c B4},{BSIZE:0 1 0 0}
,{c B5},{BSIZE:1 1 0 0}
,{t},{BSIZE:2 0}
,{c},{C1},{C1},{C1},{B3|SIZE:250},{BSIZE:1 0 1 0|SIZE:300}
,ポート,ビット,I/O,接続コネクタ(ピン番号),ジョイスティック使用時の信号
,{c},{B3},{B3},{B3},{B5},{BSIZE:1 0 0 0}
,A{ROWS:14},0 ,↑,J3-1ピン *1,FWD1
,{c},{B2},{B2},{B2},{B4|TOP},{BSIZE:0 0 0 0}
, , , ,J4-1ピン *2,FWD2
, ,1 , ,J3-2ピン *1,BACK1
, , , ,J4-2ピン *2,BACK2
, ,2 ,入,J3-3ピン *1,LEFT1
, , , ,J4-3ピン *2,LEFT2
, ,3 , ,J3-4ピン *1,RIGHT1
, , , ,J4-4ピン *2,RIGHT2
, ,4 , ,J3-6ピン *1,TRIGA1
, , , ,J4-6ピン *2,TRIGA2
, ,5 ,力,J3-7ピン *1,TRIGB1
, , , ,J4-7ピン *2,TRIGB2
, ,6 , ,キー配列指定入力 *4,H/Lレベル(JIS・アイウエオ)
, ,7 , ,CSAR(カセットテープリード){ROWS:2},
, , ,↓, ,
,{c},{B3},{B3},{B3},{B5},{BSIZE:1 0 0 0}
,B{ROWS:10},0 ,↑,J3-6ピン *3, ┐
,{c},{B2},{B2},{B2},{B4|TOP},{BSIZE:0 0 0 0}
, ,1 , ,J3-7ピン *3, |Hレベル
, ,2 , ,J4-6ピン *3, |
, ,3 ,出,J4-7ピン *3, ┘
, ,4 , ,J3-8ピン *3,
, ,5 ,力,J4-8ピン *3,
, ,6 , ,ポートA入力セレクト,
, , , ,(ジョイスティック1、2の選択),
, ,7 , ,KLAMP(カナランプ信号「L」で点灯){ROWS:2},
, , ,↓, ,
,注 意{SIZE:100|CENTER}
,{t},{BSIZE:0}
,{c},{BSIZE:0|SIZE:30},{BSIZE:0|SIZE:20},{BSIZE:0}
, *1, ,ポートBのビット6が「L」レベルの場合に有効。ジョイスティック1用。
, *2, ,ポートBのビット6が「H」レベルの場合に有効。ジョイスティック2用。
, *3, ,出力ポートとして使用しないときは「H」レベルにすること。
, , ,オープンコレクタバッファを介して出力する。
, *4, ,JIS配列―――「H」レベル、アイウエオ配列―――「L」レベル
,{c},{BSIZE:0|SIZE:20},{BSIZE:0|SIZE:30},{BSIZE:0|SIZE:20},{BSIZE:0}
,,*1, ,ポートBのビット6が「L」レベルの場合に有効。ジョイスティック1用。
,,*2, ,ポートBのビット6が「H」レベルの場合に有効。ジョイスティック2用。
,,*3, ,出力ポートとして使用しないときは「H」レベルにすること。
,, , ,オープンコレクタバッファを介して出力する。
,,*4, ,JIS配列―――「H」レベル、アイウエオ配列―――「L」レベル
備 考
J3、J4の上記以外のピン端子信号
,備 考{SIZE:100|CENTER}
,{t},{BSIZE:0}
,{c},{BSIZE:0|SIZE:100},{BSIZE:0|SIZE:100},{BSIZE:0}
, ,5ピン, +5V
, ,9ピン, GND
, J3、J4の上記以外のピン端子信号{COLS:3}
,,5ピン,+5V
,,9ピン,GND
,{t},{BSIZE:1 0|SIZE:100%}
,{BSIZE:0}←[[5章 システム拡張時の注意|5章 システムを拡張する際の注意]] ,{BSIZE:0|RIGHT}[[7章 MSX2+回路例]] →