我有几个非常老的基于MSDos的绘画程序.它们适用于调色板索引图像缓冲区.它们具有许多壮观的形状绘制工具,画笔和效果,在任何现代绘画程序中都不存在 - 特别是在保持在低调色板索引图像的"边界"内时.我想在现代程序中重现许多这些奇妙的工具,或许让我们再次更容易访问自己和普通大众,而无需启动像dosbox这样的模拟器.但我有一个问题.
虽然很多这些画笔和工具都有明显的功能,但其实现应该相当简单.但是使用其他工具,他们的操作原则并不那么明显.我将无法确定一个正确或忠实的算法来实现这些.
如果你是我,你会采取什么方法?是否有现成的反编译器/反汇编器可以处理这样的旧程序?或者你会采取一些不同的方法,例如有条不紊地测试不同输入的算法,以推断潜在的功能?不同技术的某种组合?对于这些程序的一行,这些(商业)程序的原作者是已知的,现在是狂热的开源倡导者.我应该尝试直接与他们联系并询问吗?我对逆向工程并不是特别有经验,所以我不知道从哪里开始.
编辑:似乎"问,你们应该接受"真的有效.
编辑2:查看http://animatorpro.org获取我获取源代码的程序的源代码.豪华油漆也不错,但丹席尔瓦似乎已经从地球上消失了.
IDA Pro几乎可以处理任何二进制文件,并且是此类工作的黄金标准,但与作者联系可能也会有所帮助.
如果你可以说服作者开源部分或全部程序,那就是最好的方法.
除此之外,反汇编和调试将成为你的朋友.在某些情况下,如果您知道最初编译的软件,您可以对其进行反编译.但是反汇编它,并在调试器中运行它以找到总体结构,并寻找实际刷子工作的明显函数.
起初看起来可能令人生畏,但经过一段时间后你会发现它令人惊讶地可以理解.
-亚当