Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. MouseSearch_PS2:
  2.  
  3.      pusha
  4.      
  5.      mov     bl,0xa8                 ; enable mouse cmd
  6.      call    kb_cmd
  7.      cmp     ah,1
  8.      je      @@DataInputError
  9.  
  10.      mov     bl,0xd4                 ; for mouse
  11.      call    kb_cmd
  12.      cmp     ah,1
  13.      je      @@DataInputError
  14.      mov     al,0xeb                 ;
  15.      call    kb_write
  16.      cmp     ah,1
  17.      je      @@DataInputError
  18.      call    kb_read                 ; Acknowledge
  19.      call    kb_read
  20.      mov     [ps2_mouse_detected],0
  21.      test    al,8
  22.      jz      @f
  23.      mov     [ps2_mouse_detected],1
  24.   @@:  
  25.      call    kb_read                 ;
  26.      call    kb_read                 ;
  27.  
  28.      mov     bl,0x20                 ; get command byte
  29.      call    kb_cmd
  30.      cmp     ah,1
  31.      je      @@DataInputError
  32.      call    kb_read
  33.      cmp     ah,1
  34.      je      @@DataInputError
  35.      or      al,3                    ; enable interrupt
  36.      mov     bl,0x60                 ; write command
  37.      push    eax
  38.      call    kb_cmd
  39.      pop     eax
  40.      call    kb_write
  41.      cmp     ah,1
  42.      je      @@DataInputError
  43.  
  44.      mov     bl,0xd4                 ; for mouse
  45.      call    kb_cmd
  46.      cmp     ah,1
  47.      je      @@DataInputError
  48.      mov     al,0xf4                 ; enable mouse device
  49.      call    kb_write
  50.      cmp     ah,1
  51.      je      @@DataInputError
  52.      call    kb_read           ; read status return
  53.      cmp     ah,1
  54.      je      @@DataInputError
  55.      cmp     AL,0FAh          
  56.      jnz     @@DataInputError ;íåò ïîäòâåðæäåíèÿ
  57.  
  58. @@DataInputError:
  59.      cmp     [ps2_mouse_detected],0
  60.      je      @f
  61.      mov     esi,boot_setmouse_type
  62.      call    boot_log
  63.   @@:
  64.      popa
  65.  
  66.