This was set as a vibe-coding challenge at Numfum GmbH to see how quickly coding models could generate a working solution. It's an equally valid task for real-life humans the ol' fashioned way.
A rare piece of computer hardware has been found with a newer firmware than is publicly documented, so for those of us interested in preserving vintage computers it's important to extract this. Invasive methods exist (e.g. a Bus Pirate sniffing JTAG pins, followed by some magic) but this is one of the few known working examples so anything that risks damage should be avoided. Having poked around the connected computer's OS it was discovered one of the conformance test tools (sting) could be made to output an extended log file (normally it doesn't). We'll ignore the knowledge required that such a tool exists (it's undocumented) or that further poking around was required, and start everyone with the same data.
- The last known firmware version images are distributed with the OS,
ccx.mcsandctx1.mcs - A log file (
putty.log) from thestingtool containing read errors between these firmware images and what it sees on the connected hardware
The log file contains thousands of entries where the firmware differs:
**** ERROR 024000 Miscompare of data at Flash address 0x188294: exp
**** ERROR 024000 0x180060 got 0x580060
As alluded to at the start, no AI was going to ever suggest looking at an undocumented conformance testing tool, this was a lucky break by poking around. As it turns out, the more time spent working on a problem the luckier one gets...
A tool to create updated firmware files from the originals and error logs. Such a tool should:
- Be readable, since it will be shared with other compositor owners
- Apply all the differences from the logs
- Create error-free firmware images, since if the hardware were re-flashed with these images and errors exist, it may not be recoverable
- Work with other
stingtool error logs and source firmware versions, not simply assume these three files exist in a vacuum
By hand this took around two days to write a tool that does the conversion plus a few more firmware related tasks, with plenty of interruptions from the real world. The sting tool was used to verify that the hardware's firmware matches the combined files, with zero miscompare errors.
This hand-rolled solution was written in Python, but any language could be used.