微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DOSbox 中的 x86 程序集“无法加载程序”

如何解决DOSbox 中的 x86 程序集“无法加载程序”

我正在创建我的第一个 x86 汇编程序。我使用 VS Code 作为我的编辑器,使用 Insight 作为我的调试器,并使用 DOSBox 作为我的模拟器。

首先,我创建了一个 .asm 程序来更改屏幕颜色:

   global _start

    section .text

_start:
    call set_colour
    ret 16

set_colour:
    mov ah,06h         ; scroll up function
    xor al,al          ; clear entire screen
    xor cx,cx          ; upper left corner
    mov dx,184fh       ; lower right corner
    mov bh,1eh         ; yellow on blue
    int 10h
    ret 

当我尝试将此 .asm 文件转换.o 文件时,DOSBox 返回一个错误,指出它无法加载该文件。我做错了什么?

解决方法

虽然 DOSBox 模拟 32 位 CPU,但 DOS 本身以 16 位实模式运行,没有像 Doom 等 DOS 游戏中使用的 DOS4gw 这样的工具。

我认为 -f win32 命令行选项是这个错误的罪魁祸首。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。