Xebra/Arbex (2015/12/03) - 模擬器

Enid avatar
By Enid
at 2015-12-05T22:40

Table of Contents

http://drhell.web.fc2.com/ps1/index.html

------------------------------------------------------------------------
更新内容
------------------------------------------------------------------------

①GPUの描画ルーチンの修正
従来のルーチンではテクスチャにライティングをするときの計算精度が1ビット低い
(結果としてテクスチャにディザをかけるとき大きめにかけてしまう)ような気がするの

修正した

②Mode 2で実行してもOS ROM上のコードはMode 1で実行するようになっていたので
修正した。

③パッド履歴を記録中の場合、ファンクションキーによる実行イメージの退避・復帰
(いわゆるステートセーブ・ロード)において、パッド履歴も退避・復帰するように変更
した。
これにともないファイルの拡張子も若干変更した。

------------------------------------------------------------------------
いつかドキュメントを改定するときのためのドラフト
------------------------------------------------------------------------

■実行モード

Mode 1
コードを関数単位でまとめてバイナリ変換し実行
遅延処理・割り込み監視を常に実行
命令キャッシュは疑似再現で、I Cache Rateを使用

Mode 2
コードを関数単位でまとめてバイナリ変換し実行
遅延処理・割り込み監視を適当に端折るので少し高速
命令キャッシュは疑似再現で、I Cache Rateを使用

Mode 3
1コードづつ解釈しながら実行
遅延処理・割り込み監視を常に実行
命令キャッシュは全く再現せず、I Cache Rateを使用

Mode 4
1コードづつ解釈しながら実行
遅延処理・割り込み監視を常に実行
命令キャッシュ完全再現のため、I Cache Rateは不使用

Mode 5
4コードづつバイナリ変換し実行
遅延処理・割り込み監視を常に実行
命令キャッシュ完全再現のため、I Cache Rateは不使用

コードの再使用率が高ければMode 4よりMode 5の方が高速になるはずだが
実感としてはMode 4の方が高速。
PlayStationのキャッシュヒット率はそれほど高くないということだろう。

理論上の精度としてはMode 4,5が最も高いので
Mode 1,2では動くのにMode 4,5では動かないといったケースがあるなら
それは間違いなくタイミング調整の問題。
ただしMode 4,5ではI Cache Rateを変更しても意味はないので
他のシミュレーション設定値を変更してタイミング調整を行う必要がある。


■実行イメージの注意点

PlayStationではメモリを変更しても直ちには命令キャッシュに反映されない。
このキャッシュ特性を積極的に利用したゲームは
そもそもMode 3では暴走してしまう。

Mode 1,2では、このキャッシュ特性を疑似的に再現できるが、
再現のためのデータは実行時の環境によって異なるため
実行イメージファイルには含んでいない。
だからキャッシュ特性を正に利用中のタイミングで退避した
間の悪い実行イメージファイルからは正常な復帰が出来ない。

Mode 4,5ではその問題はないが、Mode 1,2で作成した
間の悪い実行イメージファイルを
Mode 4,5で正常に復帰できるという訳ではない。
間の悪い確率は相当低いと思われるが
絶対に回避したいのなら、常にMode 4,5で実行し続けるしかないだろう。



実行イメージにはメモリカードイメージも含んでいる。
そうでないと書き込み中のタイミングで実行イメージを作成してしまった場合、
それを復帰したときにメモリカードを壊してしまうからだ。
だから現在のカードを保持したければ、File/Save/Memory Card ... で
カードを退避してから実行イメージを復帰し、
Run/Stop Card -> File/Open/Memory Card ... -> Run/Start Card
を実施する必要がある。
Stop Card/Start Cardを実施しないとカードが変更されたことが
PlayStation OSのメモリカードマネージャーに認識されないため、
事前にメインメモリにコピーされたデータが使われてしまい、
メモリカードを壊す恐れがあるからだ。


■パッド履歴について

