OPNA YM2608のクロックサイクル精度でのシミュレーション(エミュレーション)ってものを見かけて、猫にも使えないかってことで np2 fmgen の方に書いたことをこちらにも共有いたします
https://github.com/nukeykt/YM2608-LLE

使い方は文書化されてないけどソースコード眺めたところおそらく次のような感じです
便宜上 YM2608 OPNA の場合を言うと、fmopna_2608.h を include してfmopna_t型の構造体を指すポインタとマスタークロック信号(0もしくは1(非0)で、交互?)を渡して FMOPNA_Clock() を呼び出す度にfmopna_t型の構造体が1クロック(半クロック?)後の状態に更新されるって形だと思います

https://github.com/nukeykt/YM2608-LLE/blob/main/fmopna_impl.h を見ると fmopna_t は最初のメンバーとしてfmopna_input_t型の input を持ってるんですが、fmopna_input_t型は YM2608 OPNA の入力端子に相当するみたいです
具体的には全てのメンバーがint型として定義されてて、clk, ic, cs, wr, rd, a0, a1, data, test, gpio_a, gpio_b, dt0, dm, ad, da とあります
YAMAHA LSI Data Book 音源編(1994-10、CATALOG No.: 7610002)の YM2608B の節(https://www.quarter-dev.info/archives/yamaha/YM2608B.pdf)で、端子機能を見るとこれらが入力(もしくは入出力)の端子として記されています