PS模擬器 XEBRA 發布新版,更新如下 :
①CD:SetlocとSeekとReadの関係性を修正
②Soud Outputの変更
XEBRAのサウンドは初めに最も手軽なPlaySound()で実装していました。
このAPIはキューイングができないため、
ループ再生・バッファ書き換えという手段を採りました。
しかしバッファの再生位置が分からないため
タイミングによっては再生位置と書き換え位置が重なり不具合が出ていました。
その後、再生位置を把握できるwaveOut系のAPIに変更したのですが、
この時キューイングのことは頭からすっかり消えており、
ループ再生・バッファ書き換えのままでした。
今回の見直しでwaveOut系はキューイングが出来ることが
分かったので、バッファの位置調整は不要となりました。
③GDIのスケール処理対応
OpenGLとしてエミュレーションドライバしか入っていない場合や
垂直同期制限が掛かった環境が増えているように感じています。
その場合GDIの方が速いので、GDIでもスケール処理できるようにしました。
④CUE2CCD
cueシート形式は元々CD「ディスク」イメージを作成するための
「トラック」イメージとタイムシートであり
狭義にはディスクイメージではありません。
SYNC,HEAD,EDC,ECCを省略せず(1セクタ2352バイト)、ギャップも省略せず
全セクタを連結したものが狭義のディスクイメージと言えます。
cueシート形式でも結果的に狭義のディスクイメージになっている場合があり、
XEBRAではこの場合のみ対応しています。
そうでない場合は扱いが面倒すぎるため、XEBRAだけでなく
殆どの仮想ドライブが対応していないわけです。
嘗てはDAEMON Toolsでマウントして吸出せば良かったのですが
DAEMON Toolsが色々と面倒臭いソフトになってしまったので
ccd形式へのコンパータを作成してみました。
http://drhell.web.fc2.com/ps1/index.html
https://play.google.com/store/apps/details?id=com.dokutajigokusai.xebra
沒有留言:
張貼留言