Alguien me puede explicar...?

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Moogle Wannabe!
    Mega Egelito
    • 12-01-2005
    • 503

    #1

    Alguien me puede explicar...?

    Que tal!
    Estoy haciendo un programita en el que utilizo el mouse. Me di a la tarea de investigar como cambiar el apuntador y encontre esta funcion. Sirve bastante bien, pero no entiendo que es lo que hace. He trabajado con las interrupciones de video y mouse con int86, pero desconozco para que se utiliza la funcion segread, asi que basicamente lo que no me queda claro es para que sirven las dos lineas anteriores a la llamada a int86. De antemano gracias!.

    Código:
    void Mouse::cursor(puntero *p){ 
    
       union REGS reg; 
       SREGS s; 
       reg.x.dx = (unsigned)(p->imagen); 
       reg.x.cx = p->hoty; 
       reg.x.bx = p->hotx; 
       reg.x.ax = 0x09; 
       segread(&s); 
       s.es=s.ds; 
       int86(0x33,&reg,&reg); 
    }

    Happiness is just a Flaming Moe away...
  • Lord Mick
    Pichón crecidito
    • 07-10-2006
    • 70

    #2
    se que estoy contestando tarde pero bue..
    no se que hace esa funcion pero quiza te sirva esto, el codigo esta en pascal, pero en C++ es casi igual

    Procedure mouse;
    Begin
    Asm
    mov ax,1 // indica que setiene que dibujar el puntero
    int 33h // interrupcion del mouse (en c creo que era intr 33)
    mov ax,3
    int 33h
    mov boton,bx /* en bx tenemos el boton que es presionado 1 btn izq, 2 btn der, 3 btn izq + btn der*/
    mov posx,cx // la posicion en x
    mov posy,dx // laposicion en y
    End;
    End;

    Comentario

    • MoaLaiSkirulais
      ^^(V)^^
      • 08-07-2003
      • 23268

      #3
      segread
      get the values of the segment registers


      Latest news coverage, email, free stock quotes, live scores and video are just the beginning. Discover more every day at Yahoo!

      Comentario

      Trabajando...