富士通 FM-77D2で63C09PカードでDOSモードを使ってみる

Last Updated on 2015年11月5日 by kabekin

FM-77D2を使用して63C09カードでDOSモードのOSを起動してみました。

Oh!FMの記事ではOS-9やFLEXは使用可能との記事でしたので、そのまま使えるもののと思っていたのですが起動に少しコツがいるようなので、手順をまとめました。
(FM-7で使用する場合はこの手の問題は発生しない可能性が高いですが、私は試していません・・・^^;;)

何か大きな勘違いをしているだけなのか、P.116のリスト2を元にDOSモード用のブートプログラムをIPLに組み込まなければならないのかどちらかだと思われます^^;;;
6309に切替するソフトはOh!FM 116ページのブートプログラムを使用しているのでBASICが必要です。

このブートプログラムは$8000からのBASICROMと$FE00からのBOOTROMを転送しているようです。
6309切替後はROMデータは転送されないようなので、DOSモードを使いたい場合、あらかじめDOSモードで起動してブートプログラムを実行する必要がありそうです。
そこで、DOSモードで起動してF-BASICの使用できる九十九電機のC-DOS7を使用して実験しました。

 

DOSモードのOSを起動できる手順

1) DOSモードでC-DOS7を起動する。
cdos1

2) C-DOS7上で116ページのブートプログラムを実行で再起動される
(116ページのブートプログラムは6309STAという名前で保存しています)

3) 再起動後 ドライブ0のフロッピをOSのFDに入替

4) C-DOS7の拡張モニタでBOOT ROM ($FE00~)を実行
cdos2

5) DOSモードのOSが起動される
os9
FM-8用OS-9L1は起動し正常に使用できました。

@4MHzでの使用ですがディスクアクセスの多いOS-9ではそれほどの高速化は感じられません。
モジュールをRAMにロードしてディスクアクセスを無くすと速さが実感できますがレベル1なのでメモリが少なくどこまで実用になるのか疑問です・・・・

 

CP/M80 (EMX80)

I/O誌掲載のCP/M80 環境EMX80も6309上で使用可能です。
emx80
EMX80はかなり高速になっているのが体験できます。

これなら8080ソフトウェアエミュレーションの遅さをかなりカバーできると思われます^^
ノーマルのEMX80はかなりのんびり動作なので倍速MPUの効果は大きいと思われます。
その他FM-8用FLEX9も起動OKでした。

理由はよく分からず

DOSモードの状態で普通にC-DOSを起動した場合のチェックサムが$FE00-FEFF=34, $FF00-FFFF=38でしたが6309切替後も$FE00-FEFF=34, $FF00-FFFF=38で変化無しでした。
ということは普通に起動して6809で動作させても6309に切り替えてもFMから見えるBOOTROM領域に変化は無さそうです。
しかし、6309切替後にドライブ0にOSのフロッピをセットしてリセットしてもOS-9やEMX80は起動しません。
(OS-9はOS-9 Kernel Started !を一瞬表示してROMBASICが起動。EMX80はそのままフリーズ)
チェックサムしか見ていないので、実際は何かが違うのかもしれませんがまだ見ていません・・・
ちなみに上記の方法でDOS起動OKのC-DOS7環境でも拡張モニタではなく普通のモニタを使うと起動できません。
直接 JMP $FE00 (7E FE 00)でも起動できません。

DOSモードでC-DOS7を起動後、普通のモニタでBOOTROMを実行すると
cdos3
1回目はAbortしてBASICに戻りました、2回目はそのままフリーズ。
C-DOS7拡張コマンドのGコマンドとFM-77内蔵のGコマンドの動作にもいろいろ違いがあるようです。

いろいろ実験してみる

ついでなのでOS-0とURA-DOS, R-DOSで6309カードが使えるのか調べてみました。
結果はOS-0とURA-DOSは動作OK、R-DOSは動作不可でした。
(URA-DOSはDOSモードで起動しないのでOS-9やEMX80の起動には使用できません。)
OS-0はモニタを使わずJMP $FE00 でそのままOS-9やEMX80の起動ができました。
DSC00358
63C09時のDOS起動用環境としてはOS-0がベストなようです。
(116ページのリスト2を6309STMという名前で保存しています)

 

動作確認結果
63C09
カードに切替
63C09時に
OS-9,EMX,FLEX
のリセットBOOT
FM-8用
OS-9L1起動
EMX80
起動
FM-8用
FLEX9起動
63C09切替
プログラム
F-BASIC V3.0 L20
(DOS)
可能不可不可不可不可P.116
リスト1
TSUKUMO C-DOS7
(DOS)
可能不可拡張モニタ
から可能
拡張モニタ
から可能
拡張モニタ
から可能
P.116
リスト1
OS-0 (DOS)可能不可JMP $FE00
で可能
JMP $FE00
で可能
JMP $FE00
で可能
P.116
リスト2
RDOS (DOS) ※1)不可不可不可不可不可—–
URA-DOS
(BASIC)
可能不可不可不可不可P.116
リスト1
※1)  DOSモードのOSとして使用する場合は63C09カードで使用可能 → 63C09カードに切替後C-DOS7でR-DOSを起動すれば使用可能

FM-77用のOS-9やFLEXであればそのまま起動できるのかもしれませんが、詳細は分かりません。
(FM-7でも試していません^^;;;)
その他FM用には「Runser」「MMS」「Pico-DOS」「IODOS9」「KDOS」というものが存在するようです。
幸いMMS, Pico-DOS, IODOS9の掲載誌は手元にありましたので機会があれば入力してみたいと思います。
どちらにせよFM-8用のOSを77で使用していることに起因する問題かと思われます。

とりあえず、再現性のある起動方法なのでOS-9やEMX80使用時はこの方法でOKかと・・・・(^^)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください