tunozemichanの日記 / tunozemichan's diary

SORD社のコンピューターM68やM68MXの解析についての備忘録です。This blog is a memorandum about the analysis of SORD's computers M68 and M68MX.

SORD M68MXのDIPスイッチについて

SORD M68MXの背面には8p-DIPスイッチがあります。この後半、5,6,7,8のスイッチを操作することで、アドレス0xe20781の値が変化します。この変化により、BIOSに格納されたSunBugというモニタプログラムが起動します。

 

f:id:tunozemichan:20210701154145j:plain

8p-DIPスイッチ(写真はデフォルトの状態)

 

CRTが使えない環境を想定しているのか、DISPLAY PORTにあるシリアル通信を経由して操作します。私がこれまで移植したモニタプログラムやehBASICなども、全て同シリアル通信を利用して入出力を行っています。CRTCを初期化するのが面倒だからです。

 

このDIPスイッチは、上がONになっています。5,6,7,8の全てをONにすると通常起動です。以後、この状態を[1,1,1,1]と表記します。

モニタプログラムzBug上で簡単なプログラムを書き、DIPスイッチの変更により、アドレス0xe20781の値の変化を調べました。

[1,1,1,1] ---> 0F

[0,0,1,1] ---> 3F

[0,1,1,1] ---> 1F

[0,1,1,0] ---> 9F

[0,1,00] ---> DF

[1,1,0,0] ---> CF

[0,0,0,0] ---> FF

この変化から、全ビットを反転させ、並びなおすと、右側の数値になることがわかります。

この中で、SunBugが起動するのはEF、FFです。また、CF、DFは何に使うのか分からない謎のモードに移行します。