汇编 - 在特定位置写入文本以在 DOSBox 上显示

Assembly - Writing Text In A Certain Location To Display On DOSBox

我目前正在开发一款名为:“4 In A Row”的游戏。当我加载游戏时,我正在尝试编写游戏说明以显示在 DOSBox 上。我想把它显示在屏幕的某个位置,但我不知道该怎么做。

http://i.imgur.com/EjulgBV.png

我已经概述了说明的代码。

非常感谢任何能帮助我的人。

代码:

inst1 db 'To drop a disc into one of the columns press: 1, 2, 3 or 4.',13,10,'$'

    Instructions1:
        lea dx, [inst1]
        mov dx, offset inst1
        mov ah, 9
        int 21h

当我无法检查我的工作时,我应该谨慎对待在 Whosebug 上回答问题。但是从记忆中...

我相信您想使用 AH = 2 来研究 Int 10h。在英语中,您想先设置光标位置,然后再调用 21h 以在该位置写入 STDOUT。

我希望这能让你走上正确的道路!

尝试 "gotoxy" before 显示文本 :

inst1 db 'To drop a disc into one of the columns press: 1, 2, 3 or 4.',13,10,'$'

;SET CURSOR POSITION (GOTOXY).
  MOV  DL, 20    ;SCREEN COLUMN.
  MOV  DH, 5     ;SCREEN ROW.
  MOV  AH, 2     ;SERVICE TO SET CURSOR POSITION.
  MOV  BH, 0     ;PAGE NUMBER.
  INT  10H       ;BIOS SCREEN SERVICES.

Instructions1:
    lea dx, [inst1]
    mov dx, offset inst1
    mov ah, 9
    int 21h