我该怎么做DOSBox汇编鼠标事件

时间:2017-05-15 15:34:34

标签: assembly dos dosbox

我刚刚开始学习"组装"语言。

我如何打印" Hello World"每当我用鼠标左键单击并打印" Bad World"每次右键单击DOSBox。

1 个答案:

答案 0 :(得分:0)

我想我找到了问题的解决方案。

  program SEGMENT
  ASSUME CS:program,DS:program
  ORG 100h

首先我们需要调用鼠标光标。检查目录http://stanislavs.org/helppc/int_33.html

  start:
  MOV AX,01
  INT 33h

http://stanislavs.org/helppc/int_33-5.html 我们不会使用除最后两位之外的其他位,因此我们使用AND运算符将其余位置为零。

  loop:
  MOV AX,03
  INT 33h
  AND BX,3h

我们比较旋转值,并根据结果发送函数

  CMP BX,1
  JE  left
  CMP BX,2
  JE  right

  cmp BX,0
  je  endss
  cmp bx,3 
  je  endss
  right:
  MOV DX,OFFSET stringright
  MOV AH,09h
  INT 21h


  jmp endss
  left:
  MOV DX,OFFSET stringleft
  MOV AH,09h
  INT 21h

  endss:

  jmp loop
  stringright DB "Right Clicked $"
  stringleft DB "Left Clicked $" 

  INT 20h
  program ENDS
  END start