是否可以将二进制数据嵌入到 Turbo C 中制作的 DOS EXE 中?

Sco*_*Wan 6 c dos turbo-c++ dosbox

我用Turbo C++搭建了一个DOSBox开发环境,打算和朋友们一起制作一个游戏。

我正在使用 C 代码,并且想知道如何将二进制数据链接到 EXE 中。(我以前使用 C 的所有经验都是 libGBA,很抱歉,如果这实际上不可能我想象的那样。)

如果不可能,那么嵌入二进制数据的替代选项是什么?(我真的不想在游戏目录中需要一堆二进制文件......)

找不到太多关于 Turbo C 的第三方文档,特别是考虑到我正在使用其他受支持的但不是我的 IDE 的主要语言,该语言最后一次更新是在 2000 年代初完全转移到另一个操作系统之后。

ids*_*opd 1

应该可以使用 Turbo C++ 中包含的 BGIOBJ.EXE 实用程序来实现您想要的功能。

BGIOBJ 可以将二进制文件转换为 .obj 文件,然后可以链接到 .exe 文件。其主要目的是在 .exe 中包含 BGI 驱动程序和字体,但不应对文件施加任何限制(大小除外)。

不幸的是,我无法准确地告诉您如何获取运行时加载文件的内存地址,但这应该不会太困难。BGIOBJ 支持公共名称、段名称和段类参数,因此您可以参考这些参数。