12336 is actually 0x3030, i.e. two ASCII zero characters. It looks to me as though CALLRB is actually returning a 'good' status value, but it needs to be interpreted differently. Maybe something like:
if Wstatus = h"3030"
...
(But I haven't consulted the documentation on this...)