자유롭게 게시물을 올릴수있는 게시판입니다.
  • 유년추억
  • 학교생활
  • 입시준비
  • 대학생활
  • 군생활
  • 알바생활
  • 취업준비
  • 직장생활
  • 원룸생활
  • 연애중
  • 결혼준비
  • 집안살림
  • 자녀교육
  • 창업준비
  • 이민유학
  • 노후생활
  • 전체보기


[SS.] SSF 0.12 beta 4 R

 

SSFの実行に必要な最低環境
OS WindowsXP/Vista/7/8 各32ビット/64ビット版
XPで動かないとの報告がありますが原因は不明
CPU FPU,MMX,SSE,SSE2,TSCを搭載しているCPU
Memory 256MB以上
Video DirectX9.0cに対応しているカード
頂点シェーダー3.0,ピクセルシェーダー3.0に対応している必要があります
1024x512又は1024x1024のテクスチャが作成できる必要があります
Sound DirectX9.0cに対応しているカード
44100Hz,ステレオPCMが再生できる必要があります
CD drive MMC3に対応したドライブ
XAudio2関係でエラーが出る場合は、 こちらをインストールしてみてください。


推奨環境
CPU Core i7シリーズ
Core i5シリーズ
Core 2 Duoシリーズ
FXシリーズ
PhenomIIシリーズ
Phenomシリーズ
Memory 512MB以上(デュアルチャネル以上)
その他 BIOS


エミュレート状況
SH2 Emulator 100%
68000 Emulator 100%
VDP1 Block 95%
VDP2 Block 95%
SCU Block 100%
SMPC Block 100%
SCSP Block 95%
CD Block 85%

具体的な実装状況
SH2 ゲーム実行に必要な部分はほぼ全て実装
68000 ほぼ全て実装
VDP1 ほぼ全て実装
ハイスピードシュリンクは未実装
VDP2 ほぼ全て実装
回転面のモザイクは未実装
SCU ほぼ全て実装
SMPC ほぼ全て実装
キーボードは未対応
バーチャガンは非対応
SCSP ほぼ全て実装
FM時のPLFOノイズは未実装
CD Block ほぼ全て実装
CDCコマンドの一部は未実装
マルチセッションは非対応


Ver0.06からの変更点
  • バックアップRAMファイル名を変更
  • バックアップ容量の無制限化(バックアップライブラリのフック)
  • BIOSファイルをオプションで設定できるようにしました
  • BIOS無しでも動作するようにしました
  • DirectInputに対応
  • パッドとキーボードが使えます。ボタンの再割り当て可能。
    デフォルトは
    UP = UP Arrow
    DOWN = DOWN Arrow
    LEFT = LEFT Arrow
    RIGHT = RIGHT Arrow
    A TRG = Z key
    B TRG = X key
    C TRG = C key
    X TRG = S key
    Y TRG = D key
    Z TRG = F key
    L TRG = A key
    R TRG = G key
    START = Enter key
    以下は変更不可
    CD Open = F1 key
    CD Close = F2 key
    Hard Reset = F4 key
    連射のON/OFF切り替え = F5 key
    SoundのON/OFF切り替え = F6 key
    State Load = F7 key
    State Save = Shift + F7 key
    Snapshot = F8 key
    Sound Record = F9 key
    Video Record = Shift + F9 key
    NBG0の表示ON/OFF切り替え = NUMPAD 1 key(テンキーの1)
    NBG1の表示ON/OFF切り替え = NUMPAD 2 key(テンキーの2)
    NBG2の表示ON/OFF切り替え = NUMPAD 3 key(テンキーの3)
    NBG3の表示ON/OFF切り替え = NUMPAD 4 key(テンキーの4)
    RBG0の表示ON/OFF切り替え = NUMPAD 5 key(テンキーの5)
    RBG1の表示ON/OFF切り替え = NUMPAD 6 key(テンキーの6)
    Spriteの表示ON/OFF切り替え = NUMPAD 7 key(テンキーの7)
    画面の回転 = NUMPAD 0 key(テンキーの0)
    ABCとXYZボタンの入れ替え = NUMPAD 9 key(テンキーの9)
    ウィンドウサイズ変更 = NUMPAD + key (テンキーの+)
    Windowsマウスカーソルの表示ON/OFF = NUMPAD - key (テンキーの-)
    Window/Fullscreenの切り替え = Alt + Enter key
    終了 = ESC key
    以下は変更不可(ST-V関係)
    TEST = F11 key
    SERVICE = F12 key
    Coin1 = 5 key
    Coin2 = 6 key
    Coin3 = 7 key
    Coin4 = 8 key
    1P Start = 1 key
    2P Start = 2 key
    3P Start = 3 key
    4P Start = 4 key
    A~N = A~N key (Mahjong panel)
    カン = Ctrl key (Mahjong panel)
    ポン = Alt key (Mahjong panel)
    チー = Space key (Mahjong panel)
    リーチ = Shift key (Mahjong panel)
    ロン = Z key (Mahjong panel)
    2P側はデフォルトではキー設定されていません。キー設定を行えば使用できるようになります。
    シングルコア環境で録音,録画する時はScanline Base Timingオプションにチェックを入れないようにしてください。
    Shiftを押しながら起動するとST-Vに切り替わります。
    Spaceを押しながら起動すると1Block Clockを一時的に60%に落とします。
    Ctrlを押しながら起動するとBIOSの使用ON/OFFが一時的に切り替わります。
    1~5を押しながら起動すると設定が切り替わります(Setting.iniファイルの[Setting1]~[Setting5]に対応)。
  • ST-Vに対応
  • ROMセットの内容はこちら


