从旧的MiniScribe硬盘驱动器读取数据



文章的翻译来自程序员和老铁匠迈克尔·斯洛姆科夫斯基的恋人的网站

带有控制器的旧MFM驱动器MiniScribe 2012落入我的手中。 MFM是一种经过修改的频率调制 ,并且该技术通常与IDE / Parallel ATA之前的笨重硬盘驱动器相关。 磁盘上存储的古代数据(主要是MS Word 4.0文档)对于以前的所有者具有一定的情感价值,因此我决定将其提取。

MiniScribe 2012硬盘


硬盘-MiniScribe 2012 MFM,可能于1984年制造。 他当时站在兼容IBM XT的计算机上。 这个怪物占据了两个5.25英寸的插槽,重量超过2千克。如说明中所示,它的体积简直令人惊讶-高达10兆字节。电源连接器是标准的Molex。驱动器通过两条电缆连接到控制器卡。













MiniScribe驱动器带有一个专用的8位ISA控制器,称为WD1002A-WX1。 它的规格很容易找到。 文本文件包含安装说明。 此外,兼容设备的列表可能会派上用场。

从理论上讲,该控制器可以与任何支持ST506 / 412协议的驱动器一起使用,但实际上并非如此。 坏扇区列表应存储在控制器ROM中。 这需要特殊的软件。 将新驱动器连接到新控制器并执行低级格式化后,通常会开始工作。


WD1002A-WX1 MFM磁盘控制器

控制器具有自己的BIOS,通常称为Option ROM 。 主板BIOS在POST序列中调用它。 该代码在INT 13中断上注册了一个钩子,因此可以使用标准的中断调用从DOS访问它。

装置


幸运的是,我有一块带ISA插槽和奔腾处理器的AT主板(ATC-1020)。 处理器上没有散热器,但我在板上安装了跳线,使其以最低速度工作,并用松紧带调节了临时散热器。 我还在板上放置了32 MB DIMM RAM模块。



我没有用于PCI或ISA的图形VGA卡,因此我使用带有特殊黄色单色显示屏的MDPA 。 他的主板成功地识别了照片中看到的内容。

为了检查磁盘,我在BIOS中禁用了IDE控制器并尝试启动。 磁盘栩栩如生,甚至启动了-干杯!

从PXE下载


我建议为了使用此MiniScribe光盘进行播放,我需要DOS实用程序,因此我决定从MS-DOS软盘启动。 由于不方便理会物理磁盘,因此我决定使用网络启动。 幸运的是,我有一个具有PXE支持的PCI以太网网卡:3com 3C905C-TXM

要通过PXE引导软盘映像,您需要特殊的引导程序。 最受欢迎的软件之一是PXELINUX,它是Syslinux(Arch Linux的syslinux模块)的一部分。 在Linux机器上,您需要创建用于网络启动的目录并复制到该目录中
PXELINUX:

cp /usr/lib/syslinux/bios/{ldlinux.c32,memdisk,pxelinux.0} . mkdir pxelinux.cfg 

然后创建一个文本文件pxelinux.cfg / default,其内容如下:

default dos
label dos
kernel memdisk
append initrd=fdboot.img


引导磁盘映像必须另存为fdboot.img。 这些文件可以作为ZIP存档下载。

配置PXE引导的一种流行方法是通过dhcpd和TFTP守护程序。 这是一项艰巨的任务,但幸运的是,我发现了一个小型且易于使用的netboot服务器(对于Arch Linux,是aur / netboot)。 它结合了DHCP和TFTP服务器的功能。 在我的路由器中,我启动它时没有断开DHCP服务器的连接,因为它们似乎不应该发生冲突。

在PXE引导文件所在的目录中运行netboot。 DHCP请求后,服务器将返回pxelinux.0 *文件。

 netboot {broadcast IP} {local machine IP} {IP for client machine} {MAC pattern} 

{MAC pattern}必须与客户端网卡的MAC地址匹配。

例如,我的LAN地址是192.168.1.0,我的Linux机器的IP是192.168.1.10,我的3com卡的MAC以66结尾:

 netboot 192.168.1.255 192.168.1.10 192.168.0.20 -66 

作为fdboot.img,我使用了标准的MS-DOS 6.22驱动器。 然后,我全部下载了-并且一切正常!

尝试从IDE驱动器复制数据


由于MFM控制器具有自己的BIOS,因此该磁盘在MS-DOS下可见。 但是我需要一个可以将文件复制到的驱动器。 最初,我决定尝试使用IDE驱动器。 主板有两个IDE通道。 我连接了Seagate的40 Gb驱动器。 系统检测到它,但不幸的是,此后MFM不再可用。 带跳投的游戏无济于事。 两个磁盘过程之间可能存在一些冲突。

将数据复制到USB记忆棒


然后我尝试了另一种方法。 我为MS-DOS安装了PCI USB扩展卡和USBASPI驱动程序。 现在没有冲突了,我能够将整个磁盘复制到USB闪存驱动器!

 xcopy c:\ d:\ /e /k 





主板上的四个扩展卡。 从左到右:MDA图形卡,MFM磁盘控制器,3com以太网网卡,USB扩展卡。

结果,我得到了两百多个Microsoft Word DOS文件,并将其转换为RTF

Source: https://habr.com/ru/post/zh-CN427335/


All Articles