Boot Block

Status
Not open for further replies.

Oznog

Active Member
I don't know too much about bootloaders, so could somebody help me out on this one?

Does a bootloader have to fit within the "boot block"? I saw a mention that there was limited space available in the boot block per part.

The second chip (18f252) on my project does not have a serial port on it, and there is no room to add one, but the main 452 (maybe 4620) chip does. They're connected via I2C. It would be neat-o if the bootloader for the 452 could open the I2C port and have bootloader code on the 252 rewrite its program space. But I2C handlers are going to be longer than a standard bootloader. Did I see somewhere that there was only 512 bytes available for bootloader space on the 252?
 
Does a bootloader have to fit within the "boot block"?

No. The only reason I see for trying to fit the bootloader within the boot block is to be able to write protect it separately from the rest of the code space. This will ensure that the bootloader will not overwrite itself.

If you have to make a bootloader which will exceed the bootblock space, make sure that bootloader checks whether the area it is writing to does not fall within itself or it will render the bootloader unusable on the next bootload.
 
Does a bootloader have to fit within the "boot block"?

No. The only reason I see for trying to fit the bootloader within the boot block is to be able to write protect it separately from the rest of the code space. This will ensure that the bootloader will not overwrite itself.

If you have to make a bootloader which will exceed the bootblock space, make sure that bootloader checks whether the area it is writing to does not fall within itself or it will render the bootloader unusable on the next bootload.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…