Subversion Repositories Kolibri OS

Rev

Rev 2918 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2918 Rev 2935
Line 1111... Line 1111...
1111
;;;;;;;;;;;;;;;;;;;;;;;
1111
;;;;;;;;;;;;;;;;;;;;;;;
Line 1112... Line 1112...
1112
 
1112
 
1113
align 4
1113
align 4
Line 1114... Line 1114...
1114
int_handler:
1114
int_handler:
Line 1115... Line 1115...
1115
 
1115
 
Line 1116... Line 1116...
1116
        DEBUGF  1,"IRQ %x ",eax:2
1116
        DEBUGF  1,"\n%s int\n", my_service
1117
 
1117
 
1118
; find pointer of device wich made IRQ occur
1118
; find pointer of device wich made IRQ occur
1119
 
1119
 
1120
        mov     ecx, [devices]
1120
        mov     ecx, [devices]
1121
        test    ecx, ecx
1121
        test    ecx, ecx
Line 1122... Line 1122...
1122
        jz      .fail
1122
        jz      .nothing
1123
        mov     esi, device_list
1123
        mov     esi, device_list
1124
  .nextdevice:
1124
  .nextdevice:
1125
        mov     ebx, dword [esi]
-
 
1126
 
1125
        mov     ebx, [esi]
1127
        set_io  0
1126
 
1128
        set_io  REG_IntrStatus
-
 
1129
        in      ax, dx
1127
        set_io  0
1130
 
1128
        set_io  REG_IntrStatus
1131
        test    ax, ax
1129
        in      ax, dx
1132
        jnz     .got_it
1130
        test    ax, ax
1133
 
1131
        jnz     .got_it
1134
  .continue:
1132
  .continue:
Line 1135... Line 1133...
1135
        add     esi, 4
1133
        add     esi, 4
-
 
1134
        dec     ecx
1136
        dec     ecx
1135
        jnz     .nextdevice
Line 1137... Line 1136...
1137
        jnz     .nextdevice
1136
  .nothing:
1138
 
1137
        ret                                             ; If no device was found, abort (The irq was probably for a device, not registered to this driver)
Line 1139... Line 1138...
1139
        ret                                             ; If no device was found, abort (The irq was probably for a device, not registered to this driver)
1138