MAME - What's New-J 0.125u2.txt
0.125u2 ------- MAMETestersの修正バグ --------------------- 01815: [Save/Restore] 全セット: マシン状態のセーブステートを再生するとき、-samplerateが変更 されている場合に対応できない(Aaron Giles) 01671: [Interface] DIPにPORT_MODIFYを使っているもの(arknoidjなど): 変更されたDIPスイッチが リストの一番下に現れる(Aaron Giles) 01814: [Sound] YM2608ゲーム (tail2nos, sformula, wc90, mechatt): FM音源が再生されない(couriersud) 01497: [Graphics] numanath, numanatj: タイトル画面の表示不具合(Phil Stroffolino) 01804: [Core] carnevil, sfrush: Seattleゲームが起動時にクラッシュする(Aaron Giles) ソースの変更点 -------------- - 以前からあった「エメラルディア」のテキストカラーの問題を修正。パレットRAMのイ ンタプリテーションを指定するスプライト属性あり。「ニューマンアスレチックス」の ビットマップレイヤーのプライオリティを修正。[Phil Stroffolino] - 入力ポートinternalの再構成とinptport.cのクリーンアップ: [Aaron Giles] * 入力ポートを階層的に管理。入力ポートの最上位レベルはフィールドのリストです。 フィールドはそれぞれ、ポートについての1つ以上のビットを表します。DIPスイッ チや設定スイッチなどの特定のフィールドは、選択可能な設定リストを保持します。 また、DIPスイッチフィールドは、DIPスイッチの配置情報も保持できます * PORT_INCLUDE経由か、複数のオーバーラップビットの定義によるポートのオーバー ライド動作を統一。ポート内の全フィールドは増加したビットオーダーに対して保 持されるので、DIPスイッチが変更されても正しい順番をキープします。これは MAMETestersのバグ01671に対応するものです * ライブポートステートを設定ステートから完全に分離。これはデバイスと同様に、 ポートの定数リストをオフラインとライブの両方で管理できます。各ポートは、オ フライン時にNULL、またはライブ時に有効なライブステートのオペークセットへの ポインタを保持します。他にも、オフライン時にNULLなrunning_machine *も保持 します。 * 新方式に伴い、トークンからポートリストへのコンバートにはかなり複雑なメモリ 割り当てが必要になったため、ポートリストは明示的なメモリの割り当てと解放が 必要です(リソースの自動割り当ては行われません) * カスタムコールバックと変更されたコールバックは、動作中のマシンではなく、 フィールド設定へのポインタを取ります。これにより、どのフィールドが変更通知を 発生させたかがわかるようになります。マシンはfield->port->machineで参照可能 です * inptport.cモジュールのクリーンアップとあいまいな箇所の解消。この作業の大部 分は内部的なものですが、osd_customize_inputport_list()だけが osd_customize_input_type_list()に変更されています。この関数への引数は配列 ではなく、リンクしたリストになります。また、参照する構造体も若干再構成しま した * config.cで、コールバックに対してmachine引数を渡すように更新 * バリディティチェック、XML出力、UIシステムを新ストラクチャに対応するよう更 新 * 入力設定用の巨大なテーブルを単独のインクルードファイル、inpttype.hに分離 * trackfldとhypersptのNVRAMからひどいハックを削除。動作しない原因にもなって ました - Namco NA-1をさらに更新: [Phil Stroffolino] * もう一つのパレット処理を実ハードにより正確にマッチするよう調整。テキストのア ンチエイリアスが改善 * ROZレイヤーのプライオリティを調整 - 一部のゲームで背景の手前に間違ってROZレイ ヤーが表示されるのを修正(numanathjなど) * emeraldjでの問題を防ぐため、ROZタイルマップの処理にマスクを追加 - undrfireとgroundfxのTC0100SCN fgレイヤーに出ていた黒ピクセルパッチを修正。 [Philip Bennett] - DRCシステムの全般的な更新及び改良: [Aaron Giles] UML: * バックエンドバリデーションメカニズムと、参考用テストを少し追加。将来的に拡 張予定 * 新命令コード追加: - SAVE: 仮想マシンステート全体を構造体にダンプする - RESTORE: 構造体のデータを現ステートに反映する - LZCNT: オペランド先頭のゼロをカウントする - XTRACT: ビットフィールドをレジスタに展開する (rlwinm) - INSERT: ビットフィールドをレジスタに挿入する (rlwimi) * 新しいバックエンド関数、get_info()を追加。これは、実際のレジスタがいくつマッ ピングされるかをバックエンドから取得します x86バックエンド: * 新命令コードを全て実装 * get_info()関数を実装 * シフト/ローテートと、オプティマイズアウト関係のバグを修正 x64バックエンド: * 新命令コードを全て実装 * get_info()関数を実装 * x86emit.hに新しいPenryn用命令定義を追加 * PenryunアーキテクチャのROUNDSSとROUNDSDをサポート これは未テストです。もしPenrynベースのシステムがあったら試してみて下さい * シフト/ローテートと、オプティマイズアウト関係のバグを修正 Cバックエンド: * 新命令コードを全て実装 * get_info()関数を実装 * オペランドサイジングをクリーンアップ * ビッグエンディアンなシステムのエラーで動作しなかったのを修正 MIPS DRC: * MMU用のツールを追加。有効にするには、ファイルの先頭でPRINTF_MMUをONにしま す * 仮想非OP命令がまだブランチターゲットになるようにフロントエンドを修正 * 各シーケンスの初めをTLBのバリデーションが必要なようにマーキング * MIPS3 TLBを実装しなおし。例外ベクタと型処理を修正。ビットフィールドをMIPS TLBフォーマットからの直接マッピングに変更。TLB fillとTLB valid/modified例 外を区別化 * ユーザ、スーパーバイザ、カーネルモードを追加。各モードについてアドレスの チェックを行い、無効なアクセスについてはアドレスエラーを生成します * TLB実装部のバグ修正; まだ全て動作しませんが、かなり近くなってます * 非カーネルモードでは、COP0アクセスチェックを必須に変更 * 仮想非OPを再コンパイルするときのクラッシュを修正 * 仮想アドレス0へのエントリがデフォルトで存在するTLBのバグを修正 * マップ変数の実装部で、リカバリ値が正しくないバグを修正 * IDT命令を実装。無効な命令のアサートは全てランタイム時のみになります * マシンがサポートする場合、コモンレジスタからマシンレジスタへのマッピングを サポート。現在のところWindows上のx64のみがこれを行えるのに十分な空きレジス タを持っています。PowerPCでもこれを多分これを利用できると思われます。これ により若干速度が上がります * 必要に応じてINSERTとXTRACTを使うように更新 * Linux上のx64用に、マシンレジスタを一つフリーにするため、レジスタの処理をク リーンアップ -「ワールドラリー」のハンドルサポート。[Mirko Mattioli] - spikes91のスプライト色をハックなしで修正。[David Haywood] - ビッグエンディアン環境でのN64のレンダリングを修正。[R. Belmont] - CDP1869のキャラクタメモリアクセスと、CIdelsaのスプライトのちらつき修正。 [Curt Coder] - 80286のデータバス幅を修正。[Wilbert Pol] - TMS5110とTMS5220に正しいインターポレーションサブサイクルを追加(それぞれにPCサ イクルとA/Bサブサイクル)と、コメントの更新。[Lord Nightmare] -「ワールドラリー」のMCU commをビッグエンディアンに修正。[R. Belmont] - ジョイスティックをデフォルトで有効に変更。[Aaron Giles] - Sandii製ゲームの改良: [Roberto Fresca, f205v] - CPUクロックを実基板で確認 - 実基板での計測結果を基にSNDのクロックを1MHzに変更 - ピン7ステートをHIGHにして、OKI6295の内部周波数を訂正 - 入力: パルス制限を全て削除 実機と同様にボタンのカラカラ音を再現 - テクニカルノートを更新 - サターンCPUのエミュレーションバグを修正。まもなく提出予定のMESS用HP48ドライバ で必要。[Antoine Mine] - グローバルなMachine参照を大量に削除。さらにこれを進めるために、システム全体で、 IRQコールバックにmachine引数を追加。deprecat.hが必要なファイル数が200程度減少。 [Atari Ace] - lwings.cの作業: 入力系のクリーンアップ、DIP配置追加、lwingsbの残ライフDIP設定 修正、マシンドライバの統合。[Sonikos] -「Gorf」のサンプルボリュームを、Chris Law氏による新サンプルセットに合うように調 整。[Chris Law] -「ムーンシャトル」にビルトインオーバーレイ追加。[Deacon Blue] 新規サポート、またはNOT_WORKINGが取れたゲーム --------------------------------------------- 1991 Spikes (Italian bootleg) [robiza] 新規クローンセット ------------------ Last Fortress - Toride / 牌砦 (Korea) [The Guru] Miss Puzzle (Clone of Gumbo) [The Guru] Gals Panic SU (Korea) [The Guru] 追加された未動作ゲーム ---------------------- Beauty Block [David Haywood]