Чем отличается обычная этикетка от процедуры?
Недавно я начал писать код на системах на базе 6502 и использовал ассемблер макросов ca65. Однако я узнал, что он поддерживает процедуры, использующие .proc . Поэтому мне было интересно, в чем разница между этими блоками кода:
mainLabel:
jsr subroutine
subroutine:
;Code
rts
и этот код:
mainLabel:
jsr procedure
.proc procedure
;Code
rts
.endproc
Когда я пытаюсь запустить свои программы, используя эти два синтаксиса, я получаю тот же результат. Из того, что я могу сказать из документации ca65, процедуры не позволяют внешнему коду вводить метки внутри него.