当前位置: 首页 » 政策法规 » 工程师园地 » 正文

国外大神用鼎阳示波器恢复软盘里的游戏


  来源: 量子位 时间:2021-05-24 编辑:清风
分享到:



又到了考(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一个周期。

关键词:鼎阳 示波器 软盘    浏览量:13367

声明:凡本网注明"来源:仪商网"的所有作品,版权均属于仪商网,未经本网授权不得转载、摘编使用。
经本网授权使用,并注明"来源:仪商网"。违反上述声明者,本网将追究其相关法律责任。
本网转载并注明自其它来源的作品,归原版权所有人所有。目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。如有作品的内容、版权以及其它问题的,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
本网转载自其它媒体或授权刊载,如有作品内容、版权以及其它问题的,请联系我们。相关合作、投稿、转载授权等事宜,请联系本网。
QQ:2268148259、3050252122。


让制造业不缺测试测量工程师

最新发布
行业动态
政策法规
国际资讯
仪商专题
按分类浏览
Copyright © 2023- 861718.com All rights reserved 版权所有 ©广州德禄讯信息科技有限公司
本站转载或引用文章涉及版权问题请与我们联系。电话:020-34224268 传真: 020-34113782

粤公网安备 44010502000033号

粤ICP备16022018号-4