MC6800/MB8861/MC6801(MC6803)/HD6301(HD6303)の命令一覧表を作りました。ニーモニックとアドレッシングモードがわかっているかた向けです。
以下のGoogleDriveスプレッドシートで公開しています。コピーしてご自由にお使いください。
※ 2018/3/9 typo STA→STAA,STB→STAB 修正済
6800 Instruction table
作成にあたり各データシートと小松さんの半導体コレクション展示会場を参考にしました。
表はクリックすると大きめに表示されます。
・MC6801/MC6803

アキュムレータAとBを連結したDレジスタが追加されたシングルチップマイコン。
Dレジスタ周りの操作と乗算MUL、飛ばない分岐命令BRN、Xレジスタの操作とダイレクトモードのJSRが追加。
アセンブラの表記ではASLをLSLと呼ぶなどのエイリアスが追加されている。表記のみの話で命令が追加されたわけではない。
・HD6301/HD6303

日立がMC6801/MC6803をCMOS化した製品だがXGDM,SLPとMB8861類似のAIM/OIM/EIM/TIM命令が追加されている。
MC6801/MC6803では$4E/$5Eのコードが"force the PC to function as a 16-bit counter"とあって実行するとフリーランしそうな感じなのだけれども、HD6801/HD6303は未定義命令となっている。これ以外は上位互換。
なお日立のデータシートではInherentをImpliedと呼んでいる。
なにか誤りがあれば教えてください。各命令の命令長とサイクル数は各自の宿題とします。
以下のGoogleDriveスプレッドシートで公開しています。コピーしてご自由にお使いください。
※ 2018/3/9 typo STA→STAA,STB→STAB 修正済
※ 2019/2/21 $9D/$DD HCF追加 https://en.wikipedia.org/wiki/Halt_and_Catch_Fire @haserin09 はせりん氏より ありがとうございます
6800 Instruction table
作成にあたり各データシートと小松さんの半導体コレクション展示会場を参考にしました。
表はクリックすると大きめに表示されます。
・MC6800
・MB8861
富士通製の互換品。独自の命令拡張5種6命令が追加されている。
・MC6801/MC6803

アキュムレータAとBを連結したDレジスタが追加されたシングルチップマイコン。
Dレジスタ周りの操作と乗算MUL、飛ばない分岐命令BRN、Xレジスタの操作とダイレクトモードのJSRが追加。
アセンブラの表記ではASLをLSLと呼ぶなどのエイリアスが追加されている。表記のみの話で命令が追加されたわけではない。
・HD6301/HD6303

日立がMC6801/MC6803をCMOS化した製品だがXGDM,SLPとMB8861類似のAIM/OIM/EIM/TIM命令が追加されている。
MC6801/MC6803では$4E/$5Eのコードが"force the PC to function as a 16-bit counter"とあって実行するとフリーランしそうな感じなのだけれども、HD6801/HD6303は未定義命令となっている。これ以外は上位互換。
なお日立のデータシートではInherentをImpliedと呼んでいる。
なにか誤りがあれば教えてください。各命令の命令長とサイクル数は各自の宿題とします。

