I/Oポートマップ

ページ名:IOポートマップ

mkII以降でのみ使用可能なポートについては (mkII) と記述してあります.

F0H,F1H : メモリリード時のメモリブロック指定 (mkII)

ポート番号 F0H, F1H
概要 メモリリード時のメモリブロック指定
I/O OUTPUT
解説

内部レジスタRF0,RF1へデータを出力するためのポートです.

これらのレジスタは、64Kのメモリ空間へどのメモリを割りあてるかを決めるレジスタで, 各レジスタの機能は次のとおりです.

  • RF0 (下位4ビット) …… 0000H~3FFFHのメモリを指定
  • RF0 (上位4ビット) …… 4000H~7FFFHのメモリを指定
  • RF1 (下位4ビット) …… 8000H~BFFFHのメモリを指定
  • RF1 (上位4ビット) …… C000H~FFFFHのメモリを指定

レジスタの4ビットによって 指定されるメモリは, 以下のようになります.

値 ROM1
+0000H
ROM1
+2000H
ROM2
+0000H
ROM2
+2000H
ROM3
+0000H
ROM3
+2000H
ROM4
+0000H
ROM4
+2000H
RAM1 RAM2
0                    
1 ○ ○                
2     ○ ○            
3         ○ ○        
4             ○ ○    
5   ○ ○              
6 ○     ○            
7           ○ ○      
8         ○     ○    
9   ○     ○          
A ○         ○        
B       ○     ○      
C     ○         ○    
D                 ○  
E                   ○
F                    
  • ROM1……BASICインタプリタROM
  • ROM2……音声合成ROM, 漢字ROM (ポートC2Hにより切り替え)
  • ROM3……スロット内のROM
  • ROM4……スロット内のROM
  • RAM1……内部RAM
  • RAM2……外部RAM

例) リセット時は, RF0=71H, RF1=DDH なので, 各メモリブロックは以下のようになります.

  • RF0 (下位4ビット) = 1…… 0000H~1FFFHには BASICインタプリタROM前半, 2000H~3FFFHにはBASICインタプリタROM後半
  • RF0 (上位4ビット) = 7…… 4000H~5FFFHにはROM4 (スロット内のROM), 6000H~7FFFHにはROM3 (スロット内のROM)
  • RF1 (下位4ビット) = D…… 8000H~BFFFHには内部RAM
  • RF1 (上位4ビット) = D…… C000H~FFFFHには内部RAM

 

シェアボタン: このページをSNSに投稿するのに便利です。

コメント

返信元(返信をやめる)

※ 悪質なユーザーの書き込みは制限します。

最新を表示する

NG表示方式

NGID一覧