Hacker News new | ask | show | jobs
by billforsternz 880 days ago
Sometimes you really need the old hardware. A few years ago I was called in to help out a company that couldn't get 30 year old embedded code for an industrial PC platform running on modern replacement hardware. With my trusty old MS-DOS V2.11 version of DEBUG.COM I eventually managed to break into the hard loop I suspected the code was stuck in, to trace and disassemble it. It was communications code to talk to OG PC Uart hardware. For reasons best known to God or at least someone who probably retired 20 years ago they were using a scratchpad register in one of the chips instead of a byte of RAM to hold a timing variable to implement a delay/timeout. The modern [ASIC/FPGA/System on a chip/I don't know what] that was emulating the collection of OG PC hardware chips didn't bother providing that scratchpad register. A little big of creative assembly language rework and voila, the system worked like a charm. I really felt like invoicing for $10,000 or something ridiculous instead of 4 hours at my usual very reasonable hourly rate :-)
3 comments

$10000 would be extremely reasonable for such a fix, not ridiculous. You single handedly decoupled the software from dying hardware!
10? Try 50 next time.
Sounds awesome! Need an apprentice?
Ha ha, I don't think there's much of a career to be had in being able to keep 16 bit MS-DOS software binaries with no source code running unfortunately:-)