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 |