天進步一點點
加油(? ??_??)?
各位小伙伴們,大家好!
希望我的分享能伴隨著大家每天進步一點點!
Retroarch
游戲機萬能模擬器 - Retroarch - 最新版本1.10.3發(fā)布了!
各位小伙伴可以去更新自己的游戲機萬能模擬器了!
以下內(nèi)容為機翻,英語好的小伙伴可以去主頁閱讀。
更新內(nèi)容如下:
RetroArch 1.10.3 剛剛發(fā)布。
FBNeo、LRMAME2003 Plus、UAE 和 VICE 已經(jīng)看到了每周定期更新/改進。我們無法在此處列出所有更改,因此我們只建議您前往相應的 Github 存儲庫并查看那里的 chanes。
LRMAME更新到版本 0.242(最新)。LRMAME 現(xiàn)在也可用于 ARM Mac。您可以從核心下載器中獲取它。
為以下游戲添加了 FourScore 支持(4 人多擊):
這個核心有一個新的自動跳幀模式(基于空閑的音頻緩沖區(qū)空間)。
Lightrec 動態(tài)重新編譯器已經(jīng)更新,它應該修復了之前發(fā)生的幾個崩潰和錯誤。這只會影響使用 x86/x86_64 和 MIPS 架構處理器的用戶,因為基于 ARM 架構的系統(tǒng)繼續(xù)使用 Ari64 dynarec。
進行了 GunCon 大修,添加了以下輸入描述符:
GW (Game & Watch) Libretro 核心現(xiàn)在可用于 MSVC 2005 和 2010 Windows 版本。這些版本可以在比常規(guī)版本更早的 Windows 操作系統(tǒng)版本上運行。
gpSP Libretro 核心現(xiàn)在使用 Miyoo 平臺的小型翻譯緩存。
Amstrad CPC 8 位家用計算機系列的模擬器。這已經(jīng)看到了一些改進。
SMS Plus GX Libretro 核心現(xiàn)在應該在 RetroArch PSP 上更加穩(wěn)定。我們通過避免未對齊的內(nèi)存訪問來實現(xiàn)這一點。以前,在開始游戲后,控制臺會自動鎖定并關閉。
其他相關更改——我們將 ALIGN_LONG 替換為 Miyoo 和 RetroFW 的 ALIGN_DWORD 以匹配
獨立版本。這修復了主系統(tǒng)背景渲染。它從 3DS 中刪除,因為 ARMv6 允許未對齊的內(nèi)存訪問,并且定義該宏無論如何都沒有效果。ALIGN_DWORD 從 Raspberry Pi (ARMv6/7/8)、Classic (ARMv7)、OS X non-PPC (x86, ARMv8)、Vita (ARMv7) 和 Switch (ARMv8) 中刪除,因為這些平臺支持未對齊的內(nèi)存訪問。
修復了 VSU 調(diào)制仿真中的幾個不準確之處,修復了“Virtual Boy Wario Land”中的一些音效。
Nintendo Entertainment System 模擬器核心進行了一些改進。
以前,核心會通過每幀多次使用音頻批處理回調(diào)來上傳音頻,過度“強調(diào)”前端音頻緩沖區(qū)并導致 AV 同步不佳。
我們現(xiàn)在確保每幀只使用一次音頻批處理回調(diào)(除非前端不支持足夠大小的批處理,在這種情況下,樣本將被適當?shù)胤指睿?/span>
我們還做了以下事情:
添加 4:3(保留)和 16:9(保留)縱橫比
Mesen 在裁剪過掃描時默認保留所有情況下的縱橫比,這會導致核心提供的 4:3 和 16:9 AR 之間存在差異,并且RetroArch 自己的 4:3 和 16:9 AR,這并不總能產(chǎn)生理想的圖像(特別是 16:9 在 16:9 顯示器上應用裁剪時會看起來很奇怪)。
我們現(xiàn)在將 Mesen 保留的 4:3 和 16:9 AR 分離到他們自己的選擇中,用于核心提供的縱橫比,因此人們可以在使用任何一個選擇作為其核心提供的縱橫比時選擇他們是否希望保留縱橫比比率。
Super Nintendo Entertainment System 模擬器核心進行了一些改進。
以前,內(nèi)核會以 64 個樣本的數(shù)據(jù)包的形式上傳音頻——這意味著每幀會多次使用音頻批處理回調(diào),過度“強調(diào)”前端音頻緩沖區(qū)并導致 AV 同步不佳。
我們現(xiàn)在確保每幀只使用一次音頻批處理回調(diào)。
這個閃回游戲引擎核心現(xiàn)在也已添加到 Miyoo 平臺。
由于我們更新了 libco coroutines 中間件庫,現(xiàn)在應該修復幾個嚴重的崩潰。
這個Nintendo Entertainment System模擬器核心已經(jīng)看到了一些改進。
更多映射器添加和改進
改進映射器 49、215/258、340、341、351 和 444。添加新(重新)分配的映射器 294 和 310。添加新的映射器 467。
公開內(nèi)部音頻射頻濾波器選項
核心已經(jīng)包含一個低通音頻濾波器,旨在通過射頻調(diào)制器連接到電視時重現(xiàn) NES 的“靜音”聲音 - 但由于某種原因,此功能未啟用/公開。
我們只是簡單地將它連接到一個新的音頻射頻濾波器核心選項。啟用后,音頻質(zhì)量的(主觀)改善非常顯著。過濾器對性能的影響可以忽略不計。
(此過濾器產(chǎn)生此處討論的效果:https ://forums.libretro.com/t/lowpass-filtering-for-nes-rf/37258 )
添加可選的“假”立體聲音效
我們添加了一個新的 Stereo Sound Effect 核心選項,可用于在上混 NES 的單聲道輸出時通過延遲右聲道(相對于左聲道)來模擬立體聲。延遲可配置為 1 到 32 ms。
效果與 Mesen 核心中當前可用的假立體聲相同。
minivmac 是 Mini vMac 的模擬器,一個微型 Macintosh。我們現(xiàn)在為 ARM Mac 添加了這個內(nèi)核。它可以從核心下載器下載。
Genesis Plus GX 是Sega Master System/Sega Game Gear/Sega Megadrive/Sega Genesis 仿真器核心。
我們現(xiàn)在為 Miyoo 系統(tǒng)使用低內(nèi)存代碼路徑。因為這個平臺只有 32MB RAM,就像 RS-90 一樣。
為 Miyoo 平臺添加了Rick Dangerous 游戲引擎核心。
這個超級任天堂娛樂系統(tǒng)模擬器核心已經(jīng)看到了一些改進。
之前,核心的音頻采樣節(jié)奏很差:
結果,核心的音頻/視頻同步不佳,影響了幀節(jié)奏。
我們修復了幾個問題:
此外,我們還做了以下
Snes9x2005 Non-Plus:添加可選的低通音頻濾波器
除了音頻仿真精度的顯著差異之外,核心的“plus”和“non-plus”版本之間最明顯的區(qū)別可能是后者的水平不足低通音頻過濾,導致聲音細小/沙啞。
我們在“非加”核心的輸出級添加了一個簡單的可選低通濾波器。啟用后,音頻會更加柔和/低音,并且生成的聲音更接近“加號”版本產(chǎn)生的聲音——性能要求的增加可以忽略不計。
這個超級任天堂娛樂系統(tǒng)模擬器核心已經(jīng)看到了一些改進。
每幀僅使用一次音頻批處理回調(diào)
之前,核心會以大約 64 個批次上傳樣本,這意味著每幀會使用多次(大約 9)次音頻批量回調(diào)。這會使前端音頻緩沖區(qū)“壓力過大”并導致 AV 同步不良。
我們已通過確保音頻批處理回調(diào)用于每幀僅發(fā)送一次所有可用樣本來解決此問題。
提高保存狀態(tài)效率 + 修復保存狀態(tài)大小
目前,每次調(diào)用retro_serialize_size() (即每當使用保存狀態(tài)時),核心通過分配一個臨時的5 MB 緩沖區(qū)并將實際保存狀態(tài)寫入該緩沖區(qū)來確定保存狀態(tài)大小。此外,由于內(nèi)存流包裝器代碼中的錯誤,它無法正確報告實際大小——這意味著保存狀態(tài)的大小始終為 5 MB。這代表了一種可怕的低效率。
現(xiàn)在,保存狀態(tài)大小的計算獨立于常規(guī)保存狀態(tài)的創(chuàng)建。不需要臨時緩沖區(qū),也不需要實際將保存狀態(tài)寫入內(nèi)存 - 保存狀態(tài)現(xiàn)在具有正確的大小(~830 kb)
此Sony PlayStation1 仿真器核心已更新。
WonderSwan、Lynx 和 PokeMini 仿真器內(nèi)核的重大改進,適用于大多數(shù)沒有 VRR 顯示器的系統(tǒng)!
目前,核心以 ~75Hz 運行,與 WonderSwan 硬件的原生刷新率相匹配。如果核心運行在 VRR 顯示器(或本機支持 75Hz 的顯示器)上,這很好,但在常規(guī) 60Hz 面板上,它可能會導致問題。特別是很容易出現(xiàn)畫面撕裂的情況。您可以在 Linux(不使用合成器且未在驅(qū)動程序級別強制使用 vsync 時)和 3DS 上體驗這一點。3DS 上的撕裂非常嚴重,以至于我們之前認為核心在該平臺上無法使用……
我們現(xiàn)在添加了一個新的 60Hz 模式核心選項,可用于強制核心以 60Hz 運行(實際上是 60.38Hz,但 RetroArch 通過動態(tài)速率控制很好地處理了這一點)。請注意,啟用此選項后,內(nèi)核仍以“正確”的速度運行 - 在內(nèi)部,內(nèi)核運行標稱每秒約 75 幀,但每 5 幀“丟棄”一次。這會降低視頻的平滑度,但是 60Hz 顯示器上的 75Hz 也不是平滑的。更重要的是,啟用此選項可消除屏幕撕裂。
此外,我們還做了以下小改動:
由于這種 60Hz 模式,Beetle WonderSwan 現(xiàn)在可以在 RetroArch 3DS 上完美播放。默認情況下,我們已啟用此選項。如果您使用的是 VRR 顯示器,或者如果您以原始 75Hz 分辨率運行并希望將其更改回原始刷新率,您可以在快速菜單 -> 選項中關閉此選項。
我們還為 RetroArch PS2 添加了核心,盡管它無法達到全速。它是否值得包括在內(nèi)是有爭議的,但現(xiàn)在我們保留它。
還有一個新的可選音頻功能。WonderSwan 傾向于產(chǎn)生相當粗糙/磨蝕性的芯片調(diào)諧。低通音頻濾波器使生成的聲音變得柔和和“柔和”。
目前核心以 72Hz 運行,與 Pokemon Mini 硬件的原生刷新率相匹配。如果核心運行在 VRR 顯示器(或本機支持 72Hz 的顯示器)上,這很好,但在常規(guī) 60Hz 面板上可能會導致問題。特別是很容易出現(xiàn)畫面撕裂的情況。我們可以在 Linux(不使用合成器并且沒有在驅(qū)動程序級別強制使用 vsync 時)和 3DS 上體驗到這一點。
我們現(xiàn)在添加了一個新的 60Hz Mode 內(nèi)核選項(默認啟用),可用于強制內(nèi)核以 60Hz 運行。請注意,啟用此選項后,內(nèi)核仍以“正確”速度運行——在內(nèi)部,內(nèi)核運行標稱每秒 72 幀,但每 6 幀“丟棄”一次。這會降低視頻流暢度,但 60Hz 顯示器上的 72Hz 也不流暢(很少有 Pokemon Mini 游戲一開始就“流暢”……)。更重要的是,啟用此選項可消除屏幕撕裂。
這個 Atari Lynx 模擬器核心已經(jīng)看到了幾項重大改進。
修復幀節(jié)奏
之前,這個核心完全打破了幀節(jié)奏。內(nèi)核向前端報告了 75Hz 的固定刷新率,但 Lynx(和內(nèi)部仿真代碼)具有 0-75Hz 的可變刷新率;游戲可以按照他們喜歡的任何速度渲染。在 retro_run() 中,始終模擬 Lynx,直到發(fā)生下一個“幀結束”事件 - 如果游戲以例如 25 fps 的速度渲染,這意味著 retro_run() 實際上將對應于 (1/25) 秒的 Lynx 運行時間預期的 (1/75) 秒。在這種情況下,游戲被模擬得太快了——但它似乎在前端以正確的速度運行,因為核心上傳了一個“超大”的音頻緩沖區(qū)(相當于 1/25 秒的樣本)。RetroArch 以這樣的方式同步音頻,當接收到太多樣本時,前端以“慢動作”運行——因此“太快的仿真”+“太多的音頻樣本”有效地抵消了。但結果很糟糕。這是對 libretro API 的嚴重違反,它破壞了前端正確同步音頻和視頻以及正確調(diào)整幀的能力。
我們現(xiàn)在修改了運行循環(huán),以便在每次調(diào)用 retro_run() 時模擬固定數(shù)量的 CPU 周期,對應于實際的前端輸出視頻刷新率(可以通過新的 Video Refresh Rate 核心選項設置)。因此,Lynx 總是以正確的速度模擬,音頻總是以正確大小的批次上傳,并且生成的視頻幀在可用時被捕獲和輸出(并且當前端可以接受它們時)。
默認視頻刷新率已設置為 60Hz,這為大多數(shù)游戲提供了流暢的結果(并且還消除了 60Hz 顯示器上的屏幕撕裂,這是核心僅報告 75Hz 刷新率時的問題)。如果游戲的幀速率高于此(很少見,但例如加利福尼亞游戲的介紹和菜單以 75 fps 的全速運行),則將丟棄“多余”幀。在這些情況下,擁有 75Hz+ VRR 顯示器的用戶可以設置更高的刷新率來提高視頻流暢度。
提高保存狀態(tài)效率
之前,retro_serialize() 函數(shù)通過分配一個臨時的 ~310kb 緩沖區(qū)來確定保存狀態(tài)大小,將實際保存狀態(tài)寫入其中,然后獲取結果緩沖區(qū)占用率。這是非常低效的——每次保存或加載狀態(tài)時都會調(diào)用 retro_serialize() 3 次……
我們修改了序列化內(nèi)存流代碼以允許創(chuàng)建“虛擬”保存狀態(tài)——不需要緩沖區(qū),也不需要復制數(shù)據(jù)。這意味著 retro_serialize() 現(xiàn)在可以獲取保存狀態(tài)大小,而無需分配內(nèi)存,也不會浪費精力。
添加可選的 LCD 重影過濾器
我們添加了一個新的 LCD 重影濾鏡核心選項,可用于通過混合多個連續(xù)幀來應用 LCD 重影效果。混合幀數(shù)可設置為2-4;使用更多幀以提高性能要求為代價提高了效果的質(zhì)量。
LCD 重影對 Lynx 尤其有益,因為許多游戲以非常低的幀速率運行,并且一些模糊有助于消除頻繁的“生澀”屏幕更新。
有關已發(fā)生的所有更改的詳細分類,請參閱下面的更改日志。
迄今為止,對 Steam 用戶來說最大的變化之一是新的 Steam Discord Rich Presence 支持。注意:您需要使用桌面客戶?端才能使其正常工作。它不適用于 webbrowser 客戶端。
1.10.3
如果你是剛開始看我的文章,并且對萬能模擬器很感興趣的話。
建議你去看看我前面的文章,相信會給你帶來一點點的幫助。
如果你覺得文章好可以,請給我點個贊。
如果你有任何問題和想法,請給我留個言。
如果文章能給予你幫助,請關注我一下。
你的鼓勵和支持將是我最大的動力!
謝謝捧場!
最后感謝各位小伙伴的支持!
AMD 剛剛披露了影響自家 CPU 的驅(qū)動程序漏洞詳情,可知這不僅允許任意低權限用戶訪問信息、還可下載某些 Windows 內(nèi)存頁面的信息。若被攻擊者得逞,或?qū)е旅艽a泄露和發(fā)起不同類型的攻擊,比如中斷 KASLR —— 即幽靈(Spectre)和熔毀(Meltdown)漏洞的利用緩解措施。
(來自:AMD 官網(wǎng))
在安全研究人員兼 ZeroPeril 聯(lián)合創(chuàng)始人 Kyriakos Economou 發(fā)現(xiàn)該漏洞并聯(lián)系 AMD 后,CVE-2021-26333 安全漏洞的細節(jié)現(xiàn)已全面披露。
通過一番努力,AMD 得以通過最新的 CPU 驅(qū)動程序來引入一些緩解措施,且微軟方面也會通過WindowsUpdate 渠道向用戶進行推送。
以下是受 AMD-SB-1009 芯片組驅(qū)動程序信息泄露漏洞影響的產(chǎn)品列表:
● 配備 Radeon 核顯的第二代 AMD 銳龍移動處理器
● 第 1 / 2 / 3 代 AMD 銳龍線程撕裂者處理器(含 Threadripper PRO 產(chǎn)品線)
● 集成 Radeon 核顯的第 6 代 A 系列 CPU / 移動 APU
● 配備 Radeon R7 核顯的第 6 代 FX APU
● 第 7 代 A 系列 APU
● 第 7 代 A 系列移動處理器
● 第 7 代 E 系列移動處理器
● 帶有 Radeon 核顯的 A4 系列 APU
● 帶有 Radeon R5 核顯的 A6 系列 APU
● 帶有 Radeon R6 核顯的 A8 系列 APU
● 帶有 Radeon R6 核顯的 A10 系列 APU
● 配備 Radeon 核顯的速龍移動處理器(含 3000 系列)
● 速龍 X4 處理器
● 配備 Radeon 核顯的 E1 系列 APU
● 銳龍 1000 / 2000 / 3000 / 4000 / 5000 系列桌面與移動處理器(含集成 Radeon 核顯版本)
AMD 當前的驅(qū)動程序更新已經(jīng)活躍了數(shù)周時間,但該公司直到近日才首次分享了更多細節(jié)。
(來自:ZeroPeril | PDF)
Economou 在最近發(fā)布的一份漏洞披露報告中給予了詳細的解釋。測試表明,通過連續(xù)分配和釋放 100 個分配塊,直到系統(tǒng)無法返回連續(xù)的物理頁面緩沖區(qū),就會導致數(shù) GB 的未初始化物理頁面被泄露。
這些內(nèi)容不同于可用于規(guī)避 KASLR 等漏洞利用緩解措施的內(nèi)核對象和任意地址池,甚至包含了用戶身份驗證憑據(jù)的 \Registry\Machine\SAM 注冊表鍵映射的 NTLM 哈希值。
基于此,攻擊者可竊取具有管理權限的用戶憑據(jù)和 / 或用于傳遞哈希式攻擊,以進一步滲透企業(yè)的網(wǎng)絡內(nèi)部。
起初,Economou 僅在 AMD 銳龍 2000 / 3000 系列 CPU 平臺上發(fā)現(xiàn)了該漏洞,但 AMD 一開始僅在內(nèi)部建議中列出了銳龍 1000 系列和較舊的處理器。
但在 Tom's Hardware 深入了解了 Economou 的文檔并聯(lián)系 AMD 后,該公司終于披露了完整的受影響產(chǎn)品列表。
報告顯示,問題源于 amdsps.sys 驅(qū)動程序的兩個獨立部分。作為由平臺安全處理器(PSP)調(diào)用的一種嵌入式安全管理芯片,此類攻擊會導致低權限用戶也訪問到數(shù) GB 未初始化的物理內(nèi)存頁面。
最后,AMD 建議用戶立即通過 Windows Update 等渠道獲取 AMD PSP 驅(qū)動程序更新(5.17.0.0),或通過官網(wǎng)支持頁面下載 3.08.17.735 版本的 AMD 芯片組驅(qū)動程序。