91伊人国产-91伊人久久-91伊人影院-91影视永久福利免费观看-免费毛片儿-免费女人18毛片a级毛片视频

歡迎進入儀商網!

國外大神用鼎陽示波器恢復軟盤里的游戲

又到了考(bao)驗(lu)閱(nian)歷(ling)的時候了。



盆友,你可識得此物?


在80年代90年代,可是有不少寶貴的代碼數據,都是存儲在這樣的載體之中的,比如DOS版的仙劍1。圖片



辣么,如果現在有一張存儲古早代碼的軟盤到了你手里,你該如何解開其中的歷史秘密?要知道,在今天,你可能連讀取軟盤的設備都很難找到……


要是再磕了碰了,那就更完蛋了。


最近,vsftpd作者、Google Project Zero創始人Chris Evans大佬就遇到了這樣的難題:


在和Phil Pemberton一起恢復存儲在軟盤中的幾個古早游戲代碼時,他們發現,部分軟盤出現了不同程度的損壞,以致于直接用Greaseweazle這樣的設備是無法讀取的。


△Greaseweazle F7 Plus


怎么辦?大佬決心要搞出一個全新的方案,搶救寶貴歷史代碼。


設備也簡單,就用萬能的示波器。


沒錯,就是那種用來測試電路、顯示波形的儀器。



恢復出來的游戲代碼竟然還能玩,而且界面顯示清晰:



這波操作,看得網友直呼:數據考古不要太酷。



▍手敲0和1,100%恢復古早代碼


軟盤通常以模擬信號的方式存儲數據。


這里面存儲的模擬信號,用的是最原始的FM調制(頻率調制)。


也就是說,它所存儲的信號0和1,分別會以不同的波形頻率表示。


△這代表的是00101100


以下面這段波形為例,單位周期下,在信號為0時,輸出的頻率是比較慢的;而當信號變成1時,頻率就會突然變快。



因此,只需要找到周期規律,就能判斷一個周期里,信號代表的是0還是1。


但也不能僅僅看峰值來判斷信號是否為1。例如,在這個周期里,就出現了一個“假峰值”,然而人工解讀的結果還是0。



因為這個峰值其實是一個噪音,信號的整體趨勢仍然是下降的,波形的頻率本質上并沒有變化。(但信號為1時,波形會呈現一個完整的周期,起始點和終點的值是非常接近的)


有網友給出了簡單的判斷方法:一個周期過去,如果信號值變化很大,則代表0;如果信號值幾乎不變,則代表1。



據Chris Evans介紹,代表0的正弦波信號,是8μs一個周期;而代表1的正弦波信號,則是4μs一個周期。


這種情況下,用Greaseweazle等“現代設備”直接讀取數據,會出現一個問題。


如果軟盤中的數據,由于各種外部原因(時間久遠、使用次數過多)出現了損壞,那么僅憑機器,是無法從這些帶有大量噪音的數據中完成解讀的。


△就像這樣,有一個扇區出現了問題


但人卻可以輕易看出這些數據中的“規律”,從而判斷信號的狀態。


因此,用示波器將軟盤中傳輸的模擬信號展示出來,再由人工進行解讀,會是個更好的方法。


于是Evans和Pemberton將示波器直接連上了軟盤驅動器的測試點,看看軟盤到底都輸出了些什么信號。


其中,輸入信號會呈現一正一負兩個波形,用來消除一部分噪聲。



從各種“年代久遠”的軟盤解讀出的信號來看,難怪Greaseweazle這些設備讀不出來……(連人也得仔細分辨一會兒)



接下來,就是處理這些神奇的波形了。


為了更好地處理噪音、繪制信號圖像,Evans和Pemberton還用上了Audacity來處理模擬信號。


Audacity是一個免費開源的音頻分析和編輯工具,能夠快速放大和檢查波形,還具有多功能低通濾波器,以及直接繪圖的功能。



另外,Audacity也支持CSV文件的導入。


Evans和他的小伙伴還利用這樣的音頻工具搞出了新的衍生玩法……


比如將速度放慢100倍,聽一聽軟盤記錄的聲音。恢復出來的數據,效果還不錯。



但上面這些,還只能用于數據比較正常的信號。


對于軟盤本身有輕微損壞的信號,想要恢復就變得更困難了。


▍軟盤壞了怎么辦?


要是軟盤上有劃痕,這部分的信號就會變得非常難以辨認。



這是Evans和Pemberton還原的其中一個凹痕的信號,顯然中間那部分,信號振幅(圖中信號的強度)丟失得非常厲害,還自帶噪音。



其中一種方法是,多用幾種不同的軟盤驅動器試試。


先用MF504C軟盤驅動器過濾一下噪音:



好像效果不大。


換上另一個TEAC軟盤驅動器后,顯示的信號更加給力了,但強度還是很小:



用肉眼分辨的話,難度還是太高了。


鑒于此,Evans和Pemberton又換上了TEC軟盤驅動器,效果好多了,峰值也變得清晰可辨。



除此之外,應對這類信號振幅丟失的情況,還有另一種方法:手工繪制修復。


由于峰值缺失得實在太厲害,只能通過人為修復,繪制部分峰值信號,來解決強度過低的問題。



但無論如何,這些信號都可以被修復。


據作者介紹,上面這些辦法100%可以恢復軟盤中的數據。


除非真的出現了不可抗力。


例如,軟盤的一部分被損壞得很徹底圖片:



這種情況下,軟盤數據就徹底沒辦法恢復了。


所以,家里有“上古寶物”的小伙伴,一定要保護好自己的軟盤!


▍關于作者


這個項目的作者之一,是最受歡迎的Linux發行版FTP服務器程序vsftpd作者、著名黑客Chris Evans。


他畢業于牛津大學,畢業后進入甲骨文工作,其后又在谷歌工作了9年時間,是Chrome瀏覽器安全團隊和谷歌黑客團隊Project Zero的創建者。


據報道,Project Zero團隊由谷歌內部頂尖安全工程師組成,使命是找出全球范圍內高價值的安全漏洞,并將其徹底消除。


2015年,特斯拉把這位黑客大神攬入麾下,負責領導安全工作。2016年,Evans從特斯拉離職。



Evans還是漏洞賞金平臺HackerOne的成立顧問。


現在,據老哥自己說,他處在“半退休”狀態。



最后的最后,你是否也對80年代的游戲代碼長啥樣產生了好奇?


Evans表示,這些恢復出來的源代碼已經交給游戲原作者,是否開源就要看原作者的意思了,如果你感興趣,不妨蹲個后續~


此前還介紹過另一個從21張軟盤中被“搶救”出來的紅白機游戲,代碼已在GitHub上開源:https://github.com/DickBlackshack/Days-of-Thunder-NES-Unpublished/


參考鏈接:

[1]https://scarybeastsecurity.blogspot.com/2021/05/recovering-lost-treasure-filled-floppy.html

[2]https://news.ycombinator.com/item?id=27187435


聲明: 聲明:凡本網注明"來源:儀商網"的所有作品,版權均屬于儀商網,未經本網授權不得轉載、摘編使用。
經本網授權使用,并注明"來源:儀商網"。違反上述聲明者,本網將追究其相關法律責任。
本網轉載并注明自其它來源的作品,歸原版權所有人所有。目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。如有作品的內容、版權以及其它問題的,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。
本網轉載自其它媒體或授權刊載,如有作品內容、版權以及其它問題的,請聯系我們。相關合作、投稿、轉載授權等事宜,請聯系本網。
QQ:2268148259、3050252122。