自作NICOLAエミュレータの状態遷移表
Windows 用の自作NICOLAエミュレータの同時打鍵判定ロジックの状態遷移表は、次のような感じにしていました。(個人的な好みによりタイムアウトの処理は省略しています)
1)初期状態 | 2)Mオン状態 | 3)Oオン状態 | 4)MOオン状態 | |
---|---|---|---|---|
初期化 | -- | M出力1)へ | O出力1)へ | MO出力1)へ |
文字(M)オン | Mセット2)へ | M出力 新Mセット2)へ |
MO出力1)へ | 処理A |
親指(O)オン | Oセット3)へ | Oセット4)へ | O出力 新Oセット3)へ |
MO出力 新Oセット3)へ |
文字(M)オフ | -- | M出力1)へ | -- | 処理B | 親指(O)オフ | -- | -- | O出力1)へ | MO出力1)へ |
処理A:最初の文字M1オンから親指Oオンまでの時間t1と,親指Oオンから次の文字M2
オンまでの時間t2とを比較して
t1≧t2 ならば M1出力,OM2出力,1)へ
t1<t2 ならば M1O出力,M2セット,2)へ
処理B:文字Mオンから親指Oオンまでの時間t1と,親指Oオンから文字Mオフまでの時間t2
とを比較して
t1>t2 ならば M出力,Oセット,3)へ
t1≦t2 ならば MO出力1)へ