On ARM, the bottom bit of the address determines whether you're jumping to ARM 16 bit 'thumb' assembler, or normal non-thumb 32 bit code. Unfortunately the Cortex Ms used for Espruino don't support normal ARM instructions, so you have to set the bottom bit to 1 (while keeping the instructions aligned to 2 byte boundaries)
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Great! Yes, sorry, I forgot about that.
On ARM, the bottom bit of the address determines whether you're jumping to ARM 16 bit 'thumb' assembler, or normal non-thumb 32 bit code. Unfortunately the Cortex Ms used for Espruino don't support normal ARM instructions, so you have to set the bottom bit to 1 (while keeping the instructions aligned to 2 byte boundaries)