A chamada de subrotinas em assembly é essencialmente uma instrução de desvio, onde o endereço da instrução seguinte é salvo na pilha para permitir o retorno após a execução da subrotina. Assim, duas formas de desvio para subrotina são suportados:
JSR <ea> BSR <label>
A instrução JSR é codificada por
0100111010.mmm.rrronde mmm.rrr são os campos de modo e registrador do endereço efetivo da subrotina, sendo que apenas os modos de endereçamento de controle são válidos.
A instrução BSR é codificada por
01100001.vvvvvvvv llllllll llllllllonde v...v é o campo de deslocamento de 8 bits e l ...l é o campo de deslocamento de 16 bits, só presente quando v...v for 0.
O retorno de uma subrotina sempre ocorre pela instrução RTS, que não recebe nenhum operando e tem codificação
0100111001110101ou $4E75.