Subversion Repositories Kolibri OS

Rev

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

Rev 759 Rev 769
Line 9... Line 9...
9
;;  Distributed under GPL. See file COPYING for details.        ;;
9
;;  Distributed under GPL. See file COPYING for details.        ;;
10
;;  Copyright 2003 Ville Turjanmaa                              ;;
10
;;  Copyright 2003 Ville Turjanmaa                              ;;
11
;;                                                              ;;
11
;;                                                              ;;
12
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
12
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 13... Line 13...
13
 
13
 
Line 14... Line 14...
14
$Revision: 759 $
14
$Revision: 769 $
15
 
15
 
16
 
16
 
Line 181... Line 181...
181
; irq1  ->  hid/keyboard.inc
181
; irq1  ->  hid/keyboard.inc
182
macro irqh [num]
182
macro irqh [num]
183
{
183
{
184
  forward
184
  forward
185
  p_irq#num :
185
  p_irq#num :
186
     save_ring3_context
-
 
187
     mov   edi, num
186
     mov   edi, num
188
     jmp   irq_c
187
     jmp   irqhandler
189
}
188
}
Line 190... Line 189...
190
 
189
 
Line 191... Line -...
191
irqh 2,5,7,8,9,10,11
-
 
192
 
-
 
193
irq_c:
-
 
194
     mov   ax, app_data  ;os_data
-
 
195
     mov   ds, ax
-
 
196
     mov   es, ax
-
 
197
     call  irqhandler
-
 
Line 198... Line 190...
198
     restore_ring3_context
190
irqh 2,3,4,5,7,8,9,10,11
199
     iret
191
 
200
 
192
 
201
p_irq6:
193
p_irq6:
Line 206... Line 198...
206
     call  fdc_irq
198
     call  fdc_irq
207
     call  ready_for_next_irq
199
     call  ready_for_next_irq
208
     restore_ring3_context
200
     restore_ring3_context
209
     iret
201
     iret
Line 210... Line -...
210
 
-
 
211
p_irq3:
-
 
212
     save_ring3_context
-
 
213
     mov   ax, app_data  ;os_data
-
 
214
     mov   ds, ax
-
 
215
     mov   es, ax
-
 
216
     cmp   [com2_mouse_detected],0
-
 
217
     je    old_irq3_handler
-
 
218
     mov   esi, com2_mouse
-
 
219
     mov   dx, 2F8h	;[COMPortBaseAddr]
-
 
220
     call  check_mouse_data_com
-
 
221
     jmp   p_irq3_1
-
 
222
 old_irq3_handler:
-
 
223
     mov   edi,3
-
 
224
     call  irqhandler
-
 
225
  p_irq3_1:
-
 
226
     restore_ring3_context
-
 
227
     iret
-
 
228
 
-
 
229
p_irq4:
-
 
230
     save_ring3_context
-
 
231
     mov   ax, app_data  ;os_data
-
 
232
     mov   ds, ax
-
 
233
     mov   es, ax
-
 
234
     cmp   [com1_mouse_detected],0
-
 
235
     je    old_irq4_handler
-
 
236
     mov   esi, com1_mouse
-
 
237
     mov   dx, 3F8h	;[COMPortBaseAddr]
-
 
238
     call  check_mouse_data_com
-
 
239
     jmp   p_irq4_1
-
 
240
 old_irq4_handler:
-
 
241
     mov   edi,4
-
 
242
     call  irqhandler
-
 
243
  p_irq4_1:
-
 
244
     restore_ring3_context
-
 
Line 245... Line 202...
245
     iret
202
 
246
 
203
 
247
p_irq14:
204
p_irq14:
248
	save_ring3_context
205
	save_ring3_context
Line 301... Line 258...
301
 
258
 
302
irqhandler:
259
irqhandler:
303
	cmp	[v86_irqhooks+edi*8], 0
260
	cmp	[v86_irqhooks+edi*8], 0
Line 304... Line -...
304
	jnz	v86_irq2
-
 
Line 305... Line 261...
305
 
261
	jnz	v86_irq2
306
     push   edi
262
 
307
 
263
 
308
     mov    esi,edi	     ; 1
264
     mov    esi,edi	     ; 1
309
     shl    esi,6	     ; 1
265
     shl    esi,6	     ; 1
310
     add    esi,irq00read    ; 1
266
     add    esi,irq00read    ; 1
Line 311... Line -...
311
     shl    edi,12	     ; 1
-
 
312
     add    edi,IRQ_SAVE
-
 
313
     mov    ecx,16
267
     shl    edi,12	     ; 1
314
 
268
     add    edi,IRQ_SAVE
315
     mov    [check_idle_semaphore],5
269
     mov    ecx,16
Line 316... Line 270...
316
 
270
 
Line 366... Line 320...
366
 
320
 
367
   noirqword:
321
   noirqword:
368
   irqfull:
322
   irqfull:
Line 369... Line -...
369
   irqover:
-
 
370
 
-
 
371
     mov    al,0x20	       ; ready for next irq
-
 
372
     out    0x20,al
-
 
373
 
-
 
374
     pop    ebx
-
 
375
     cmp    ebx,7
-
 
376
     jbe    noa0
-
 
377
     out    0xa0,al
-
 
378
   noa0:
323
   irqover:
Line 379... Line 324...
379
 
324