Foros del Web » Programación para mayores de 30 ;) » Programación General »

Ayuda con asm en delphi

Estas en el tema de Ayuda con asm en delphi en el foro de Programación General en Foros del Web. hola estoy tratando de usar la interrupcion 33h para controlar mi mouse en delphi, me encontre unos ejemplos hechos en pascal que hacian lo que ...
  #1 (permalink)  
Antiguo 21/06/2010, 07:28
 
Fecha de Ingreso: marzo-2009
Mensajes: 39
Antigüedad: 15 años, 1 mes
Puntos: 0
Ayuda con asm en delphi

hola estoy tratando de usar la interrupcion 33h para controlar mi mouse en delphi, me encontre unos ejemplos hechos en pascal que hacian lo que queria, pero al usarlos en delphi me da un error de que no encuentra dos.dcu, como podria solucionar esto aqui les dejo el codigo completo.


unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, dos;

type
TForm1 = class(TForm)
Label1: TLabel;
Button1: TButton;
Memo1: TMemo;
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}
var
EXISTE_MOUSE : boolean;
R : registers;


function PortIn(Port : Word) : string; stdcall; external 'io32.dll' name 'PortIn';

function Inicializar_mouse : boolean;
begin
R.ax := $00;
intr($33,R);
if (integer(R.ax)=-1) then Inicializar_mouse := true
else Inicializar_mouse := false;
end;

procedure Ocultar_mouse;
begin
R.ax := $02;
intr($33,R);
end;

procedure Mostrar_mouse;
begin
R.ax := $01;
intr($33,R);
end;

procedure Lee_posi_mouse(Var x, y, boton : Word);
begin
R.ax := $03;
intr($33,R);
boton := R.bx;
x := R.cx;
y := R.dx;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Inicializar_mouse := true;
Ocultar_mouse;
Lee_posi_mouse;
Label1.Caption := x;
end;
end.

Etiquetas: delphi
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:01.