問題がある部分
  • グーローシェーディングの計算精度が足りない
  • グーローシェーディングの計算に固定小数点(MMX)を使用しています。
    そのため幅が極端に大きいスプライト(1024ドット以上)の計算精度が足りません。
    しかし、精度が足りなくなるような場面はかなり限られているので今のところ対応する予定はありません。
  • 回転スクロールの座標計算に浮動小数点を使用している
  • サターン内部では固定小数点で計算しているようですが、SSFでは単精度浮動小数点を使用しています。
    よって、誤差が発生する可能性があります。
  • PCMが15ビットである
  • 音量の計算にSSE2の符号付き乗算命令(PMULHW)を使用しています。
    PCMは符号ありですが音量は符号なしなので音量を1/2にして計算しています(最下位ビットが失われる)。
  • PCMのリサンプリング処理に浮動小数点を使用している
  • サターン内部では整数(または固定小数点)演算でリサンプリング処理を行っているはず…
    よって、誤差が発生し音程が若干狂う可能性があります。
  • 音の再生タイミングが実機と異なる
  • エミュレータの特性上、音が若干遅れて再生されます(ただし、画面表示が2/60秒分遅れているのでデフォルト設定ではそれほど気にならない)。
    速度を確保するため一定時間毎にPCMを生成しているためです。
    具体的には(オプションで設定したバッファサンプル数*4/44100)秒の遅延があります。
    また、キーONも最大で((バッファサンプル数/4)/44100)秒遅れます。
  • リングバッファを更新していない
  • SCSP内蔵DSPが使用するリングバッファ用メモリに浮動小数点データを書き込まないので、リングバッファ上に直接アクセスするようなソフトの音がきちんと再生されません。
    そんなトリッキーなことをするソフトがあるとは思えませんが…


