在我澄清我的问题之前,我将解释我正在从事的项目,以及到目前为止我所做的事情,以便更好地理解我正在尝试做的事情。我正在尝试修改 Roland GR-55 吉他合成器的用户界面,以便用户界面功能更好。要了解我到底要做什么,请查看此 PDF 固件布局 pdf
到目前为止,我已经将芯片送到实验室去拆封芯片,在那里拍摄了芯片标记和电路布局的光学图像。通过检查徽标以及它如何集成到层中,我能够确认它是瑞萨电子的定制 SoC。在检查了使用相同芯片的其他产品的原理图后,我能够发现该芯片的调试器是 Renesas e10a-usb 仿真器/调试器,这意味着该芯片属于 Super H 系列。在购买了带有所有 Super H MCU 原理图文件的仿真器后,我花了几个月的时间分析所有 MCU 的引脚排列,直到我得到一个与我的设备匹配的 MCU 的列表。从那里我能够确定 MCU 是 Renesas SH2A_custom_SoC1,并成功地将仿真器连接到 GR-55 单元。所以目前我'
因此,从专业的角度来看,我可以采取哪些路线来完成这项工作并达到预期的结果,以及这些路线可能会在时间、成本和资源方面有哪些变化。以下是我考虑的一些路线。
学习汇编语言,学习如何自己修改代码。我估计这可能需要我大约一年或更长时间。
聘请逆向工程 (RE) 服务。雇用 RE 服务会涉及什么?一家公司有可能接受这样的工作吗?如果他们这样做了,成本和时间框架可能是多少?我知道这一切都不同,人们可能必须自己分析代码才能给我一个估计,但我对 RE 了解不多,我试图防止自己被骗或对结果感到失望。
我考虑的另一个选择是聘请工程师从头开始编写新固件,其功能与当前固件相同,但具有我想要的变化。我联系了许多软件工程自由职业者,他们告诉我这是他们唯一能提供帮助的方法,因为修改现有固件比从头编写固件更困难。我发现这很难相信,因为 GR-55 执行了一些我认为无法轻松复制的复杂任务。但这会是我可以走的路线吗?
我理解为什么有人会认为这样的项目会浪费时间和精力,但我这样做的原因是特定于我的。作为一名音乐家,我已经拥有这台设备 10 年了,并且可能会在我的余生中拥有并使用它,就像我将在我的余生中拥有并使用我的吉他一样。我拥有提供类似功能的所有其他设备和软件,它们都很糟糕,包括 GR-55。我有朋友也使用这个设备,所以它不会只适合我自己。我也把学习汇编语言和 C 作为一个目标,因为它很有趣,我相信这是一个很好的学习技能,所以无论这个项目是否失败,我都会继续学习 RE。