In my travels trying to make the cm4_7 and cm_0 NVIC APIs compatible, I found out that the cm0 Set_Priority was broken. It neglected to shift left the priority as required, so for the microbit examples, all interrupts were priority 0 (the least significant 6 bits of the prio ignore writes).
The Set_Priority API is compatible between implementations now, an as a bonus, the cm_0 implementation will warn if you specify an out of range priority.
In my travels trying to make the cm4_7 and cm_0 NVIC APIs compatible, I found out that the cm0 Set_Priority was broken. It neglected to shift left the priority as required, so for the microbit examples, all interrupts were priority 0 (the least significant 6 bits of the prio ignore writes).
The Set_Priority API is compatible between implementations now, an as a bonus, the cm_0 implementation will warn if you specify an out of range priority.