Andrew771, интересный проект.

Почему вы решили компилировать в ассемблерный текст, который затем ещё раз надо компилировать? Не проще ли сразу генерировать исполняемый код?
Ваш подход может помочь только в одном случае, если программист захочет доработать ваши процедуры или заменить их на свои.

Компромиссный вариант: В зависимости от флага (галка/параметр командной строки либо директива компилятора) генерировать ассемблерный код как сейчас, или сразу исполняемый код.

И ещё предложение ввести директиву компилятора {$ORG xxxxx}, указывающую по какому адресу компилировать исполняемый код.

- - - Добавлено - - -

И думаете ли об оптимизации? Например, в циклах вставлять тело процедур вместо вызовов процедур. Это полезно, если вызываемые процедуры небольшие, а сам цикл выполняется много раз, тогда программа будет гораздо быстрее исполняться.