FM-11は128KBのメモリをマザーボードに内蔵している(AD2+は内蔵なし、256KBカードを実装)。6809カードは電源投入後、メモリ領域を0クリアし確認する。6809カードのBOOT ROM WU11-11ではメモリチェック状況を画面に出力する。128KB単位で緑色の">"を、メモリ領域が不連続でも表示する。
2021-06-27 21.47.01

 さて、作っているFM-11用のメモリカードだけれどもどのように動作確認しようか。F-BASIC4.0/5.0では最初の128KBの先、$20000~は認識しないのでOSが勝手に使うこともない。簡単にはPOKE文でMMR(Memory Management Register)を操作したのちMONで機械語モニタから覗くことができる。

 これは前回のGNDが浮いた状態の$20000~をダンプしたところ。MMR $FD35に書き込むことにより6809の$5000~$5FFFを4KB単位でA19~A12の任意の空間に割り当てることができる(F-BASICではこのアドレス変換は有効)。ここでは$5000~$5FFFを$20000~$20FFFに割り当てて確認している。
2021-06-28 02.35.50

BASICで確認用プログラムの土台を作ってみた。

2021-06-28 02.53.02

 これは$80000~$FFFFFにRAMを実装したときの実行例。0クリアが確認できる。
2021-06-29 15.14.41

 BASICからメモリを読み書きするのは非常に低速になるので、負荷をかけるには機械語でテストコードを書くか、ここまで確認できたらOS-9上で何か動かしてテストするのもよかろうと思います。

Programming the 6809
Labiak, William
Sybex Inc
1982-09-01