@Dartess

Ассемблер, перевод fasm -> tasm

Писал на fasm объемную такую прогу. Написал. Компилируется в COM под дос, нормально. Переношу на tasm (изначально нужно было под него писать), адаптирую синтаксис (макросы, структура ком, ptr). Но вот беда. При указании P286 получаю Relative jump out of range by XXXXh bytes (напомню, fasm в com скомпилил, работает норм) и Illegal instruction for currently selected processor (ругается на bt, как оказалось, его ввели только 386м). меняю на P386, транслируется без проблем, а линковщик ругается: Fatal: 32-bit record encountered in module xxx.asm. Чяднт? Код то рабочий, фасм с ним справляется. А этот пытается получить 32-битное приложение, судя по листингу:

Groups & Segments Bit Size Align Combine Class
CODE 32 8FCB Para none CODE

На всякий случай батник для компиляции такой:
BIN\tasm.exe DISASM.ASM /l
BIN\tlink.exe DISASM.OBJ /t
  • Вопрос задан
  • 3002 просмотра
Пригласить эксперта
Ответы на вопрос 2
@x128
ключик /3 для tlink
Ответ написан
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
этот пытается получить 32-битное приложение, судя по листингу

Поставить .386 после .text
Но для уверенности -- исходники в студию.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы