Используя TASM, я успешно запрограммировал цифровой секундомер (LAP и обычный) на emu8086, но когда я пытаюсь запустить его на TASM, я получаю ошибку Forward reference needs override
. Я знаю, почему эта ошибка возникает, поскольку у меня есть две процедуры, включая и следующую процедуру: call
, поэтому ставить одну из процедур до того, как другая не будет работать. НапримерОшибка перенапряжения в сборе вперед
proc1 proc
;some code
CALL proc2
;some code
ret
endp
proc2 proc
;some code
CALL proc1
;some code
ret
endp
Другим решением было бы определение/писать всю процедуру вместо вызова его, но это дает ошибку Relative jump out of range
. (Мой код также имеет несколько переходов)
Мой вопрос в том, что есть все же я могу удалить ошибку forward reference needs override
в моей ситуации?
Мне любопытно, есть ли конкретная причина, по которой вы используете TASM? Его последняя версия была выпущена в 1996 году, это 17 лет назад! – us2012
@ us2012 да есть. В любом случае есть ли обходной путь? – worriednacho
Аппетитно да. См. Мой ответ ниже. – us2012