|
(08/21) MAME改造0.223-アフターバーナーII (+前回のセット)
(04/10) MAME改造ver0.196-ビートマニア1stと2nd
(09/21) MAME改造ver0.189-ベラボーマン・フェイスオフ
(05/21) メガブラスト:開幕で装備変更方法(2015年5月22日追記)
(11/27) MAME改造ver0.156-ベラボーマン・フェイスオフ
(10/17) 続々々:MAME改造-ベラボーマン・フェイスオフ
(07/29) 続続:MAME改造-ベラボーマン・フェイスオフ
|
タイトル横の画像は管理人から返信ありマークです
|
|
怪しい所をだいぶ絞り込めた。
--------------------
と思う……。
起動オプションを付け忘れてるとか、そういう間違いがない前提なら……。
元々アナログスティックで操作するゲームを
アナログスティックでプレイする場合は、
-joystick
-adstick_device joystick
この2つのどっちかを付けるだけでいいんだよね?
--------------------
それでは、メモ程度に本題。
●関数 update_analog_port()
(ファイル src\emu\inptport.c の 3058行目から )
まず、アナログスティックを監視している。
前回監視と比較して、スティックが動いていれば、新しい値をターゲットプログラムへ渡して、おしまい。
動いてなければ、スティックを繋いでない時のデジタル入力(キーボードとか)で代用する処理に移る。
この次が怪しい。
3140行目 座標値を減らすキーを押したかどうか監視している
if (input_seq_pressed(input_port_seq(info->portentry, SEQ_TYPE_DECREMENT)))
3152行目 座標値を増やすキーを押したかどうか監視している
if (input_seq_pressed(input_port_seq(info->portentry, SEQ_TYPE_INCREMENT)))
これら2箇所で呼ばれてる関数 input_seq_pressed() が、
スティックがニュートラル以外なら、押してなくても、押したという返答している気がする。
この判定の部分を、常に押してない状態に、無理矢理書き換えると期待通りの動きになった。
当然、前回の日記に書いた、一時しのぎの設定は解除して実験した。
--------------------
アナログスティックをちょっとだけ傾けて止める。
動かさないとデジタル処理に突入。
スティックは傾けてあるわけだからそこで反応してしまう。
座標が暴れる。
--------------------
こんな感じか?
あくまでも、起動オプションに間違いがないなら……。
--------------------
と思う……。
起動オプションを付け忘れてるとか、そういう間違いがない前提なら……。
元々アナログスティックで操作するゲームを
アナログスティックでプレイする場合は、
-joystick
-adstick_device joystick
この2つのどっちかを付けるだけでいいんだよね?
--------------------
それでは、メモ程度に本題。
●関数 update_analog_port()
(ファイル src\emu\inptport.c の 3058行目から )
まず、アナログスティックを監視している。
前回監視と比較して、スティックが動いていれば、新しい値をターゲットプログラムへ渡して、おしまい。
動いてなければ、スティックを繋いでない時のデジタル入力(キーボードとか)で代用する処理に移る。
この次が怪しい。
3140行目 座標値を減らすキーを押したかどうか監視している
if (input_seq_pressed(input_port_seq(info->portentry, SEQ_TYPE_DECREMENT)))
3152行目 座標値を増やすキーを押したかどうか監視している
if (input_seq_pressed(input_port_seq(info->portentry, SEQ_TYPE_INCREMENT)))
これら2箇所で呼ばれてる関数 input_seq_pressed() が、
スティックがニュートラル以外なら、押してなくても、押したという返答している気がする。
この判定の部分を、常に押してない状態に、無理矢理書き換えると期待通りの動きになった。
当然、前回の日記に書いた、一時しのぎの設定は解除して実験した。
--------------------
アナログスティックをちょっとだけ傾けて止める。
動かさないとデジタル処理に突入。
スティックは傾けてあるわけだからそこで反応してしまう。
座標が暴れる。
--------------------
こんな感じか?
あくまでも、起動オプションに間違いがないなら……。
PR
この記事へのコメント
この記事にコメントする