有没有人在Wine for Linux中使用MASM汇编语言?

时间:2010-10-13 05:15:29

标签: linux assembly dos masm wine

显然,WIne不支持16位DOS应用程序。任何人都知道如何让MASM英特尔风格的装配在葡萄酒中工作?

4 个答案:

答案 0 :(得分:3)

使用DosBox

答案 1 :(得分:2)

您是否尝试过使用NASM?它是免费的,开源的,支持类似于MASM的类似英特尔的语法[我承认,我从未使用过],并且几乎适用于所有x86平台,包括Windows,Linux,BSD等。

在典型的Linux发行版或BSD端口树上,它可能已经打包并准备好了。 (为您提供apt-getpkgadd或其他任何内容。)

答案 2 :(得分:1)

使用DOSEMU在Linux / unix上运行16位dos程序

答案 3 :(得分:1)

问题的解决方案可能就在那里: http://www.japheth.de/JWasm.html
它是一个兼容MASM语法的开源汇编程序(接近100%,包括最奇怪的MASM寻址语法案例,结构化编程伪操作,宏等)。
它可以生成Intel OMF,MS Coff(32位和64位),Elf(32位和64位),Bin和DOS MZ。 它存在于DOS,Windows和Linux二进制文件中 它甚至可以构建到OS / 2,FreeBSD 因此,您拥有汇编程序和目标二进制文件的最大组合数,包括那些在本机Linux下发生的一切 如果编译为16位代码,则必须在16位环境中执行它,这意味着您已经获得了一个建议。
但您也可以将16位语法编译为32位模式代码,具体取决于您要执行的操作。因此,您可以在32位模式下执行16位算法,在x86架构允许的32位环境中本机执行。但是,生成的代码会更大,因为汇编器将在每个16位指令之前生成16位转义码,但如果只是测试16位代码的逻辑,则可以。

我希望这对你有意义。如果没有,请求更多......