Fixed the SWI instruction by changing the bitshift to an unsigned bitshift

0xef000000 >> 24 is -17, not 0xef, or 239.
0xef000000 >>> 24 gives the expected result.