S1 RS232C 用 DPU-414 設定メモ

S1のRS232CでDPU-414を使うときのメモ

DIPSW 1-1 OFF Input = Serial
DIPSW 1-2 ON Printing Speed = High
DIPSW 1-3 ON Auto Loading = ON
DIPSW 1-4 OFF Auto LF = OFF
DIPSW 1-5 ON Setting Command = Enable
DIPSW 1-6 OFF Printing
DIPSW 1-7 ON   Dencity
DIPSW 1-8 ON   = 100%
DIPSW 2-1 ON Printing Columns = 40
DIPSW 2-2 ON User Font Back-up = ON
DIPSW 2-3 ON Charactor Select = Normal
DIPSW 2-4 ON Zero = Normal
DIPSW 2-5 ON International
DIPSW 2-6 ON Charactor
DIPSW 2-7 ON Set
DIPSW 2-8 ON  = JP
DIPSW 3-1 ON Data Length = 8 Bits
DIPSW 3-2 ON Parity Setting = No
DIPSW 3-3 ON Parity Condition = Odd
DIPSW 3-4 ON Busy Control = H/W Busy
DIPSW 3-5 ON Baud
DIPSW 3-6 OFF   Rate
DIPSW 3-7 OFF   Select
DIPSW 3-8 ON   = 2400 bps

シリアル入力にして通信速度を2400bpsで使用

設定はDIPSW1-1からDIPSW3-8まで一気に設定→DIPSW1,2,3の切り替り時にON確認があるので注意 続きを読む S1 RS232C 用 DPU-414 設定メモ

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出版社