This code works when compiled with DCC's or VBCC's builtin assembler (it's the entire program, not only a snippet):
Code:
section code,code
SIGBREAKF_CTRL_C equ $1000
_LVOWait equ -318
move.l 4,a6 ; system base
move.l #SIGBREAKF_CTRL_C,d0 ; signal on CTRL-C
jsr _LVOWait(a6) ; wait
rts
So the code is correct. The mistake is elsewhere.