Z80カードも動作するようになったので、BIOS09とBIOS80を実装してみました。
ブログを遡ってみるとBIOS移植作戦の最後の投稿が去年の10月
http://asakita.net/kabekin/2018/10/16111.html
かなりのスローペースですが、未だに続いてます・・・(笑
Z80カードの作り直し中、ローダやBIOSはごにょごにょしていたので一気に実装してみました。
作成したコンソールI/O廻りのBIOS09とBIOS80のフローはこんな感じです。
正しい動作かどうか分かりませんが、晒しておくと、
(動作フローと状態遷移が一緒になって読みにくいかも・・)
割込みを使っていないI/Oフラグのポーリング式なので、Z80からの要求確認ごとに処理があっても無くても必ずZ80がHALTになります。
まずは動作するものを作ってから改良を加えていく作戦ですが、難しそう・・・^^;;
こちらの構成で実装したCBIOSを実行してみたところある程度動作していますが、まだまだ先が長い感じです^^
そんなCP/M80 BIOSの骨格が決まってきた記録・・・
View Comments
S1とは懐かしいですね.うちにもまだありますが,動くかどうか不明です.RAM1MBと68008カードも刺さっているはず... 40のフロッピーが動くかどうかも.
30数年前,MB6890のHuEngineにCP/M80を移植しましたが2つのCPUをうまく調停させる事は結構大変ですよね.頑張ってください.
FDEVICEやFOS9が懐かしいです.
コメントありがとうございます^^ S1とFMを弄りながら色々遊んでいます。
S1用68008カードいいですね。S1はバスの工夫でレベル3よりも2つのCPU動作が簡単とのことで、S1でCP/M80の移植にチャレンジ中です^^
レベル3で2つのCPUは難しいと聞きます。
私も最近HuEngineを入手できました。活用してみたいのですが資料が無く使い方が分かりません。コマンドレジスタとデータレジスタがあるのは情報を頂いているのですが、具体的な使い方が分かりません。
何か資料をお持ちでないでしょうか?
私がNIFTYに入会したのはパソ通からインターネットに移行していた頃なのでFDEVICEやOS9の情報はうらやましい限りです^^
今後とも情報交換など宜しくお願い致します(^^)
私の手許にはMB6890 62KB RAM化,S1/40+512KB RAM+68008ボードがあります.今動くかどうか不明.
MB6890のHuEngineにCP/M80を移植して動かしてました.
当時のメインマシンはFM16βFD-IIで,CPUを486SXに(MS-DOSの改造要),Forksの68000ボード(68010化)にCP/M68Kを移植,MB89352 SCSIボード(FDEVICEのメンバーに作製してもらった)を差してOS9/68KとCP/M68KのSCSIドライバを自作などなどやっていたのが30年くらい昔の話です.
倉庫には当時私が作った様々なドライバーやユーティリティのアセンブラソースや,システムROMの逆アセンブルリストが残っているはずです.何か知りたいことがありましたら情報を探してみます.
S1の68008ボードは思った以上に普及していたようですね。
私のブログにコメントを頂いた方でも4人の方がお持ちでした^^
Z80カード+CP/M80が動作するようになったら68008+CP/M68Kも似たような仕組みで実装できるのではないかと甘いことを考えています。
FM16βはこれまで縁がないのですが、FM-11は数台ストックしています^^
S1も好きですが、実はレベル3の方が好きだったりします。
HuEngineの資料など残っていましたら色々教えて頂けるとありがたいです。
HuEngineの資料に関しては時間を見つけて探してみます.実物はまだLevel3の中に入っています.
基本的にはHuEngineを起動したら,メインの6809はIO担当となってZ80からのコマンドを待つループに入る,という形ですね.おそらくどこかには書いたコードを残してあるはずです.フロッピーが読めたら確実にソースコードを掘り出せるはずですが,30年前ですから磁気がおかしくなっているかもしれません...
S1は68008ですがFM16βは68000でしたから16βの方が使い勝手がありました.
FM16βは元々68000マシンになるはずで設計されていたのが途中で事業部が変わって80186/286路線に変わったと聞いています.FM16βのバス構造はアドレスバス24本あって80186用の設計では無い事が分かります.Forksのボードが本来のCPUボードになるはずのものだったとかも言われていました.16βはマイナーなマシンでしたが,とっても面白いマシンでした.
私のFM-11にはForksの68000カードが付いています。→ http://asakita.net/kabekin/2015/02/10469.html
しかしFM-11が8ビット機なのでH,Lに分けてデータを転送している仕組みのようでした。
8ビット世界では68000でも68008でも同じような感じだなぁと感じていました^^
16βだと16ビット機なので68000の実力が発揮できそうですね^^
ジャンクでFM16βを入手する機会は何度かありましたがキーボードが入手できなくて断念することが多かったです^^