Categories: R10コンピュータ

TSCのFLEX for 6809を使ってみる

eBayで購入したFLEX for 6809 のFDから取り出したFLEX.CORを使ってみました。

取出したFLEX.CORの中を見てみると、

このフロッピに入っていたFLEX の正体はFLEX 9.0 のようです。

FLEX9.0 のI/Oコンソールドライバのベクトルテーブルは、

アドレス 割当
$D3E7 IHNDLR
$D3E9 SWIVEC
$D3EB IRQVEC
$D3ED TMOFF
$D3EF TMON
$D3F1 TMINT
$D3F3 MONITOR
$D3F5 TINIT
$D3F7 STAT
$D3F9 OUTCH
$D3FB INCH

注)FLEX 9.0 は $D3E5のINCHNEは存在しないようです。

 

ディスクドライバのベクトルテーブルは、

アドレス 割当
$DE00 DREAD
$DE03 DWRITE
$DE06 DVERIFY
$DE09 RESTOR
$DE0C DRIVE
$DE0F DCHECK
$DE12 DQUICK
$DE15 DINIT
$DE18 DWARM

どうやらディスクドライバは3.0系と同じ、I/OコンソールドライバはINCHNEが無いということのようです。

これらを踏まえると、

Old68funさんのI/OコンソールドライバにはINCHNEはありますが、$D3E5なので無視されるだけでだと思われます。
ディスクドライバはそのまま利用できるようなので、6809SBCで使用するシステムディスクを作ってみました。

ターゲットのマイコンはこちら。


システムディスクの作成手順はOld68funさんのブログの手順に従いました。

次回の作業に備えて、手順を箇条書きでまとめておくとこんな感じです。

(1)FLEX.CORを得る
→SWTPCのFLEX for 6809のFDから直接吸出し
トラック0 セクタ5のカタログエリアからFLEX.CORの保存領域を取得
CONSOLE.BINとDRIVER.BINを含まないFLEX.CORを得る
(2)Driver.bin, Console.binを用意する
ソースからアセンブルしてDRIVER.BINとCONSOLE.BINを生成
DRIVER.BIN : 361バイト
CONSOLE.BIN : 87バイト
(3)binファイルをパケット形式に変換
FlexDrvWinを使ってパケット形式に変換
3-1)FLEXフォーマットのブランクD77イメージをセット
3-2)ファイルリストのボックスにDRIVER.BINをドロップ
先頭アドレスは0x0000でいいですか?を「いいえ」で抜けてStartAdrを0xDE00にセットして再ドロップ
DRIVER-PAC.BINの生成
3-2)ファイルリストのボックスにCONSOLE.BINをドロップ
 StartAdrを0xD3E5, 実行アドレスを0xCD00でCONSOLE.BINをドロップ
パケットに変換されたデータの8バイト目を$57→$18に変更
+$20の位置から $02 $D3 $70 $3Fを挿入→最後の$CDが+$64になる
CONSOLE-PAC.BINの生成
(4)FLEX.COR, DRIVER.BIN, CONSOLE.BINを繋げる
新しいBLANK.DSK用意しバイナリエディタでFLEX.CORを$2000から上書き($351Aまで)
$3600からDRIVER.BINを上書($3778の$84)
$3800からCONSOLE.BINを上書($3864の$CD)
(5)セクタ情報を書き換える
$2000からの先頭4バイトを
01 02 00 01
01 03 00 02
:
01 19 00 18 ($3700)
00 00 00 19 ($3800)
と連続したセクタチェンに書換
(6)セクタ00 03のSIR情報書換
アドレス$200からオフセット$1Dの未使用領域セクタを$01 $1Aに変更
オフセット$21からの残りセクタ数を$09 $C7に変更
(7)セクタ00 05のディレクトリ情報書換
アドレス$400からオフセット$10の24バイトを変更


作成したシステムディスクのイメージををFlexDrvWin.exeにセットしてASSIST09からFLEXのブートローダを実行。


おお!起動しました^^

トランジェントコマンド類はまだ吸い出していないので、以前から使っているディスクイメージをドライブ1にセットして使ってみます。

試しにDEBUGコマンドを実行し、逆アセンブルしてみました。

問題なく動作しました^^
(INCHNEは無視されていると思われますが、問題なく動作しています)

FLEXのバージョン番号は謎だらけなのでよくわかりませんが、作業してみて分かったことはFLEX 9.0の移植はFLEX9 3.0系と同じ操作でできるようです。

とりあえずはエディタとアセンブラが動作すれば一通り楽しめそうです^^

250ドルで購入したFLEXが動作しました!
無駄にならなくて済みました。
皆様、ご協力ありがとうございます^^

後は、コマンド類をコツコツ取出せば、購入したFDで一通り揃ったFLEX環境が作れそうです。

そんな、eBayで購入したFLEXが動作した記録・・・


残件
FLEX for 6809のフロッピからファイル取出し
Utilitesのフロッピからファイル取出し
INCHNEの無いコンソールI/Oドライバでの動作確認

kabekin