?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. #ifndef __LIB_MOUSE
  2. #define __LIB_MOUSE
  3.  
  4. static u8 mouse_x,mouse_y;
  5.  
  6. void mouse_read(void)__naked
  7. {
  8. __asm
  9.         jp _MOUSE_POS
  10. __endasm;
  11. }
  12.  
  13. u8 mouse_position(void)
  14. {
  15.         u8 mousebtn;
  16.  
  17.         mouse_read();
  18.  
  19.         mouse_x=*(u16*)_MOUSE_X;
  20.         mouse_y=*(u16*)_MOUSE_Y;
  21.         mousebtn=*(u16*)_MOUSE_BTN;
  22.         return mousebtn;
  23. }
  24.  
  25. void mouse_setup(u8 x,u8 y)
  26. {
  27. __asm
  28.         ld hl,#2
  29.         add hl,sp
  30.         ld a,(hl)
  31.         ld (_MOUSE_X),a
  32.         inc hl
  33.         ld a,(hl)
  34.         ld (_MOUSE_Y),a
  35. __endasm;
  36. }
  37.  
  38. void mouse_clipping(u8 xmin,u8 ymin,u8 xmax,u8 ymax) __naked
  39. {
  40. __asm
  41.         ld hl,#2
  42.         add hl,sp
  43.         ld a,(hl)
  44.         ld (_MOUSE_CX1),a
  45.         inc hl
  46.         ld a,(hl)
  47.         ld (_MOUSE_CY1),a
  48.         inc hl
  49.         ld a,(hl)
  50.         ld (_MOUSE_CX2),a
  51.         inc hl
  52.         ld a,(hl)
  53.         ld (_MOUSE_CY2),a
  54. __endasm;
  55. }
  56.  
  57. #endif