Specifications
FC protocol, version 2, HC9S08 implementation
Developer’s Serial Bootloader, Rev. 13
Freescale Semiconductor 21
Figure 17. Interrupt vector table relocation explanation (HCS08)
4.5 User code start
To provide a register setup similar to how it appears after MCU reset, the user code is started in an unusual
way.
4.5.1 Software reset
If the bootloader must quit and run user code, an illegal operation is intentionally executed (HCS08 illegal
opcode $8D). This causes an illegal operation reset and the MCU restarts. During bootloader startup, the
System Reset Status (SRS) register is tested. If a power-on-reset is not detected, the user code starts instead
INTERRUPT VECTOR TABLE
0XFFC0
RESET VECTOR (bootloader start)
BOOTLOADER CODE
0XFE00
0XFFB0
START
EXIT
original interrupt vector table
0XFFFE
USER CODE
START (RESET)
INTERRUPT ROUTINE 1
INTERRUPT ROUTINE 2
INTERRUPT ROUTINE 30
INTERRUPT ROUTINE 31
...
RELOCATED INTERRUPT VECTOR TABLE
0XFDC0
...
RESET VECTOR
INTERRUPT VECTOR 1
INTERRUPT VECTOR 2
INTERRUPT VECTOR 3
INTERRUPT VECTOR 30
INTERRUPT VECTOR 31
0XFDC2
0XFDC4
0XFDE8
0XFDEA
0XFDEC
0XFDFE
is empty (unused)
its content is relocated










