I write embedded software - specifically a real-time OS - for a telecommunications chip. I should probably refrain from making a big point of the company name, since I gripe about my employer way too much on LJ. :-) I do love the technical part of my job.
The boot loader sits in an off-chip EEPROM, gets slurped into memory as soon as the board comes out of reset, turns on I/O, and waits for the real OS to arrive. When the real stuff shows up, it puts everything in the right place etc and jumps through a magic number. I just had to redesign the whole mess for a different chip. Took way too long. I'm proud of the fact that it essentially worked first try, though. Gnarly piece of crap to just work first try.
no subject
The boot loader sits in an off-chip EEPROM, gets slurped into memory as soon as the board comes out of reset, turns on I/O, and waits for the real OS to arrive. When the real stuff shows up, it puts everything in the right place etc and jumps through a magic number. I just had to redesign the whole mess for a different chip. Took way too long. I'm proud of the fact that it essentially worked first try, though. Gnarly piece of crap to just work first try.