我正在尝试为基于Mediatek的CD-ROM编写程序,以其他方式将信息写入CD。我希望能够控制带或不带CD的激光器。所以我的问题是,使固件重写计算机可接受的指令集的最佳方法是什么?我假设该体系结构是ARM,但是您认为最好从公司的网站下载固件,然后将其放入反汇编程序中尝试一下,还是有更好或不同的方法?我的最后一招是创建一个新的控制板,可以在其中控制电子设备。谢谢,

Simon

#1 楼

Coastermelt项目:开源固件,用于创造性地重新使用Micah Scott aka @scanlime的BD-R驱动器。

它包含2个非常有趣的视频:



https://vimeo.com/110257380

https: //vimeo.com/111417458

Github代码:https://github.com/scanlime/coastermelt/

#2 楼

您称为“最后手段”的解决方案并不难。如果您不需要精确控制激光器的位置,则需要进行以下操作:


无刷电动机使磁盘旋转
步进电动机移动激光
激光二极管实际上可以燃烧某些东西

您甚至可以不用像Arduino这样的板就进行大量焊接。

如果确实需要保存大部分, CD-ROM功能,则需要重新安装固件。问题在于,虽然微处理器的核心是ARM,但它也包含许多外围模块,而您没有任何文档。您也许可以推断出一些硬件寄存器,但是总体而言,此任务并不容易。将JTAG适配器挂接到板上以控制程序执行会很有用。

#3 楼

通常是ARM MCU(两个不同的可能的操作码,可以是Thumb)。您所需的信息通常不会公开。 Mediatek似乎在其芯片中使用了某些ARM内核https://en.wikipedia.org/wiki/List_of_devices_using_Mediatek_SoCs。您必须探索。也许这项工作会有所帮助https://media.blackhat.com/us-13/US-13-Zaddach-Workshop-on-Embedded-Devices-Security-and-Firmware-Reverse-Engineering-Slides.pdf