I currently have 2 in system programming (also acting as bootloaders) designs done up in 8051 assembly but would like to recode them in C. I'm unsure how one goes about doing this based upon the runtime constraints placed on the user when using C.
Watch your language :) I'm usually careful about my language. I use bootloader in the PC sense--namely, the program responsible for launching the application (or operating system). In the case of IAP, this program would also have to be the one to allow update of the application before its launch. I guess the semantics of it aren't important now that we all know what we're talking about. :)