気付いた人は少ないようだが、いわゆるTASのための機能。
ただし格闘ゲームのリプレイと同様、
パッド入力情報をひたすら記録したものに過ぎないので
途中でシミュレーション設定・ディスク・実行モードを変更すると
TASとしての意味はなくなる。


使用の流れとしては
(01)シミュレーション設定の変更やディスクの指定を事前にしておく。
(02)File/History/Write Padによりパッド履歴の書き込みを開始する。
(03)Run/Powerにより実行を開始する。
(04)難しいタイミングのシーンの直前でRun/Pauseにより実行を中断する。
(05)File/Save/Running Imageにて(4)の時点の実行イメージを退避する。
(06)File/History/Save Padにて(4)の時点までのパッド履歴を退避する。
(07)Run/Powerにより実行を再開する。
(08)上手くいかなかったらRun/Pauseにより実行を中断する。
(09)File/Open/Running Imageにて(4)の時点の実行イメージを復帰する。
(10)File/History/Load Padにて(4)の時点までのパッド履歴を復帰する。
(11)Run/Powerにより実行を再開する。


Version 15/12/03からは
パッド履歴の書き込みを開始した状態で
ファンクションキーによる実行イメージの退避・復帰を行った場合、
同時にパッド履歴の退避・復帰も行うように変更したので、
いちいち中断しなくても済むようになっている。



■ファンクションキーによる実行イメージの退避・復帰

ファンクションキーによる実行イメージのファイル名は
ゲームのプロダクトIDがxxxx_xxxxxだとすると

F1/F7キーではXEBRA.RUN
F2/F8キーではxxxx_xxxxx.RI0
F3/F9キーではxxxx_xxxxx.RI1

となっている。

全てプロダクトIDにしたいところだが、
プロダクトIDはディスクをある程度読み進めていかないと
(目安としてはSマークからPSロゴへの切り替わりまで)出現しないし、
そもそもプロダクトIDが出現しないゲームもあるため
F1/F7キーでのファイル名をXEBRA.RUNに固定している。

別のゲームのディスクに替えたとしても、すぐにはプロダクトIDは変更されないので
復帰するためにはディスクをある程度読み進めなければならない。


--

All Comments

Wayder Cheat v0.168

Jacky avatar
By Jacky
at 2015-12-05T22:37
http://wayder.web.fc2.com/ カダッシュ / Cadash (cadash, cadashf, cadashg, cadashi, cadashj, cadashj1, cadashjo, cadashp, cadashu) [Select Pudding (ROM Hack)] ...

請問一下WIN10用DS3玩ePSXe怎麼調震動呢?

Faithe avatar
By Faithe
at 2015-12-05T13:27
如題! 手把部分沒問題了, 在電腦遊戲跟pcsx2都能正常震動了, 不過epsxe 1.9.25板一直調不出震動, 不知應該怎麼做呢? 我的DS3是用MotioninJoy去模擬XBOX的, 煩請各位大爺們解答了, THX! - ...

請問md 大戰略閃擊戰的問題

Candice avatar
By Candice
at 2015-12-04T23:08
小弟最近在玩md大戰略閃擊戰(漢化版) 打到第四關和義大利一起打波蘭 開始有俯衝轟炸機Ju87b可以用 但是明明彈藥還有 天氣也是晴朗 為何我就是不能用機槍或是炸彈攻擊週圍目標呢? ( 只有莫名奇妙一兩次成功) 系統總是會出現訊息:週圍沒有可攻擊之目標… 我有試著飛 ...

FBA Previews & titles screenshots

Lily avatar
By Lily
at 2015-12-04T22:08
2015.12.02 Hi Guys, I hope to give a small contribution with this topic... the screenshots are related to the latest FBA release (0.2.97.37). The previe ...

(WIP) DU Update: NAOMI Development BOOT ROM / Baby D

Zanna avatar
By Zanna
at 2015-12-04T21:10
2015.12.03 NAOMI Development BOOT ROM https://www.youtube.com/watch?v=iQsZtFA3m7Uandamp;feature=player_embedded 2015.12.01 and#34;Baby Dreamand#34; cai ...