Subversion Repositories Kolibri OS

Rev

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

Rev 2118 Rev 2129
Line 70... Line 70...
70
proc attach_int_handler stdcall, irq:dword, handler:dword, user_data:dword
70
proc attach_int_handler stdcall, irq:dword, handler:dword, user_data:dword
71
         locals
71
         locals
72
           .irqh dd ?
72
           .irqh dd ?
73
         endl
73
         endl
Line 74... Line -...
74
 
-
 
75
         xchg bx, bx
-
 
76
 
74
 
Line 77... Line 75...
77
         and [.irqh], 0
75
         and [.irqh], 0
Line 78... Line 76...
78
 
76
 
Line 98... Line 96...
98
         test ecx, ecx
96
         test ecx, ecx
99
         jz .fail
97
         jz .fail
Line 100... Line 98...
100
 
98
 
101
         mov eax, [ecx]
99
         mov eax, [ecx]
102
         mov [next_irqh], eax
-
 
103
 
100
         mov [next_irqh], eax
Line -... Line 101...
-
 
101
         mov [.irqh], ecx
-
 
102
 
104
         mov [.irqh], ecx
103
         mov [irq_failed+ebx*4], 0  ;clear counter
105
 
104
 
106
         mov eax, [user_data]
105
         mov eax, [user_data]
Line 107... Line 106...
107
         mov [ecx+IRQH.handler], edx
106
         mov [ecx+IRQH.handler], edx
108
         mov [ecx+IRQH.data],    eax
107
         mov [ecx+IRQH.data],    eax
109
 
-
 
110
         lea edx, [irqh_tab+ebx*8]
108
 
Line 111... Line 109...
111
         list_add_tail ecx, edx     ;clobber eax
109
         lea edx, [irqh_tab+ebx*8]
112
 
110
         list_add_tail ecx, edx     ;clobber eax
113
         stdcall enable_irq, [irq]
111
         stdcall enable_irq, ebx
114
 
112