4 ms·
I think the thing I like the best about this article is that it forces you to take a C development environment and break it down into more pieces than is usual.
by mschaef 11y ago
I think the thing I like the best about this article is that it forces you to take a C development environment and break it down into more pieces than is usual.
One of my formative software development experiences was developing firmware for small embedded hardware back in the late-90's. We had a 4MHz 80188EB, 128K RAM, 512K ROM, and a handful of pretty raw I/O hardware. Despite the 'unusual' nature of the software we were building, our main compiler was the real-mode C compiler from Borland C++ 4.5.
Our RTOS/standard library was a collection of four C files maintained by our senior team that we compiled along with everything else. The most unusual part of the build process was that we took the linker output and ran it through a locater that used it to generate an image file for a firmware burn.
It was really quite gratifying to see how much of the usual baggage associated with HLL development was unnecessary. It made software seem a lot less magical and a lot easier to understand, both of which have been helpful over the years.