LEA label(PC),A0
BSR.W _GOSUB
The code for '_GOSUB' is:
LINK A6,#0
JMP (A0)
The reason for this is 1) it is not possible to determine if a label begins a subroutine or not, so it is not possible to use the LINK instruction to create the stack frame at the subroutine, and 2) I want to have a stack frame for subroutines, because this allows the 'RETURN' command to return from procedures and functions (when they get implemented).