4

We have an environment built upon Borland Turbo Assembler 5.3 and Turbo Link 5.1. We have to maintain some hereditary code in it, so throwing them away is out of the question. Now I want to introduce some C into it.

Neither GCC, nor Microsoft C/C++ compiler provide object file in Borland format. That's understandable. But somehow even Borland C++ 5.5 and Turbo C 2.0 don't. I mean, linker does link these objects with no warnings or errors, but the executable linked just crashes. Tried this with mere hello world, still crashes or does nothing visible and exits.

Looks like there is severe difference between versions and there should be specific C compiler for Turbo Link 5.1. Is is so? If it is, what compiler should I take?

Or, which came to mind just now, maybe I should rather do some TASM translation with, for instance, BCC instead and then just TASM it?

4

3 回答 3

3

根据 TASM5.1 输出中的版权日期(在此处发现)和维基百科页面上的日期,我会尝试 Borland C++ 3.1 或 Turbo C++ 3.1

于 2013-11-06T15:36:15.577 回答
2

您是否尝试过运行具有“windows 95”兼容性的 .exe 文件?但是,NASM在 BSD 许可证下,并且有一个用于 Borland 的 Tasm 兼容模式的 -t 开关,也许你想尝试一下?

于 2013-11-06T15:09:47.163 回答
2

我认为 Turbo Assembler 5.x 和 Turbo Link 5.x 仅支持 16 位应用程序。最后一个支持 16 位的 Borland C++ 编译器是 Borland C++ 5.02。

较新的,如 BCC5.5 仅支持 32 位,这可能是链接应用程序崩溃的原因。

于 2013-11-07T08:51:02.960 回答