PS模擬器 Xebra 發布新版,更新如下 :
・ハードウェアレジスタ領域のバスエラーを正確にした。
ハードウェアレジスタがマッピングされているアドレス範囲は、1F801000から
1F802080なのだが、全てが埋まっているわけではなく、隙間があり、この隙間は
本来アクセスするとバスエラーが発生する。またワードアクセスでハーフワード
2つに同時アクセスが可能な箇所もある。これまでは、こういった市販ゲーム
ではやらないアクセスに対し何もしなかった(ロードでは0を返していた)のだが、
追加の詳細処理を用意した。
市販ゲームでアクセスしないのは、全く時短にならないからだと思うが、市販
ゲームでもアクセスするのに実装していなかったものがあったのでついでに実装
した。それはSPUにおける各チャネルの現在音量なのだが、そもそも、ここを使う
ゲームは少数で、用途としてはフェードアウトの完了確認くらいしかなく、0を
返しておけば問題にならないため省略し、いつの間にか存在そのものを
忘れていた。
・PALモードの1フレーム(フィールド)当りの時間を変更した。
これまでは、SCPH7000での測定値を採用していたが、平均的なPALマシンとの
差が結構あるといった声が聞こえてきたので、DTLH3000での測定値に変更した。
これまで採用しなかったのは、所有のDTLH3000では経時変化が大きく、
0.1クロックの精度もないことを嫌ったからだが、NTSCモードにおいても
型番により10数クロック程度の差があり、こだわっても仕方がないと考えを
改めた。ちなみに、約1%増加したので、FPSに直すと非インターレースモードで
50.22であったものが49.76に減っている。
検証動画で時間比較を行っているものがあるが、実機ですら型番でFPSが違う
という認識が欠けている。実機と比較するなら、型番の離れた2台を用意すべき
だろう。
・PIO, OS ROM の実行時間およびロード時間を修正した。
検証のために作成したプログラムが、どうやらキャッシュミスを発生させていた
ようで、その分、多めに評価していた。
沒有留言:
張貼留言