「OS-9」タグアーカイブ

OS-9の話題

FM-11 マンハッタンシステムのモジュールもROM化^^

R2PlusでのROM化ができるようになったので、同社のマンハッタンシステムのモジュールもROM化してみます。

マンハッタンシステムといえば、FM-11用OS-9上でCP/M80を動作させる夢のシステムです。

この手の古いシステムはハードの故障よりもメディアがダメになってソフトが壊れることのリスクの方が大きいのでROM化は有効な手段だと思います

と、いうわけでROM化開始^^

取説によるとマンハッタンシステムで必要なモジュールは
ApIf, ApDv, ResetAp, pOS9, pCPM, ReadCPM, CpmF5.0, CpmF5.1
CpmF8.0, CpmF8.1, Foster, Type, Epyt
の13個のようです。

これをメモリにロードしてOS-9のSaveコマンドでモジュールを結合します。

と、作業していると

pOS9がどうしてもロードできません・・・

モジュールヘッダが壊れているのかVerifyコマンドで確認してみると 続きを読む FM-11 マンハッタンシステムのモジュールもROM化^^

FM-11 R2PlusでOS-9のコマンドをROM化してみる^^

TSCのFLEX for 6809吸出し作業のついでにFM11用のROMカードを引っ張り出してきました。

サピエンスのR2Plus ROMカードで数年前に譲って頂いたものですが、活用できず放置状態でした^^

譲って頂いたときはこのカード用の特別なドライバが必要とのことで、ドライバを持っていない私には
使えないものと思っておりました。

しかし、最近頂いた情報で このカードに付属していたソフト類は「モジュールを分割するツール」と
「IHEX変換ツール」「RTCのドライバ」だけということが判明し、これなら私が持っているモジュールで
揃っていることが判明
(言われてみると取説の通り・・・)

愛用のFM11AD2+に取り付けて使ってみることにしました^^

R2Plusは32KBのROMが8個搭載できるモジュールROM化+RTCカードです

RTCバックアップ電池は既に干上がっていると思われるので外しておいた方が安全そう・・・

取説は数年前にメーカから取り寄せできたのですがソフトは残っていなとのことで、
そのままになっておりましたが、結果的には付属ソフトが無くてもROM化して使用できる
ことが判明しました

 

R2Plusに付属のソフトは4KB以下のモジュールを4KBを超えないようにマージするツールと
それをインテルHEXに変換するツール、そしてRTCのユーティリティです。

モジュールを最適化しなくてもよければそのままROMに焼くことで使えるもののようです。
てっきりドライバ等が必要なのかと思って放置しておりましたがドライバは特に不要のようでした・・・^^

取説の手順に従い実行ディレクトリのコマンド類を最適化してROMに焼きます 続きを読む FM-11 R2PlusでOS-9のコマンドをROM化してみる^^

いろいろ残件メモ

ブログの記事中に残件をメモしているのですが、分散してしまい後から見直すのに忘れてしまいます^^;;;

残件はここを見れば分かるように、GITのISSUEのように一か所にまとめてメモします。
(解決したらここにも追記)
何かお気づきのOMさんがいらっしゃればアドバイスをお願い致します(_ _)


■残件メモ 続きを読む いろいろ残件メモ

6809の分岐命令を整理しておく^^

いつも忘れてしまう6809の分岐命令を整理しておきます。

比較順序
① lda, ldb でレジスタに比較される値をロード
② cmpa, cmpbでメモリ に 比較する値を指定
③ その後分岐命令で分岐先を指定
④分岐しない場合は分岐命令の次から評価

大小比較 符号なし 符号あり
Reg  > M BHI
Branch Higher
if C v Z = 0 then
BGT
Branch Greater Than
if Z v (N ⊕ V) = 0 then
Reg ≧ M BCC / BHS
Branch Carry Clear / Branch Higher or Same
if C = 0 then
BGE
Branch Greater or Equal
if N ⊕ V = 0 then
Reg = M BEQ
Branch EQual
if Z = 1 then
Reg <> M BNE
Branch Not Equal
if Z = 0 then
Reg ≦ M BLS
Branch Lower or Same
if C v Z = 1 then
BLE
Branch Less Equal
if Z v (N ⊕ V) = 1 then
Reg < M BCS / BLO
Branch Carrt Set / Branch / Branch LOwer
if C = 1 then
BLT
Branch Less Than
if N ⊕ V = 1 then
CCRフラグチェック N (Bit3) V (Bit1) C (Bit0)
1 BMI
Brabch MInus
BVS
Branch oVerflow Set
BCS
Branch Carry Set
0 BPL
Branch PLus
BVC
Branch oVerflow Clear
BCC
Branch Carry Clear

条件なし分岐  
常に分岐 BRA
BRanch Always 
常に分岐しない BRN
BRanch Never

分岐命令を整理するまでは丸暗記するしかないと思っていましたが、意味を当てはめてみると
覚えやすい命令名だということに今更ながら気づきました・・・
今後は表を見なくても分岐できそう^^;;;

そんな6809分岐命令整理の記録

参考文献
6809ハンドブック アスキー出版局
FMシリーズによる6809アセンブラ教則本 CQ出版社