Page 98 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼気になったところが リチャード堀井 03/9/17(水) 14:52 ┗Re(1):気になったところが BBT 03/9/19(金) 12:11 ┗Re(2):気になったところが Norix 03/9/19(金) 23:43 ─────────────────────────────────────── ■題名 : 気になったところが ■名前 : リチャード堀井 ■日付 : 03/9/17(水) 14:52 -------------------------------------------------------------------------
もしかしたらタイプミスかもと思うところを発見しました。 EmuThread.cpp 899行くらい。 CEmuThread::ThreadProc 内の if( g_nes->IsDiskThrottle() ) { の直後、コメント // オートを外してVSYNC同期の時にもフレームスキップをする為の措置 の直前で else if っぽいインデントなのですが、else がありません。 一応ご報告まで。 |
▼リチャード堀井さん: >もしかしたらタイプミスかもと思うところを発見しました。 > >EmuThread.cpp 899行くらい。 >CEmuThread::ThreadProc 内の > >if( g_nes->IsDiskThrottle() ) { >の直後、コメント >// オートを外してVSYNC同期の時にもフレームスキップをする為の措置 >の直前で > >else if っぽいインデントなのですが、else がありません。 > >一応ご報告まで。 私が口を出す事ではありませんし、掲示板の趣旨にもそぐわないかもしれませんので 問題があればこのレスは削除します。 まず該当箇所の指摘がはっきり行われていないように思えます >EmuThread.cpp 899行くらい。 >の直後、コメント >// オートを外してVSYNC同期の時にもフレームスキップをする為の措置 >の直前で とありますが、ソースには必ず行がありますし、公開されているソースをこの場で 1部分コピペする事は何も問題がありませんよね? 以下はその部分のソースですが先頭が896行ですので、898行の事をおっしゃってる と言う認識であっていますか? -------------------------------------------------------------------- if( g_nes->IsDiskThrottle() ) { frameskipno = 10; } if( bThrottle||bKeyThrottle ) { frameskipno = (INT)(((double)Config.emulator.nThrottleFPS+30)/60.0); }else { // オートを外してVSYNC同期の時にもフレームスキップをする為の措置 -------------------------------------------------------------------- 該当箇所が898行の"} if( bThrottle||bKeyThrottle ) {"であった場合ですが 確かにパッと見else ifのようなインデントとなっていますが、処理を追いかけると オートフレームスキップが無い場合に、ディスクシステムの高速化アクセスを見て 有効であればフレームスキップを10に、それとは別に倍速モード指定や、倍速モード キーがONになっていれば、フレームスキップを設定する処理になっています。 ここをelse ifにした場合はディスクシステムの高速化アクセスがOFFになっていな ければ倍速モードがOFFになってしまい、正常な動作が期待できないでしょう。 上記の事から、処理としては正常で問題ないかと思われます。 リチャード堀井様はソースを見る技量をお持ちのようですので、最低でも上記の事を 確認されてから投稿されるのが良いのではないでしょうか? Norixさんも時間が許すかぎり対応はしてくれるかと思いますが、ソースの記述方法 が間違っているようだから動作の確認してくれと言われても、一々それに対応するの は難しいかと思いますよ。 |
▼BBTさん: まぁ,バグでもなんでもないんですがフォローありがとう。 |