Last Updated on 2020年5月23日 by kabekin
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ドライバでの動作確認