よくある質問
  • コントローラのRedefineで固まる
  • リキャリブレートしてみてください。
    Windows7ならコントロールパネル -> デバイスとプリンター -> コントローラを選択して右クリック -> ゲームコントローラの設定 -> プロパティ -> 設定タブの調整
    アナログ入力がニュートラル状態で片方に振り切っている場合はRedefineで固まります。
  • 遅延ありますよね?
  • 描画に関してはVDP2 RAM Write Timingにチェックで遅延が1/60秒になります(チェックしないと2/60秒の遅延)。
    モニタ自体の表示遅延に関してはこちらではどうすることもできません。
    入力に関しては入力装置やドライバに依存するのでこちらも対処できません。
    入力装置(ドライバ)によってはデータのサンプリング間隔が1/60秒より遅い場合があります。
    その場合、素早い操作では入力が遅く感じる又はデータの取りこぼしが発生します。
    他には、変換アダプタを使用しているとアダプタ内部で遅延を起こしている可能性があります。
    特にサイバーガジェットの変換アダプタは明らかに3/60秒以上の遅延があります。
    あと、マシンパワーが足りないと描画が1/60秒に間に合わず遅延しているように見えます。
    タイトルバーのDropの数値が増えていくようでしたらマシンパワーが足りていません。
    なお、DrawPrimitiveUP後に即Presentしているのでプログラムではこれ以上画面を素早く切り替えることはできません。
    もっと良い方法があるなら教えてください。
  • 1/60秒の遅延は無くなりませんか?
  • VSynch Waitのチェックを外せば少しは短くなります。
    しかし、完全に無くすことはできません。
    実機では走査線に合わせて画像を表示しているので遅延はありません。
    Windows環境では表示画面全体を作成してから切り替えるため、最悪で1/60秒の遅延がどうしても発生します。
    これはWindows(Direct3D)の仕様なのでどうすることもできません。
    かなり速いマシンでVSynch Waitのチェックを外せば、見た目はともかく遅延は無くなるはずですが…
  • FPUってなんですか?
  • MMXってなんですか?
  • SSEってなんですか?
  • SSE2ってなんですか?
  • x86系CPUについて少し勉強しましょう。
  • TSCってなんですか?
  • タイム・スタンプ・カウンタの略称。Pentium以降のプロセッサなら搭載されています。
    SSFが動作するCPUにはTSCが載っているはずなのであまり気にしなくていいです。
  • 起動直後にエラーで強制終了する
  • FPU,MMX,SSE,SSE2を搭載していないCPUで実行すると不当命令例外が発生して強制終了します。
  • 強制終了後、CDが取り出せない
  • エミュレータの都合で実行中はCDドライブの操作が出来ないようになっています。
    強制終了時はCDドライブのロック解除処理を通らないので取り出せなくなります。
    ロック解除するにはもう一度SSFを実行してESCで終了してください。
  • よくマルチプレイヤー画面に飛ぶ
  • CDブロックはCDドライブが実機と同じ動作することを前提として作成しています。
    ドライブによってはタイミングが実機と違うため上手く同期できないことがあります。
    そのためマルチプレイヤー画面に飛ぶことが多くなります。
    CDイメージ化すると改善する可能性があります。
  • ゲームの動きが遅い
  • ドットクロックが低いと一部のゲームで処理落ちします(ゲーム自体が処理落ちする)。
  • BGMのテンポが狂っている
  • マシンパワーが足りないと処理が間に合わず、内蔵音源の曲が狂ってしまいます。
  • 音が鳴らない
  • SGLでサウンド初期化時にメインCPUとサウンドCPUの同期に失敗すると、以降の再生コマンドを一切発行しないバージョンがあります。
    Memory Access Waitにチェックを入れてみてください。
  • 音がノイズだらけになる
  • オプションのサウンドバッファサイズを小さくすると発生します。
    サウンドバッファサイズの下限はドライバによって異なります。
  • 画面表示が狂っている
  • VDP2の制限事項に抵触しているソフトの可能性があります。
    Check Cycle PatternやVDP2 RAM Revision Accessにチェックを入れてみてください。
  • ゲームが進行しない
  • 以下の設定をすると動くことがあります。
    1. Bus Waitにチェックを入れる(かなり重い)
    2. Bus Wait Clockを0にする(Bus Wait有効時)
    3. Dot Clockを上げる
    4. Memory Access Wait,SH2 Cache,SH2 DMA Real Transfer,SCU DMA Delay Interruptあたりにチェックを入れる
    5. 1Block Clockを下げる
  • 画面が縞模様になっている(黒い横線がある)
  • ノンインターレースを再現した結果です。
    インターレースTVの場合、ノンインターレースは規格外ですがよく使われていた方法です。
    1/60秒の書き換え速度を確保するために偶数フィールド(又は奇数フィールド)のみに描画します。
    古いTVで表示してみると1ラインおきに描画されているのが判ると思います。
    この隙間を上手く利用したゲームも存在するので敢えて再現しています。
    現在のプログレッシブとは違います。
  • 遅い
  • SSは複雑なハードのためPSのように簡単にはエミュレートできません。
    特に画面に関してはDirect3Dでは再現できません。
    ねじれた四角形ポリゴンが現在のグラフィックスカードで簡単に描画できますか?
    それ以外にもハードウェア描画では再現不可能な機能がたくさんあります。
    他のSSエミュレータはハードウェア描画を使用しているみたいですが、その辺は再現しなくても良いと割り切っているのでしょう。
    SSFはPC上でサターンというハードを完全再現するのが最終目標であり、実機より高解像度,綺麗な画面で遊べるようにすることは全く考えていません。
    たとえ遅くてもソフトウェアレンダリングで画面を生成し、見た目が限りなく実機と同じくなるようにしていきます。



치세
2013-07-28 19:47:36
4397 번 읽음
이 글에 총 1 개의 파일이 첨부되어 있습니다.
☞ 로그인 후 의견을 남기실 수 있습니다
 캐시선물





365ch.com 128bit Valid HTML 4.01 Transitional and Valid CSS!
태그